Enderfga/claw-orchestrator
Run Claude Code, Codex, Antigravity, Grok Build and OpenCode behind one runtime, and a run only counts as done when checks it didn't write pass. Cross-engine fan-out, councils, session handoff, spend caps, MCP server, ACP agent.
什么是 Claw Orchestrator?
Claw Orchestrator 是一个 Node-JS 运行时,允许您在单一 API 后运行 编码助手代理(Claude Code、Codex、Antigravity、Grok Build、OpenCode 或任何自定义 CLI)。它将代理视为 持久会话,并添加了一个 验证层,该层自行检查工作——运行时会运行测试、HTTP 探测、文件差异等,并将结果记录在磁盘上。只有当运行时的自身检查通过时,运行才会被标记为 已验证,因此您无需盲目信任代理“所有测试通过”的声明。
核心理念
| 理念 | 它为您提供什么 |
|---|---|
| 验收契约 | 声明运行时在代理完成后将执行的检查(例如 npm test、HTTP 请求、截图)。运行结果为 已验证、已驳回 或 未验证 —— 而不是“代理说了算”。 |
| 多引擎运行时 | 一个 CLI / HTTP API,可以与 Claude Code、Codex、Antigravity、Grok Build、OpenCode 或任何自定义工具通信。您可以将单个提示同时扇出到多个引擎。 |
| 会话移交 | 将实时对话从一个引擎移动到另一个引擎(例如,从昂贵的 Claude 模型移动到更便宜的 Codex),而不会丢失上下文或工作区状态。 |
| 持久工作流内核 | 每个状态转换都会检查点到磁盘。如果进程崩溃,您可以恢复、重试、超时或取消运行,而不会丢失工作。 |
| 运行账本与预算上限 | JSONL 账本记录了每次轮次的令牌、成本、持续时间和引擎。您可以设置 maxBudgetUsd,以便运行时在所有引擎中强制执行硬性支出限制。 |
| 嵌入式仪表板 | Web UI (http://127.0.0.1:18796/dash) 显示实时事件流、运行历史记录,以及会话、委员会、自动循环等的控制项。 |
| 兼容 OpenAI 的代理 | 公开一个 /v1/chat/completions 端点,将 OpenAI 风格的请求转发到适当的持久会话,让任何 OpenAI 客户端都能在不更改的情况下与编排器通信。 |
主要功能(概览)
- 持久会话 – 在多次消息中保持代理的上下文活跃。
- 多引擎扇出 – 在 N 个模型上并行运行同一任务,并可选择合成单个答案。
- 委员会与自动循环 – 内置用于三代理循环(规划者 → 编码者 → 审查者)和共识投票的原语。
- Ultra-code / ultra-app – 更高级的构造,允许 Claude 编排子代理或通过简短访谈生成完整的 Web 应用。
- 验证平面 – 契约由运行时执行;证据(日志、差异、截图)存储在磁盘上。
- 可观测性 – 每轮账本、成本上限以及用于实时监控的仪表板。
- 集成 – CLI、MCP 插件(适用于 Zed、JetBrains、Cursor 等编辑器)、ACP 代理(标准 Agent Client Protocol)以及 TypeScript SDK。
快速入门 (CLI)
# 全局安装
npm install -g @enderfga/claw-orchestrator
# 启动本地服务器 + 仪表板
clawo serve # → http://127.0.0.1:18796/dash
# 使用 Claude Code 的简单解决请求
clawo solve "Fix the failing tests" \
--engine claude \
--check "npm test" \
--wait
# 在三个引擎上运行相同的提示并合成答案
clawo fanout "How would you speed up this test suite?" \
--engines claude,codex,grok \
--synthesize \
--wait
# 列出最近的运行(显示成本、令牌、判定等)
clawo runs --since 1h
服务器将访问令牌写入 ~/.openclaw/server-token;CLI 会自动读取它。
工作流示例(验证实践)
- 声明契约 –
--check "npm test"告诉运行时在代理完成后运行项目的测试套件。 - 代理工作 – Claude Code(或其他引擎)编辑
price.js试图使测试通过。 - 运行时验证 – 它自行执行
npm test。如果测试仍然失败,运行被标记为 已驳回;如果通过,则为 已验证。 - 证据存储 – 所有命令输出、更改的文件和差异快照都保存在磁盘上以供日后审计。
如何嵌入到您自己的代码中 (TypeScript SDK)
import { SessionManager } from '@enderfga/claw-orchestrator';
const manager = new SessionManager();
await manager.startSession({
name: 'fix-tests',
engine: 'claude',
cwd: '/my/project'
});
const result = await manager.sendMessage('fix-tests', 'Fix the failing tests');
console.log(result.verdict); // 'verified' | 'refuted' | 'unverified'
SDK 与本地 clawo-mcp 服务器通信,因此您获得与 CLI 相同的验证保证。
您何时会使用它?
- AI 生成代码的 CI 风格安全性 – 让模型提出更改,但让运行时强制执行项目的测试套件(或任何自定义契约)确实通过。
- 成本受控的多模型实验 – 在同一任务上比较多个供应商,查看哪一个能以最低成本给出正确答案,并强制执行预算。
- 复杂的自主工作流 – 构建自迭代循环(规划者-编码者-审查者)或无需人工干预即可达成解决方案的委员会。
- 工具丰富的编辑器集成 – 将运行时插入 Zed、JetBrains、VS Code 等,并在 IDE 内获得相同的验证保证。
许可与贡献
- 许可: MIT
- 贡献: 遵循
CONTRIBUTING.md中的指南;在打开 PR 之前运行npm run build && npm run lint && npm run format:check && npm run test。
总结: Claw Orchestrator 为您提供了一个 单一、持久的运行时,用于运行多个 AI 编码代理,并具有一个 独立的验证步骤,使结果变得可信且可审计。
相关
- 项目
- 项目
- 项目
- 项目
- 项目