OpenCode 双插件协同开发指南|Oh My OpenCode+Superpowers 兼顾效率与规范
很多同学在 OpenCode 中装完 Superpowers 后,都会有一个疑问:已经有了做代码规范的 Superpowers,还有必要用 Oh My OpenCode(OMOC)吗? 甚至装了两个插件后,不知道如何配合使用,导致要么只用到了其中一个的功能,要么让两者互相'冲突',浪费了插件的核心价值。
其实答案很明确:两者是互补而非替代的关系,组合使用才是 OpenCode 的最优解。OMOC 是「项目开发总指挥」,负责拆解任务、并行调度、自动化工具调用,主打一个提效率;Superpowers 是「代码工程质检员」,负责约束 AI 遵循 TDD、代码审查、重构等最佳实践,主打一个保规范。
这篇文章就把两者的核心区别讲透,再通过实操性拉满的协同开发教程,教你用 OMOC+Superpowers 开发项目,既让 AI 写代码又快又好,还能彻底摆脱'手动拆任务、反复改代码'的痛点,全程贴合开发实际。
一、先搞懂:OMOC 与 Superpowers 核心区别(一张表讲清)
想要配合好,先得认清楚两者的定位、价值和适用场景,避免用混。下面这张表是核心,后续开发时快速对照:
| 对比维度 | Oh My OpenCode(OMOC) | Superpowers |
|---|
| 核心定位 | 智能体自动化编排层、项目开发总指挥 | 工程化流程规范层、代码质检员 |
| 核心角色 | 拆任务、调智能体、管工具、做整合 | 定规范、控流程、审代码、做重构 |
| 核心价值 | 提升开发效率,减少手动操作,支持复杂项目 | 保证代码质量,遵循工程最佳实践,降低维护成本 |
| 操作方式 | 以 omoc 指令为入口,自动化调度多智能体 | 以 use skill 指令为入口,按需加载技能约束 AI |
| 典型适用场景 | 快速原型开发、多模块/多仓库项目、自动化构建测试 | 核心业务代码开发、代码重构、测试驱动开发 |
| 通俗理解 | 公司的项目经理 + 运维 | 公司的资深架构师 + 代码审查员 |
简单来说:OMOC 负责'宏观做对事',让你不用手动管项目开发的全流程;Superpowers 负责'微观把事做对',让 AI 写的每一行代码都符合工程标准。
二、为什么必须协同使用?单插件的痛点太明显
如果只装其中一个插件,开发时会遇到很直观的痛点,只有组合使用才能完美解决,这也是两者存在的核心意义:
❶ 只装 OMOC:快是快了,代码质量一言难尽
OMOC 的自动化和并行能力确实能让开发速度翻倍,但 AI 会脱离工程规范,写出的代码存在诸多问题:
- 没有单元测试,后期改一个 Bug 牵一发而动全身;
- 代码结构混乱,冗余逻辑多,团队协作时别人看不懂;
- 不遵循开发规范(如命名、注释),项目维护成本极高。
总结:适合快速做原型验证,但绝对不能用于生产项目。
❷ 只装 Superpowers:代码规范了,开发效率低到哭
Superpowers 能让 AI 写出近乎'工业级'的规范代码,但所有项目管理工作都需要你手动完成:
- 需要自己拆解项目任务,手动分配开发重点;
- 多模块开发时无法并行,只能一个个写,耗时翻倍;
- 构建、测试、格式化都需要手动执行命令,重复操作多。
总结:适合开发核心小模块,但应对复杂项目时会被繁琐的手动操作拖慢节奏。
❸ 协同使用:效率与规范兼得,开发体验拉满
OMOC+Superpowers 的组合,完美结合了两者的优势,实现自动化调度 + 工程化规范的双重保障:
- OMOC 帮你拆任务、调智能体、做自动化,你只需要提核心需求;
- Superpowers 帮你控流程、审代码、定规范,AI 写出的代码直接能用;
- 无论是小模块开发还是复杂多仓库项目,都能轻松应对,生产环境也能直接落地。
三、前置准备:确保两个插件都正常生效(必做)
协同开发的前提是两个插件都已正确安装并激活,先花 2 分钟验证,避免后续操作踩坑,按步骤执行即可:
步骤 1:验证 Oh My OpenCode 生效
在终端执行以下命令,能输出版本号即说明生效:
omoc --version
也可以在 OpenCode 会话中输入,有正常回复即生效:
omoc help
步骤 2:验证 Superpowers 生效
在 OpenCode 会话中输入经典验证指令,能列出技能列表即说明生效:
do you have superpowers?
✅ 生效标志:OpenCode 回复确认信息,并列出 brainstorming/tdd/code-review/debugging 等技能。
步骤 3:快速排查插件未生效问题
如果其中一个插件未生效,按以下方式快速修复,无需重新安装:
ln -sf ~/.config/opencode/superpowers/.opencode/plugins/superpowers.js ~/.config/opencode/plugins/
ln -sf ~/.config/opencode/superpowers/skills ~/.config/opencode/skills/superpowers
npm install -g oh-my-opencode
bun install -g oh-my-opencode
验证完成后,重启 OpenCode,进入下一步核心配置。
四、核心配置:让 OMOC 默认加载 Superpowers 技能(关键)
协同使用的核心痛点是:每次用 OMOC 调度任务后,都需要手动输入 use skill 加载 Superpowers 技能,非常繁琐。
解决方案:修改 OMOC 的配置文件,让其默认加载 Superpowers 核心技能,所有由 OMOC 调度的智能体,都会自动遵循 Superpowers 的工程规范,一次配置,永久生效。
步骤 1:打开 OMOC 的配置文件
OMOC 的默认配置文件路径为 ~/.config/oh-my-opencode/config.yaml,直接用编辑器打开:
nano ~/.config/oh-my-opencode/config.yaml
vim ~/.config/oh-my-opencode/config.yaml
步骤 2:添加 Superpowers 默认技能配置
在配置文件中添加以下内容(无配置文件则直接新建,粘贴内容即可),建议加载TDD+ 代码审查两个核心技能,覆盖 90% 的开发场景:
default_skills:
- superpowers/tdd
- superpowers/code-review
default_agent: "ultrawork"
format: false
步骤 3:保存配置并生效
保存后重启 OpenCode,配置立即生效,后续所有 OMOC 指令都会自动加载 Superpowers 技能,无需手动操作。
五、实战协同开发:用 OMOC+Superpowers 开发 Python FastAPI 项目
接下来以开发一个用户管理的 Python FastAPI 接口项目为例,完整演示两者的协同开发流程,包含任务拆解→规范开发→自动化构建→代码审查全环节,开发流程适用于绝大多数后端/前端/全栈项目。
项目需求
开发一个轻量的用户管理 FastAPI 项目,包含 3 个核心功能:用户注册、用户查询、用户删除,要求遵循 TDD 开发流程,自带单元测试,代码符合 PEP8 规范,最终输出可直接运行的项目代码。
协同开发核心分工
- OMOC:拆解项目任务、调度专用智能体并行开发、自动执行代码格式化和项目构建;
- Superpowers:强制 AI 遵循 TDD 流程(先写测试再写代码)、自动做代码审查,保证代码质量。
步骤 1:OMOC 宏观拆解任务,调度并行智能体
在 OpenCode 会话中输入 omoc ultrawork 指令,让 OMOC 自动拆解任务并分配后端开发智能体,无需手动拆分,OMOC 会直接给出开发计划:
omoc ultrawork "开发一个用户管理的 Python FastAPI 项目,核心功能:用户注册、用户查询、用户删除。要求基于 SQLite 数据库,遵循 PEP8 规范,输出可直接运行的项目代码和启动命令"
✅ 执行效果:OMOC 会自动完成 3 件事:
- 拆解项目为接口开发、数据库设计、单元测试3 个子任务;
- 分配专用的
backend-engineer 智能体负责开发;
- 给出详细的开发计划和技术选型建议(如依赖包、项目结构)。
步骤 2:Superpowers 微观规范开发,强制 TDD 流程
由于我们在 OMOC 配置中默认加载了 superpowers/tdd 和 superpowers/code-review 技能,OMOC 调度的智能体会自动遵循 TDD 开发流程,无需额外输入指令,全程由 Superpowers 约束:
✅ 开发流程(AI 自动执行,无需干预):
- 先编写单元测试用例(覆盖用户注册/查询/删除的正常场景和边界条件,如空用户名、不存在的用户 ID);
- 再编写最小可运行的业务代码,满足测试用例要求;
- 最后做代码审查和优化,比如优化接口返回格式、增加异常捕获、遵循 PEP8 命名规范。
步骤 3:OMOC 自动化构建项目,执行单元测试
开发完成后,输入 OMOC 指令,让其自动安装项目依赖、执行单元测试、验证项目可运行,无需手动敲 pip install 和测试命令:
omoc run "安装项目所有依赖,执行单元测试,确保所有测试用例通过,给出项目启动命令"
✅ 执行效果:OMOC 会自动输出:
- 依赖安装命令(如
pip install fastapi uvicorn sqlite3 pytest);
- 单元测试执行结果(所有用例 Pass);
- 项目启动命令(如
uvicorn main:app --reload)。
步骤 4:Superpowers 最终全项目代码审查
为了确保项目能直接用于生产环境,输入 Superpowers 指令,做最终的全项目代码审查,让 AI 给出优化建议:
use skill tool to load superpowers/code-review; 对这个用户管理 FastAPI 项目做全代码审查,重点检查:1. 异常处理是否完善;2. 数据库操作是否安全;3. 代码结构是否清晰;4. 给出具体的优化建议
✅ 执行效果:AI 会逐文件审查代码,列出问题并给出可直接复制的优化代码,比如增加请求参数校验、优化数据库连接池、删除冗余逻辑。
步骤 5:本地验证运行
按 OMOC 给出的启动命令运行项目,在浏览器访问 http://127.0.0.1:8000/docs,就能看到自动生成的接口文档,直接测试接口,整个项目开发完成!
六、高频协同场景速查(直接复制用)
为了方便大家日常开发,整理了 4 个最常用的协同开发场景,对应的 OMOC+Superpowers 指令直接复制到 OpenCode 即可使用,覆盖快速原型、多模块开发、项目重构、Bug 调试,满足 90% 的开发需求:
| 开发场景 | 协同指令示例 |
|---|
| FastAPI 快速原型开发 | omoc ultrawork "开发一个图书管理 FastAPI 项目,含增删改查接口,SQLite 数据库" |
| 前端 Vue 多组件开发 | omoc ultrawork "开发一个 TodoList Vue3 项目,含待办添加/完成/删除,使用 Pinia 做状态管理" |
| 项目代码重构 | omoc assign "refactor-agent" "use skill tool to load superpowers/refactoring; 重构这个 Python 项目,优化代码结构,删除冗余逻辑,保证功能不变" |
| 代码 Bug 调试 | omoc assign "debug-agent" "use skill tool to load superpowers/debugging; 调试这个 FastAPI 项目的用户查询接口,修复返回空数据的 Bug,增加异常处理" |
七、常见问题排查(避坑指南)
协同使用过程中,大概率会遇到 3 个高频问题,整理了原因 + 解决方案,无需重新安装插件,快速修复即可:
问题 1:OMOC 调度的智能体未加载 Superpowers 技能
原因:OMOC 配置文件修改错误,或未重启 OpenCode 生效;
解决方案:重新检查 ~/.config/oh-my-opencode/config.yaml 中的 default_skills 配置,确保拼写正确,保存后重启 OpenCode。
问题 2:两者配合后,OpenCode 响应变慢
原因:OMOC 并行智能体数量过多,叠加 Superpowers 的代码审查,导致 AI 计算量增大;
解决方案:限制 OMOC 并行智能体数量,指令中添加 --agents 2(建议 2-3 个):
omoc ultrawork --agents 2 "开发 FastAPI 用户管理项目"
问题 3:OMOC 自动格式化与 Superpowers 规范冲突
原因:OMOC 和 Superpowers 的代码格式化规则不一致,导致代码格式混乱;
解决方案:在 OMOC 配置文件中禁用自动格式化,由 Superpowers 统一处理:
问题 4:加载 Superpowers 技能时,提示'skill not found'
原因:Superpowers 的技能符号链接创建失败,或仓库克隆不完整;
解决方案:重新创建符号链接,或重新克隆仓库:
ln -sf ~/.config/opencode/superpowers/skills ~/.config/opencode/skills/superpowers
cd ~/.config/opencode && rm -rf superpowers && git clone https://github.com/obra/superpowers.git
八、总结:OMOC+Superpowers 协同开发核心要点
这两个插件的组合,本质上是让 OpenCode 实现了**'自动化调度 + 工程化规范'**的双重能力,也是目前 OpenCode 开发项目的最优解,核心要点总结为 3 句话,方便大家记忆:
- 分工原则:OMOC 做宏观调度(拆任务、调智能体、自动化),Superpowers 做微观执行(定规范、审代码、控流程),各司其职,互不冲突;
- 关键配置:在 OMOC 的
config.yaml 中配置 default_skills,让其默认加载 Superpowers 核心技能,一次配置,永久生效,避免重复操作;
- 使用技巧:复杂项目用
omoc ultrawork 做并行调度,小模块/重构/调试用 omoc assign 分配专用智能体,配合 Superpowers 的对应技能,精准开发。
最后再强调一句:有了 Superpowers,不仅需要用 OMOC,而且两者配合后才能发挥 OpenCode 的最大价值。从快速原型到生产项目,从单模块到多仓库,都能轻松应对,既提升开发效率,又保证代码质量,真正让 AI 成为你的'全职开发伙伴'。
附:插件后续更新方法(无需重新安装)
两个插件的更新都非常简单,直接拉取最新代码/重新全局安装即可,保留原有配置:
cd ~/.config/opencode/superpowers
git pull
npm install -g oh-my-opencode@latest
bun install -g oh-my-opencode@latest
更新后重启 OpenCode,即可使用最新功能。