{"_id":"oh-my-cli","_rev":"2-37229e63456328cdd71d150bbdb5f325","name":"oh-my-cli","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"oh-my-cli","version":"1.0.0","keywords":["mcp","ai-cli","agent-control-protocol","acpx","cli-orchestration","role-based-routing"],"license":"MIT","_id":"oh-my-cli@1.0.0","maintainers":[{"name":"wangneal","email":"498336692@qq.com"}],"bin":{"omc":"dist/cli/index.js"},"dist":{"shasum":"114e3005baebd1b5c8b4ce7d5bd59a6aa9c41237","tarball":"https://registry.npmjs.org/oh-my-cli/-/oh-my-cli-1.0.0.tgz","fileCount":94,"integrity":"sha512-aQNgHSJCVN3XWxisuzS4XqNtERSKo6abPjwZePwCyYXW+SszNeJ5y/xTPG9rPo+rYA+JDZLEQmbBngdJRoRmqA==","signatures":[{"sig":"MEUCIDx/e5I0Y5uoXBUqNkrYTLOVDqGKppN0n4lc5PsMkaY5AiEArMrt092NBbjnL4qbWpg5cKYdIRyEHqW7mMS9UiWaVsE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231566},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18.0.0"},"gitHead":"812fc8d6fe82e305d34d762101da46a160ee60d9","scripts":{"dev":"tsc --watch","lint":"eslint src/","test":"vitest run","build":"tsc","start":"node dist/bin/omc.js","format":"prettier --write src/","typecheck":"tsc --noEmit","test:watch":"vitest","format:check":"prettier --check src/","prepublishOnly":"npm run build"},"_npmUser":{"name":"wangneal","email":"498336692@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.0","description":"AI Agent orchestration tool — orchestrate multiple AI CLIs using OMO's agent convention","directories":{},"_nodeVersion":"22.12.0","dependencies":{"zod":"^4.4.3","acpx":"^0.10.0","pino":"^10.3.1","execa":"^9.6.1","json5":"^2.2.3","p-queue":"^9.3.0","commander":"^14.0.3","@anthropic-ai/claude-agent-sdk":"^0.3.150"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.4.0","vitest":"^4.1.7","prettier":"^3.8.3","@eslint/js":"^10.0.1","typescript":"^6.0.3","@types/node":"^25.9.1","typescript-eslint":"^8.59.4","eslint-config-prettier":"^10.1.8","@modelcontextprotocol/sdk":"^1.29.0"},"_npmOperationalInternal":{"tmp":"tmp/oh-my-cli_1.0.0_1779720027707_0.9888610693418209","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"oh-my-cli","version":"1.0.1","description":"AI Agent orchestration tool — orchestrate multiple AI CLIs using OMO's agent convention","type":"module","bin":{"omc":"dist/cli/index.js"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"tsc","dev":"tsc --watch","test":"vitest run","test:watch":"vitest","lint":"eslint src/","format":"prettier --write src/","format:check":"prettier --check src/","start":"node dist/bin/omc.js","prepublishOnly":"npm run build","typecheck":"tsc --noEmit"},"keywords":["mcp","ai-cli","agent-control-protocol","acpx","cli-orchestration","role-based-routing"],"license":"MIT","engines":{"node":">=18.0.0"},"repository":{"type":"git","url":""},"dependencies":{"acpx":"^0.10.0","commander":"^14.0.3","execa":"^9.6.1","json5":"^2.2.3","p-queue":"^9.3.0","pino":"^10.3.1","zod":"^4.4.3"},"devDependencies":{"@eslint/js":"^10.0.1","@modelcontextprotocol/sdk":"^1.29.0","@types/node":"^25.9.1","eslint":"^10.4.0","eslint-config-prettier":"^10.1.8","prettier":"^3.8.3","typescript":"^6.0.3","typescript-eslint":"^8.59.4","vitest":"^4.1.7"},"_id":"oh-my-cli@1.0.1","gitHead":"94883f0ddab86453768f5240e977014cea008e0b","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-KhDndpkqhhcRHPuDxBtt2VVYGQ8nZ/gPZyFG684TUriQhD8g0ijInDIytAld3SMjAg2mFugM+fcolql1wmDK7Q==","shasum":"a32043387985cd4e970053376d395bf64b128ce5","tarball":"https://registry.npmjs.org/oh-my-cli/-/oh-my-cli-1.0.1.tgz","fileCount":94,"unpackedSize":235230,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIE3hZ+DNrrFb6jZYowa8VEhGYO9mnBMUeT01NWP2z2QpAiEAgwq08Gq5bGr2rvf0linNlZqc1MVeyjrwROoohPaUQus="}]},"_npmUser":{"name":"wangneal","email":"498336692@qq.com"},"directories":{},"maintainers":[{"name":"wangneal","email":"498336692@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/oh-my-cli_1.0.1_1779721789719_0.9134941602994084"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-25T14:40:27.658Z","modified":"2026-05-25T15:09:50.032Z","1.0.0":"2026-05-25T14:40:27.836Z","1.0.1":"2026-05-25T15:09:49.917Z"},"license":"MIT","keywords":["mcp","ai-cli","agent-control-protocol","acpx","cli-orchestration","role-based-routing"],"repository":{"type":"git","url":""},"description":"AI Agent orchestration tool — orchestrate multiple AI CLIs using OMO's agent convention","maintainers":[{"name":"wangneal","email":"498336692@qq.com"}],"readme":"# oh-my-cli (omc)\n\n> AI Agent 编排工具 —— 统一调度 Claude Code、Codex、Gemini 等 AI CLI，让它们按角色分工协同工作\n\n## 什么是 oh-my-cli？\n\n**oh-my-cli** 是一个 AI Agent 编排工具，它让你手头的主 AI CLI（比如 OpenCode、Claude Code）能自动调度其他 AI CLI 来干活。\n\n**核心逻辑：**\n- 每个 Agent 有明确的职责，绑定最擅长的 AI CLI\n- 你只管下任务，omc 自动分派给最合适的 Agent\n- 通过 acpx 调用所有 AI CLI，支持 system prompt 角色注入\n\n## 安装\n\n### 1. 安装 oh-my-cli\n\n```bash\nnpm install -g oh-my-cli\n```\n\n验证安装：\n\n```bash\nomc --version\n```\n\n### 2. 安装 acpx（必须）\n\noh-my-cli 通过 acpx 调用所有 AI CLI，必须先安装：\n\n```bash\nnpm install -g acpx@latest\nacpx --version\n```\n\n### 3. 安装你想用的 AI CLI\n\noh-my-cli 本身不包含这些 CLI，需要你提前装好：\n\n| AI CLI | 安装命令 | 验证 |\n|--------|----------|------|\n| **Claude Code** | `npm install -g @anthropic-ai/claude-code` | `claude --version` |\n| **Codex CLI** | `npm install -g @openai/codex` | `codex --version` |\n| **Gemini CLI** | `npm install -g @google/gemini-cli` | `gemini --version` |\n| **Cursor CLI** | 在 Cursor IDE 中启用 | `cursor --version` |\n| **Copilot CLI** | `npm install -g @github/copilot-cli` | `copilot --version` |\n| **OpenCode** | `npm install -g opencode-ai` | `opencode --version` |\n\n> **提示：** 不需要全部装，装你自己用得上的就行。\n\n### 4. 初始化配置\n\n第一次使用前，运行 `omc init` 创建配置文件：\n\n```bash\nomc init\n```\n\n这会在 `~/.config/omc/config.json` 创建默认配置，你可以根据实际情况修改 Agent 绑定的 CLI。\n\n配置文件示例：\n\n```json\n{\n  \"agents\": {\n    \"architect\": { \"cli\": \"claude\" },\n    \"explorer\": { \"cli\": \"codex\" },\n    \"researcher\": { \"cli\": \"gemini\" },\n    \"frontender\": { \"cli\": \"cursor\" },\n    \"craftsman\": { \"cli\": \"claude\" },\n    \"writer\": { \"cli\": \"gemini\" }\n  }\n}\n```\n\n> **说明：** 配置文件中只需要写你想修改的 Agent，不写的保持默认。\n\n## 快速上手\n\n### 查看你的 Agent 团队\n\n```bash\nomc agents\n```\n\n输出示例：\n\n```\n📋 Available Agents:\n\n  Planning Layer:\n    planner    → claude    战略规划：分析需求，制定实施计划\n    analyst    → claude    顾问：分析需求，识别隐藏意图和歧义\n    reviewer   → claude    审查者：评估工作成果的清晰度和完整性\n\n  Execution Layer:\n    commander  → opencode  总指挥：全生命周期管理，任务路由，不写代码\n\n  Worker Layer:\n    architect  → claude    架构师：架构设计、复杂问题解答\n    explorer   → codex     搜索者：快速代码分析、模式发现\n    researcher → gemini    研究员：文档查询、技术调研\n    craftsman  → claude    工匠：复杂代码实现，深度重构\n    frontender → cursor    前端工程师：UI/UX 开发，界面设计\n    writer     → gemini    写手：生成和更新项目文档、README\n    ...\n```\n\n### 检查哪些 AI CLI 可用\n\n```bash\nomc discover\n```\n\n输出示例：\n\n```\n🔍 Discovering AI CLIs...\n\n  ✓ acpx       0.10.0\n  ✓ claude     2.1.104 (Claude Code)\n  ✓ codex      codex-cli 0.133.0\n  ✗ gemini     not found\n  ✓ opencode   1.15.10\n```\n\n## 使用方式\n\n### 1. 全流程模式（默认）\n\n直接给任务，omc 自动走 **规划 → 搜索 → 执行 → 审查** 四阶段：\n\n```bash\nomc \"重构用户登录模块，改用 JWT\"\n```\n\n流程：Planner 规划 → Explorer 搜索代码 → Architect 执行 → Reviewer 审查\n\n### 2. 快速模式（跳过规划和审查）\n\n直接路由到最合适的 Agent 执行，适合简单任务：\n\n```bash\nomc -q \"统计这个项目的代码行数\"\nomc -q \"找出所有 TODO 注释\"\n```\n\n### 3. 指定 Agent\n\n你明确知道要用谁时：\n\n```bash\nomc --agent architect \"分析这段代码的架构问题\"\nomc --agent explorer \"搜索项目中所有用到 Redis 的地方\"\nomc --agent researcher \"对比 RSC 和 SSR 的性能差异\"\nomc --agent craftsman \"重构 auth 模块\"\n```\n\n### 4. 并行执行\n\n多个任务同时开工：\n\n```bash\nomc --parallel \"重构 auth 模块\" \"写单元测试\" \"更新 README\"\n```\n\n### 5. 按能力路由\n\n让 omc 根据能力匹配 Agent：\n\n```bash\nomc --capabilities \"code-search,analysis\" \"找出所有未使用的 import\"\nomc --capabilities \"documentation\" \"写 API 使用说明\"\n```\n\n## Agent 列表\n\n**规划层**（只读，不修改代码）：\n\n| Agent | 默认 CLI | 职责 |\n|-------|----------|------|\n| **planner** | Claude Code | 需求分析、制定实施计划 |\n| **analyst** | Claude Code | 识别隐藏需求、评估风险 |\n| **reviewer** | Claude Code | 审查成果的完整性和质量 |\n\n**执行层**（只负责协调，不写代码）：\n\n| Agent | 默认 CLI | 职责 |\n|-------|----------|------|\n| **commander** | OpenCode | 全流程管理、任务路由 |\n\n**工作者层**（干活的主力）：\n\n| Agent | 默认 CLI | 擅长 |\n|-------|----------|------|\n| **architect** | Claude Code | 架构设计、复杂分析 |\n| **craftsman** | Claude Code | 复杂代码实现、深度重构 |\n| **explorer** | Codex CLI | 代码搜索、模式分析 |\n| **researcher** | Gemini CLI | 文档查询、技术研究 |\n| **frontender** | Cursor CLI | UI/UX、前端开发 |\n| **writer** | Gemini CLI | 文档编写 |\n| **looker** | Gemini CLI | 图片、PDF 分析 |\n| **helper** | Copilot CLI | 简单任务、辅助 |\n\n> **注意：** 默认 CLI 可以在 `~/.config/omc/config.json` 中修改。\n\n## 自定义配置\n\n### 配置文件位置\n\n```\n~/.config/omc/config.json\n```\n\n### 创建配置文件\n\n```bash\nomc init\n```\n\n### 配置格式\n\n```json\n{\n  \"agents\": {\n    \"architect\": { \"cli\": \"opencode\" },\n    \"explorer\": { \"cli\": \"claude\" },\n    \"writer\": { \"cli\": \"claude\" },\n    \"researcher\": { \"cli\": \"claude\" }\n  }\n}\n```\n\n### 修改后验证\n\n```bash\nomc agents --cli opencode  # 查看哪些 Agent 用 opencode\nomc agents                 # 查看完整列表\n```\n\n### 配置示例\n\n**场景 1：我只有 Claude Code 和 OpenCode**\n\n```json\n{\n  \"agents\": {\n    \"explorer\": { \"cli\": \"claude\" },\n    \"researcher\": { \"cli\": \"claude\" },\n    \"frontender\": { \"cli\": \"claude\" },\n    \"writer\": { \"cli\": \"claude\" },\n    \"looker\": { \"cli\": \"claude\" }\n  }\n}\n```\n\n**场景 2：我想让某个 Agent 换个 CLI**\n\n```json\n{\n  \"agents\": {\n    \"architect\": { \"cli\": \"opencode\" }\n  }\n}\n```\n\n## 真实场景示例\n\n### 例 1：新功能开发\n\n```bash\n# 全流程模式\nomc \"实现用户反馈功能\"\n```\n\n### 例 2：代码审查\n\n```bash\n# 指定 Agent 逐步审查\nomc --agent explorer \"扫描整个项目，列出所有已废弃的 API\"\nomc --agent architect \"分析这些废弃 API 的影响范围\"\nomc --agent craftsman \"按照分析结果，逐步替换废弃 API\"\n```\n\n### 例 3：技术调研\n\n```bash\nomc --agent researcher \"对比 RSC 和 SSR 的性能差异\"\nomc --agent explorer \"项目中哪些页面可以用 RSC 优化\"\nomc --agent architect \"基于调研结果，给出迁移到 RSC 的方案\"\n```\n\n## CLI 命令速查\n\n```bash\n# 全流程（规划→搜索→执行→审查）\nomc \"重构登录模块\"\n\n# 快速模式（直接路由）\nomc -q \"统计文件数\"\n\n# 指定 Agent\nomc --agent architect \"分析架构\"\n\n# 并行执行\nomc --parallel \"重构\" \"写测试\" \"更新文档\"\n\n# 按能力路由\nomc --capabilities \"code-search\" \"查找 TODO\"\n\n# 查看 Agent 列表\nomc agents\nomc agents --layer worker\nomc agents --cli claude\n\n# 发现可用 CLI\nomc discover\n\n# 初始化配置\nomc init\n```\n\n## 常见问题\n\n### Q：需要装所有 AI CLI 吗？\n不用。只装你用得上的就行。`omc discover` 会告诉你哪些可用。\n\n### Q：没有配置文件能用吗？\n可以。omc 内置了默认配置，没有配置文件也能正常运行。但建议运行 `omc init` 创建配置文件，方便自定义。\n\n### Q：omc 和 OMO 是什么关系？\nomc 使用了 OMO 的 Agent 命名约定，但 omc 是一个独立的 CLI 工具，不依赖 OMO。\n\n### Q：omc 适合谁用？\n适合手头有多个 AI CLI 工具，想让它们协作的开发者和团队。\n\n### Q：Agent 调用时有角色上下文吗？\n有。每个 Agent 调用时会通过 acpx 的 `--append-system-prompt` 注入角色 system prompt，所以 AI CLI 知道自己是谁、该做什么。\n\n## License\n\nMIT\n","readmeFilename":"README.md"}