内容
# 前沿协调器 — 多智能体协同工作适用于克劳德代码
[](https://github.com/luckeyfaraday/frontier-orchestrator/actions/workflows/ci.yml)
[](LICENSE)
[](package.json)
**前沿协调器** 是一个 [模型上下文协议(MCP)](https://modelcontextprotocol.io) 服务器和克劳德代码技能,它将克劳德转变为 **多智能体团队的首席工程师**。克劳德分解任务,定义跨栈合约,并验证结果,同时委托:
- **后端工作** (API,数据库,迁移,身份验证,基础设施,安全,后端测试)给 **OpenAI Codex**
- **前端和设计工作** (UI,UX,组件,样式,可访问性,动画,客户端状态)给 **Kimi Code**
- **工具和机械维护** (构建配置,依赖项升级,持续集成,发布自动化,生成的样板,存储库转换,测试/清理)给 **Grok Build**
每个专家都在您的存储库中作为沙箱子进程运行,接收具有明确文件所有权和验收标准的角色特定简报,并以结构化格式报告回来,克劳德在任何内容到达您之前进行审查。
## 为什么需要多智能体协同工作?
前沿编码代理具有不同的优势。与其要求一个模型执行所有操作,前沿协调器将完整栈任务的每个部分路由到最适合它的代理,并具有 **强制协调纪律**,以便代理不会相互覆盖更改:
- **领域优先路由** — 后端行为交给Codex,前端和UX行为交给Kimi,只有领域中立的工具或机械维护交给Grok,除非您明确覆盖路由。Grok不会仅因为它更快而被选择。
- **工作空间突变防护** — 两个专家不能在同一时间编辑重叠目录,除非克劳德明确证明他们的文件范围是分离的。
- **合约优先排序** — 对于未知的跨栈接口,Codex首先分析后端合约;Kimi根据已接受的合约构建。前端任务永远不会无声地发明后端API。
- **只读模式** — `analyze` 和 `review` 委托在只读沙箱中运行 `specialist CLI`;只有 `implement` 可以编辑工作空间。
## 工作原理
```mermaid
flowchart LR
U[您] --> C[克劳德代码<br/>首席工程师]
C -->|委托后端| M[前沿协调器<br/>MCP服务器]
C -->|委托前端| M
C -->|委托构建| M
M -->|Codex执行<br/>沙箱| X[OpenAI Codex<br/>后端专家]
M -->|kimi --print<br/>沙箱| K[Kimi Code<br/>前端专家]
M -->|grok -p<br/>沙箱| G[Grok Build<br/>工具/维护专家]
X --> M
K --> M
G --> M
M -->|结构化JSON结果| C
C -->|审查,集成,<br/>验证结果| U
```
MCP服务器公开了四个工具:
| 工具 | 目的 |
| --- | --- |
| `specialist_status` | 检查Codex,Kimi和Grok的CLI是否已安装并报告版本 |
| `delegate_backend` | 向Codex发送有限的后端任务(`analyze` / `review` / `implement`) |
| `delegate_frontend` | 向Kimi发送有限的设计/前端任务(`analyze` / `review` / `implement`) |
| `delegate_build` | 向Grok Build发送领域中立的工具或机械维护(`analyze` / `review` / `implement`) |
每个委托都采用结构化请求 — `task`,`mode`,`context`,`file_scope`,`acceptance_criteria`,可选 `model` 覆盖和强制 `timeout_seconds` — 并返回具有专家最终消息,退出代码,持续时间和失败诊断的JSON。
配套的 **`orchestrate-specialists` 技能** (在 `.claude/skills/` 中)教会克劳德领域优先路由规则,后端优先和前端优先排序模式,Grok的工具和维护边界,并行化前提条件和防护栏(参见 [routing-contract.md](.claude/skills/orchestrate-specialists/references/routing-contract.md))。
## 快速入门
要求:Node.js 20+, [克劳德代码](https://claude.com/claude-code),以及您打算使用的专家的身份验证 `codex`,`kimi` 和 `grok` CLI。缺少可选的CLI只会使该专家不可用。
```bash
git clone https://github.com/luckeyfaraday/frontier-orchestrator.git
cd frontier-orchestrator
npm install
npm run build
```
从此存储库启动克劳德代码。克劳德会自动发现项目范围的 `.mcp.json` 和技能。批准MCP服务器后,运行:
```text
/orchestrate-specialists
```
使用 `/mcp` 或:
```bash
claude mcp get frontier-orchestrator
```
## 从任何项目中使用
在用户范围内安装MCP服务器:
```bash
npm install && npm run build && npm link
claude mcp add --scope user frontier-orchestrator -- frontier-orchestrator
```
将技能复制到用户范围:
```bash
mkdir -p ~/.claude/skills
cp -R .claude/skills/orchestrate-specialists ~/.claude/skills/
```
在更改MCP配置后重启克劳德代码。
## 示例委托
典型的全栈功能流程如下:
1. 克劳德检查存储库并编写每个方面的验收标准和文件范围。
2. 使用 `mode: analyze` 委托后端 — Codex提出API合约。
3. 克劳德规范合约并将其传递给Kimi。
4. 使用 `mode: implement` 委托后端和前端 — 顺序运行,或仅在文件范围分离时并行(`allow_concurrent_mutation: true`)。可以将单独的领域中立工具或机械维护交给 `delegate_build`;稳定的应用程序合约不会将后端或前端所有权转让给Grok。
5. 克劳德检查每个更改的文件,运行综合检查,修复小的集成缺陷,并报告一个统一的结果。
## 配置
服务器继承Codex,Kimi和Grok的CLI现有的身份验证。所有设置都是环境变量:
| 环境变量 | 默认值 | 目的 |
| --- | --- | --- |
| `FRONTIER_PROJECT_ROOT` | `CLAUDE_PROJECT_DIR` | 相对路径的基本工作空间 |
| `FRONTIER_ALLOWED_ROOTS` | 项目根目录 | 其他允许的根目录,用平台路径分隔符分隔 |
| `FRONTIER_CODEX_CLI` | `codex` | Codex可执行文件或绝对路径 |
| `FRONTIER_KIMI_CLI` | `kimi` | Kimi可执行文件或绝对路径 |
| `FRONTIER_GROK_CLI` | `grok` | Grok可执行文件或绝对路径 |
| `FRONTIER_MAX_CONCURRENCY` | `2` | 最大同时专家进程 |
| `FRONTIER_MAX_CAPTURED_BYTES` | `2000000` | 每个流子输出在内存中保留 |
| `FRONTIER_MAX_RESULT_CHARS` | `30000` | 返回给克劳德的最大专家文本 |
在工作目录中,实现调用是序列化除非克劳德明确设置 `allow_concurrent_mutation: true`。该技能仅在文件范围分离和跨栈合约稳定时允许。
## 常见问题
**什么是前沿协调器?**
一个本地的标准输入输出MCP服务器和一个克劳德代码技能,允许克劳德协调OpenAI Codex,Kimi Code和Grok Build作为专家 — Codex用于后端工程,Kimi用于设计和前端,Grok用于领域中立的工具和机械维护 — 同时克劳德仍然负责分解,合约,审查和集成。
**这与克劳德代码子代理有什么不同?**
子代理运行更多的克劳德实例。前沿协调器通过领域和工作量优势将工作路由到 **不同的前沿模型**,封装在文件范围和突变防护栏中,克劳德在完成前审查所有内容。
**需要API密钥吗?**
不需要自己的密钥。它调用 `codex`,`kimi` 和 `grok` CLI,并继承这些CLI已经具备的身份验证。
**专家可以并行运行吗?**
是的,最多 `FRONTIER_MAX_CONCURRENCY` 进程 — 但工作空间突变按目录序列化,除非克劳德明确证明文件范围分离。
**让专家编辑我的存储库安全吗?**
`analyze` 和 `review` 模式是只读的。 `implement` 使用每个提供者的工作空间编辑模式,并指示每个专家在其声明的文件范围内工作;克劳德在呈现完成前检查所有差异。
## 故障排除
- 来自Kimi的 `LLM not set` 表示没有配置提供者/模型。运行 `kimi login`,完成浏览器授权和模型选择,然后重试。
- 来自Grok的身份验证错误表示其CLI会话不可用或已过期。运行 `grok login`,然后使用 `grok models` 确认帐户的可用模型。
- 项目范围的MCP服务器在您打开克劳德代码并批准 `.mcp.json` 之前显示为待处理。
- `specialist_status` 检查可执行文件可用性和版本;实际委托是最终的身份验证/配置检查。
## 开发
```bash
npm run check # 类型检查
npm test # 构建 + node --test
```
源代码布局:`src/index.ts` (MCP服务器和工具),`src/specialists.ts` (Codex,Kimi和Grok CLI调用和专家提示),`src/coordinator.ts` (并发门和工作空间突变防护),`src/config.ts` (环境配置和路径允许列表),`src/process.ts` (子进程生命周期)。
## 许可证
[MIT](LICENSE) © luckeyfaraday