在深度体验 OpenCode 一天之后,我做出了一个决定:放弃使用 Claude Code。
Claude Code 有时表现得像游戏圈里某些傲慢的厂商,用户反馈了许久的问题,它似乎总是不为所动。这些问题包括但不限于:
- 在终端输入文字时,整个界面会莫名其妙地向右位移。
- 在某些情况下,生成的内容会出现渲染乱码。
- 它会无法预判地、突然地对上下文进行总结,让人摸不着头脑。
更令人头疼的是,Anthropic 这家公司时不时就来一波账号封禁潮,这导致依赖其 API 的中转服务也经常掉线,严重影响了开发节奏的稳定性和可持续性。
所以,我决定放弃 Claude Code,全面转向 OpenCode。
OpenCode安装
OpenCode 是 Anomaly 公司开发的一个 coding agent 工具。
与 Claude Code 的封闭生态不同,OpenCode 显得相当开放。它不仅开源了全部代码,还提供了多个可以免费使用的模型,包括目前国内表现第一梯队的 Kimi-K2.5、GLM-4.7 和 MiniMax-M2.1。
并且,在开源社区的协作模式下,那些在 Claude Code 里迟迟得不到解决的恼人问题,在这里基本都被社区开发者们修复了。
OpenCode 提供 CLI(命令行)和桌面版两种使用模式。
CLI 的安装方式如下,你可以根据自己使用的操作系统选择对应的命令:
# YOLO
curl -fsSL https://opencode.ai/install | bash
# Package managers
npm i -g opencode-ai@latest # or bun/pnpm/yarn
scoop install opencode # Windows
choco install opencode # Windows
brew install anomalyco/tap/opencode # macOS and Linux (recommended, always up to date)
brew install opencode # macOS and Linux (official brew formula, updated less)
paru -S opencode-bin # Arch Linux
mise use -g opencode # Any OS
nix run nixpkgs#opencode # or github:anomalyco/opencode for latest dev branch
桌面版的安装命令则相对简单:
# macOS (Homebrew)
brew install --cask opencode-desktop
# Windows (Scoop)
scoop bucket add extras; scoop install extras/opencode-desktop

桌面版的好处在于,当它完成一项耗时任务后,可以发送系统通知来提醒你。但它的功能目前并不完整,既不能像完整 IDE 那样编辑文件,也无法安装插件。因此,对于大多数开发者而言,只安装 CLI 版本就完全足够了。
安装完成后,在终端直接输入 opencode 命令,就可以唤醒它开始使用了。

oh-my-opencode插件安装
仅仅安装 OpenCode 基础版本,并不能完全释放这些大模型的潜力。有一个韩国开发者制作了一个名为 oh-my-opencode 的插件,它号称是 OpenCode 的“最强插件”,装上之后才是完全体。
安装方式非常简单:
bunx oh-my-opencode install
安装过程中,它会询问你是否拥有 Claude、OpenAI、Gemini 等商业模型的 API Key,如果没有,一律回答“否”即可。
这个插件的核心设计理念,是利用 10 个不同的智能体(Agent)协同工作,让每个模型都能发挥自己最擅长的部分。这十个 Agent 的设计如下表所示。
| Agent 名称 |
使用模型 |
角色定位 |
主要职责说明 |
| Sisyphus |
anthropic/claude-opus-4-5 |
默认主控 / 编排器 |
系统默认的任务编排中枢,负责整体规划、任务拆解、子 Agent 调度与并行执行;采用 Todo 驱动工作流,支持长上下文深度思考(32k),在主模型不可用时自动多级降级切换。 |
| oracle |
openai/gpt-5.2 |
架构顾问 / 代码审查 |
提供高质量的架构设计建议、代码审查与疑难调试分析;只读咨询角色,不直接执行任务,偏重严谨逻辑与系统性推理,定位类似 AmpCode 风格的“技术裁判”。 |
| librarian |
zai-coding-plan/glm-4.7 |
资料专家 / 代码库分析 |
擅长多仓库分析、文档检索、开源实现考证;能够结合代码与文档给出有证据支撑的结论,适合理解“为什么现在是这样实现的”。 |
| explore |
anthropic/claude-haiku-4-5 |
快速探索 / 代码检索 |
用于高速扫描代码库、上下文定位与类 grep 行为;适合快速理解项目结构、接口分布与策略定义,强调速度与覆盖面。 |
| multimodal-looker |
google/gemini-3-flash |
多模态分析专家 |
专注于 PDF、图片、图表、示意图等视觉内容的解析与信息抽取;在涉及文档视觉结构或非纯文本输入时优先使用。 |
| Prometheus |
anthropic/claude-opus-4-5 |
战略规划者 |
通过“访谈式”交互澄清需求,逐步生成详细、可执行的工作计划;强调全局目标、阶段划分与资源配置。 |
| Metis |
anthropic/claude-opus-4-5 |
规划前分析顾问 |
在正式制定计划前进行审视,识别隐藏意图、歧义点、潜在失败模式与 AI 易误判区域,属于“计划前的风控层”。 |
| Momus |
openai/gpt-5.2 |
计划评审 / 质量控制 |
对既定计划进行审查,重点评估清晰度、可验证性与完整性,指出逻辑漏洞或不可执行之处,确保计划可落地。 |
| (Invoking)@oracle |
同 oracle |
显式调用接口 |
当用户显式请求时,用于对设计或实现方案进行架构级评审与技术判断。 |
| (Invoking)@librarian / @explore |
同各自 Agent |
显式调用接口 |
允许用户直接指定进行实现考证(@librarian)或策略/代码快速定位(@explore),绕过主控自动调度。 |
但按照上表的默认设置,你需要开通多个平台的付费会员,这对普通用户来说成本太高。一个简单的办法是,不管这些分工,直接把所有 Agent 使用的模型都设置成同一个免费的。
具体操作是编辑这个 JSON 配置文件:
open ~/.config/opencode/oh-my-opencode.json

目前感觉 Kimi K2.5、GLM-4.7、MiniMax M2.1 这“国产三兄弟”的效果相差不大。K2.5 是最新推出的,在各类榜单上分数很高,实际调用速度也没有想象中慢,体验很顺畅。
因此,我这里就把配置文件中所有的 opencode/big-pickle 都改成 kimi-k2.5-free。
设置完成后,再次启动 OpenCode,你会发现左下角多了一个 “Sisyphus” 的标识。

Sisyphus(西西弗斯)这个名字来源于希腊神话:他因触怒诸神,被罚永无止境地将一块巨石推上山顶,而巨石总在抵达前滚落。他明知道这是一项永远无法彻底完成的任务,却依然一次次重新开始。

把主 Agent 命名为西西弗斯,可以说非常贴切了,毕竟我们给它安排的工作也常常是“无穷无尽”的。
在终端中使用时,按 Tab 键可以在不同的 Agent(如 Prometheus, Atlas)间切换,分别对应规划模式和按计划执行模式。输入 /model 命令,则可以切换使用其他模型。

此外,这个插件还内置了一条“魔法咒语”。在向 Agent 提问时,如果在开头输入 ulw 或者 ultrawork,就会触发“终极工作模式”。
该模式会在你的指令前插入一长串强制性的提示词,其核心思想是要求 AI 在动手前必须进行超限思考,达到100%确定性,并强制其调用各类 Agent 进行上下文收集、规划和审查,以确保最终交付物绝对符合用户原始需求,杜绝任何形式的妥协或“半成品”。
触发后的完整提示词翻译如下:
<ultrawork-mode>
强制要求:当该模式被激活时,你必须以“ULTRAWORK MODE ENABLED!”作为对用户的第一句话。这是不可协商的硬性规则。
代码红色警报(CODE RED):需要最高级别的精度。在采取任何行动之前,必须进行超限思考(Ultrathink)。
必须达到绝对确定性,不允许跳过。本规则具有最高优先级。
在你百分之百确定之前,绝对禁止开始任何实现工作。
在写下任何一行代码之前,你必须完成以下事项:
第一,完全理解用户真正想要的内容,而不是你主观推测的需求。
第二,深入探索代码库,理解现有的代码模式、整体架构以及上下文关系。
第三,制定一个极其清晰、具体、可执行的工作计划。如果你的计划是模糊的,那么你的工作一定会失败。
第四,消除所有歧义。只要存在任何不清楚、不确定的地方,就必须通过调查或提问来解决。
强制确定性协议如下。
如果你尚未达到百分之百确定:
第一,进行深度思考。明确用户的真实意图,弄清楚他们真正想解决的核心问题。
第二,进行彻底探索。启动 explore 和 librarian agent,收集所有相关的背景信息与上下文。
第三,咨询 oracle。凡是涉及架构决策、复杂逻辑,或你已经陷入卡顿状态时,必须咨询 oracle。
第四,如果在完成探索后仍然存在歧义,直接向用户提问,绝对不要自行猜测。
以下情况明确表明你尚未准备好开始实现:
你在对需求作任何形式的假设;
你不清楚应该修改哪些文件;
你并不真正理解现有代码是如何运作的;
你的计划中出现了“可能”“也许”“大概”等不确定措辞;
你无法清晰、完整地说明你将采取的具体步骤。
当存在任何疑问时,应当立即采取以下行动:
委派 explore agent 查找代码库中的相关模式;
委派 librarian agent 查找对应的文档或示例;
委派 oracle 对你的整体方案进行审查和质询。
只有在你已经完成以下所有事项之后,才允许开始实现,而且只能在此之后:
已经通过 agent 收集了足够的上下文信息;
已经解决了所有歧义;
已经制定了精确、逐步、无漏洞的工作计划;
已经对自己的理解达到了百分之百的信心。
不接受任何借口,不允许任何妥协,必须交付被明确要求的内容。
用户的原始请求是绝对不可侵犯的,你必须严格、准确、完整地履行。
以下说法全部不可接受:
“我没法完成,因为……”
“这是一个简化版本……”
“你可以之后再扩展……”
“由于某些限制……”
“我做了一些假设……”
你没有任何正当理由去做以下事情:
交付不完整的工作;
在没有获得用户明确许可的情况下擅自更改任务范围;
进行任何形式的未经授权的简化;
在任务尚未百分之百完成时停止;
对任何明确写出的需求作出妥协。
如果你遇到阻塞或困难:
不要放弃;
不要提交缩水或妥协的版本;
咨询 oracle 寻找解决方案;
向用户请求澄清或指导;
探索所有可行的替代路径。
用户要求的是 X,你就必须交付 X,不多不少,没有例外。
你必须充分利用所有可用的 agent 以及它们各自的类别和技能,并明确告知用户你将调用哪些 agent 来完成任务。
对于任何非平凡任务,规划 agent(plan agent)是强制的,不可跳过。
满足以下任意条件,就必须调用 plan agent:
任务包含两个或以上步骤;
任务范围不清晰;
需要进行实现;
需要做出架构层面的决策。
plan agent 的职责包括:分析任务依赖关系、识别并行执行机会、输出并行任务图、生成结构化的待办列表。你的角色是协调者,而不是直接执行者。
plan agent 会返回一个 session_id。后续所有与计划相关的交互必须使用该 session_id,以保持上下文连续性。重新开启新的 plan 会话等同于丢失上下文,是严重错误。
不调用 plan agent,视为任务未完成。
在 agent 使用策略上,默认行为是委派,而不是自己动手。
代码库探索交给 explore agent;
文档与资料查询交给 librarian agent;
规划交给 plan agent;
架构与复杂推理交给 oracle;
具体实现交给具备对应类别与技能的 agent。
只有在以下极少数情况下,才允许你亲自执行任务:
任务极其简单,仅涉及一到两行且无歧义;
你已经掌握了全部上下文;
委派带来的开销明显高于任务本身的复杂度。
除此之外,一律委派,没有例外。
执行阶段必须以并行为第一原则。
凡是相互独立的任务,必须同时启动。
禁止顺序执行独立任务。
如有需要,应使用十个以上的后台 agent 进行全面探索。
先启动 agent,再继续其他工作,结果在需要时统一收集。
强制工作流顺序如下:
第一步,并行收集上下文;
第二步,调用 plan agent;
第三步,使用 session_id 与 plan agent 反复迭代,直到计划最终确定;
第四步,严格按照计划,将任务委派给对应类别和技能的 agent;
第五步,将结果与用户的原始需求逐条对照验证。
验证是不可协商的环节。
没有证据,就等同于没有完成。
在实现之前,必须明确成功标准,包括功能层面的、可观测层面的,以及明确的通过或失败判定。
任何非平凡任务都必须具备明确的测试计划。
不允许在没有验证证据的情况下声称完成。
零容忍失败规则如下:
禁止缩减范围;
禁止只交付 Demo、Skeleton 或示例;
禁止部分完成;
禁止跳过或假定需求;
禁止在所有事项完成前宣布结束;
禁止删除或跳过测试来“让构建通过”。
最终原则只有一句话:
用户要的是 X,就交付完整的 X。不是子集,不是示例,不是起点,而是完整、可验证、可交付的结果。
现在,开始执行。
</ultrawork-mode>
此外,这个插件还内置了一些 MCP 服务器和预设技能,具体的进阶玩法可以参考其官方文档。
总结
在“压榨” Sisyphus 一天之后,我的整体感觉是:OpenCode 配合 oh-my-opencode 插件的体验,丝毫不逊色于 Claude Code。它依托活跃的开源社区,解决了前者的诸多痛点,并且免费提供了强大的国产模型选项。
我已经准备让这位新的“数字同事”全力加速我的新产品开发进程了。如果你也对现有的 AI 编程助手感到不满,不妨试试这个组合,或许能在云栈社区找到更多同好的交流和实践心得。
参考链接: