npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@tt-a1i/mco

v0.5.0

Published

Node wrapper for the mco CLI (Python runtime required).

Readme

AI 编程 Agent 已经是开发者的标配工具。但一个 Agent 只是一个视角。

像 Tech Lead 一样工作:把同一个任务分配给多个 Agent 并行执行,比较结果后再决策。

一条命令,五个 Agent 同时干活。

与 OpenClaw 配合使用

你的机器上运行着 OpenClaw?它可以直接使用 MCO 作为多 Agent 编排后端。只需告诉 OpenClaw 你的需求:

"用 mco 对这个仓库做安全审查,使用 Claude、Codex 和 Gemini,汇总结果。"

OpenClaw 读取 mco -h,学会 CLI 接口,自主编排整个多 Agent 工作流。你的本地电脑变成一个多 Agent 审查团队 — OpenClaw 是管理者,MCO 是调度器,Claude/Codex/Gemini/OpenCode/Qwen 是团队成员。

同样适用于 Claude Code、Cursor、Trae、Copilot、Windsurf,或任何能执行 shell 命令的 Agent。

MCO 是什么

MCO(Multi-CLI Orchestrator)是一个中立的 AI 编程 Agent 编排层。它将提示词并行分发给多个 Agent CLI,汇总执行结果,返回结构化输出 — JSON、SARIF 或 PR Markdown 报告。不绑定任何厂商,不改变你的工作流。

OpenClaw 为代表的多 Agent 热潮正在重塑开发者工作流 — Claude Code、Codex CLI、Gemini CLI 等工具已全面可用。MCO 更进一步:不依赖单一 Agent,而是编排一整个团队。

MCO 设计为被任意编排方 Agent 或 AI IDE 调用 — Claude Code、Cursor、Trae、Copilot、Windsurf 或 OpenClaw。调用方 Agent 自行组织上下文、分配任务,通过 MCO 将工作并行扇出到多个 Agent。例如,运行在你电脑上的 OpenClaw 可以调用 mco review,将代码审查同时分发给 Claude、Codex 和 Gemini — 一条命令就把本地环境变成多 Agent 审查团队。Agent 之间也可以互相调度:Claude Code 可以通过 MCO 分发任务给 Codex 和 Gemini,反之亦然。

一个 Agent 是工具,五个 Agent 是团队

没有任何一个 AI 模型能看到所有问题。每个模型有各自的训练数据、推理风格和盲区。只用一个 Agent,就像团队里有五个工程师却只问其中一个的意见。

MCO 把这变成团队工作流:

  1. 分配任务 — 你给 MCO 一个任务和一组 Agent。就像 Tech Lead 把同一份代码审查分配给五个团队成员。
  2. 并行执行 — 所有 Agent 同时工作,总耗时 ≈ 最慢的那个,而不是所有人的总和。
  3. 审查去重 — MCO 收集每个 Agent 的发现,跨 Agent 自动去重相同问题,追踪哪些 Agent 发现了什么(detected_by)。
  4. 汇总共识 — 可选地,让一个 Agent 汇总全部结果:大家达成了哪些共识,在哪些地方存在分歧,下一步该做什么。

实际使用中,不同 Agent 发现不同的问题:

  • 一个 Agent 发现了异步代码中的竞态条件,却忽略了 ORM 层的 SQL 注入。
  • 另一个立刻定位了注入问题,却完全没注意到竞态条件。
  • 第三个两个都没发现,但找到了资源清理路径中一个隐蔽的内存泄漏,而前两个对此毫无察觉。

这不是假设 — 不同模型确实擅长不同的事。有的长于安全分析,有的擅长逻辑流,有的对性能模式更敏感。并行跑 3–5 个 Agent 审查同一份代码,你得到的是视角的并集而非交集。结果比你挑任何单一 Agent 都更全面。

这个原则不限于代码审查:

  • 架构分析 — 不同 Agent 暴露不同的设计风险和取舍
  • Bug 排查 — 更广的代码路径和边界条件覆盖
  • 重构评估 — 多视角评判变更的影响范围和安全性

问题不是"哪个 AI Agent 最好" — 而是"为什么只用一个?"

核心特性

  • 并行扇出 — 同时分发到多个 Agent,wait-all 语义
  • 任意 IDE,任意 Agent — 在 Claude Code、Cursor、Trae、Copilot、Windsurf 或命令行中使用
  • Agent 互相调度 — Agent 之间可以通过 MCO 互相分发任务
  • 双模式mco review 结构化代码审查,mco run 通用任务执行
  • 跨 Agent 发现去重 — 多个 Agent 发现的相同问题自动合并,保留 detected_by 来源追踪
  • LLM 共识总结--synthesize 额外执行一轮总结,输出跨 Agent 的共识/分歧摘要
  • CI/CD 集成--format sarif 对接 GitHub Code Scanning,--format markdown-pr 生成 PR 评论
  • 环境健康检查mco doctor 探测所有 provider 的二进制、版本和认证状态
  • Token 用量追踪--include-token-usage 可选输出各 Agent 和汇总的 token 消耗
  • 进度驱动超时 — Agent 自由跑完,仅在长时间无输出时取消
  • 可扩展适配器 — 统一接口适配任意 CLI Agent,不限于内置 provider
  • 机器可读输出 — JSON、SARIF 或 Markdown 输出,便于下游自动化

内置 Provider

| Provider | CLI | 状态 | |----------|-----|------| | Claude Code | claude | 已支持 | | Codex CLI | codex | 已支持 | | Gemini CLI | gemini | 已支持 | | OpenCode | opencode | 已支持 | | Qwen Code | qwen | 已支持 |

适配器架构可扩展 — 添加新的 Agent CLI 只需实现三个钩子:认证检查、命令构建、输出标准化。

使用场景

| 场景 | 命令 | 效果 | |------|------|------| | PR 代码审查 | mco review --format markdown-pr | 多个 Agent 并行审查,输出 PR 评论 | | CI 安全扫描 | mco review --format sarif | 结果直接上传 GitHub Code Scanning | | 架构分析 | mco run --providers claude,gemini,qwen | 多视角架构评估 | | 部署前健康检查 | mco doctor --json | 确认所有 Agent 已安装且已认证 | | 共识决策 | mco review --synthesize | 汇总 Agent 共识、标注分歧 |

快速开始

通过 npm 安装(需要系统有 Python 3):

npm i -g @tt-a1i/mco

或从源码安装:

git clone https://github.com/mco-org/mco.git
cd mco
python3 -m pip install -e .

运行第一次多 Agent 审查:

mco review \
  --repo . \
  --prompt "Review this repository for high-risk bugs and security issues." \
  --providers claude,codex,qwen

Agent 友好的 CLI

MCO 的 CLI 完全自描述。运行 mco -hmco review -h 即可看到分组参数、默认值和用法示例 — 全在终端里。这意味着任何能执行 shell 命令的 AI Agent 都可以通过阅读帮助输出自主学会使用 MCO,无需文档,无需预训练。

实际使用中,你只需要告诉 IDE 里的 Agent 你想要什么:

"用 mco 把安全审查分发给 Claude 和 Codex,性能分析分发给 Gemini 和 Qwen — 并行执行。"

Agent 读取 mco -h,理解参数,组装命令,自主编排整个流程。你描述意图,Agent 处理剩下的一切。

使用方式

Review 模式

结构化代码审查,输出标准化的 findings(含严重级别、分类、证据、建议)。

mco review \
  --repo . \
  --prompt "Review for security vulnerabilities and performance issues." \
  --providers claude,codex,gemini,opencode,qwen \
  --json

Run 模式

通用多 Agent 任务执行,不强制输出格式,provider 自由完成任务。

mco run \
  --repo . \
  --prompt "Summarize the architecture of this project." \
  --providers claude,codex \
  --json

Doctor

在执行任务前检查所有 Agent 的安装、可达性和认证状态:

mco doctor
mco doctor --json

输出格式(Review 模式)

| 格式 | 参数 | 用途 | |------|------|------| | 人类可读报告 | --format report(默认) | 终端阅读 | | PR Markdown | --format markdown-pr | 作为 GitHub PR 评论发布 | | SARIF 2.1.0 | --format sarif | 上传到 GitHub Code Scanning | | 机器可读 JSON | --json | 下游自动化 |

结果模式

| 模式 | 行为 | |------|------| | --result-mode stdout | 完整结果输出到 stdout,不写产物文件(默认) | | --result-mode artifact | 写产物文件,输出摘要 | | --result-mode both | 既写产物又输出完整结果 |

使用 --save-artifacts 可在保持 stdout 返回的同时写入产物。

路径约束

限制 agent 可访问的文件范围:

mco run \
  --repo . \
  --prompt "Analyze the adapter layer." \
  --providers claude,codex \
  --allow-paths runtime,scripts \
  --target-paths runtime/adapters \
  --enforcement-mode strict

默认值与参数覆盖

MCO 默认零配置可用。直接运行即可,按需通过命令行参数覆盖行为。

关键运行参数

| 参数 | 默认值 | 说明 | |------|--------|------| | --providers | claude,codex | 逗号分隔 provider 列表 | | --stall-timeout | 900 | 无输出进展超过此时间才取消(秒) | | --review-hard-timeout | 1800 | review 模式硬截止;0 = 禁用 | | --max-provider-parallelism | 0 | 0 = 选中 provider 全并行 | | --enforcement-mode | strict | 权限不满足时 fail-closed | | --strict-contract | 关闭 | 强制 findings JSON 契约(review 模式) | | --format | report | 输出格式:reportmarkdown-prsarif(后两者仅 review 模式) | | --include-token-usage | 关闭 | 各 provider 和汇总 token 用量(best-effort) | | --synthesize | 关闭 | 额外执行一轮 LLM 总结,输出共识/分歧摘要 | | --synth-provider | claude | 执行总结的 provider | | --provider-timeouts | 未设置 | provider 级 stall timeout 覆盖(provider=seconds) | | --provider-permissions-json | 未设置 | provider 权限映射 JSON(见下方) | | --save-artifacts | 关闭 | 在默认 stdout 模式下同时写入产物 | | --task-id | 自动生成 | 稳定的任务标识符,用于产物路径 | | --artifact-base | reports/review | 产物输出基础目录 |

默认 provider 权限:

| Provider | 权限 Key | 默认值 | |----------|----------|--------| | claude | permission_mode | plan | | codex | sandbox | workspace-write |

示例:

mco review \
  --repo . \
  --prompt "Review for bugs." \
  --providers claude,codex,qwen \
  --save-artifacts \
  --stall-timeout 900 \
  --review-hard-timeout 1800 \
  --max-provider-parallelism 0 \
  --provider-timeouts qwen=900,codex=900

运行 mco review --help 查看完整参数列表。

退出码

| 退出码 | 含义 | |--------|------| | 0 | 成功 | | 2 | FAIL / 输入 / 配置 / 运行时错误 | | 3 | INCONCLUSIVE(仅 review 模式,启用 --strict-contract 时) |

工作原理

You (Tech Lead)
     │
     ▼
  mco review / mco run
     │
     ├─→ Claude Code  ──┐
     ├─→ Codex CLI      │
     ├─→ Gemini CLI     ├─→ 去重 → 共识总结 → 输出
     ├─→ OpenCode       │
     └─→ Qwen Code   ───┘
                              │
                    ┌─────────┼─────────┐
                    ▼         ▼         ▼
                  JSON    SARIF    Markdown-PR
               (stdout)  (CI/CD)  (PR 评论)

调用方 Agent(或用户)传入提示词和 provider 列表调用 mco,MCO 并行扇出到所有选中的 Agent,等待全部完成。

每个 provider 通过统一的适配器契约作为独立子进程运行:

  1. Detect — 检测二进制文件和认证状态
  2. Run — 启动 CLI 进程,传入提示词,捕获 stdout/stderr
  3. Poll — 监控进程状态 + 输出字节增长,判断活跃度
  4. Cancel — stall timeout 或硬截止时 SIGTERM/SIGKILL
  5. Normalize — 从原始输出中提取结构化 findings

执行模型是 wait-all:单个 provider 超时或失败不会中断其他 provider。

重试与容错

  • 瞬态错误(超时、限流、网络抖动)自动重试,指数退避(默认重试 1 次)。
  • 单个 provider 失败不影响其他 provider。
  • 每次调用都会真实执行 provider 并返回新输出(不复用结果缓存)。

在 Claude Code 内运行

MCO 在启动 provider 子进程前会自动清理 CLAUDECODE 环境变量,可以安全地在 Claude Code 会话中运行 mco

产物结构

当启用产物写入(--save-artifacts--result-mode artifact/both)时,会生成:

reports/review/<task_id>/
  summary.md          # 人类可读摘要
  decision.md         # PASS / FAIL / ESCALATE / PARTIAL
  findings.json       # 聚合后的标准化 findings(review 模式)
  run.json            # 机器可读执行元数据
  providers/          # 各 provider 结果 JSON
  raw/                # 原始 stdout/stderr 日志

许可证

MIT — 见 LICENSE