为什么选择OpenCode
先说下我的情况:
- 买了中转站的CC和CX包月
- 有Gemini AI Pro包年
- 日常干Rust开发,不论是工作还是业余时间;开发环境是windows和mac
我希望有一个能满足我日常需求的开发工具,并且能够充分利用我已有的订阅,在windows和macos上都有良好的体验。在尝试了各类工具后,我认为 OpenCode 在各项功能上取得了平衡:
- 在 windows、mac 上均没有出现闪烁,只有在显示右向左书写的文本时导致了渲染BUG
- 它的TUI可以直接用鼠标操作!不论是复制还是编辑历史消息都很方便
- 可以内置反重力、Gemini CLI工具,代理成它可用的模型(GPT和Claude应该也行)
- 对LSP支持良好
- 在 oh-my-opencode 的帮助下子Agent运行效果良好,子模型可以同时启动多个,异步运行,使用
Ctrl+X 方向键可以快速在多个子任务上切换,使用Ctrl+X 上方向键可以回到主任务 - 明确区分计划模式和执行模式,切换便利、功能齐全,具有精良的TUI界面
- 不需要过多配置就能达到不错的效果
如果你也对此感兴趣的话,不妨看看下文我是如何使用它的。
初始安装配置
安装
安装方式和CC、CX没什么差别,佬们应该操作过很多次了,就一笔带过吧,用你喜欢的包管理器直接安装即可:pnpm install -g opencode-ai
配置模型
opencode内置了一些免费模型(GLM4.7之类的),我个人习惯使用当前公认较好的模型,避免浪费精力,因此没有体验,要是有人试过可以说说反馈,说不定可以降低使用成本。
在运行过一次opencode后,会生成一个~/.config/opencode文件夹,里面会有一个opencode.json,如果你希望json里面可以编写注释的话,可以把后缀名改成jsonc(下文oh-my-opencode也支持这种格式)。
接下来编辑它就行了,以我的中转站为例:
{
"$schema": "https://opencode.ai/config.json",
// 你的MCP工具,我不建议添加太多,等会 oh-my-opencode 也会加工具的
"mcp": {
"context7": {
"type": "local",
"command": [
"pnpx",
"@upstash/context7-mcp"
],
"enabled": true
}
},
"provider": {
"anthropic": {
"options": {
"baseURL": "https://中转站网址/v1"
}
},
"openai": {
"options": {
"baseURL": "https://中转站网址/v1"
},
"models": {
// 注意,GPT系列似乎必须有下面的 include 和 store 字段及其内容,否则只能发送一条消息
"gpt-5.2": {
"options": {
"include": [
"reasoning.encrypted_content"
],
"store": false,
"reasoningEffort": "high",
"textVerbosity": "high",
"reasoningSummary": "auto",
},
}
},
}
}
}
在完成配置后进入 opencode,输入/connect,选择anthropic和openai输入key即可:
到这里,其实你已经能够使用它基本的功能了,但是用下来,你可能会发现——也没什么特别的嘛!别急,我们再来试试他的插件功能,我这里首要推荐的就是 oh-my-opencode。
Oh-my-opencode
援引官方的自我介绍:它是一个异步子代理工具,配备合适的模型,内置 LSP/AST 等精心打造的工具,精选了 MCP 工具集,具有 Claude Code 兼容层,可以自动读取 Claude 配置,算是一个最佳实践懒人包了,正适合我这种懒得找各类 MCP、Skills 的人。
安装
虽然他的官方文档推荐你直接让AI来帮你安装,但是我还是不太放心,这里手动操作吧,输入pnpx oh-my-opencode install即可。
接下来只需要按照你的情况回答它的问题即可~
回答完成后它会自动帮你安装上对应的订阅插件,让你能够把自己的订阅接入到 OpenCode 中
简单配置
安装完成后,启动一下 OpenCode,你会发现配置目录里多了一个 oh-my-opencode.json,这里我们可以配置每个子 Agent 使用什么模型,下面给出我的推荐
{
"$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",
"google_auth": false, // 如果用反重力插件的话,这个得设为 false
"claude_code": { // 我不希望 OpenCode 自动读取 Claude 的配置
"mcp": false,
"commands": false,
"skills": false,
"agents": false,
"hooks": false
},
"agents": {
// 西西弗斯,负责协调和直接执行简单的任务
"Sisyphus": {
"model": "openai/gpt-5.2"
},
// 先知,执行困难的任务和debug
"oracle": {
"model": "openai/gpt-5.2"
},
// 帮助你查找库相关的信息
"librarian": {
"model": "anthropic/claude-sonnet-4-5-20250929"
},
// 探索现有代码仓库
"explore": {
"model": "claude-sonnet-4-5-20250929"
},
// 前端设计是,必然得是哈基米
"frontend-ui-ux-engineer": {
"model": "google/antigravity-gemini-3-pro-high"
},
// 写文档的模型,看你的喜好选就好!
"document-writer": {
"model": "google/antigravity-gemini-3-flash"
},
// 多模态识别,当然还是哈基米
"multimodal-looker": {
"model": "google/antigravity-gemini-3-flash"
}
}
}
你可能会问,google/antigravity-gemini-3-flash这类模型是哪来的呢?这个模型列表我们可以在 oh-my-opencode给AI准备的文档里看到,你也会发现,在安装时选择了对应的订阅后,会在你的opencode配置中添加插件,自然也能从插件的文档里看到了
可见,反重力和Gemini CLI支持得模型还是挺多的,你愿意的话也可以把Claude拿出来用。
顺带一提,最后模型我忘记是手动补充还是自动生成的了,总之给出完整配置文件(如果你让AI代劳应该就不需要自己写了)。
{
"plugin": [
"oh-my-opencode",
"opencode-antigravity-auth@1.1.2"
],
"$schema": "https://opencode.ai/config.json",
"mcp": {
"context7": {
"type": "local",
"command": [
"pnpx",
"@upstash/context7-mcp"
],
"enabled": true
}
},
"provider": {
"anthropic": {
"options": {
"baseURL": "https://中转站网址/v1"
}
},
"openai": {
"options": {
"baseURL": "https://中转站网址/v1"
},
"models": {
"gpt-5.2": {
"options": {
"include": [
"reasoning.encrypted_content"
],
"store": false,
"reasoningEffort": "high",
"textVerbosity": "high",
"reasoningSummary": "auto",
},
},
"gpt-5.2-codex": {
"options": {
"include": [
"reasoning.encrypted_content"
],
"store": false,
},
}
},
},
"google": {
"models": {
"antigravity-gemini-3-pro-high": {
"name": "Gemini 3 Pro High (Antigravity)",
"limit": {
"context": 1048576,
"output": 65535
},
"modalities": {
"input": [
"text",
"image",
"pdf"
],
"output": [
"text"
]
}
},
"antigravity-gemini-3-flash": {
"name": "Gemini 3 Flash (Antigravity)",
"limit": {
"context": 1048576,
"output": 65536
},
"modalities": {
"input": [
"text",
"image",
"pdf"
],
"output": [
"text"
]
}
}
}
}
}
}
其他
有关LSP
见官方文档,它支持的LSP还是挺多的,自己电脑上装上应该就能用了,只要保证对应的指令在环境里,它读取文件的时候会自动启动LSP的,oh-my-opencode还引入了基于LSP的各项工具,如重命名工具
有关插件
插件和Skills、MCP还是有一些不同的,感觉它更多是扩展 OpenCode 的能力,见下图插件列表(来源)
我觉得我框起来的几个都挺值得一试,有长期记忆,有声音和消息提醒,有时间统计等(虽然我自己只装了提醒)
分享功能
没错,它还有分享功能,输入/share即可使用,这之后右上角会出现一个网址,可以发给别人阅读
色彩主题
有没有觉得它和我的VSCode特别融于一体?这是因为用了相同的Catppuccin主题,输入/theme即可切换
Github集成
这个我还没用过,有用过的大佬可以补充一下,我留一个文档链接,写到这是因为我挺感兴趣,打算后面试试,要是有机会再补充
结尾
我已经高强度使用两周了,感觉非常不错,多Agent的配合+流畅的体验,感觉还是很棒的!不过作者推荐用 Opus 作为西西弗斯(主模型),感觉消耗还是太高了,现在用 GPT5.2 High 又省钱效果又好。