oh-my-agent:基于多AI生态的协作式开发代理项目

The multi-agent harness that checks the work: verifies agent runs by artifacts (stop-hook gates, independent judges, append-only event logs) across Claude Code, Codex, Cursor, and 10+ runtimes.

分支10Tags621
当前项目代码仓暂无内容

oh-my-agent:会核验工作的多智能体框架

npm version npm downloads GitHub stars License Last Updated

한국어 | 中文 | Português | 日本語 | Français | Español | Nederlands | Polski | Русский | Deutsch | Tiếng Việt | ภาษาไทย

智能体擅长宣称成功,oh-my-agent 只核验产物。

并行启动智能体只是简单的部分。难的是确认它们是否真的完成了工作。对智能体来说,说“测试通过,所有标准均满足”毫无成本,而同一会话内也不会有任何内容能与之相悖。

oh-my-agent 让这种说法变得可证伪。一个 Stop 钩子会拒绝结束你的会话,直到项目自身的 typecheck / test / lint 脚本退出码为 0。门禁命令会通过查找流程必须留下的产物,来判断工作流是否真正运行过——其 JSON 判定,而非智能体的总结,才是结果。一个拥有全新上下文的独立评审者,会在每一轮重新校验每一条标准,包括已经通过的那些。每一次门禁判定都会写入追加式事件日志,供你在事后查阅。随后,它会从同一个可移植的 .agents/ 目录出发,在十余个智能体运行时中执行同样的纪律。

oh-my-agent 说明

观看完整视频(35秒)

快速开始

以下安装脚本会在 bun、uv 和 serena 缺失时自动安装它们。

# macOS / Linux — auto-installs bun, uv & serena if missing
curl -fsSL https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.sh | bash
# Windows (PowerShell) — auto-installs bun, uv & serena if missing
irm https://raw.githubusercontent.com/first-fluke/oh-my-agent/main/cli/install.ps1 | iex
# Or manual (any OS, requires bun + uv + serena)
bunx oh-my-agent@latest
或者使用微软的 Agent Package Manager (APM) 安装 skills。点击展开。

请勿与 oma-observability 的 APM(Application Performance Monitoring)混淆。

# All skills, deployed to every detected runtime
# (.claude, .cursor, .codex, .opencode, .github, .agents)
apm install first-fluke/oh-my-agent

# A single skill
apm install first-fluke/oh-my-agent/.agents/skills/oma-frontend

APM 仅提供技能。如需工作流、规则、oma-config.yaml、关键词检测钩子以及 oma agent spawn CLI,请使用 bunx oh-my-agent@latest。每个项目请选择一种分发形式,以避免配置漂移。

选择一个预设即可开始:

预设 包含内容
全部 所有 Agent 和技能
后端 architecture + backend + brainstorm + db + debug + dev-workflow + pm + qa + scm
内容 academic-writer + design + image + scm + translator + voice
运维 architecture + brainstorm + debug + dev-workflow + observability + pm + qa + scm + tf-infra
前端 architecture + brainstorm + debug + design + frontend + pm + qa + scm
全栈 architecture + backend + brainstorm + db + debug + design + dev-workflow + frontend + mobile + pm + qa + scm + tf-infra
全栈移动 architecture + backend + brainstorm + db + debug + design + dev-workflow + mobile + pm + qa + scm
全栈 Web architecture + backend + brainstorm + db + debug + design + dev-workflow + frontend + pm + qa + scm
移动 architecture + brainstorm + debug + mobile + pm + qa + scm
研究 academic-writer + hwp + market + pdf + scholar + scm + search + translator

兼容所有 Agent

如果验证被锁定在单一供应商上,其价值就会大打折扣。oh-my-agent.agents/ 作为唯一事实来源,并将其映射到每个运行时的原生结构中,因此所有受支持的工具都能共享相同的技能、工作流、规则和门禁——切换供应商只是一次配置变更,而不是一次迁移。

Claude Code
Claude Code
原生 + 适配器
Codex CLI
Codex CLI
原生 + 适配器
Antigravity
Antigravity
原生 SSOT
Cursor
Cursor
原生 + 适配器
Qwen Code
Qwen Code
原生调度
Reasonix
Reasonix
原生兼容
Pi
Pi
原生兼容
OpenCode
OpenCode
原生兼容
Amp
Amp
原生兼容
GitHub Copilot
GitHub Copilot
符号链接技能
Grok Build
Grok Build
原生钩子
Kiro CLI
Kiro CLI
原生钩子 + Agent

更多

你的工程团队

而不是让一个 AI 包揽所有工作(并且做到一半就陷入混乱),oh-my-agent 将工作拆分给多个专职智能体。每个智能体都深谙自身领域,拥有自己的工具与检查清单,并始终各司其职。

智能体 职责
oma-architecture 评估架构权衡并划定模块边界,辅以 ADR/ATAM/CBAM 分析。
oma-backend 构建并加固你的 Python、Node.js 或 Rust API。
oma-brainstorm 在你决定开发之前,先与你一起探索方案。
oma-db 设计你的数据模式、迁移、索引与向量存储。
oma-debug 定位根因,修复缺陷,并编写回归测试。
oma-deepsec 扫描代码安全漏洞,并拦截高风险 PR。
oma-design 构建具备设计令牌、无障碍支持与响应式布局的设计系统。
oma-dev-workflow 自动化你的 CI/CD、版本发布与 Monorepo 任务。
oma-docs 检查文档中的失效引用,并标记被代码变更影响的部分。
oma-explanation 将 diff、PR 或分支转化为自包含的交互式 HTML 讲解页,并附带测验。
oma-frontend 使用 React/Next.js、TypeScript、Tailwind CSS v4 和 shadcn/ui 构建你的 UI。
oma-mobile 使用 Flutter 构建跨平台移动应用。
oma-observability 将可观测性工作分派到指标、日志、链路追踪、SLO 与故障取证。
oma-orchestration 通过 CLI 并行运行多个智能体。
oma-pm 规划任务、拆解需求,并定义 API 契约。
oma-qa 审查代码中的 OWASP 安全、性能与无障碍问题。
oma-refactor 在不改变行为的前提下重构代码,使用热点定位、特征化测试安全网与仅重构提交。
oma-scm 管理你的分支、合并、worktrees 与 Conventional Commits。
oma-search 将每个查询路由到最佳来源,并评估结果的可信度。
oma-tf-infra 使用 Terraform 开通多云基础设施。
内部 & 元工具
智能体 职责
oma-coordination 指导对 PM、前端、后端、移动与 QA 智能体进行手动分步协同。
oma-skill-creation 以 SSL-lite 格式编写并审计新的 OMA 技能。

超越代码:内容与研究流水线

独立于工程团队之外,oma 提供内容与研究流水线,并遵循同样的工程规范:基于 fixtures 的确定性回放、用于可复现性的清单,以及在来源或供应商密钥不可用时如实报告降级,而不是悄无声息地交付缩水结果。

代理 职责
oma-academic-writing 撰写、修改并审校学术文本,使其达到发表水准。
oma-hwp 将 HWP、HWPX 和 HWPML 文件转换为 Markdown。
oma-image 同时通过多个 AI 服务商生成图像。
oma-market 基于社区信号调研你的市场,并使用 SWOT、5F 和 PESTEL 进行结构化分析。
oma-pdf 将 PDF 文件转换为 Markdown。
oma-recap 将对话历史归纳为主题式工作摘要。
oma-scholar 检索学术文献,并协助你开展同行评审。
oma-slide 生成风格鲜明、动画丰富的 HTML 演示文稿,并导出为 PDF/PNG/PPTX。
oma-translation 在不同语言之间进行翻译,使译文读起来像母语者所写。
oma-video 通过密钥可选的 Remotion 流水线生成短视频、讲解视频和演示视频。
oma-voice 在设备本地生成配音并转写音频,无需云端。

Orca IDE

OMA for Orca 添加侧边栏面板与命令面板 操作,用于项目设置、审查、调试、验证以及本地结果查看。 它使用你现有的 Orca 代理终端和项目 OMA 安装。要求 Orca 1.4.197+,并启用实验插件。

工作原理

只需对话。描述你的需求,oh-my-agent 会自动判断该使用哪些代理。

You: "Build a TODO app with user authentication"
→ PM plans the work
→ Backend builds auth API
→ Frontend builds React UI
→ DB designs schema
→ QA reviews everything
→ Done: coordinated, reviewed code

也可以使用斜杠命令执行结构化工作流:

步骤 命令 作用
0 /deepinit 将现有代码库映射到 AGENTS.md、ARCHITECTURE.md 和 docs
1 /brainstorm 在决定开发前,与你一起探索想法
2 /architecture 权衡设计取舍,划定清晰的模块边界
2 /design 构建包含设计令牌、无障碍支持和响应式布局的设计系统
2 /plan 将功能拆解为有优先级的任务
3 /work 由多个代理逐步构建你的功能
3 /orchestrate 并行运行多个代理,更快构建你的功能
3 /ultrawork 通过五个质量门禁阶段构建你的功能;每次评审都在全新且隔离的评审会话中运行(跨上下文评审)
3 /ralph 重复 /ultrawork,直到独立验证器通过全部标准
4 /review 审查代码中的安全、性能和无障碍问题
4 /deepsec 执行深度安全扫描,并拦截存在风险的拉取请求
5 /debug 定位根因,修复缺陷,并编写回归测试
5 /docs 检查文档中的失效引用,并修复代码改动所涉及的引用
6 /scm 管理分支、合并和 Conventional Commits
- /schedule 安排代理任务按周期性间隔运行

自动检测:你甚至不需要斜杠命令——消息中的 "architecture"、"plan"、"review" 和 "debug" 等关键词(支持 11 种语言!)会自动激活相应的工作流。检测准确率是实测出来的,而非假设:oma verify triggers 会针对一个包含 171 条标注提示词的语料库评估检测器(当前 0% 漏报,低于 10% 误报),并以此作为 CI 的准入门禁。

各代理模型

.agents/oma-config.yaml 中设置 model_preset,可指定每个代理使用的 AI 模型:

language: en
model_preset: mixed   # antigravity | claude | codex | cursor | kiro | mixed | qwen

# Optional per-agent overrides
agents:
  backend: { model: openai/gpt-5.5, effort: high }

验证,而非叙述

每个机制都是机械式的:命令退出码为 0 或非 0,文件在磁盘上或不在。不会询问 LLM 工作“看起来是否正确”。

机制 它机械校验的内容 所在位置
Stop-hook 门禁 当持久化工作流处于活动状态时,阻止会话终止,并在允许停止前运行已配置的门禁脚本。只有 typechecktestlint 可执行——智能体若向状态文件写入其他内容,该内容会被忽略,且永远不会运行。补强次数上限为 5,防止持续失败的门禁将你困住。 .agents/hooks/core/persistent-mode.ts
防绕过门禁 oma ralph verify --json 会检查四项捷径无法伪造的产物:ultrawork 的阶段记录、计划 JSON、一个独立 QA 智能体的结果文件,以及一个独立重构智能体的结果文件。产物缺失即表示该阶段没有运行,无论叙述内容如何。 .agents/workflows/ralph.md
独立评审 作为独立智能体以全新上下文启动,只向其告知评判标准——绝不告知实施者声称修复了什么。每次迭代都会重新校验每一条标准,包括此前已 PASS 的标准,因为修复 C2 时,C1 可能会悄悄退化。 judge-protocol.md
事件溯源状态 每次门禁通过、门禁失败以及决策,都会向 ~/.oma/u/0/sessions/{sid}/events.jsonl 追加一行 JSON,并标注厂商和运行时会话 id。只追加、跨厂商,运行结束后仍可审计。 event-spec.md
按智能体检查套件 oma verify <agent> 运行一套共享核心检查(范围违规、章程对齐、硬编码密钥、TODO 扫描、声明输出),外加类型专项检查(TypeScript strict、测试、原始 SQL、Flutter analyze、内联样式)。 oma verify <agent>
技能评测框架 oma skill eval 在留出任务上度量效用增益——实验组相对基线——而不是假定某个技能有用。oma skill optimize 只保留能提升实测增益的编辑。 skill-eval 指南

预算也按同样方式强制执行。session.quota_cap 限制 token 数、派生次数和按厂商的花费;当任一维度超限时,编排器会拒绝下一次派生。当实际时间预算耗尽时,Stop hook 会如实停止,并在事件日志中记录部分状态,而不是假装完成。

控制边界

oh-my-agent 将开放式规划和下一步动作选择留给宿主 LLM。它不会用统一的工作流图或策略引擎取代这种判断。相反,它把那些无论使用哪种模型都必须成立的不变约束外化:工具护栏、权限、预算、重试与停止限制、持久事件,以及可机械验证的完成状态。结构化事件会记录决策和门禁结果;它们不会充当第二个规划器。

因此,确定性 SLM 执行是一个独立的、可选的产品方向,而不是当前执行框架中缺失的基础设施。

为什么选择 oh-my-agent?

  • 基于角色 — 智能体按照真实工程团队的方式建模,而不是一堆提示词
  • Token 高效 — 技能分两层加载,因此在普通任务下,一个由 5 个智能体组成的会话可保持约 17-19K token 的技能上下文,而不是加载所有资源所需的 72K token(已测量,附脚本
  • 可恢复 — 在 2 次重试失败后,orchestrate 并行生成假设变体,并保留得分最高的结果,而不是一直重试错误的方案
  • Monorepo 感知detectWorkspace 读取 pnpm / nx / turbo / lerna,并将每个智能体路由到其工作区
  • 多厂商 — 可按智能体类型混合使用 Antigravity、Claude、Codex、Cursor、Kiro 和 Qwen
  • 可观测 — 终端和 Web 仪表盘用于实时监控

架构

flowchart TD
    subgraph Workflows["Workflows"]
        direction TB
        W0["/brainstorm"]
        W1["/work"]
        W1b["/ultrawork"]
        W2["/orchestrate"]
        W3["/architecture"]
        W4["/plan"]
        W5["/review"]
        W6["/debug"]
        W7["/deepinit"]
        W8["/design"]
    end

    subgraph Orchestration["Orchestration"]
        direction TB
        PM[oma-pm]
        ORC[oma-orchestration]
    end

    subgraph Domain["Domain Agents"]
        direction TB
        ARC[oma-architecture]
        FE[oma-frontend]
        BE[oma-backend]
        DB[oma-db]
        MB[oma-mobile]
        DES[oma-design]
        TF[oma-tf-infra]
    end

    subgraph Quality["Quality"]
        direction TB
        QA[oma-qa]
        DBG[oma-debug]
    end

    Workflows --> Orchestration
    Orchestration --> Domain
    Domain --> Quality
    Quality --> SCM([oma-scm])

了解更多

赞助商

得益于赞助者们的慷慨支持,本项目得以持续维护。

喜欢本项目? 请点亮星标!

gh api --method PUT /user/starred/first-fluke/oh-my-agent

试用我们优化后的起步模板:fullstack-starter

赞助 请我喝咖啡

🚀 冠军

🛸 助推者

☕ 贡献者

成为赞助商 →

查看 SPONSORS.md 以获取完整支持者列表。

星标历史

星标历史图表

参考资料

  • Li, X., Liu, Y., Chen, W., You, B., Di, Z., He, Y., Zheng, S., Choe, K. W., Sun, J., Wang, S., Tao, C., Li, B., Zhao, X., Geng, H., Wu, X., Zhou, J., Chen, X., Xing, H., Li, Y., … Song, D. (2026). SkillsBench:智能体技能在多样化任务中表现基准测试(第 4 版)[预印本]. arXiv. https://doi.org/10.48550/arXiv.2602.12670
  • Yu, G., & Wang, X. (2026). Knows:智能体原生的结构化研究表征(第 1 版)[预印本]. arXiv. https://doi.org/10.48550/arXiv.2604.17309
  • Liang, Q., Wang, H., Liang, Z., & Liu, Y. (2026). 从技能文本到技能结构:面向智能体技能的调度—结构—逻辑表征(第 4 版)[预印本]. arXiv. https://doi.org/10.48550/arXiv.2604.24026
  • Chen, C., Yu, Q., Gu, Y., Huang, Z., Li, H., Liu, H., Liu, S., Liu, J., Peng, D., Wang, J., Yan, Z., Meng, F., Qin, E., Che, C., & Hu, M. (2026). LLM 智能体系统中技能的缩放定律(第 1 版)[预印本]. arXiv. https://doi.org/10.48550/arXiv.2605.16508
  • Tang, L., Rashtchian, C., Ferng, C.-S., Tomkins, A., Juan, D.-C., & Vu, T. (2026). WikiSkill:将智能体经验编译为持久知识以支持技能演化 [预印本]. arXiv. https://doi.org/10.48550/arXiv.2608.27454
  • Huang, Z., Xu, J., Yang, Y., Gong, Z., Yang, Q., Tian, M., Wang, X., Lv, C., Gao, X., Dai, Q., Liu, B., Qiu, K., Yang, X., Chen, D., Zheng, X., & Luo, C. (2026). 从原始经验到技能消费:对模型生成智能体技能的系统研究 [预印本]. arXiv. https://doi.org/10.48550/arXiv.2605.23899
  • Hong, D. B., Imani, A., & Ahmed, I. (2026). 从解剖到坏味道:关于智能体技能中 SKILL.md 的实证研究(第 2 版)[预印本]. arXiv. https://doi.org/10.48550/arXiv.2607.01456

许可证

MIT

项目介绍

The multi-agent harness that checks the work: verifies agent runs by artifacts (stop-hook gates, independent judges, append-only event logs) across Claude Code, Codex, Cursor, and 10+ runtimes.

定制我的领域
61.27 K147访问 GitHub