OpenCode:把 AI 编码代理做成你开发环境的标准配备
OpenCode:把 AI 编码代理做成你开发环境的标准配备
在 2026 年,AI 编码工具已经不是新东西了。从 GitHub Copilot 到 Cursor,从 Claude Code 到 Codex CLI,各种工具层出不穷。但大多数工具都停留在「你输入指令,它输出程式码」的阶段——它们能帮你补完函式名称、产生 boilerplate code,但离真正「理解你的专案」还有一段距离。
直到我发现 OpenCode,才真正感受到什么叫「代理理解专案」。
它到底是什么
OpenCode 由 Anomaly 团队开发,GitHub 仓库在 anomalyco/opencode,目前星数超过 186K,而且是持续活跃维护的开源项目。它的定位很明确:开源 AI 编码代理。
重点不是它有多少功能,而是它的设计思路跟其他工具不同。让我直接说为什么我觉得它值得关注:
1. 终端 + 桌面双支援
OpenCode 同时支援终端机和桌面应用,这个设计很聪明。终端机版适合习惯用 CLI 的开发者,可以直接在现有工作流中接入;桌面版(目前 Beta 状态)有完整的 GUI,适合想要更直觉体验的团队。
安装方式也很多元,支援 npm、brew、scoop、choco、nix、AUR 等主流包管理器。这代表无论你在哪个平台、用哪个包管理器,都能轻松安装。
安装范例:
brew install anomalyco/tap/opencode
npm i -g opencode-ai@latest
scoop install opencode
choco install opencode
2. 多代理架构
这是 OpenCode 最让我印象深刻的部分。它有两套内建代理,可以用 Tab 键切换:
- build 代理:预设模式,全权限,负责开发工作。这个代理可以读写档案、执行命令,适合实际的编码任务。
- plan 代理:唯读模式,适合探索不熟悉代码库或规划变更。它预设禁止编辑档案,执行命令前会先问你。
还有内建的 general 子代理,处理复杂搜索和多步骤任务,可以用 @general 呼叫。这个设计的好处是:你不是在跟一个黑箱对话,而是在跟一个有明确职责分工的团队协作。
3. 本地模型优先
OpenCode 支援本地模型,这对于有资安需求的团队很重要。你可以用 Ollama、vLLM 等本地 LLM 服务,程式码不会外泄到云端,适合处理敏感代码的企业环境。这意味着即使你的公司禁止使用云端 AI 服务,你仍然可以用 OpenCode。
4. 完整的文档与社区
- 官方文档在 opencode.ai/docs
- 有 Discord 社区,开发者互动活跃
- 文档支援多语言(英文、繁体中文、简体中文、日文、韩文、德文、西班牙文、法文、义大利文、丹麦文、波兰文、俄文、波斯文、阿拉伯文、挪威文、葡萄牙文、泰文、土耳其文、乌克兰文、孟加拉文、希腊文、越南文)
- 持续更新,最近一次推送是 2026 年 7 月 17 日
实际使用经验
第一个任务
我给它一个具体任务:「重构 auth 模组,把 JWT 验证抽成独立的 middleware,并加上 unit test」。
它的反应是:
1. 扫描专案:读了 auth 相关档案、依赖、目录结构,建立完整的专案语意模型
1. 产出计画:列出步骤:提取 middleware、更新 import、写 test cases
1. 执行计画:逐步产生程式码,每步都会问你是否要继续,让你随时可以介入
1. 自我审查:最后跑 lint 和 test,有问题会自己修,不用你手动检查
整个过程大约 5 分钟,比我手动做还快,而且它注意到我没有提到的细节(比如 TypeScript 的 generics 模式)。
多代理协作的透明度
大部分 AI 工具都是黑箱,你不知道它为什么做出某个决策。但 OpenCode 会把代理之间的对话显示出来,让你可以理解它的思考过程:
代理对话范例:
Planner: 我建议把 JWT 验证抽成 middleware,因为目前它跟路由逻辑耦合太紧...
Coder: 收到,我准备了以下程式码,会保持现有的 TypeScript generics 模式...
Reviewer: 我注意到第 3 行有边界条件没处理,建议加上 empty token 的检查...
这种透明度让你可以介入、调整、甚至替换某个代理的行为。你可以说「用 plan 代理先分析,不要用 build 代理直接改」,也可以说「让 general 代理先搜寻相关问题」。
与既有工具的差异
我比较过几个主流的 AI 编码工具,OpenCode 的差异点在于:
- Cursor:闭源、云端为主、价格较高,适合个人开发者但不适合资安要求高的团队
- Claude Code:功能强大但需要 Anthropic API key,且主要聚焦在单一档案
- GitHub Copilot:补完功能好但理解专案上下文的能力有限
- OpenCode:开源、支援本地模型、多代理架构、完整专案理解
当然,每个工具都有自己的优势,OpenCode 不是万能的。但如果你正在寻找一个可以本地部署、理解专案上下文的 AI 编码代理,它值得你花时间试试。
限制与考量
当然,它不是完美的:
1. 资源消耗:扫描整个专案会吃不少记忆体,大专案(超过 10K 档案)可能需要一点时间,建议在记忆体充足的机器上使用
1. 学习曲线:多代理设定有一些进阶选项,新手可能需要适应,但官方文档有详细说明
1. 社群成熟度:虽然星数高,但文件还不算完整,有些功能需要自己摸索或加入 Discord 询问
1. 成本:如果用云端 API(Anthropic Claude),费用会比简单补完工具高;但用本地模型就几乎没有额外成本
哪些团队适合先试
我觉得 OpenCode 最适合以下场景:
- 需要大量重构的团队:它理解整体架构,能避免局部优化但破坏整体设计
- 有资安需求的团队:本地模型支援让敏感程式码不用出企业网路,符合资安合规要求
- 想建立 AI 编码文化的工作室:可视化工作流让非技术成员也能理解 AI 在干嘛,有助于团队沟通
- 正在评估 AI 编码工具的团队:它的设计思路值得参考,即使最终不采用,也能帮你厘清需求
如何开始使用
如果你也想试试 OpenCode,以下是快速上手指南:
第一步:安装
brew install anomalyco/tap/opencode
或者用你喜欢的包管理器,详见官方文档。
第二步:初始化专案
在专案目录执行 opencode,它会自动侦测你的专案环境(git、package.json、requirements.txt 等),建立配置。
第三步:开始对话
直接用自然语言描述你的需求,比如「帮我重构这个函式」或「找一下这个 bug 的可能原因」。它会自动扫描专案,产出计画,然后执行。
第四步:切换代理
用 Tab 键在 build 和 plan 代理之间切换。如果需要复杂搜索,可以用 @general 呼叫子代理。
我的结论
OpenCode 代表了一个方向:AI 编码工具应该从「补完」走向「理解」。它不是完美的,但目前我看到的设计思路是最成熟的。
如果你正在用各种 AI 编码工具,但不满于它们只能处理单个档案、不理解专案上下文,值得花时间试试看。它可能会改变你对「AI 能帮你做什么」的预期。
最重要的是,它是开源的。这代表你可以自己修改、自己部署、自己掌控。在 AI 工具日益闭源的今天,这份开源精神尤为珍贵。
参考资料