关注我的公众号:【编程朝花夕拾】,可获取首发内容。
01 引言
在AI编程助手百花齐放的今天,OpenCode凭借开源、轻量、可定制三大优势,迅速斩获GitHub 144K Star,成为开发者社区的新宠。但很多人安装完之后,只是简单地用它"聊聊代码",却不知道那些藏在文档角落里的效率利器------特殊前缀符号、代理技能、ACP协议支持......
这篇文章将带你解锁OpenCode的隐藏技能,从基础操作到生态扩展,帮你把这个工具的潜能发挥到极致。无论你是刚入门的新手,还是已经用过一段时间的老用户,都能在这里找到提升效率的新思路。
02 特殊前缀符号
OpenCode 支持几个特殊前缀,能大幅提升交互效率。
2.1 @ 文件引用
在消息中使用 @ 引用文件。例如我们不想让AI读取整个工程来找文件我们可以通过@引用目标文件,这样不仅可以节省token还能提供效率,避免无效的阅读。
例,我需要AI总结工程中test.txt的内容,就可以如下操作
bas
@test.txt 总结文件内容

2.2 ! Shell 命令
以 ! 开头发送消息,直接执行 shell 命令:
当我们需要执行一些shell命令是,可以使用!切换。输入!之后,直接切换到Shell命令模式。

我们查看当前项目的目录都有什么
shell
ls

2.3 Tab 键切换模式
- Plan 模式:OpenCode 只提供建议,不进行实际修改
- Build 模式:OpenCode 会执行实际的代码修改
按 Tab 键可以在两种模式间切换。右下角会显示当前模式。

负责的任务,我们需要使用Plan模式,看看智能体的设计方案是否可用,确认没有问题之后,就可以切换到build模式开始进行实际操作了。
03 集成命令
TUI中有一个集成命令:ctrl+P
这里面包含了所有的命令。就是当你忘记斜杠命令时,就可以使用ctrl+P去查找自己需要修改的参数。

04 代理技能
也就是Skill,通过 SKILL.md 定义可复用的行为。代理技能让 OpenCode 能够从你的仓库或主目录中发现可复用的指令。 技能通过原生的 skill 工具按需加载------代理可以查看可用技能,并在需要时加载完整内容。
放置的位置是有讲究的哦!
为每个技能名称创建一个文件夹,并在其中放入 SKILL.md。 OpenCode 会搜索以下位置:
- 项目配置:
.opencode/skills/<name>/SKILL.md - 全局配置:
~/.config/opencode/skills/<name>/SKILL.md - 项目 Claude 兼容:
.claude/skills/<name>/SKILL.md - 全局 Claude 兼容:
~/.claude/skills/<name>/SKILL.md - 项目代理兼容:
.agents/skills/<name>/SKILL.md - 全局代理兼容:
~/.agents/skills/<name>/SKILL.md
为了能够使用一次配置多次使用,我选择全局 Claude 兼容的配置,这样一来,使用Claude 时,就可以直接使用了。

05 ACP的支持
ACP 是一个开放协议,用于标准化代码编辑器与 AI 编码代理之间的通信。OpenCode 支持 Agent Client Protocol(ACP),允许你直接在兼容的编辑器和 IDE 中使用它。
我们以JetBrains IDEs为例。

但是在实际的使用过程中,由于opencode安装方式的不同,配置可能也不太一致。
我直接使用本地的TUI连接JetBrains IDEs,在配置command的时候使用的是opencode.cmd。直接会用opencode,IDEA不会生效。

也可以直接在JetBrains IDEs的AI Chat中直接安装。

06 生态系统
由于OpenCode是开源的,深受广大用户喜爱,已经斩获144K的star。周边插件也迅速崛起,之前爆火的oh-my-opencode便是其中之一。包含了项目、插件以及代理。
6.1 项目
| 名称 | 描述 |
|---|---|
| kimaki | 用于控制 OpenCode 会话的 Discord 机器人,基于 SDK 构建 |
| opencode.nvim | Neovim 插件,提供编辑器感知的提示词,基于 API 构建 |
| portal | 通过 Tailscale/VPN 使用的移动优先 OpenCode Web UI |
| opencode plugin template | 用于构建 OpenCode 插件的模板 |
| opencode.nvim | OpenCode 的 Neovim 前端------基于终端的 AI 编码代理 |
| ai-sdk-provider-opencode-sdk | Vercel AI SDK 提供商,用于通过 @opencode-ai/sdk 使用 OpenCode |
| OpenChamber | OpenCode 的 Web / 桌面应用和 VS Code 扩展 |
| OpenCode-Obsidian | 将 OpenCode 嵌入 Obsidian UI 的 Obsidian 插件 |
| OpenWork | Claude Cowork 的开源替代方案,由 OpenCode 驱动 |
| ocx | OpenCode 扩展管理器,支持可移植的隔离配置 |
| CodeNomad | OpenCode 的桌面、Web、移动和远程客户端应用 |
6.2 插件
| 名称 | 描述 |
|---|---|
| opencode-daytona | 在隔离的 Daytona 沙箱中自动运行 OpenCode 会话,支持 git 同步和实时预览 |
| opencode-helicone-session | 自动注入 Helicone 会话头信息,用于请求分组 |
| opencode-type-inject | 通过查找工具自动将 TypeScript/Svelte 类型注入到文件读取中 |
| opencode-openai-codex-auth | 使用您的 ChatGPT Plus/Pro 订阅替代 API 额度 |
| opencode-gemini-auth | 使用您现有的 Gemini 套餐替代 API 计费 |
| opencode-antigravity-auth | 使用 Antigravity 的免费模型替代 API 计费 |
| opencode-devcontainers | 多分支开发容器隔离,支持浅克隆和自动分配端口 |
| opencode-google-antigravity-auth | Google Antigravity OAuth 插件,支持 Google 搜索及更强健的 API 处理 |
| oh-my-opencode | 后台代理、预构建的 LSP/AST/MCP 工具、精选代理,兼容 Claude Code |
| ...... |
6.3 代理
| 名称 | 描述 |
|---|---|
| Agentic | 用于结构化开发的模块化 AI 代理和命令 |
| opencode-agents | 用于增强工作流的配置、提示词、代理和插件 |
07 小结
回顾全文,我们从OpenCode的基础操作入手,逐步深入到进阶技巧:
- 特殊前缀符号 :
@引用文件、!执行命令、Tab切换模式,三个符号大幅提升交互效率 - 集成命令 :
Ctrl+P一键调用所有功能,告别记忆负担 - 代理技能:通过SKILL.md实现一次配置、多次复用
- ACP支持:在JetBrains等IDE中无缝集成,让AI融入你的工作流
- 生态系统:从桌面客户端到Discord机器人,丰富的周边生态满足各类场景需求
OpenCode的魅力不仅在于开源免费,更在于它给予了开发者充分的自主权------你可以按需配置、自由扩展、打造属于自己的AI编程伙伴。如果你还没尝试过这些功能,现在就是最好的时机。