tc9011

Coding Agent 时代:OpenCode 与 Oh My OpenCode 入坑指南

17 min
opencode-banner.png
opencode-banner.png

随着 AI 编程工具的爆发式增长,Claude Code 凭借其强大的能力迅速走红。但对于追求自由和可定制性的开发者来说,一个开源、不绑定特定供应商的替代方案显得尤为重要。今天要介绍的 OpenCode 就是这样一款工具,而 Oh My OpenCode 则是让它如虎添翼的终极配置插件。

IDE vs Coding Agent:两种不同的范式

在深入了解 OpenCode 之前,我们需要先理清一个概念:IDE 内置的 AI 功能Coding Agent 是两种完全不同的范式。

传统 IDE + AI 插件

以 Cursor、GitHub Copilot、Codeium 为代表的 IDE AI 功能,本质上是辅助工具

  • 被动响应:等待你输入,然后提供建议
  • 单点操作:一次只处理一个文件或一段代码
  • 人类主导:你是司机,AI 是副驾驶(Copilot)
  • 上下文有限:通常只能看到当前文件或少量相关文件
  • 即时反馈:适合快速补全、小范围重构

工作流程是这样的:

你写代码 → AI 建议补全 → 你接受/拒绝 → 你继续写 → 循环

Coding Agent

以 Claude Code、OpenCode、Devin 为代表的 Coding Agent,本质上是自主代理

  • 主动执行:你描述目标,它自己规划和执行
  • 全局视角:可以浏览整个代码库,理解项目结构
  • AI 主导:AI 是司机,你是产品经理
  • 上下文丰富:通过工具(grep、LSP、文件读取)动态获取需要的信息
  • 任务导向:适合实现完整功能、大范围重构、调试复杂问题

工作流程是这样的:

你描述需求 → AI 分析代码库 → AI 制定计划 → AI 执行修改 → AI 验证结果 → 你审查

什么时候用哪个?

场景IDE + AICoding Agent
快速补全一行代码✅ 首选❌ 大材小用
写一个简单函数✅ 高效⚠️ 可以但没必要
实现一个完整功能⚠️ 需要大量手动操作✅ 首选
重构整个模块❌ 太繁琐✅ 首选
调试复杂 bug⚠️ 需要不断复制粘贴上下文✅ 可以自己探索
学习不熟悉的代码库⚠️ 需要自己翻代码✅ 直接问它
跨多个文件的修改❌ 容易遗漏✅ 首选

为什么 Coding Agent 正在崛起

2024-2025 年,我们见证了 Coding Agent 的爆发:

  1. 模型能力提升:Claude 3.5/4、GPT-4.5 等模型的推理能力足以胜任复杂的编程任务
  2. 上下文窗口扩大:从 4K 到 200K token,AI 终于可以”看到”整个项目
  3. 工具使用能力:现代 LLM 可以熟练使用 bash、文件操作、API 调用等工具
  4. 成本下降:API 价格持续下降,长时间运行 Agent 变得可行

Coding Agent 不是要取代 IDE,而是提供了一种新的工作方式。你可以:

  • 用 IDE 处理日常的小修小补
  • 用 Coding Agent 处理需要”思考”的任务

两者结合,才是最高效的工作流。


OpenCode 是什么

OpenCode 是一个 100% 开源的 AI 编程代理,它可以作为终端工具、桌面应用或 IDE 扩展使用。与 Claude Code 不同的是,OpenCode 不绑定任何特定的 AI 供应商——你可以使用 Claude、OpenAI、Google Gemini,甚至是本地模型。

为什么选择 OpenCode

相比 Claude Code,OpenCode 有以下优势:

  • 100% 开源:代码完全公开,社区驱动
  • 供应商无关:不锁定任何 AI 提供商,随着模型进化可以灵活切换
  • 开箱即用的 LSP 支持:语言服务器协议集成,提供代码智能功能
  • 专注 TUI:由 neovim 用户和 terminal.shop 的创作者打造,将终端体验推向极致
  • 客户端/服务器架构:OpenCode 可以在本地运行,同时支持远程控制(比如通过手机 App)

OpenCode 安装

OpenCode 提供了丰富的安装方式:

# 一键安装
curl -fsSL https://opencode.ai/install | bash

# 包管理器
npm i -g opencode-ai@latest  # 或 bun/pnpm/yarn
brew install anomalyco/tap/opencode  # macOS 和 Linux(推荐)
scoop install opencode  # Windows
choco install opencode  # Windows
paru -S opencode-bin  # Arch Linux

OpenCode 配置

安装完成后,需要配置 AI 供应商。OpenCode 支持 75+ 种 LLM 提供商,配置方式非常灵活。

方式一:使用 /connect 命令(TUI 内)

在 OpenCode 的 TUI 界面中,运行 /connect 命令:

/connect

然后选择你想使用的供应商(如 Anthropic、OpenAI、OpenRouter 等),按照提示完成认证。

方式二:使用 opencode auth 命令(终端)

在终端中直接管理认证:

# 登录/添加供应商
opencode auth login

# 查看已配置的供应商
opencode auth list

# 登出某个供应商
opencode auth logout <provider>

OpenCode 内置 Agent

OpenCode 内置了两个Agent,可以用 Tab 键切换:

  • build:默认Agent,拥有完全访问权限,用于开发工作
  • plan:只读Agent,用于分析和代码探索
    • 默认禁止文件编辑
    • 运行 bash 命令前会请求权限
    • 适合探索不熟悉的代码库或规划变更

OpenCode 基本使用

启动 OpenCode 很简单,在项目目录下运行:

opencode

你会看到一个漂亮的 TUI 界面。下面介绍几个最常用的工作流。

引用文件:@ 符号

在对话中引用特定文件,使用 @ 前缀:

这个文件的认证逻辑是怎么实现的?@src/auth/login.ts

OpenCode 会自动读取文件内容并作为上下文。你也可以引用整个目录:

帮我分析一下这个模块的整体架构 @src/components/

Plan → Build 工作流

这是 OpenCode 推荐的最佳实践:先规划,再执行

Step 1:切换到 Plan 模式

Tab 键切换到 Plan Agent。这个模式下 AI 只读不写,适合探索和规划。

我想给用户系统添加"软删除"功能:
1. 删除时不真正删除,而是标记 deletedAt 时间戳
2. 添加一个"回收站"页面显示已删除的用户
3. 支持恢复和永久删除操作

帮我分析一下需要改哪些文件,怎么改

Step 2:审查计划

Plan Agent 会分析代码库,给出详细的修改计划。你可以追问、调整,直到满意为止。

Step 3:切换到 Build 模式执行

Tab 切回 Build Agent,然后:

计划看起来不错,开始执行吧

Build Agent 会按照计划逐步修改代码。

实战示例:调试一个 Bug

假设你遇到了一个 API 返回 500 的问题:

用户登录时 POST /api/auth/login 返回 500 错误
错误日志显示 "Cannot read property 'id' of undefined"
帮我找到问题并修复

OpenCode 会:

  1. 搜索相关的路由处理代码
  2. 分析调用链,找到出问题的位置
  3. 提出修复方案
  4. 在你确认后执行修改
  5. (可选)运行测试验证修复

整个过程你只需要描述问题,剩下的交给 AI。


Oh My OpenCode:让 OpenCode 起飞

如果说 OpenCode 是 Debian/Arch,那么 Oh My OpenCode 就是 Ubuntu/Omarchy

Oh My OpenCode 是一个为 OpenCode 打造的”终极代理配置”插件,由 @code-yeongyu 开发。它将多模型编排、后台代理、LSP/AST 工具、MCP 集成等功能整合在一起,让你的 AI 编程体验提升到一个全新的维度。

核心理念:Sisyphus

sisyphus.png
sisyphus.png

在希腊神话中,西西弗斯被惩罚永远推巨石上山。LLM 代理也一样——它们每天都在”推动”自己的思想。Oh My OpenCode 的主代理就叫 Sisyphus,它不会半途而废,会一直工作直到任务完成。

魔法关键词:ultrawork

不想读那么多文档?只需在提示词中加入 ultrawork(或简写 ulw),所有功能就会自动生效——并行代理、后台任务、深度探索、不完成不罢休。

ulw 帮我重构这个模块的认证逻辑

就这么简单。喝杯咖啡,工作就完成了。

Sisyphus 的团队成员

Oh My OpenCode 预配置了一组专业化的代理:

代理职责模型
Sisyphus主代理,编排协调Opus 4.5 High
Oracle架构设计、调试GPT 5.2 Medium
Frontend Engineer前端开发Gemini 3 Pro
Librarian官方文档、开源实现、代码探索Claude Sonnet 4.5
Explore快速代码搜索Grok Code

工作流程示例

安装 Oh My OpenCode 后,你的代理会这样工作:

  1. Sisyphus 不浪费时间自己找文件——它会启动后台任务,让更快、更便宜的模型并行扫描代码库
  2. 重构时使用 LSP——更确定性、更安全、更精准
  3. 前端任务直接交给 Gemini 3 Pro
  4. 遇到难题时调用 GPT 5.2 进行高智商战略支援
  5. 处理复杂开源框架时,生成子代理实时消化源码和文档
  6. 注释要么有理由存在,要么删除——保持代码库整洁
  7. TODO 强制执行——如果任务没完成,系统会强制继续,直到 100% 完成

Oh My OpenCode 安装

最简单的方式是让你的 AI 代理来安装:

curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/master/docs/guide/installation.md

或者手动获取安装指南:

Install and configure oh-my-opencode by following the instructions here:
https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/refs/heads/master/docs/guide/installation.md

配置位置

  • 项目级配置:.opencode/oh-my-opencode.json
  • 用户级配置:~/.config/opencode/oh-my-opencode.json

支持 JSONC 格式(允许注释和尾随逗号)。

Oh My OpenCode 的杀手锏

Oh My OpenCode 的强大之处在于它把散落各处的最佳实践整合成了一个开箱即用的系统。让我挑几个最值得一提的功能展开说说。

后台代理:真正的”团队协作”

这可能是 Oh My OpenCode 最酷的功能之一。

传统的 AI 编程助手是串行的:它做完一件事才能做下一件。但真实的开发团队不是这样工作的——当你在写业务逻辑时,另一个同事可能在查文档,还有一个在跑测试。

Oh My OpenCode 的后台代理就是这个理念的体现:

你:帮我重构用户认证模块

Sisyphus:好的,我来协调这个任务
  ├─ [后台] Librarian 正在搜索相关的认证最佳实践...
  ├─ [后台] Explore 正在扫描代码库中所有认证相关的文件...
  └─ [主线程] 我先分析一下当前的架构...

当你看到 Sisyphus 在思考时,后台已经有好几个代理在并行干活了。等它开始输出方案时,所有需要的信息都已经准备好了。

这种工作方式有两个好处:

  1. 更快:并行总是比串行快
  2. 更便宜:后台任务用的是更便宜的模型(比如 Grok Code),重活累活交给便宜劳动力

LSP 集成:告别”AI 乱改代码”

如果你用过 AI 编程助手,一定遇到过这种情况:

AI 把一个函数名从 getUserById 改成了 fetchUser,但只改了定义,没改调用方。然后你的代码就炸了。

Oh My OpenCode 内置了 LSP(Language Server Protocol)支持。当需要重命名、重构时,它会调用真正的语言服务器来执行——和你在 IDE 里按 F2 重命名一样靠谱。

你:把 UserService 类重命名为 AuthService

# 传统 AI 的做法:用正则表达式全局替换,祈祷不会误伤
# Oh My OpenCode 的做法:调用 LSP 的 rename 功能,精确修改所有引用

这不是”尽量不出错”,而是”原理上就不会错”。

内置 MCP:不用自己折腾工具链

MCP(Model Context Protocol)是 Anthropic 推出的工具调用标准,让 AI 可以使用外部工具。Oh My OpenCode 内置了几个最实用的:

MCP 工具干什么用
Exa (websearch)网页搜索,找最新的库、API 文档、Stack Overflow 答案
Context7专门抓取官方文档,比直接 Google 更精准
grep.app在 GitHub 上搜代码,看看别人怎么用某个库

以前你需要自己配置这些工具,现在开箱即用。

Ralph Loop:不完成不罢休

这个功能的名字来自于《无敌破坏王》里的 Ralph——一个不达目的不罢休的角色。

当你启用 Ralph Loop 后,代理会持续工作直到任务 100% 完成。不会出现”我已经完成了大部分,剩下的你自己来吧”这种情况。

搭配 Todo Enforcer,效果更佳:

你:ulw 实现用户登录功能,包括表单验证、API 调用、错误处理、loading 状态

# 代理不会在做完表单验证后就停下来
# Todo Enforcer 会持续追踪:API 调用 ✓、错误处理 ✓、loading 状态 ✓
# 直到所有项目都打勾

Claude Code 无缝迁移

如果你之前是 Claude Code 用户,好消息:Oh My OpenCode 保持了完整的兼容性。

  • Hooks 系统:你的自定义 hook 可以直接用
  • Commands:自定义命令继续工作
  • Skills:已有的 skill 文件无需修改
  • MCP 配置:之前配好的 MCP 工具可以继续使用

换句话说,你可以把 Oh My OpenCode 理解为”Claude Code 的开源超集”——原来能做的都能做,还多了一堆新功能。

总结

OpenCode 为我们提供了一个开源、供应商无关的 AI 编程代理,而 Oh My OpenCode 则将它打造成一个开箱即用的”AI 开发团队”。

对于前端开发者来说,这个组合特别有吸引力:

  • 不再绑定单一 AI 供应商,可以根据任务选择最合适的模型
  • 终端优先的体验,适合习惯命令行工作的开发者
  • 丰富的扩展性,可以根据自己的需求定制

如果你厌倦了 IDE 插件的限制,想要一个真正灵活、强大的 AI 编程助手,不妨试试 OpenCode + Oh My OpenCode 的组合。

参考资料

  • 本文作者: tc9011
  • 本文链接: https://tc9011.com/posts/2026/codingagent时代-opencode与ohmyopencode入坑指南/
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!