OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  oh-my-opencode: OpenCode 的多智能体编排插件

oh-my-opencode: OpenCode 的多智能体编排插件

 
  training ·  2026-02-01 17:15:25 · 3 次点击  · 0 条评论  

name: oh-my-opencode
description: 用于 OpenCode 的多智能体编排插件。当用户需要安装、配置或操作 oh-my-opencode 时使用——包括智能体委托、Ultrawork 模式、Prometheus 规划、后台任务、基于类别的任务路由、模型解析、tmux 集成或任何 oh-my-opencode 功能。涵盖安装、配置、所有智能体(Sisyphus、Oracle、Librarian、Explore、Atlas、Prometheus、Metis、Momus)、所有类别、斜杠命令、钩子、技能、MCP 和故障排除。
metadata:
clawdbot:
emoji: "🏔️"
homepage: "https://github.com/code-yeongyu/oh-my-opencode"
requires:
bins: ["opencode"]


Oh My OpenCode

一个多智能体编排插件,将 OpenCode 转变为一个完整的智能体框架,具备专用智能体、后台任务执行、基于类别的模型路由和自主工作模式。

包名: oh-my-opencode (通过 bunx oh-my-opencode install 安装)
仓库: https://github.com/code-yeongyu/oh-my-opencode
配置模式: https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json


先决条件

  1. 已安装并配置 OpenCode (opencode --version 应为 1.0.150+)
    bash curl -fsSL https://opencode.ai/install | bash # 或者: npm install -g opencode-ai # 或者: bun install -g opencode-ai
  2. 至少认证一个 LLM 提供商 (opencode auth login)
  3. 强烈建议: Anthropic Claude Pro/Max 订阅 (Sisyphus 使用 Claude Opus 4.5)

安装

运行交互式安装程序:

bunx oh-my-opencode install

使用提供商标志的非交互式模式:

bunx oh-my-opencode install --no-tui \
  --claude=<yes|no|max20> \
  --openai=<yes|no> \
  --gemini=<yes|no> \
  --copilot=<yes|no> \
  --opencode-zen=<yes|no> \
  --zai-coding-plan=<yes|no>

验证:

opencode --version
cat ~/.config/opencode/opencode.json  # 插件数组中应包含 "oh-my-opencode"

两种工作流模式

模式 1: Ultrawork (快速自主工作)

在提示中包含 ultraworkulw 即可。

ulw 为我的 Next.js 应用添加身份验证

智能体将自动执行以下操作:
1. 探索你的代码库以理解现有模式
2. 通过专用后台智能体研究最佳实践
3. 遵循你的惯例实现功能
4. 通过诊断和测试进行验证
5. 持续工作直到 100% 完成

模式 2: Prometheus (精确规划工作)

适用于复杂或关键任务:

  1. 按 Tab 键 → 切换到 Prometheus (规划器) 模式
  2. 描述你的工作 → Prometheus 会采访你,在研究代码库的同时提出澄清性问题
  3. 确认计划 → 在 .sisyphus/plans/*.md 中查看生成的计划
  4. 运行 /start-work → Atlas 编排器接管:
    • 将任务分发给专用子智能体
    • 独立验证每个任务的完成情况
    • 跨任务积累学习成果
    • 跨会话跟踪进度 (可随时恢复)

关键规则:不要在没有 /start-work 的情况下使用 Atlas。Prometheus 和 Atlas 是配对使用的——始终一起使用。


智能体

所有智能体默认启用。每个智能体都有默认模型和提供商优先级回退链。

智能体 角色 默认模型 提供商优先级链
Sisyphus 主要编排器 claude-opus-4-5 anthropic → kimi-for-coding → zai-coding-plan → openai → google
Sisyphus-Junior 专注的任务执行器 (通过 delegate_task 与类别使用) 由类别决定 按类别链
Hephaestus 自主深度工作者——目标导向,行动前探索 gpt-5.2-codex (medium) openai → github-copilot → opencode (需要 gpt-5.2-codex)
Oracle 架构、调试、高智商推理 (只读) gpt-5.2 openai → google → anthropic
Librarian 官方文档、开源软件搜索、远程代码库分析 glm-4.7 zai-coding-plan → opencode → anthropic
Explore 快速代码库 grep (上下文搜索) claude-haiku-4-5 anthropic → github-copilot → opencode
Multimodal Looker 图像/PDF/图表分析 gemini-3-flash google → openai → zai-coding-plan → kimi-for-coding → anthropic → opencode
Prometheus 工作规划器 (基于采访的计划生成) claude-opus-4-5 anthropic → kimi-for-coding → openai → google
Metis 预规划顾问 (模糊性/失败点分析) claude-opus-4-5 anthropic → kimi-for-coding → openai → google
Momus 计划审查员 (清晰度、可验证性、完整性) gpt-5.2 openai → anthropic → google
Atlas 计划编排器 (通过 /start-work 执行 Prometheus 计划) k2p5 / claude-sonnet-4-5 kimi-for-coding → opencode → anthropic → openai → google
OpenCode-Builder 默认构建智能体 (当 Sisyphus 激活时默认禁用) 系统默认 系统默认

调用智能体

智能体通过 delegate_task()--agent CLI 标志调用——使用 @ 前缀。

// 调用特定智能体
delegate_task(subagent_type="oracle", prompt="审查这个架构...")

// 通过类别调用 (路由到具有类别模型的 Sisyphus-Junior)
delegate_task(category="visual-engineering", load_skills=["frontend-ui-ux"], prompt="...")

// 后台执行 (非阻塞)
delegate_task(subagent_type="explore", run_in_background=true, prompt="查找身份验证模式...")

CLI:

opencode --agent oracle
opencode run --agent librarian "解释此代码库中的身份验证工作原理"

何时使用哪个智能体

场景 智能体
通用编码任务 Sisyphus (默认)
自主目标导向的深度工作 Hephaestus (需要 gpt-5.2-codex)
架构决策,2次以上失败后的调试 Oracle
查找库文档,寻找开源示例 Librarian
在代码库中查找代码模式 Explore
分析图像、PDF、图表 Multimodal Looker
需要计划的复杂多日项目 Prometheus + Atlas (通过 Tab → /start-work)
预规划范围分析 Metis
审查生成计划的漏洞 Momus
快速单文件更改 使用 quick 类别的 delegate_task

类别

类别通过 delegate_task() 将任务路由到 Sisyphus-Junior,并使用针对领域优化的模型。

类别 默认模型 变体 提供商优先级链 最适合
visual-engineering gemini-3-pro google → anthropic → zai-coding-plan 前端、UI/UX、设计、样式、动画
ultrabrain gpt-5.2-codex xhigh openai → google → anthropic 深度逻辑推理、复杂架构
deep gpt-5.2-codex medium openai → anthropic → google 目标导向的自主问题解决 (Hephaestus 风格)
artistry gemini-3-pro max google → anthropic → openai 创造性/新颖方法、非常规解决方案
quick claude-haiku-4-5 anthropic → google → opencode 琐碎任务、单文件更改、拼写错误修复
unspecified-low claude-sonnet-4-5 anthropic → openai → google 通用任务,低工作量
unspecified-high claude-opus-4-5 max anthropic → openai → google 通用任务,高工作量
writing gemini-3-flash google → anthropic → zai-coding-plan → openai 文档、散文、技术写作

类别使用

delegate_task(category="visual-engineering", load_skills=["frontend-ui-ux"], prompt="创建一个仪表板组件")
delegate_task(category="ultrabrain", load_skills=[], prompt="设计支付处理流程")
delegate_task(category="quick", load_skills=["git-master"], prompt="修复 README.md 中的拼写错误")
delegate_task(category="deep", load_skills=[], prompt="调查并修复工作池中的内存泄漏")

关键点:模型解析优先级

除非配置,否则类别不会使用其内置默认值。解析顺序:

  1. 用户配置的模型 (在 oh-my-opencode.json 中) —— 最高优先级
  2. 类别的内置默认值 (如果类别在配置中)
  3. 系统默认模型 (来自 opencode.json) —— 回退

要使用最优模型,请将类别添加到你的配置中。参见 references/configuration.md


内置技能

技能 目的 用法
playwright 通过 Playwright MCP 进行浏览器自动化 (默认浏览器引擎) load_skills=["playwright"]
agent-browser Vercel 的 agent-browser CLI,带会话管理 通过 browser_automation_engine 配置切换
git-master Git 专家:原子提交、rebase/squash、历史搜索 load_skills=["git-master"]
frontend-ui-ux 设计师转开发者,打造惊艳的 UI/UX load_skills=["frontend-ui-ux"]

技能通过 delegate_task(load_skills=[...]) 注入到子智能体中。


斜杠命令

命令 描述
/init-deep 初始化分层 AGENTS.md 知识库
/start-work 使用 Atlas 编排器执行 Prometheus 计划
/ralph-loop 启动自引用开发循环,直到完成
/ulw-loop 启动 ultrawork 循环——持续直到完成
/cancel-ralph 取消活动的 Ralph 循环
/refactor 智能重构,包含 LSP、AST-grep、架构分析、TDD
/stop-continuation 停止所有延续机制 (ralph 循环、待办事项延续、boulder)

进程管理

后台智能体

并行启动多个智能体进行探索和研究:

// 启动后台智能体 (非阻塞)
delegate_task(subagent_type="explore", run_in_background=true, prompt="在代码库中查找身份验证模式")
delegate_task(subagent_type="librarian", run_in_background=true, prompt="查找 JWT 最佳实践")

// 需要时收集结果
background_output(task_id="bg_abc123")

// 在最终答案前取消所有后台任务
background_cancel(all=true)

并发配置

{
  "background_task": {
    "defaultConcurrency": 5,
    "staleTimeoutMs": 180000,
    "providerConcurrency": { "anthropic": 3, "google": 10 },
    "modelConcurrency": { "anthropic/claude-opus-4-5": 2 }
  }
}

优先级:modelConcurrency > providerConcurrency > defaultConcurrency

Tmux 集成

在单独的 tmux 窗格中运行后台智能体,实现可视化多智能体执行:

{
  "tmux": {
    "enabled": true,
    "layout": "main-vertical",
    "main_pane_size": 60
  }
}

需要在 tmux 会话中以服务器模式运行 OpenCode:

tmux new -s dev
opencode --port 4096

布局选项:main-vertical (默认), main-horizontal, tiled, even-horizontal, even-vertical


并行执行模式

模式 1: Explore + Librarian (研究阶段)

// 内部代码库搜索
delegate_task(subagent_type="explore", run_in_background=true, prompt="查找身份验证中间件的实现方式")
delegate_task(subagent_type="explore", run_in_background=true, prompt="查找 API 层中的错误处理模式")

// 外部文档搜索
delegate_task(subagent_type="librarian", run_in_background=true, prompt="查找官方 JWT 文档和安全建议")

// 立即继续工作——需要时收集结果

模式 2: 基于类别的委托 (实现阶段)

// 前端工作 → visual-engineering 类别
delegate_task(category="visual-engineering", load_skills=["frontend-ui-ux"], prompt="构建设置页面")

// 快速修复 → quick 类别
delegate_task(category="quick", load_skills=["git-master"], prompt="为身份验证更改创建原子提交")

// 难题 → ultrabrain 类别
delegate_task(category="ultrabrain", load_skills=[], prompt="设计缓存失效策略")

模式 3: 会话连续性

// 第一次委托返回一个 session_id
result = delegate_task(category="quick", load_skills=["git-master"], prompt="修复类型错误")
// session_id: "ses_abc123"

// 后续使用 session_id 以保留完整上下文
delegate_task(session_id="ses_abc123", prompt="同时修复相关的测试文件")

CLI 参考

核心命令

opencode                           # 启动 TUI
opencode --port 4096               # 以服务器模式启动 TUI (用于 tmux 集成)
opencode -c                        # 继续上次会话
opencode -s <session-id>           # 继续特定会话
opencode --agent <agent-name>      # 使用特定智能体启动
opencode -m provider/model         # 使用特定模型启动

非交互模式

opencode run "解释 JavaScript 中的闭包"
opencode run --agent oracle "审查这个架构"
opencode run -m openai/gpt-5.2 "复杂推理任务"
opencode run --format json "查询"    # 原始 JSON 输出

认证与提供商管理

opencode auth login                # 添加/配置提供商
opencode auth list                 # 列出已认证的提供商
opencode auth logout               # 移除提供商
opencode models                    # 列出所有可用模型
opencode models anthropic          # 列出特定提供商的模型
opencode models --refresh          # 刷新模型缓存

会话管理

opencode session list              # 列出所有会话
opencode session list -n 10        # 最近 10 个会话
opencode export <session-id>       # 将会话导出为 JSON
opencode import session.json       # 导入会话
opencode stats                     # 令牌使用情况和成本统计
opencode stats --days 7            # 最近 7 天的统计

插件与 MCP 管理

bunx oh-my-opencode install        # 安装/配置 oh-my-opencode
bunx oh-my-opencode doctor         # 诊断配置问题
opencode mcp list                  # 列出已配置的 MCP 服务器
opencode mcp add                   # 添加 MCP 服务器

服务器模式

opencode serve --port 4096         # 无头服务器
opencode web --port 4096           # 带 Web UI 的服务器
opencode attach http://localhost:4096  # 将 TUI 附加到正在运行的服务器

内置 MCP

Oh My OpenCode 默认包含以下 MCP 服务器:

MCP 工具 目的
Exa web_search_exa 网络搜索,提供干净的 LLM 就绪内容
Context7 resolve-library-id, query-docs 官方库/框架文档查找
Grep.app searchGitHub 从公共 GitHub 仓库搜索真实世界代码示例

钩子

所有钩子默认启用。可通过 disabled_hooks 配置禁用特定钩子:

钩子 目的
todo-continuation-enforcer 如果智能体中途退出,强制其继续
context-window-monitor 监控和管理上下文窗口使用情况
session-recovery 崩溃后恢复会话
session-notification 会话事件通知
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor