oh-my-openagent(原 oh-my-opencode)专用 Agent 详解
oh-my-openagent(原 oh-my-opencode)是一个多 Agent 编排插件,内置 11 个专用 Agent,覆盖从意图解析、战略规划、深度实现到代码搜索的完整开发链路。这 11 个 Agent 按职责分为四层:主编排层、只读顾问层、搜索专家层和特殊能力层。
架构总览
| Agent | 模式 | 默认模型 | 核心职责 | 可写文件 |
|---|---|---|---|---|
| Sisyphus | primary | claude-opus-4-7 | 主编排、意图解析、任务委派 | ✅ |
| Hephaestus | primary | gpt-5.5 | 自主深度端到端实现 | ✅ |
| Prometheus | primary | claude-opus-4-7 | 战略规划,只写 .md 计划文件 |
仅 .md |
| Atlas | primary | claude-sonnet-4-6 | 执行已有计划文件中的 todo 列表 | ✅ |
| Oracle | subagent | gpt-5.5 | 架构/调试只读咨询 | ❌ |
| Metis | subagent | claude-sonnet-4-6 | 规划前需求分析 | ❌ |
| Momus | subagent | gpt-5.5 | 计划文件审查 | ❌ |
| Explore | subagent | gpt-5.4-mini-fast | 内部代码库搜索 | ❌ |
| Librarian | subagent | gpt-5.4-mini-fast | 外部文档/开源代码搜索 | ❌ |
| Multimodal-Looker | subagent | gpt-5.5 | PDF/图片/架构图分析 | ❌ |
| Sisyphus-Junior | subagent | claude-sonnet-4-6 | category 委派的轻量执行器 | ✅ |
主编排层
主编排层的四个 Agent 都以 primary 模式运行,可以直接接收用户请求并写入文件。
Sisyphus — 主编排器
默认模型:claude-opus-4-7 max
Sisyphus 是整个系统的入口,名字来源于神话中每天推石头的西西弗斯——代码应与高级工程师无异。它负责接收用户请求、解析意图,并将专项工作委派给合适的子 Agent。
Phase 0 — Intent Gate(强制)
每条消息必须先分类意图并口头宣告路由决策,分为五类:
| 意图类型 | 说明 | 处理方式 |
|---|---|---|
| Trivial | 极简单任务 | 自己处理 |
| Explicit | 明确实现请求 | 进入 Context-Completion Gate |
| Exploratory | 探索性问题 | 委派 Explore/Librarian |
| Open-ended | 开放性问题 | 咨询 Oracle 或 Metis |
| Ambiguous | 意图不明 | 先澄清再路由 |
Phase 0.5 — Turn-Local Intent Reset:每轮从当前消息重新分类,绝不自动延续"实现模式"。
Context-Completion Gate:只有同时满足以下三条才可进入实现阶段——消息含明确实现动词、范围具体、无阻塞依赖。
委派优先原则:核心理念是"DELEGATE. WORK YOURSELF ONLY WHEN IT IS SUPER SIMPLE"。委派任务时必须包含六段结构:TASK / EXPECTED OUTCOME / REQUIRED TOOLS / MUST DO / MUST NOT DO / CONTEXT。
并行搜索:默认并行启动 Explore 和 Librarian(始终 run_in_background=true)做后台代码搜索。
失败保护:连续失败 3 次后,停止所有编辑 → 回滚 → 记录 → 强制咨询 Oracle。
硬性约束方面,Sisyphus 绝不使用 as any、@ts-ignore 抑制类型错误,绝不在未被要求时提交代码,bugfix 遵循最小化修复原则,绝不同时重构。输出风格上无前言,直接开始工作,使用 todo 追踪进度,不总结已做的事。
Hephaestus — 深度执行者
默认模型:gpt-5.5 medium,maxTokens: 32000
Hephaestus 灵感来自 AmpCode deep mode,专为端到端任务完成设计。它的核心原则是不提前停止、不中途确认、完整交付。
实施前会彻底探索代码库,使用 Explore/Librarian 获取全面上下文,然后一次性完成任务。它根据模型路由到不同 prompt 构建器(gpt-5-5 / gpt-5-4 / gpt-5-3-codex / 默认)。
有几点限制需要注意:禁止使用 call_omo_agent,仅支持 OpenAI/GitHub Copilot/Venice/Vercel 等 GPT 系列模型(requiresProvider 限制),不适用于需要多 Agent 编排的场景(那是 Atlas 的职责)。
适合 Hephaestus 的场景:需要深度理解代码库后才能实现的复杂功能、跨多个文件的重构任务、需要完整端到端实现的新功能。
Prometheus — 战略规划师
默认模型:claude-opus-4-7 max
Prometheus 是战略规划顾问,核心约束是只写计划,绝不实现。它将所有"做 X"的请求解释为"为 X 创建工作计划"。
Interview Mode:通过提问收集需求,理解用户真实意图,再生成计划。
生成的计划文件保存在 .sisyphus/plans/*.md,包含任务分解(todo 列表)、依赖关系、验证标准(Agent 可执行的命令,不要求用户手动操作)和预估工作量。
文件写入限制通过 prometheus-md-only hook 在路径级别强制执行,只能写 .md 文件。
针对不同模型,Prometheus 有差异化的 prompt 策略:
| 模型 | Prompt 策略 |
|---|---|
| GPT | XML 标签原则驱动 |
| Gemini | 激进工具调用强制 + 思考检查点 |
| Claude(默认) | 模块化组合 prompt |
Prometheus 在整个规划链路中的位置:
用户请求 → Metis(需求分析)→ Prometheus(生成计划)→ Momus(审查计划)→ Atlas(执行计划)
Atlas — 计划执行器
默认模型:claude-sonnet-4-6,temperature: 0.1
Atlas 是 Master Orchestrator,专门执行 Prometheus 生成的 .sisyphus/plans/*.md 计划文件,通过 task() 协调专业 Agent 完成 todo 列表中的所有任务。
工作方式:读取 todo 列表路径 → 按顺序或并行分发任务 → 验证结果 → 标记完成,持续执行直到 todo 列表全部完成。支持顺序和并行任务执行,跨多个专业 Agent 协调。
Atlas 自身 deny task / call_omo_agent,不能再嵌套委派。
触发条件:用户提供 .sisyphus/plans/{name}.md 路径,或多任务需要多 Agent 编排。
Atlas 与 Sisyphus 的区别:
| 维度 | Sisyphus | Atlas |
|---|---|---|
| 输入 | 用户自然语言请求 | 已有的计划文件 |
| 职责 | 动态规划 + 委派 | 执行已有计划 |
| 灵活性 | 高(动态调整) | 低(严格按计划) |
只读顾问层
只读顾问层的三个 Agent 全部 deny write / edit / apply_patch,只提供分析和建议,不修改任何文件。
Oracle — 架构顾问
默认模型:gpt-5.5 high,temperature: 0.1
Oracle 是只读战略技术顾问,高 IQ 推理专家,在复杂分析或架构决策时被主 Agent 调用。
核心决策框架:
| 原则 | 说明 |
|---|---|
| 简单偏向 | 最少复杂度满足实际需求,抵制假设性未来需求 |
| 利用现有 | 优先修改现有代码,新依赖需明确理由 |
| 开发者体验优先 | 可读性 > 理论性能 |
| 单一路径 | 只给一个主要建议,不提供多选项 |
| 匹配深度 | 简单问题简短回答,不过度分析 |
输出格式(三层结构):
- Essential(必须输出):Bottom line(2-3 句结论)+ Action plan(≤7 步行动计划)+ Effort estimate(Quick/Short/Medium/Large)
- Expanded(相关时输出):Why this approach(≤4 条理由)+ Watch out for(≤3 条风险)
- Edge cases(适用时输出):Escalation triggers + Alternative sketch
Claude 模型启用 thinking(budgetTokens: 32000),GPT 模型 reasoningEffort: "medium"。
适用场景:复杂架构决策(技术选型、设计模式)、2+ 次修复失败后的深度调试、安全漏洞分析、性能瓶颈诊断。
Metis — 预规划顾问
默认模型:claude-sonnet-4-6,temperature: 0.3,thinking budgetTokens: 32000
Metis 以希腊智慧女神命名,在 Prometheus 规划前介入,识别隐藏意图和未说明需求,防止 AI 过度工程失败模式。
工作流程(强制顺序):
Phase 0 — 意图分类(MANDATORY FIRST STEP,绝不跳过)
| 类型 | 说明 |
|---|---|
| Refactoring | 代码重构,不改变行为 |
| Build from Scratch | 全新构建 |
| Mid-sized | 中等规模功能 |
| Collaborative | 需要用户协作确认 |
| Architecture | 架构级变更 |
| Research | 调研分析 |
Phase 1 — 意图特定分析:每种意图类型有专属工具建议和问题清单。
Phase 2 — 输出:意图分类 + 预分析发现 + 用户问题 + 风险识别 + Prometheus 指令(MUST/MUST NOT/PATTERN/TOOL)。
硬性约束:绝不跳过意图分类,绝不提问通用问题(如"What's the scope?"),QA/验收标准必须是 Agent 可执行的命令,不能要求用户手动操作。
Momus — 计划审查员
默认模型:gpt-5.5 xhigh,temperature: 0.1
Momus 以希腊讽刺之神命名(连神的作品都要挑剔),审查 .sisyphus/plans/*.md 计划文件的可执行性。
核心问题只有一个:有能力的开发者能否不卡壳地执行此计划?
审查项固定为四项,不多不少:
| 检查项 | 说明 |
|---|---|
| 引用验证 | 引用文件是否存在且内容相关 |
| 可执行性 | 每个任务是否有明确起点 |
| 关键阻塞 | 完全阻止工作的缺失信息或矛盾 |
| QA 场景可执行性 | 每个任务是否有具体工具+步骤+预期结果 |
审批偏向宽松:有疑问时批准,80% 清晰就够了,每次拒绝最多列出 3 个阻塞问题,不评价方法是否最优,不提架构意见。
输出格式:[OKAY] + 1-2 句摘要,或 [REJECT] + 1-2 句摘要 + 最多 3 个具体阻塞问题。
搜索专家层
Explore — 内部代码搜索
默认模型:gpt-5.4-mini-fast,temperature: 0.1
Explore 是代码库上下文 grep 专家,回答"X 在哪里实现?"、"哪个文件包含 Y?"等问题。
每次响应必须包含:<analysis> 块(意图分析)、并行执行(≥3 个工具同时启动)、<results> 块(结构化结果,绝对路径 + 答案 + 后续步骤)。
工具选择策略:
| 场景 | 工具 |
|---|---|
| 语义搜索(定义/引用) | LSP 工具 |
| 结构模式 | ast_grep_search |
| 文本模式 | grep |
| 文件模式 | glob |
| 历史演变 | git 命令 |
所有路径必须是绝对路径,deny write / edit / apply_patch / task / call_omo_agent,允许额外工具:lsp_symbols、lsp_goto_definition、lsp_find_references、lsp_diagnostics、ast_grep_search。
Librarian — 外部文档搜索
默认模型:gpt-5.4-mini-fast,temperature: 0.1
Librarian 是开源代码库理解专家,专注外部库/文档研究,提供带 GitHub permalink 的证据支撑。
Phase 0 — 请求分类:
| 类型 | 说明 | 工具组合 |
|---|---|---|
| TYPE A(CONCEPTUAL) | 概念理解 | context7 + websearch + grep_app(并行) |
| TYPE B(IMPLEMENTATION) | 实现参考 | gh clone → git rev-parse HEAD → grep/read → 构建 permalink |
| TYPE C(CONTEXT) | 历史背景 | gh search issues/prs + git log/blame(并行) |
| TYPE D(COMPREHENSIVE) | 综合研究 | 全部工具并行(≥6 个调用) |
Phase 0.5(TYPE A/D)— 文档发现:官方文档 URL → 版本检查 → Sitemap 发现 → 定向调查。
每个声明必须包含 Claim(结论)、Evidence(带 permalink 的代码块)、Explanation(解释)三部分。每个代码声明必须附带 GitHub permalink,始终使用当前年份搜索,过滤过时结果。
Explore 与 Librarian 的区别:
| 维度 | Explore | Librarian |
|---|---|---|
| 搜索范围 | 内部代码库 | 外部开源项目 |
| 主要工具 | grep、LSP、ast_grep | GitHub CLI、Context7、Web Search |
| 输出格式 | 绝对路径 + 代码片段 | GitHub permalink |
特殊能力层
Multimodal-Looker — 多模态分析器
默认模型:gpt-5.5 medium,temperature: 0.1
Multimodal-Looker 是媒体文件解析专家,处理 Read 工具无法作为纯文本读取的文件,为主 Agent 节省上下文 token。
工作流程:接收文件路径 + 提取目标描述 → 用 Read 工具加载文件内容 → 只返回相关提取信息,无前言。
仅允许 read 工具(allowlist 模式,其他全部 deny),找不到目标内容时明确说明缺失内容。
适用场景:分析设计稿/原型图、读取 PDF 技术文档、理解架构图/流程图、处理截图中的信息。不适用于源代码/纯文本(用 Read)、需要后续编辑的文件。
Sisyphus-Junior — 轻量执行器
默认模型:claude-sonnet-4-6,temperature: 0.1,maxTokens: 64000
Sisyphus-Junior 是 Sisyphus 的轻量版,由 category 系统动态生成,直接执行委派任务,不再向下委派。
Todo 强迫症(NON-NEGOTIABLE):2 步以上立即创建 todo 列表,逐步标记完成,绝不批量完成,所有 todo 标记完成才算结束。
验证要求:LSP 诊断干净,构建通过。终止规则:首次成功验证后立即停止,不重复验证,最多状态检查 2 次。
硬性约束:deny task(不向下嵌套委派),GPT 模型额外 deny apply_patch,允许 call_omo_agent(可启动 Explore/Librarian),支持 prompt_append 注入领域特定指令(category 定制化)。Claude 模型 thinking budgetTokens: 32000,GPT 模型 reasoningEffort: "medium"。
Sisyphus-Junior 与 Sisyphus 的区别:
| 维度 | Sisyphus | Sisyphus-Junior |
|---|---|---|
| 角色 | 编排器 | 执行器 |
| 委派能力 | ✅ 可以委派 | ❌ 不再委派 |
| 适用场景 | 复杂多步骤任务 | 单一明确任务 |
| 定制化 | 固定行为 | category 动态注入 |
| maxTokens | — | 64000 |
协作流程
标准开发流程
用户请求
└─ Sisyphus(主编排器)
├─ [规划流程]
│ Metis(需求分析 → 生成 Prometheus 指令)
│ → Prometheus(Interview Mode → 生成计划文件)
│ → Momus(审查计划 → [OKAY]/[REJECT])
│ → Atlas(读取计划文件 → 协调执行所有 todo)
│
├─ [深度实现流程]
│ Hephaestus(深度探索 → 自主端到端实现)
│
├─ [委派执行流程]
│ Sisyphus-Junior(category 委派 → 直接执行 → 验证)
│
├─ [只读咨询]
│ Oracle(架构/调试咨询,三层结构输出)
│ Metis(规划前需求分析)
│ Momus(计划审查)
│
└─ [信息搜索(始终后台并行)]
Explore(内部代码搜索,≥3 工具并行)
Librarian(外部文档搜索,permalink 引用)
Multimodal-Looker(PDF/图片/架构图分析)
失败恢复流程
任务失败
→ 第 1-2 次:Sisyphus 自动重试
→ 第 3 次:停止所有编辑 → 回滚 → 记录 → 强制咨询 Oracle → 根据建议重新规划
工具权限速查
| Agent | read | write | edit | task | call_omo_agent | LSP | ast_grep |
|---|---|---|---|---|---|---|---|
| Sisyphus | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| Hephaestus | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| Prometheus | ✅ | 仅.md | 仅.md | ✅ | ✅ | ✅ | ✅ |
| Atlas | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
| Oracle | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Metis | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Momus | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Explore | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Librarian | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Multimodal-Looker | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Sisyphus-Junior | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |