Mission Control
为多运行时 AI 工作提供自托管调度、审查与成本运营台。
这个 Agent 能做什么,适合哪些场景?
Mission Control 是一个自托管控制平面,用于在本地仪表盘中调度任务、查看运行记录、审查失败并追踪支出。它位于代理运行时之上,不接管推理或工具循环,而是治理任务、会话、审批、事件与完成回执等外围运营流程。系统提供 Next.js Web UI、CLI、MCP 服务器、OpenAPI 描述的 REST API、WebSocket 与 SSE,并以 SQLite 保存本地控制平面状态。它可连接 OpenClaw、Claude Code、Codex 等运行时,也提到 CrewAI、LangGraph、AutoGen 和 Claude SDK 工作流,但各适配器能力深度不同。部署可使用本地 Node.js/pnpm、Docker Compose 或发布的容器镜像;面向网络暴露时需要按文档配置 TLS、允许主机和加固措施。
运营者先在 /setup 创建首个管理员账号,并从 Settings 复制 API key。脚本或代理可调用 POST /api/agents/register 注册身份,再调用 POST /api/tasks 创建并分配任务;代理通过 GET /api/tasks/queue?agent=scout 获取队列工作。任务板覆盖 inbox、assignment、execution、review、quality review 和 completion,Aegis review 要求存在审批记录后任务才能完成。控制台还汇集心跳、会话、活动流、计划任务、webhook、日志、token 用量与成本视图;CLI 可执行 pnpm mc agents list --json、pnpm mc tasks queue --agent scout --json 和 pnpm mc events watch --types agent,task。MCP 接入通过 scripts/mc-mcp-server.cjs 启动,运行中的实例提供 /docs 和 /api/docs 的 API 文档。
- 负责多个 Codex 或 Claude Code 实例的工程负责人,需要确认某个任务由谁接手、执行到哪里以及是否已通过审查。
- 在本地或私有网络运行代理的团队,需要用 SQLite 保存任务、会话、事件和成本运营数据,而不采用托管多租户服务。
- 需要让脚本通过 REST API 注册 `scout` 这类代理、创建任务并让代理轮询领取队列的开发者。
- 需要对高风险或失败运行保留身份、任务、工具调用、审批、结果和验证证据的运营人员。
- 使用 cron 创建定期任务模板,并希望在同一活动流中审查代理、任务和系统事件的团队。
这个 Agent 有哪些优点和局限?
- 将 Web UI、CLI、MCP、REST/OpenAPI、WebSocket 和 SSE 集中到一个本地控制平面,适合人和自动化脚本共用。
- 任务流程包含 Aegis 审批记录与 completion receipts,能把“运行过”与“已完成且经验证”区分开。
- SQLite(WAL 模式)保存本地状态,且支持通过 `MISSION_CONTROL_DATA_DIR` 指向持久化绝对路径。
- 同时覆盖任务、代理注册、心跳、会话、排程、活动流、日志、token 与成本,而非只显示单一运行记录。
- 项目明确处于 alpha,API、schema 和配置可能在版本间变化。
- 运行时适配深度不一致;接入 OpenClaw、Claude Code、Codex 等前需要核实具体功能是否支持。
- 实时会话消息依赖已连接的 runtime gateway;gateway 对其他任务与运营功能则是可选的。
- 网络部署需要 TLS 反向代理、`MC_ALLOWED_HOSTS` 和加固配置;项目明确警告不要未经配置直接暴露到网络。
如何安装或部署这个 Agent?
源码安装需要 Node.js 22 或更高版本及 pnpm:git clone https://github.com/builderz-labs/mission-control.git,cd mission-control,然后运行 bash install.sh --local。也可执行 nvm use 22、pnpm install、pnpm dev;Windows 可在 PowerShell 运行 ./install.ps1 -Mode local。容器方式可运行 docker compose up,或执行 docker pull ghcr.io/builderz-labs/mission-control:latest 后运行 docker run --rm -p 3000:3000 ghcr.io/builderz-labs/mission-control:latest。首次启动后访问 http://localhost:3000/setup 创建管理员账号,并在 Settings 获取供脚本或代理使用的 API key。
如何使用这个 Agent?
设置 MC_URL=http://localhost:3000 和 MC_API_KEY=replace-with-your-api-key。用 Bearer API key 调用 POST $MC_URL/api/agents/register,请求体可为 {"name":"scout","role":"researcher"};再调用 POST $MC_URL/api/tasks,例如指定 {"title":"Review open incidents","assigned_to":"scout","priority":"medium"}。代理以 GET $MC_URL/api/tasks/queue?agent=scout 领取任务,也可用 pnpm mc tasks queue --agent scout --json。如需 MCP,可执行 claude mcp add mission-control -- env MC_URL=http://127.0.0.1:3000 MC_API_KEY=replace-with-your-api-key node /absolute/path/to/mission-control/scripts/mc-mcp-server.cjs。
这个 Agent 与同类方案有什么区别?
它不是 OpenClaw、Claude Code 或 Codex 的替代品,也不是定义代理规划和工具使用的框架;它位于这些运行时之上,集中处理调度、观察、审查与治理。