真诚友善团结专业,共建你我引以为荣之社区。《常见问题解答》
1 / 385
1月 4 日

由 Sworld 发布于 1月 4 日

为什么选择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 又省钱效果又好。

阅读时间 26 分钟

由 246 发布于 1月 4 日

由 handsome 发布于 1月 4 日

由 zhzz 发布于 1月 4 日

由 link455like 发布于 1月 4 日

由 jv-kssma 发布于 1月 4 日

請教個問題,claude 和 codex可以加中轉站

但反重力那部份是不是也可以直接用中轉?(其實是我自己反代,所以如果能直接用base_url + 模型就用到就更好,畢竟登入google 用反重力一來要代理,二來一個號的量不夠用,要切來切去也煩)

謝謝推介

由 Sworld 发布于 1月 4 日

由 Adamllll 发布于 1月 4 日

由 jv-kssma 发布于 1月 4 日

由 torvalds 发布于 1月 4 日

由 wangyisheng 发布于 1月 4 日

太强了,一直看opencode不错,但是配置一直没有了解过,佬直接来了一波教学,学习一下~

由 Midflowers 发布于 1月 4 日

由 Sworld 发布于 1月 4 日

开源软件感觉还是有无限的潜力,在早期的时候我就用过这个,当时还感觉不成气候,没想隔段时间现在变这么好了

由 garywu 发布于 1月 4 日

在x上看到了很多人推荐opencode ,打算试试

由 ReReRe 发布于 1月 4 日

由 shuxlieb 发布于 1月 4 日

由 Huluma 发布于 1月 4 日

大佬这个和 cc 或者 codex cli 有啥区别呢

由 Sworld 发布于 1月 4 日

文章里已经介绍很多啦,对我来说主要就是这几点:

  • Codex功能有点太匮乏了,还有闪烁的问题……就不说这个了
  • 具备便利的反重力2api等功能
  • 便利的子代理,多个子代理切换也很方便
  • 漂亮、鼠标友好的终端UI(鼠标点击可以直接回到过去的消息)
  • LSP支持良好,我的CC用LSP总是有问题
  • 待办提示器,若Agent在未完成任务列表的情况下想要终止,会被系统提示继续完成任务

由 gafdafdsa 发布于 1月 4 日

由 Huluma 发布于 1月 4 日

大佬,我用的 cc switch 中转的站内公益站的 api,也可以使用嘛

上次访问

由 Imzl-zl 发布于 1月 4 日

由 Sworld 发布于 1月 4 日

应该是差不多的吧,我用的是中转站的CC和CX的API

由 ishadows 发布于 1月 4 日

看起来还能直接用codex的额度,不需要自己在额外反代?

由 sdasss 发布于 1月 4 日

可惜 opencode 和 CLIProxyAPI 不太兼容,调用工具的时候会直接中断 :distorted_face:

由 Sworld 发布于 1月 4 日

那个插件应该就是这个意思,CC、CX、Gemini都行,我只用了Gemini的

由 Huluma 发布于 1月 4 日

由 WolfHolo 发布于 1月 4 日

由 geq1fan 发布于 1月 4 日

由 Sworld 发布于 1月 4 日

我用下来感觉还算能接受,主要就是前几轮多一点,后面跑起来就都差不多了,有子agent一定程度上也能缓解上下文导致的注意分散等问题

由 jack_dov 发布于 1月 4 日

+1 最近也在用,挺好用的,就是插件不太好更新,容易卡住

由 dai_steven 发布于 1月 4 日

由 mahaonan 发布于 1月 4 日

由 geq1fan 发布于 1月 4 日

同样的工作流,我不用插件跑,跑完只用了30%context,装了插件跑compact一次还要加70%

由 alsj1106 发布于 1月 4 日

由 herbin 发布于 1月 4 日

由 geq1fan 发布于 1月 4 日

还有个问题不知道佬怎么解决的,它那个终端显示没滚动条,如果想查看历史消息只能鼠标滚轮或者page up/down,用起来不是很方便

由 Sworld 发布于 1月 4 日

由 cainiao1224 发布于 1月 4 日

由 Cosmosurfer 发布于 1月 4 日

由 TheYesNo 发布于 1月 4 日

加载下方更多的帖子