OpenCode + Oh My OpenCode 高级使用教程:掌握 ulw、ralph-loop 与高效玩法
OpenCode + Oh My OpenCode 高级使用教程:掌握 ulw、ralph-loop 与高效玩法
OpenCode 是一个强大的终端式 AI 编程助手,支持多种大模型(Claude、Gemini、GPT、GLM 等),能在本地项目中直接读写代码、执行命令、调试问题。
Oh My OpenCode(简称 OMO)是其最强插件,把单个模型升级为“多代理协作团队”:oracle(架构师)、librarian(代码库专家)、frontend、backend 等角色并行工作,自动调度任务、深度探索代码库。
本教程假设你已完成安装与基本配置,直接聚焦高级提示词与高效玩法,帮助你把生产力提升到极致。
1. 基本命令快速回顾(前提)
OpenCode 交互方式:
- 直接输入自然语言需求 → AI 自动读项目、生成/修改代码
- 斜杠命令(/ 开头):
/edit <文件>:精准编辑文件/run <命令>:执行终端命令/test:运行测试套件/undo:撤销上一步操作/clear:清空上下文/diff:查看最近改动
OMO 扩展后,所有高级能力主要通过提示词触发,不需要额外命令行参数。
2. 核心高级提示词详解
2.1 ulw(UltraWork 模式)—— 日常最常用、性价比最高的开挂指令
核心机制:
在提示词中加入 ulw(或 ultrawork),OMO 会自动激活全部增强功能:
- 多代理并行(oracle 规划 → librarian 分析现有代码 → 专业角色实现)
- 深度工具链(LSP 静态分析、AST 解析、MCP 多文件上下文)
- 子任务智能拆分与调度
- 自动验证与迭代
基础用法:
ulw 请实现用户认证系统:注册、登录、JWT、刷新令牌、权限控制,集成到现有 Express 项目。
进阶技巧:
-
指定优先级与角色分配
ulw UI 部分优先交给视觉/交互专家,优先级最高;后端逻辑交给 backend 代理;整体架构先让 oracle 评审。 请实现一个实时仪表盘,支持 WebSocket 更新、ECharts 图表、深色模式。 -
强制深度代码库探索
ulw 先全面分析整个代码库的现有模式和痛点,再重构所有 API 路由为 RESTful 标准,消除重复代码。 -
批量清理与优化
ulw 移除所有 console.log、dead code、未使用 import/variables;统一代码风格(Prettier + ESLint);性能优化所有慢查询。 -
新项目从零搭建
ulw 创建一个完整的 SaaS 模板:Next.js 14 App Router + Prisma + PostgreSQL + NextAuth + Tailwind + Shadcn/ui,支持多租户和订阅支付(Stripe)。 -
结合工具链
ulw 先运行 npm test 收集失败案例,再针对性修复所有单元测试和集成测试,确保覆盖率 >90%。
为什么 ulw 这么强:
普通提示是单模型线性思考,容易遗漏边缘 case 或与现有代码冲突。ulw 开启多代理并行,librarian 会持续引用项目历史,oracle 会提前识别风险,整体质量和速度提升 3-5 倍。
使用建议:
- 小任务(如改一个组件)不需要 ulw
- 中大型任务(新功能、重构、跨模块)必须加 ulw
- token 消耗会增加 2-4 倍,建议把高耗模型(如 Sonnet)留给关键代理
2.2 ralph-loop(自主无限迭代循环)—— 追求完美时的终极武器
核心机制:
AI 会反复执行任务 → 自检 → 修复 → 再执行,直到满足完成条件或达到最大次数。适合需要“死磕到底”的场景。
触发格式:
/ralph-loop "任务描述(建议先加 ulw 增强)" --max-iterations N --completion-promise "停止条件"
参数详解:
--max-iterations:安全阀,推荐 10-30--completion-promise:关键!必须是 AI 输出中能明确检测的短语
实战示例:
-
修复遗留 bug
ulw /ralph-loop "修复所有已知的生产 bug(参考 ISSUE 列表),所有测试必须通过" --max-iterations 20 --completion-promise "所有测试通过且无新错误" -
性能优化
ulw /ralph-loop "优化首页加载时间到 <1.5s(Lighthouse 分数 >95)" --max-iterations 25 --completion-promise "Lighthouse 性能分 >95" -
大型迁移
ulw /ralph-loop "将整个项目从 Redux 迁移到 Zustand,所有功能保持一致" --max-iterations 30 --completion-promise "所有 e2e 测试通过且无状态丢失" -
算法死磕
ulw /ralph-loop "实现一个 O(n log n) 的顶部 K 频繁元素算法,通过所有 leetcode 风格测试用例" --max-iterations 15 --completion-promise "所有测试用例通过"
高级玩法:
- 嵌套 ulw + ralph-loop:先 ulw 规划,再进入 ralph-loop 执行
- 中途干预:在终端看到进度不满意时 Ctrl+C 停止,调整提示后重启
- 结合实际运行:循环中让 AI 自动
/run npm run build检查是否成功
风险控制:
- 容易消耗大量 token,建议先小范围测试(max-iterations 5)
- completion-promise 要写得精准、可检测,避免无限循环
2.3 其他高级提示词技巧
-
直接@调用特定代理
@oracle 请先设计整体微服务架构图和数据库 schema @librarian 请搜索项目中所有与支付相关的代码,总结现有逻辑和潜在风险 @frontend 请实现一个现代的响应式侧边栏,支持折叠和动态路由 -
后台并行任务(不阻塞主对话)
ulw background: 持续监控代码库变化,自动生成更新后的架构文档 ulw background: 分析所有第三方依赖,列出过时/有安全漏洞的包并建议升级路径 -
链式任务(分阶段)
ulw 第一阶段:只规划和输出详细实现计划(不修改代码) ulw 第二阶段:根据计划逐步实现,每步完成后等待我确认 -
强制思考链
在任何复杂提示前加:请严格遵守:1. 先全面分析现有代码 2. 输出详细计划 3. 分步执行 4. 每步完成后运行测试验证 -
多模型协同优化
在 oh-my-opencode.json 中:- oracle 用 Claude-3.5-Sonnet(强推理)
- librarian 用 Gemini-1.5-Pro(超长上下文)
- 代码生成用 GPT-4o 或 o1(速度快)
3. 更多高效玩法与场景
-
每日代码审查流程
早上输入:ulw 审查昨天的所有 git commit,指出潜在 bug、性能问题、风格不一致,并自动修复低风险项 -
文档自动同步
ulw 每次代码变更后,自动更新 README、API 文档、架构图(用 mermaid) -
探索性研发
ulw 并行探索三种技术方案:A. 使用 tRPC B. 使用 GraphQL C. 使用 REST + Zod,请分别实现最小可运行原型并对比优劣 -
一对多代码生成
ulw 为以下 10 个组件生成统一风格的实现:Button, Card, Modal, Table... -
与 Git 深度集成
ulw 根据 feat: 新增用户仪表盘 的 commit message,自动生成 PR 描述、变更日志、迁移指南
4. 常见问题与优化建议
- 输出卡住:加“一步一步思考,出错时立即报告”或重启对话
- token 超支:优先用 Gemini 做 librarian;复杂任务分阶段执行
- 代理不听话:在提示中明确“严格按照我的指令,不得自行添加功能”
- 想加新代理:在 oh-my-opencode.json 添加,如 "tester":
- 保持上下文:大项目建议用
/clear前备份重要对话
掌握 ulw + ralph-loop + @代理调用,你就真正把 OpenCode + OMO 用到了极致。很多开发者反馈:复杂功能从几天缩短到几小时,重构从一周变成一晚。
OpenCode + Oh My OpenCode 实战案例大全
以下是更多真实开发场景下的实战案例,覆盖前端、后端、全栈、重构、调试、优化、文档、探索性研发等常见需求。每个案例都给出具体提示词、推荐触发方式(ulw / ralph-loop / @代理等)、预期效果以及为什么高效。
这些案例都基于实际开发者反馈整理,复制提示词直接粘贴到 OpenCode 对话中使用即可。建议复杂案例必加 ulw,追求完美时再套 ralph-loop。
1. 前端组件库快速迭代
场景:你正在用 Shadcn/ui 搭建组件库,想一次性生成 8 个常用组件,并统一风格、支持暗黑模式、无障碍。
推荐提示词:
ulw 为以下组件生成完整实现,使用 Shadcn/ui + Tailwind + Radix,确保风格一致、响应式、支持暗黑模式和键盘导航(a11y):
1. Accordion
2. Tabs
3. Dropdown Menu
4. Tooltip
5. Dialog
6. Sheet (侧边抽屉)
7. Toast
8. Command Palette
每个组件都要提供示例用法和 Storybook 故事。
为什么高效:ulw 会自动把 UI 任务分配给 frontend 代理,librarian 参考现有 Shadcn 源码,避免重复造轮子。一次性生成 8 个高质量组件,通常 10-20 分钟完成。
2. 后端 API 大规模重构
场景:遗留 Express 项目路由混乱,想统一为 RESTful,添加 Zod 验证、错误处理、日志。
推荐提示词:
ulw 先让 @oracle 设计统一的 API 规范(RESTful、分层、错误码),再逐步重构所有路由:
- 所有请求/响应使用 Zod schema 验证
- 统一错误处理 middleware
- 添加请求日志(morgan + winston)
- 分页、过滤、排序通用支持
每修改一个路由后运行测试验证。
进阶(死磕版):
ulw /ralph-loop "重构所有用户相关 API 为 RESTful 标准,所有现有测试必须通过" --max-iterations 20 --completion-promise "所有 API 测试通过且 Zod 验证覆盖率 100%"
为什么高效:oracle 先规划避免翻车,ralph-loop 自动修复测试失败,直到真正稳定。
3. 全栈实时功能开发
场景:需要一个实时协作白板(类似 Excalidraw 简化版),前端 Canvas + Socket.io,后端房间管理 + 持久化。
推荐提示词:
ulw 并行实现一个实时协作画板:
- 前端:React + Canvas,工具栏(线条、矩形、文本、颜色)
- 后端:Socket.io 房间广播,MongoDB 持久化画板状态
- 功能:多人实时同步、撤销/重做、导出 PNG
@frontend 负责 UI/交互流畅,@backend 负责防冲突和性能。
为什么高效:ulw 多代理并行,前端后端同时推进,通常 1-2 小时出 MVP。
4. 性能优化深度排查
场景:Next.js 项目首页加载慢,Lighthouse 分数 70,想优化到 95+。
推荐提示词:
ulw /ralph-loop "优化首页性能到 Lighthouse >95(移动端)" --max-iterations 25 --completion-promise "Lighthouse 性能分 >95 且无回归"
具体方向:
- 图片优化(next/image + webp)
- 字体预加载
- 代码分割
- 服务端组件最大化
- 减少 hydration
每步优化后运行 lighthouse 检查。
为什么高效:ralph-loop 会反复运行 /run lighthouse,自动发现新瓶颈并修复,人类手动要测几十次。
5. 遗留代码现代化迁移
场景:Vue 2 项目想升级到 Vue 3 + Composition API + Pinia。
推荐提示词:
ulw /ralph-loop "将整个项目从 Vue 2 + Vuex 迁移到 Vue 3 + Composition API + Pinia,所有功能和测试保持一致" --max-iterations 40 --completion-promise "npm run test 和 e2e 全通过,无 Options API 残留"
分阶段:
1. 先升级 Vue 版本和依赖
2. 逐文件转换组件
3. 替换 Vuex 为 Pinia
4. 清理废弃代码
为什么高效:大迁移最怕漏掉边缘 case,ralph-loop 会自动跑测试修复,直到 CI 全绿。
6. 自动化文档与知识管理
场景:项目大了,文档落后,想让代码变更自动同步文档。
推荐提示词:
ulw background: 监控所有代码变更,每次提交后自动:
- 更新 README(功能列表、快速开始)
- 生成/更新 API 文档(Swagger/OpenAPI)
- 更新架构图(Mermaid)
- 生成变更日志(Conventional Commits)
输出到 docs/ 目录。
后续日常使用:
每次 commit 后直接问:
ulw 请根据最新 commit 更新所有文档
为什么高效:从此告别手动写文档,知识永远与代码同步。
7. 探索多种技术方案对比
场景:想决定用 tRPC 还是 GraphQL 还是 TanStack Query + REST,做全栈类型安全。
推荐提示词:
ulw 并行探索三种方案的最小可运行原型(基于现有 Next.js 项目):
方案 A: tRPC + Zod
方案 B: GraphQL + Apollo + codegen
方案 C: REST + TanStack Query + Zod
每个方案实现相同的功能:用户 CRUD + 实时通知。
完成后对比:
- 类型安全
- 开发体验
- 性能
- 维护成本
给出推荐。
为什么高效:一次性并行跑三个原型,省去自己一个个试的几天时间。
8. 安全审计与修复
场景:项目要上线,想全面检查安全漏洞。
推荐提示词:
ulw 先让 @librarian 扫描所有依赖(npm audit),再全面审计代码:
- SQL 注入 / XSS / CSRF
- JWT 安全最佳实践
- Rate limiting
- Helmet 配置
- 环境变量泄露
列出所有问题,按严重程度排序,并自动修复低中风险项,高风险项给出方案等我确认。
为什么高效:librarian 会深度搜索代码库,结合 oracle 判断风险,自动修大部分问题。
9. 测试覆盖率提升
场景:测试覆盖率只有 60%,想快速冲到 90%+。
推荐提示词:
ulw /ralph-loop "为所有核心业务逻辑补全单元测试和集成测试,覆盖率达到 90%" --max-iterations 30 --completion-promise "npm run coverage 显示 >90% 且所有测试通过"
优先覆盖:
- API handlers
- 业务服务层
- 工具函数
使用 Jest + React Testing Library。
为什么高效:AI 写测试比人快 10 倍,ralph-loop 自动修复失败测试。
10. 一键部署与 DevOps 优化
场景:想配置完整的 CI/CD + Docker + Vercel/Netlify。
推荐提示词:
ulw 配置完整生产级部署流程:
- Dockerfile 多阶段构建
- GitHub Actions CI(lint + test + build)
- Vercel/Netlify 自动部署
- 环境变量管理
- 健康检查和回滚策略
生成所有配置文件并说明部署步骤。
为什么高效:一次性输出全套最佳实践配置,直接 commit 就能用。
这些案例基本覆盖了日常开发的 90% 场景。多实践几次,你会找到最适合自己项目的提示词风格。记住核心公式:
小改动 → 普通提示
中大型功能 → ulw + 明确角色分配
追求极致/大重构 → ulw + ralph-loop + 精准 completion-promise

浙公网安备 33010602011771号