본문으로 건너뛰기
cccskills
무료GitHub에 공개

mission-control

Connect AI agents to Mission Control through its API to register agents, retrieve assigned tasks, report progress, manage skills, and check agent or system status from scripts and automated workflows.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Interact with Mission Control — AI agent orchestration dashboard. Use when registering agents, managing tasks, syncing skills, or querying agent/task status via MC APIs.

설치 방법 보기

이럴 때 유용합니다

  • Registering agents and reporting their online status
  • Retrieving assigned tasks and reporting progress
  • Reading and updating registered skills
  • Checking agent activity and system health

포함된 파일(200)

  • SKILL.md8.2 KB
  • .dockerignore231 B
  • .env.example11.1 KB
  • .env.test191 B
  • .github/CODEOWNERS76 B
  • .github/dependabot.yml1.4 KB
  • .github/FUNDING.yml31 B
  • .github/ISSUE_TEMPLATE/bug_report.yml1.9 KB
  • .github/ISSUE_TEMPLATE/config.yml261 B
  • .github/ISSUE_TEMPLATE/feature_request.yml2.3 KB
  • .github/pull_request_template.md825 B
  • .github/workflows/codeql.yml951 B
  • .github/workflows/config-integrity.yml2.5 KB
  • .github/workflows/docker-publish.yml2.4 KB
  • .github/workflows/osv-scanner.yml557 B
  • .github/workflows/quality-gate.yml1.8 KB
  • .github/workflows/scorecard.yml1.2 KB
  • .github/workflows/screenshot-drift.yml3.9 KB
  • .github/workflows/star-chart.yml1.1 KB
  • .gitignore695 B
  • .node-version3 B
  • .npmrc48 B
  • .nvmrc3 B
  • CHANGELOG.md20.3 KB
  • CLAUDE.md3.3 KB
  • CODE_OF_CONDUCT.md5.4 KB
  • CONTRIBUTING.md2.1 KB
  • docker-compose.hardened.yml486 B
  • docker-compose.yml3.0 KB
  • docker-entrypoint.sh1.3 KB
  • Dockerfile4.6 KB
  • docs/agent-setup.md9.9 KB
  • docs/cli-agent-control.md4.2 KB
  • docs/cli-integration.md3.3 KB
  • docs/deployment.md23.7 KB
  • docs/mission-control-activity.png45.6 KB
  • docs/mission-control-agents.png59.6 KB
  • docs/mission-control-cron.png62.3 KB
  • docs/mission-control-memory.png37.5 KB
  • docs/mission-control-overview.png44.8 KB
  • docs/mission-control-tasks.png85.9 KB
  • docs/openclaw-config-compatibility.md1.4 KB
  • docs/operator-field-notes.webp74.5 KB
  • docs/orchestration.md10.5 KB
  • docs/plans/2026-03-10-onboarding-walkthrough-hardening.md1.1 KB
  • docs/plans/2026-03-20-mission-control-platform-cli-tui-prd.md8.4 KB
  • docs/quickstart.md7.6 KB
  • docs/releases/2.0.0.md10.0 KB
  • docs/releases/2.0.1.md4.6 KB
  • docs/releases/2.2.0.md2.5 KB
  • docs/releases/2.3.0.md2.8 KB
  • docs/SCREENSHOT-GUIDE.md2.9 KB
  • docs/SECURITY-HARDENING.md12.7 KB
  • docs/star-history-dark.svg5.5 KB
  • docs/star-history-light.svg5.5 KB
  • eslint.config.mjs1.4 KB
  • examples/MULTI-PROVIDER-DEMO.md38.4 KB
  • install.ps116.1 KB
  • install.sh15.7 KB
  • LICENSE1.0 KB
  • messages/ar.json108.2 KB
  • messages/de.json91.6 KB
  • messages/en.json83.2 KB
  • messages/es.json92.2 KB
  • messages/fr.json94.8 KB
  • messages/ja.json102.0 KB
  • messages/ko.json92.7 KB
  • messages/pt.json91.7 KB
  • messages/ru.json122.0 KB
  • messages/zh-tw.json82.3 KB
  • messages/zh.json82.0 KB
  • next.config.js2.4 KB
  • openapi.json330.6 KB
  • openclaw_hardening_guide.md6.9 KB
  • ops/mc-provisioner-daemon.js11.6 KB
  • ops/provisioner-limits.cjs907 B
  • ops/templates/openclaw-gateway@.service567 B
  • package.json4.2 KB
  • playwright.config.ts1.3 KB
  • playwright.openclaw.gateway.config.ts627 B
  • playwright.openclaw.local.config.ts625 B
  • pnpm-lock.yaml328.7 KB
  • pnpm-workspace.yaml743 B
  • postcss.config.js71 B
  • public/brand/claude-logo.png61.4 KB
  • public/brand/codex-logo.png2.8 KB
  • public/brand/hermes-logo.png24.8 KB
  • public/brand/mc-logo-128.png16.7 KB
  • public/brand/mc-logo-256.png63.0 KB
  • public/brand/mc-logo-512.png279.3 KB
  • public/brand/openclaw-logo.png25.1 KB
  • public/llms.txt1.3 KB
  • public/mc-logo.png1.8 MB
  • public/mc.png2.3 MB
  • public/office-sprites/cc0-hero/ATTRIBUTION-CC0-HERO.txt210 B
  • public/office-sprites/cc0-hero/player_full_animation.png49.4 KB
  • public/office-sprites/cc0-hero/player.png13.6 KB
  • public/office-sprites/desk.svg665 B
  • public/office-sprites/floor-tile.svg436 B
  • public/office-sprites/kenney/ATTRIBUTION-KENNEY.txt575 B
  • public/office-sprites/kenney/chairDesk.png997 B
  • public/office-sprites/kenney/computerScreen.png353 B
  • public/office-sprites/kenney/desk.png560 B
  • public/office-sprites/kenney/floorFull.png795 B
  • public/office-sprites/kenney/plantSmall1.png257 B
  • public/office-sprites/kenney/plantSmall2.png248 B
  • public/office-sprites/kenney/rugRectangle.png418 B
  • public/office-sprites/kenney/tableCross.png512 B
  • public/office-sprites/lounge-rug.svg358 B
  • public/office-sprites/plant.svg487 B
  • public/office-sprites/worker-base.svg603 B
  • public/office-sprites/worker-idle-a.svg603 B
  • public/office-sprites/worker-idle-b.svg603 B
  • public/office-sprites/worker-type-a.svg601 B
  • public/office-sprites/worker-type-b.svg601 B
  • public/office-sprites/worker-walk-a.svg603 B
  • public/office-sprites/worker-walk-b.svg603 B
  • public/robots.txt198 B
  • README.md11.9 KB
  • RELEASE.md1.6 KB
  • scripts/agent-heartbeat.sh7.1 KB
  • scripts/api-contract-parity.ignore670 B
  • scripts/check-api-contract-parity.mjs5.1 KB
  • scripts/check-node-version.mjs681 B
  • scripts/check-standalone-artifact.mjs2.4 KB
  • scripts/check-workflow-action-pins.py1.3 KB
  • scripts/deploy-standalone.sh6.2 KB
  • scripts/e2e-openclaw/bin/clawdbot353 B
  • scripts/e2e-openclaw/bin/openclaw353 B
  • scripts/e2e-openclaw/bin/opencode699 B
  • scripts/e2e-openclaw/mock-gateway.mjs1.5 KB
  • scripts/e2e-openclaw/start-e2e-server.mjs8.4 KB
  • scripts/gen-star-history.py5.8 KB
  • scripts/generate-env.sh2.4 KB
  • scripts/load-env.sh2.1 KB
  • scripts/load-env.test.sh1.9 KB
  • scripts/mc-base-url.cjs1.0 KB
  • scripts/mc-cli.cjs25.4 KB
  • scripts/mc-mcp-server.cjs30.1 KB
  • scripts/mc-server.cjs2.8 KB
  • scripts/mc-tui.cjs45.9 KB
  • scripts/notification-daemon.sh10.1 KB
  • scripts/prepare-standalone-artifact.mjs1.8 KB
  • scripts/security-audit.sh6.5 KB
  • scripts/security-audit.test.sh1.4 KB
  • scripts/smoke-staging.mjs5.3 KB
  • scripts/start-standalone.sh1.5 KB
  • scripts/station-doctor.sh6.7 KB
  • scripts/take-screenshots.ts3.2 KB
  • SECURITY.md2.5 KB
  • skills/mission-control-installer/README.md1.7 KB
  • skills/mission-control-installer/skill.json786 B
  • skills/mission-control-manage/README.md2.6 KB
  • skills/mission-control-manage/skill.json605 B
  • src/app/[[...panel]]/page.tsx26.8 KB
  • src/app/api/activities/route.ts7.7 KB
  • src/app/api/adapters/route.ts4.3 KB
  • src/app/api/agent-runtimes/route.ts3.9 KB
  • src/app/api/agents/[id]/attribution/route.ts12.1 KB
  • src/app/api/agents/[id]/diagnostics/route.ts14.2 KB
  • src/app/api/agents/[id]/files/route.ts6.3 KB
  • src/app/api/agents/[id]/heartbeat/route.ts8.9 KB
  • src/app/api/agents/[id]/hide/route.ts2.6 KB
  • src/app/api/agents/[id]/keys/route.ts7.1 KB
  • src/app/api/agents/[id]/memory/route.ts11.2 KB
  • src/app/api/agents/[id]/route.ts11.0 KB
  • src/app/api/agents/[id]/soul/route.ts11.0 KB
  • src/app/api/agents/[id]/wake/route.ts2.1 KB
  • src/app/api/agents/comms/route.ts5.8 KB
  • src/app/api/agents/evals/route.ts5.7 KB
  • src/app/api/agents/message/route.ts3.3 KB
  • src/app/api/agents/optimize/route.ts3.6 KB
  • src/app/api/agents/register/route.ts4.7 KB
  • src/app/api/agents/route.ts17.0 KB
  • src/app/api/agents/sync/route.ts2.3 KB
  • src/app/api/alerts/route.ts12.9 KB
  • src/app/api/audit/route.ts1.9 KB
  • src/app/api/auth/access-requests/route.ts5.4 KB
  • src/app/api/auth/google/disconnect/route.ts1.4 KB
  • src/app/api/auth/google/route.ts4.4 KB
  • src/app/api/auth/login/route.ts2.6 KB
  • src/app/api/auth/logout/route.test.ts2.0 KB
  • src/app/api/auth/logout/route.ts1.3 KB
  • src/app/api/auth/me/route.ts5.1 KB
  • src/app/api/auth/users/route.ts7.1 KB
  • src/app/api/backup/route.ts6.4 KB
  • src/app/api/channels/route.ts9.9 KB
  • src/app/api/chat/conversations/route.ts3.6 KB
  • src/app/api/chat/messages/[id]/route.ts2.6 KB
  • src/app/api/chat/messages/route.ts26.9 KB
  • src/app/api/chat/session-prefs/route.ts4.0 KB
  • src/app/api/claude-tasks/route.ts907 B
  • src/app/api/claude/sessions/route.ts3.8 KB
  • src/app/api/cleanup/route.ts7.2 KB
  • src/app/api/connect/route.ts6.1 KB
  • src/app/api/cron/route.ts14.6 KB
  • src/app/api/debug/route.ts5.8 KB
  • src/app/api/diagnostics/route.ts6.7 KB
  • src/app/api/docs/content/route.ts1.4 KB
  • src/app/api/docs/route.ts464 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Mission Control Agent Skill

Mission Control (MC) is an AI agent orchestration dashboard with real-time SSE/WebSocket, a skill registry, framework adapters, and RBAC. This skill teaches agents how to interact with MC APIs programmatically.

Quick Start

Base URL: http://localhost:3000 (default Next.js dev) or your deployed host.

Auth header: x-api-key: <your-api-key>

Register + heartbeat in two calls:

# 1. Register
curl -X POST http://localhost:3000/api/adapters \
  -H "Content-Type: application/json" \
  -H "x-api-key: $MC_API_KEY" \
  -d '{
    "framework": "generic",
    "action": "register",
    "payload": { "agentId": "my-agent-01", "name": "My Agent" }
  }'

# 2. Heartbeat (repeat every 5 minutes)
curl -X POST http://localhost:3000/api/adapters \
  -H "Content-Type: application/json" \
  -H "x-api-key: $MC_API_KEY" \
  -d '{
    "framework": "generic",
    "action": "heartbeat",
    "payload": { "agentId": "my-agent-01", "status": "online" }
  }'

Authentication

MC supports two auth methods:

MethodHeaderUse Case
API Keyx-api-key: <key> or Authorization: Bearer <key>Agents, scripts, CI/CD
Session cookieCookie: __Host-mc-session=<token> (HTTPS) or mc-session=<token> (HTTP)Browser UI

Roles (hierarchical): viewer < operator < admin

  • viewer — Read-only access (GET endpoints)
  • operator — Create/update agents, tasks, skills, use adapters
  • admin — Full access including user management

API key auth grants admin role by default. The key is set via API_KEY env var or the security.api_key DB setting.

Agents can identify themselves with the optional X-Agent-Name header for attribution in audit logs.

Agent Lifecycle

register → heartbeat (5m interval) → fetch assignments → report task status → disconnect

All lifecycle actions go through the adapter protocol (POST /api/adapters).

1. Register

{
  "framework": "generic",
  "action": "register",
  "payload": {
    "agentId": "my-agent-01",
    "name": "My Agent",
    "metadata": { "version": "1.0", "capabilities": ["code", "review"] }
  }
}

2. Heartbeat

Send every ~5 minutes to stay marked as online.

{
  "framework": "generic",
  "action": "heartbeat",
  "payload": {
    "agentId": "my-agent-01",
    "status": "online",
    "metrics": { "tasks_completed": 5, "uptime_seconds": 3600 }
  }
}

3. Fetch Assignments

Returns up to 5 pending tasks sorted by priority (critical → low), then due date.

{
  "framework": "generic",
  "action": "assignments",
  "payload": { "agentId": "my-agent-01" }
}

Response:

{
  "assignments": [
    { "taskId": "42", "description": "Fix login bug\nUsers cannot log in with SSO", "priority": 1 }
  ],
  "framework": "generic"
}

4. Report Task Progress

{
  "framework": "generic",
  "action": "report",
  "payload": {
    "taskId": "42",
    "agentId": "my-agent-01",
    "progress": 75,
    "status": "in_progress",
    "output": "Fixed SSO handler, running tests..."
  }
}

status values: in_progress, done, failed, blocked

5. Disconnect

{
  "framework": "generic",
  "action": "disconnect",
  "payload": { "agentId": "my-agent-01" }
}

Core API Reference

Agents — /api/agents

MethodMin RoleDescription
GETviewerList agents. Query: ?status=online&role=dev&limit=50&offset=0
POSToperatorCreate agent. Body: { name, role, status?, config?, template?, session_key?, soul_content? }
PUToperatorUpdate agent. Body: { name, status?, role?, config?, session_key?, soul_content?, last_activity? }

GET response shape:

{
  "agents": [{
    "id": 1, "name": "scout", "role": "researcher", "status": "online",
    "config": {}, "taskStats": { "total": 10, "assigned": 2, "in_progress": 1, "completed": 7 }
  }],
  "total": 1, "page": 1, "limit": 50
}

Tasks — /api/tasks

MethodMin RoleDescription
GETviewerList tasks. Query: ?status=in_progress&assigned_to=scout&priority=high&project_id=1&limit=50&offset=0
POSToperatorCreate task. Body: { title, description?, status?, priority?, assigned_to?, project_id?, tags?, metadata?, due_date?, estimated_hours? }
PUToperatorBulk status update. Body: { tasks: [{ id, status }] }

Priority values: critical, high, medium, low

Status values: inbox, assigned, in_progress, review, done, failed, blocked, cancelled

Note: Moving a task to done via PUT requires an Aegis quality review approval.

POST response:

{
  "task": {
    "id": 42, "title": "Fix login bug", "status": "assigned",
    "priority": "high", "assigned_to": "scout", "ticket_ref": "GEN-001",
    "tags": ["bug"], "metadata": {}
  }
}

Skills — /api/skills

MethodMin RoleDescription
GETviewerList all skills across roots
GET ?mode=content&source=...&name=...viewerRead a skill's SKILL.md content
GET ?mode=check&source=...&name=...viewerRun security check on a skill
POSToperatorCreate/upsert skill. Body: { source, name, content }
PUToperatorUpdate skill content. Body: { source, name, content }
DELETE ?source=...&name=...operatorDelete a skill

Skill sources: user-agents, user-codex, project-agents, project-codex, openclaw

Status — /api/status

ActionMin RoleDescription
GET ?action=overviewviewerSystem status (uptime, memory, disk, sessions)
GET ?action=dashboardviewerAggregated dashboard data with DB stats
GET ?action=gatewayviewerGateway process status and port check
GET ?action=modelsviewerAvailable AI models (catalog + local Ollama)
GET ?action=healthviewerHealth checks (gateway, disk, memory)
GET ?action=capabilitiesviewerFeature flags: gateway reachable, Claude home, subscriptions

Adapters — /api/adapters

MethodMin RoleDescription
GETviewerList available framework adapter names
POSToperatorExecute adapter action (see Agent Lifecycle above)

Framework Adapter Protocol

All agent lifecycle operations use a single endpoint:

POST /api/adapters
Content-Type: application/json
x-api-key: <key>

{
  "framework": "<adapter-name>",
  "action": "<action>",
  "payload": { ... }
}

Available frameworks: generic, openclaw, crewai, langgraph, autogen, claude-sdk

Available actions: register, heartbeat, report, assignments, disconnect

All adapters implement the same FrameworkAdapter interface — choose the one matching your agent framework, or use generic as a universal fallback.

Payload shapes by action:

ActionRequired FieldsOptional Fields
registeragentId, namemetadata
heartbeatagentIdstatus, metrics
reporttaskId, agentIdprogress, status, output
assignmentsagentId—
disconnectagentId—

Environment Variables

VariableDefaultDescription
API_KEY—API key for agent/script authentication
OPENCLAW_GATEWAY_HOST127.0.0.1Gateway host address
OPENCLAW_GATEWAY_PORT18789Gateway port
OPENCLAW_STATE_DIR~/.openclawOpenClaw state directory
OPENCLAW_CONFIG_PATH<state-dir>/openclaw.jsonGateway config file path
MC_CLAUDE_HOME~/.claudeClaude home directory

Real-Time Events

MC broadcasts events via SSE (/api/events) and WebSocket. Key event types:

  • agent.created, agent.updated, agent.status_changed
  • task.created, task.updated, task.status_changed

Subscribe to SSE for live dashboard updates when building integrations.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

이 스킬의 문제 신고