mission-control README

The project's README from github.com/builderz-labs/mission-control. As one markdown file: README.md.

Mission Control

Self-hosted control plane for operating AI agents.

Dispatch tasks, inspect runs, review failures, track spend, and coordinate agent runtimes from one local dashboard backed by SQLite.

An open-source project by Builderz Labs, created and maintained by nyk. It works with OpenClaw, Claude Code, Codex, and other runtimes - it is not part of any one of them.

Quality Gate Release License: MIT Sponsor

Mission Control overview dashboard with active sessions, live activity, fleet status per runtime, and the task pipeline

[!WARNING] Mission Control is alpha software. APIs, schemas, and configuration may change between releases. Read the security guidance before exposing it to a network.

Start locally

Node.js 22 or newer and pnpm are required for a source install.

git clone https://github.com/builderz-labs/mission-control.git
cd mission-control
bash install.sh --local

Open http://localhost:3000/setup, create the first admin account, then copy the API key from Settings if an agent or script needs headless access.

The manual path is useful when you already manage Node and pnpm:

nvm use 22
pnpm install
pnpm dev

Windows users can run ./install.ps1 -Mode local in PowerShell.

Start with Docker

docker compose up

Or run the published multi-architecture image:

docker pull ghcr.io/builderz-labs/mission-control:latest
docker run --rm -p 3000:3000 ghcr.io/builderz-labs/mission-control:latest

Use the hardened Compose overlay for a network-accessible deployment:

docker compose -f docker-compose.yml -f docker-compose.hardened.yml up -d

The deployment guide covers persistent data, TLS termination, gateway connectivity, and standalone builds.

What Mission Control governs

The control plane sits above agent runtimes. It does not replace their reasoning or tool loops. It gives operators one place to see and govern the work around those loops.

Area Shipped surface
Tasks Inbox, assignment, execution, review, Aegis quality gate, and completion receipts
Agents Registration, presence, sessions, runtime adapters, configuration, and workspace sync
Operations Activity stream, schedules, alerts, webhooks, logs, token use, and cost views
Knowledge Memory browser, relationship graph, skills registry, and local skill synchronization
Governance Roles, API keys, security events, trust signals, approvals, audits, and evals
Interfaces Web UI, CLI, MCP server, OpenAPI-described REST API, WebSocket, and SSE

The runtime is self-hosted and workspace-aware. SQLite stores local control-plane state. Shared workspaces can use deployment-level runtime integrations. Strict workspaces block those integrations until the underlying resources carry workspace ownership. A gateway is optional for task, project, agent, scheduler, webhook, alert, and cost work; live session messaging needs a connected runtime gateway.

Operator field notes

Dashboards compress a sequence into current state. When a run needs review, record the identity, task, tool call, approval, result, and verification evidence before changing it. Keep unresolved items distinct from accepted risk.

Mission Control operator field notes

Logs show what ran. A completion receipt or inspected artifact shows what finished.

Pick the right fit

Use Mission Control when multiple agents or runtimes make it hard to answer who owns a task, what executed, which result passed review, or where spend and failures accumulated.

It is probably the wrong tool when:

Adapters and observation surfaces cover OpenClaw, Claude Code, Codex, CrewAI, LangGraph, AutoGen, and Claude SDK workflows. Adapter depth varies by runtime; see agent setup and CLI integration before assuming feature parity.

Connect an agent

The shortest gateway-free loop uses the REST API. Export the URL and API key shown in Settings:

export MC_URL=http://localhost:3000
export MC_API_KEY=replace-with-your-api-key

Register an agent and create work:

curl -s -X POST "$MC_URL/api/agents/register" \
  -H "Authorization: Bearer $MC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"scout","role":"researcher"}'

curl -s -X POST "$MC_URL/api/tasks" \
  -H "Authorization: Bearer $MC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Review open incidents","assigned_to":"scout","priority":"medium"}'

The agent can then claim its queue:

curl -s "$MC_URL/api/tasks/queue?agent=scout" \
  -H "Authorization: Bearer $MC_API_KEY"

Continue with the first-agent quickstart for heartbeats, task results, queue behavior, CLI equivalents, and MCP setup.

CLI

pnpm mc agents list --json
pnpm mc tasks queue --agent scout --json
pnpm mc events watch --types agent,task

MCP server

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

Use the CLI and MCP reference for the current command and tool surface. The REST contract lives in openapi.json. A running instance serves the interactive reference at /docs and the OpenAPI JSON at /api/docs.

Product surfaces

Tasks and quality review

The task board tracks work through inbox, assignment, execution, review, quality review, and completion. Aegis review requires an approval record before a task reaches done.

Mission Control task board with assigned, in-progress, and review columns of agent tasks

Agents and runtimes

Agent views combine registration state, heartbeats, sessions, configuration, local runtime discovery, and workspace files.

Mission Control agents panel showing a five-agent squad with roles, heartbeats, and workspace conventions

Memory and skills

The memory browser and relationship graph inspect filesystem-backed memory and linked session knowledge. The Skills Hub discovers local skill roots and scans registry content before installation.

Mission Control memory browser rendering a markdown agent note with wiki-style links between memory files

Schedules and activity

Recurring task templates create dated work on a cron schedule. The activity stream combines agent, task, and system events for operator review.

Mission Control cron management calendar with scheduled jobs across the week

Mission Control activity stream with per-agent status and heartbeat events

Documentation

Guide Use it for
Quickstart Register an agent and run the first task loop
Agent setup Sources, identities, SOUL files, and heartbeats
Orchestration Dispatch, handoffs, workflows, and review gates
CLI and MCP Headless commands and agent tools
CLI integration Claude Code, Codex, and gateway-free connections
Deployment Local, Docker, standalone, reverse proxy, and VPS setup
Security hardening Network, container, CSP, and secret controls
Support Questions, bugs, feature proposals, and security-report routing
OpenClaw compatibility Config and state-directory behavior
Release process Versioning, tags, images, and release checks

Architecture

Web UI ─┐
CLI ────┼── auth ─ dispatch ─ events ─ policy ─ receipts
MCP ────┤                                      │
REST ───┘                         SQLite + agent runtimes
Layer Technology
Application Next.js 16 App Router, React 19, TypeScript 5
Interface Tailwind CSS 4, Zustand, Recharts, xterm.js
State SQLite through better-sqlite3, with WAL mode
Boundaries REST/OpenAPI, MCP, CLI, WebSocket, and SSE
Access Session cookies, API keys, Google sign-in, and role checks
Validation Zod at input boundaries
Verification Vitest, Playwright, ESLint, TypeScript, build, and API parity checks

Runtime data defaults to .data/. Set MISSION_CONTROL_DATA_DIR to an absolute persistent path for standalone deployments. The complete environment contract is in .env.example.

Security boundary

Access controls and security inspection surfaces are included, but alpha status still applies. Read SECURITY-HARDENING.md before relying on a network-accessible deployment.

Develop

pnpm install --frozen-lockfile
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm test:e2e

pnpm quality:gate runs the full repository gate. Useful diagnostics:

bash scripts/station-doctor.sh
bash scripts/security-audit.sh
pnpm api:parity

Common local failures:

Symptom Check
Login returns an internal error after changing Node versions Run pnpm rebuild better-sqlite3
Docker cannot reach the gateway Set OPENCLAW_GATEWAY_HOST=host.docker.internal
Browser WebSocket cannot connect Leave NEXT_PUBLIC_GATEWAY_HOST empty or set a browser-reachable host
Password text after # disappears Quote AUTH_PASS or use AUTH_PASS_B64

See CONTRIBUTING.md for contribution scope, coding standards, and review expectations. Community conduct is defined in CODE_OF_CONDUCT.md.

Project status and support

Release notes live in CHANGELOG.md. Open issues are the current roadmap; the project does not promise dates for unassigned work.

Mission Control star history

License

MIT © 2026 Builderz Labs

mission-control (builderz-labs/mission-control)

Searching Database…

这是什么?Mission Control 是一个自托管的控制平面,用于管理 AI 编程代理。它可以分派任务、审查运行情况、跟踪开销,并通过一个基于 SQLite 的本地仪表盘,统一协调 OpenClaw、Claude Code 和 Codex 等运行时。
这是代理框架,还是运维/监控层?它不是代理框架。它位于现有代理运行时之上,不会取代它们的推理或工具调用循环,而是为运维人员提供一个地方,用来查看和管理这些代理所做的工作。
我该怎么让它跑起来?如果要从源码安装,请先安装 Node.js 22+ 和 pnpm(Windows 用户可以在 PowerShell 中运行 './install.ps1 -Mode local');如果要做可通过网络访问的部署,则可以拉取已发布的多架构 Docker 镜像,并使用加固版 Compose 覆盖配置。
它实际支持哪些代理运行时?适配器和观测界面覆盖 OpenClaw、Claude Code、Codex、CrewAI、LangGraph、AutoGen 以及 Claude SDK 工作流,不过不同运行时的适配深度有所不同。
它足够稳定,能用于生产环境吗?不能。该项目明确标注为 alpha 软件,其 API、数据结构和配置可能会在版本之间发生变化。在将其暴露到网络之前,建议先阅读安全指南。
什么情况下这不是合适的工具?如果一台机器上的单个代理通过其原生 CLI 就已经足够清晰易懂,如果你需要的是托管的多租户 SaaS 而不是自托管方案,如果你希望由代理框架来定义规划和工具调用,或者如果你的部署无法承受 alpha 级别的数据结构变更,那就不要使用它。
我的代理数据会留在本地吗?运行时状态通过 SQLite 存储在本地(默认路径为 .data/)。项目提醒,除非配置了 TLS 反向代理和允许主机列表,否则请将实例保持在可信网络中。
我如何把代理连接到 Mission Control?从设置中导出仪表盘 URL 和 API 密钥,通过 REST API 注册代理并创建工作任务,然后让代理认领其队列。这一任务/API 循环不需要网关。
什么是 Aegis?Aegis 是 Mission Control 内置的任务质量门禁。任务要标记为完成,必须先有审批记录,它位于执行与完成之间。
仪表盘的技术栈是什么?它基于 Next.js 16、React 19 和 TypeScript 5 构建,使用 Tailwind CSS 4 进行样式设计,状态管理采用 Zustand,图表使用 Recharts,终端视图使用 xterm.js,存储则采用 WAL 模式的 better-sqlite3。
使用它需要连接网关吗?大多数情况下不需要。任务、项目、代理、调度器、Webhook、告警和成本相关的工作都可以不依赖网关,但与运行时进行实时会话消息传递则需要已连接的网关。
What are similar projects?paperclip, evenfire, tinyagi, ordewell, turnstone, ruflo, vicoa, openrig
Size
19 MB
Stars
6.4K
Age
8mo
Commits · 90 Days