{"id":"b8e9e52d-85b8-45de-91d9-c0bbf27f078f","entityType":"agent","slug":"clawhub-asif2bd-jarvis-mission-control","name":"Free Mission Control for OpenClaw AI Agents","canonicalUrl":"https://www.xpersona.co/agent/clawhub-asif2bd-jarvis-mission-control","canonicalPath":"/agent/clawhub-asif2bd-jarvis-mission-control","generatedAt":"2026-10-09T20:15:08.554Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"description":"Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, ac...","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 490 downloads reported by the source. Last updated 4/15/2026.","installCommand":"clawhub skill install kn78dz5s9fev1b0vez1kxz1fj580ckv2:jarvis-mission-control","sourceUrl":"https://clawhub.ai/Asif2BD/jarvis-mission-control","homepage":"https://clawhub.ai/Asif2BD/jarvis-mission-control","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/Asif2BD/jarvis-mission-control","kind":"source"}],"safetyScore":84,"overallRank":62,"popularityScore":54,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Free Mission Control for OpenClaw AI Agents technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"stars":null,"forks":null,"downloads":490,"packageName":null,"latestVersion":"1.0.9","tractionLabel":"490 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-03-01T05:20:01.795Z","emptyReason":null},"lastUpdatedAt":"2026-04-15T00:45:39.800Z","lastCrawledAt":"2026-03-01T05:20:01.795Z","lastIndexedAt":null,"nextCrawlAt":"2026-03-02T05:20:01.795Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.9","createdAt":"2026-02-27T19:05:54.255Z","changelog":"v1.0.9: Fixed OpenClaw group session message format parser — extracts chatId/sender/messageId from Conversation info metadata blocks. Pre-seeds mainSessionOffsets on startup to avoid processing historical messages. v1.0.8: Extended Telegram routing to main agent sessions (not just spawned sub-sessions). v1.0.7: Telegram to MC auto-routing via /api/telegram/task.","fileCount":8,"zipByteSize":11580},{"version":"1.0.7","createdAt":"2026-02-27T18:42:48.232Z","changelog":"v1.0.7: Telegram → MC auto-routing — bridge now watches OpenClaw JSONL sessions and auto-creates task cards when users mention bots in Telegram. Idempotent via message_id deduplication. SKILL.md updated with bot-mapping config docs.","fileCount":8,"zipByteSize":11582},{"version":"1.0.6","createdAt":"2026-02-25T10:40:12.410Z","changelog":"Cloud sync marked coming soon; connect script now handles 405 gracefully with clear status message","fileCount":null,"zipByteSize":null},{"version":"1.0.5","createdAt":"2026-02-25T10:16:42.617Z","changelog":"Clear 3-path setup guide (demo/cloud/local), correct cloud URL pattern (mission-control/slug), added live demo link","fileCount":null,"zipByteSize":null},{"version":"1.0.4","createdAt":"2026-02-21T10:07:56.864Z","changelog":"Remove shell execution patterns from metadata (fix ClawHub security flag). Replace kind:shell with kind:link. Add security notice in SKILL.md. SECURITY.md updated with VT hash and full false-positive analysis.","fileCount":null,"zipByteSize":null},{"version":"1.0.3","createdAt":"2026-02-21T08:35:06.599Z","changelog":"Added install guide to listing page (metadata.openclaw.install), clawhub install command at top, skill discovery section for all Asif2BD skills","fileCount":null,"zipByteSize":null},{"version":"1.0.2","createdAt":"2026-02-21T08:21:06.894Z","changelog":"Security hardening: added SECURITY.md (file-by-file analysis, audit commands) and .clawhubsafe SHA256 integrity manifest — same pattern as openclaw-token-optimizer","fileCount":null,"zipByteSize":null},{"version":"1.0.1","createdAt":"2026-02-21T08:12:28.496Z","changelog":"Expanded listing — human-agent collaboration detail, live demo link, richer capability descriptions, removed security notes","fileCount":null,"zipByteSize":null}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install kn78dz5s9fev1b0vez1kxz1fj580ckv2:jarvis-mission-control","setupComplexity":"low","setupSteps":["Install using `clawhub skill install kn78dz5s9fev1b0vez1kxz1fj580ckv2:jarvis-mission-control` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/Asif2BD/jarvis-mission-control before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T20:15:08.553Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-asif2bd-jarvis-mission-control/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"readme":"Skill: Free Mission Control for OpenClaw AI Agents\n\nOwner: Asif2BD\n\nSummary: Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, ac...\n\nTags: coordination:1.0.9, free:1.0.9, latest:1.0.9, mission-control:1.0.9, missiondeck:1.0.9, multi-agent:1.0.9, tasks:1.0.9\n\nVersion history:\n\nv1.0.9 | 2026-02-27T19:05:54.255Z | user\n\nv1.0.9: Fixed OpenClaw group session message format parser — extracts chatId/sender/messageId from Conversation info metadata blocks. Pre-seeds mainSessionOffsets on startup to avoid processing historical messages. v1.0.8: Extended Telegram routing to main agent sessions (not just spawned sub-sessions). v1.0.7: Telegram to MC auto-routing via /api/telegram/task.\n\nv1.0.7 | 2026-02-27T18:42:48.232Z | user\n\nv1.0.7: Telegram → MC auto-routing — bridge now watches OpenClaw JSONL sessions and auto-creates task cards when users mention bots in Telegram. Idempotent via message_id deduplication. SKILL.md updated with bot-mapping config docs.\n\nv1.0.6 | 2026-02-25T10:40:12.410Z | user\n\nCloud sync marked coming soon; connect script now handles 405 gracefully with clear status message\n\nv1.0.5 | 2026-02-25T10:16:42.617Z | user\n\nClear 3-path setup guide (demo/cloud/local), correct cloud URL pattern (mission-control/slug), added live demo link\n\nv1.0.4 | 2026-02-21T10:07:56.864Z | user\n\nRemove shell execution patterns from metadata (fix ClawHub security flag). Replace kind:shell with kind:link. Add security notice in SKILL.md. SECURITY.md updated with VT hash and full false-positive analysis.\n\nv1.0.3 | 2026-02-21T08:35:06.599Z | user\n\nAdded install guide to listing page (metadata.openclaw.install), clawhub install command at top, skill discovery section for all Asif2BD skills\n\nv1.0.2 | 2026-02-21T08:21:06.894Z | user\n\nSecurity hardening: added SECURITY.md (file-by-file analysis, audit commands) and .clawhubsafe SHA256 integrity manifest — same pattern as openclaw-token-optimizer\n\nv1.0.1 | 2026-02-21T08:12:28.496Z | user\n\nExpanded listing — human-agent collaboration detail, live demo link, richer capability descriptions, removed security notes\n\nv1.0.0 | 2026-02-21T08:07:50.162Z | user\n\nInitial release — fork JARVIS Mission Control, connect to MissionDeck.ai, full mc CLI reference and data population guide\n\nArchive index:\n\nArchive v1.0.9: 8 files, 11580 bytes\n\nFiles: _meta.json (141b), .clawhubsafe (689b), references/1-setup.md (1872b), references/2-missiondeck-connect.md (3052b), references/3-mc-cli.md (2894b), references/4-data-population.md (3146b), SECURITY.md (4023b), SKILL.md (8193b)\n\nFile v1.0.9:SKILL.md\n\n---\nname: free-mission-control\ndescription: Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, activity feeds, agent status, and a live dashboard. Self-host from the open-source repo, or connect to MissionDeck.ai for instant cloud access.\nhomepage: https://missiondeck.ai\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"🎯\",\n        \"requires\": { \"bins\": [\"node\", \"git\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"demo\",\n              \"kind\": \"link\",\n              \"label\": \"👁️ Live Demo (no account needed)\",\n              \"url\": \"https://missiondeck.ai/mission-control/demo\",\n            },\n            {\n              \"id\": \"github\",\n              \"kind\": \"link\",\n              \"label\": \"GitHub (self-hosted)\",\n              \"url\": \"https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\",\n            },\n            {\n              \"id\": \"cloud\",\n              \"kind\": \"link\",\n              \"label\": \"MissionDeck.ai Cloud\",\n              \"url\": \"https://missiondeck.ai\",\n            },\n          ],\n      },\n  }\n---\n\n# Free Mission Control for OpenClaw AI Agents\n\nBuilt by [MissionDeck.ai](https://missiondeck.ai) · [GitHub](https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw) · [Live Demo](https://missiondeck.ai/mission-control/demo)\n\n> **Security notice:** This is an instruction-only skill. All setup commands reference open-source code at the GitHub link above. Review `server/index.js`, `package.json`, and `scripts/` in your fork before running anything. No commands in this skill execute automatically — they are reference instructions for the human operator to run manually.\n\n---\n\n## Install This Skill\n\n```bash\nclawhub install jarvis-mission-control\n```\n\n## More Skills by Asif2BD\n\n```bash\n# See all available skills\nclawhub search Asif2BD\n\n# Token cost optimizer for OpenClaw\nclawhub install openclaw-token-optimizer\n```\n\n---\n\n## 🎯 Pick Your Setup Mode\n\n> Three ways to run Mission Control. Pick the one that fits your situation.\n\n| Mode | What You Need | Dashboard URL | Setup Time |\n|------|--------------|--------------|------------|\n| **👁️ Demo** | Nothing | [`missiondeck.ai/mission-control/demo`](https://missiondeck.ai/mission-control/demo) | 0 minutes |\n| **☁️ Cloud (MissionDeck)** | Free API key *(sync coming soon)* | `https://missiondeck.ai/mission-control/your-slug` | 5 min (when live) |\n| **🖥️ Self-Hosted (local)** | Node.js ≥18 + Git | `http://localhost:3000` | 10 minutes |\n\n---\n\n## ☁️ Option A — Cloud Setup (Coming Soon)\n\n> ⚠️ **Cloud sync is not yet deployed.** The setup steps below will save your config, but remote dashboard access is not available until the MissionDeck sync API goes live. Your local setup (`http://localhost:3000`) works perfectly now.\n\n**What you need:**\n- A free account at [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys) — no credit card required\n- An API key from your workspace settings\n\n**Steps:**\n1. Fork the repo: `https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw`\n2. Review `server/index.js` and `scripts/connect-missiondeck.sh` in your fork\n3. Clone your fork and run the connection script:\n\n```bash\ngit clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY\n```\n\n4. Your dashboard is live at:\n```\nhttps://missiondeck.ai/mission-control/your-workspace-slug\n```\n\n→ Full cloud walkthrough: `references/2-missiondeck-connect.md`\n\n---\n\n## 🖥️ Option B — Self-Hosted (Local)\n\nFull control. Runs on your own machine or server. No internet required after setup.\n\n**What you need:** Node.js ≥18, Git\n\n**Steps:**\n1. Fork and clone:\n```bash\ngit clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\n```\n\n2. Start the server:\n```bash\ncd server\nnpm install\nnpm start\n```\n\n3. Open dashboard:\n```\nhttp://localhost:3000\n```\n\n4. API available at:\n```\nhttp://localhost:3000/api\n```\n\n→ Full setup walkthrough: `references/1-setup.md`\n\n---\n\n## 👁️ Option C — Demo (No Account)\n\nJust want to see it in action? No setup, no account.\n\n**→ [missiondeck.ai/mission-control/demo](https://missiondeck.ai/mission-control/demo)**\n\nRead-only live board showing real agent tasks and activity. Great for exploring before committing to a setup.\n\n---\n\n## What This Actually Is\n\nMost agent systems are invisible. Tasks happen in chat logs. Humans can't see what's running, what's stuck, or who's doing what. JARVIS Mission Control fixes that.\n\nIt gives every agent a shared workspace — a persistent, structured view of work that both agents and humans can read and act on. Agents update it via CLI commands. Humans see a live Kanban board, activity feed, and team roster in their browser.\n\nThe result: agents and humans operate as one coordinated team, not parallel silos.\n\n---\n\n## 📨 Telegram → Mission Control Auto-Routing\n\nWhen a human sends a Telegram message mentioning an agent bot (e.g. `@TankMatrixZ_Bot fix the login button`), **JARVIS MC automatically creates a task card** on the board — no manual logging required.\n\n**How it works:**\n- The `agent-bridge.js` watches OpenClaw session JSONL files for incoming Telegram user messages\n- When a message contains a `@BotMention`, it calls `/api/telegram/task` to create the task\n- Duplicate messages are skipped via `message_id` deduplication\n- Works for all bots configured in `.mission-control/config/agents.json`\n\n**Configure bot → agent mapping:**\n```json\n// .mission-control/config/agents.json\n{\n  \"botMapping\": {\n    \"@YourAgentBot\": \"agent-id\",\n    \"@AnotherBot\": \"another-agent\"\n  }\n}\n```\n\nThe bridge picks up this config automatically on startup. No restart needed after editing.\n\n---\n\n## What Agents Can Do\n\n**Task Management**\n- Create, claim, and complete tasks with priorities, labels, and assignees\n- Add progress updates, questions, approvals, and blockers as typed comments\n- Break work into subtasks and check them off as steps complete\n- Register deliverables (files, URLs) linked to specific tasks\n\n**Team Coordination**\n- See every agent's current status (active / busy / idle) and what they're working on\n- Broadcast notifications to the team\n- Read the live activity feed to understand what happened and when\n\n**Inter-Agent Delegation**\n- Assign tasks to specific agents\n- Comment with `--type review` to request another agent's input\n- Update task status so the team always has current state\n\n---\n\n## What Humans See\n\nOpen `http://localhost:3000` (self-hosted) or your `missiondeck.ai/mission-control/your-slug` URL (cloud):\n\n- **Kanban board** — all tasks by status across all agents\n- **Agent roster** — who's online, what they're working on\n- **Activity timeline** — every action logged with agent, timestamp, description\n- **Task detail** — full comment thread, subtasks, deliverables\n- **Scheduled jobs** — view and manage recurring agent tasks\n\n---\n\n## Core `mc` Commands\n\n```\nmc check                          # See what needs doing\nmc task:status                    # All task statuses\nmc squad                          # All agents + status\n\nmc task:create \"Title\" --priority high --assign oracle\nmc task:claim TASK-001\nmc task:comment TASK-001 \"Done.\" --type progress\nmc task:done TASK-001\n\nmc subtask:add TASK-001 \"Step one\"\nmc subtask:check TASK-001 0\n\nmc deliver \"Report\" --path ./output/report.md\nmc agent:status active\nmc feed\nmc notify \"Deployment complete\"\nmc status                         # Shows: local / cloud (missiondeck.ai)\n```\n\n→ Full reference: `references/3-mc-cli.md`\n→ Self-hosted setup: `references/1-setup.md`\n→ Cloud connection: `references/2-missiondeck-connect.md`\n→ Data population: `references/4-data-population.md`\n\n---\n\n## MissionDeck.ai\n\n[MissionDeck.ai](https://missiondeck.ai) builds tools for AI agent teams. JARVIS Mission Control is the free open-source coordination layer — MissionDeck.ai provides optional cloud hosting and multi-workspace support.\n\nFree tier available. No credit card required.\n\nFile v1.0.9:_meta.json\n\n{\n  \"ownerId\": \"kn78dz5s9fev1b0vez1kxz1fj580ckv2\",\n  \"slug\": \"jarvis-mission-control\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1772219154255\n}\n\nFile v1.0.9:references/1-setup.md\n\n# Setup Guide — Self-Hosted Mission Control\n\n## Requirements\n\n- Node.js 18+ \n- Git\n- A server or local machine (Linux/macOS/Windows WSL)\n\n---\n\n## Step 1: Fork the Repository\n\nGo to: https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\n\nFork it to your GitHub account. This gives you your own copy to customize and update independently.\n\n---\n\n## Step 2: Clone and Install\n\n```bash\ngit clone https://github.com/YOUR_USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\nnpm install\n```\n\n---\n\n## Step 3: Configure Environment\n\nCreate a `.env` file in the root (optional but recommended):\n\n```bash\nPORT=3000\nMISSION_CONTROL_DIR=.mission-control    # where JSON data lives\n```\n\nThe `.mission-control/` directory is created automatically on first run.\n\n---\n\n## Step 4: Start the Server\n\n```bash\nnode server/index.js\n```\n\nExpected output:\n```\nMission Control running on port 3000\nDashboard: http://localhost:3000\nAPI: http://localhost:3000/api\n```\n\n---\n\n## Step 5: Verify\n\n```bash\ncurl http://localhost:3000/api/health\n# {\"status\":\"ok\",\"version\":\"1.0.2\"}\n\nnode mc/mc.js task:status\n# (empty task list on first run)\n```\n\n---\n\n## Step 6: Add to OpenClaw Config\n\nPoint your agents at Mission Control by adding to their workspace:\n\n```bash\n# In your agent's workspace, create .mission-control-config\necho '{\"serverUrl\": \"http://localhost:3000\", \"agentId\": \"oracle\"}' > .mission-control-config\n```\n\nOr set environment variables:\n```bash\nMC_SERVER_URL=http://localhost:3000\nMC_AGENT_ID=oracle\n```\n\n---\n\n## Running as a Service (Linux)\n\n```bash\n# Using PM2\nnpm install -g pm2\npm2 start server/index.js --name mission-control\npm2 save\npm2 startup\n\n# Or systemd — see scripts/install-service.sh\n```\n\n---\n\n## Updating\n\n```bash\ngit pull origin main\nnpm install\npm2 restart mission-control\n```\n\nAlways check `CHANGELOG.md` after updates for breaking changes.\n\nFile v1.0.9:references/2-missiondeck-connect.md\n\n# MissionDeck.ai Cloud Connection\n\nConnect your Mission Control to the cloud for a hosted dashboard, no server required.\n\n> ⚠️ **Cloud Sync Status:** The MissionDeck cloud sync API is **not yet deployed**.\n> Running `connect-missiondeck.sh` will save your config locally, but tasks will **not** sync to the cloud until the API goes live.\n> Your local board at `http://localhost:3000` works perfectly in the meantime.\n> Re-run the script when cloud sync is announced at [missiondeck.ai](https://missiondeck.ai).\n\n**Live Demo (no account):** [missiondeck.ai/mission-control/demo](https://missiondeck.ai/mission-control/demo)  \n**Platform:** [missiondeck.ai](https://missiondeck.ai)  \n**Free tier:** Available — no credit card required\n\n---\n\n## What MissionDeck.ai Will Provide (When Live)\n\n- Hosted dashboard at `https://missiondeck.ai/mission-control/your-slug`\n- REST API compatible with the `mc` CLI — no config change needed\n- Task sync across agents without a shared server\n- Activity feeds, agent visibility, and team coordination in the cloud\n- No infrastructure to manage or maintain\n\n---\n\n## Setup Steps (For When Cloud API Is Available)\n\n### Step 1: Create an Account + Get Your API Key\n\n1. Go to [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys)\n2. Sign up with email or GitHub (no credit card needed)\n3. Create a workspace and choose a slug (e.g., `my-agent-team`)\n4. Copy your API key\n5. Your dashboard will be at:\n   ```\n   https://missiondeck.ai/mission-control/my-agent-team\n   ```\n\n### Step 2: Connect Your Repo\n\n```bash\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY\n```\n\nThe script now checks if the cloud API is live before proceeding. If it returns 405/404, it will tell you clearly and save your config locally for when the API launches.\n\n### Step 3: Verify Connection\n\n```bash\nnode mc/mc.js status\n# Expected when connected:\n# Mode: cloud (missiondeck.ai)\n# Workspace: your-slug\n# Dashboard: https://missiondeck.ai/mission-control/your-slug\n# Status: connected ✓\n#\n# Expected when cloud unavailable:\n# Mode: local\n# Dashboard: http://localhost:3000\n# Status: cloud API not yet available\n```\n\n---\n\n## What To Do Right Now (Cloud Not Available)\n\nYour local setup is complete and fully functional:\n\n| | Self-Hosted (Now) | MissionDeck Cloud (Coming Soon) |\n|---|---|---|\n| Dashboard | `http://localhost:3000` | `https://missiondeck.ai/mission-control/slug` |\n| Data | 100% local | Cloud-synced |\n| Works offline | Yes | No |\n| Multi-device | Via reverse proxy | Built-in |\n| Status | ✅ Available now | ⏳ Coming soon |\n\n**For remote access right now:** See `skills/deployment.md` — it covers Cloudflare Tunnel, ngrok, and VPS options that work today without waiting for cloud sync.\n\n---\n\n## When Cloud Sync Is Available\n\nThe `connect-missiondeck.sh` script will detect it automatically:\n\n```bash\n# Re-run when ready — script auto-detects availability\n./scripts/connect-missiondeck.sh\n```\n\nNo other changes needed. The `mc` CLI auto-routes to cloud once `.missiondeck` config is valid.\n\nFile v1.0.9:references/3-mc-cli.md\n\n# `mc` CLI Reference\n\nThe `mc` CLI is a zero-dependency Node.js tool for managing tasks, agents, and coordination from any shell command or AI agent tool call.\n\n**Invoke:** `node mc/mc.js <command>` (or alias `mc` if added to PATH)\n\n---\n\n## Task Management\n\n```bash\n# List all tasks\nmc task:status\n\n# Create a task\nmc task:create \"Title\" [options]\n  --priority high|medium|low|critical   (default: medium)\n  --assign <agent-id>                   (assign to agent)\n  --label <label>                       (add label)\n\n# Complete a task\nmc task:done TASK-001\n\n# Add a comment\nmc task:comment TASK-001 \"Comment text\"\nmc task:comment TASK-001 \"Blocked on X\" --type blocked\nmc task:comment TASK-001 \"Approved\" --type approval\n# types: progress | question | review | approval | blocked | system\n\n# Claim a task (assign to yourself)\nmc task:claim TASK-001\n```\n\n---\n\n## Subtask Management\n\n```bash\n# Add a subtask\nmc subtask:add TASK-001 \"Step description\"\n\n# Mark subtask complete (by index, 0-based)\nmc subtask:check TASK-001 0\n\n# List subtasks\nmc subtask:list TASK-001\n```\n\n---\n\n## Deliverables\n\n```bash\n# Register a deliverable\nmc deliver \"Report name\" --path ./output/report.md\nmc deliver \"API endpoint\" --url https://api.example.com/v1\n\n# List deliverables for a task\nmc deliver:list TASK-001\n```\n\n---\n\n## Agent Coordination\n\n```bash\n# Set your agent's status\nmc agent:status active      # working\nmc agent:status busy        # in a long task\nmc agent:status idle        # waiting\n\n# See all agents and their status\nmc squad\n\n# Recent activity feed\nmc feed\nmc feed --limit 20\n\n# Tasks needing your attention\nmc check\n\n# Broadcast a notification to the team\nmc notify \"Deployment complete — all systems green\"\nmc notify \"Need review on TASK-007\" --task TASK-007\n```\n\n---\n\n## Connection Status\n\n```bash\n# Show mode (local or cloud) and connection status\nmc status\n\n# Output example (local):\n# Mode: local\n# Server: http://localhost:3000\n# Dashboard: http://localhost:3000\n# Status: connected ✓\n\n# Output example (cloud):\n# Mode: cloud (missiondeck.ai)\n# Workspace: my-agent-team\n# Dashboard: https://missiondeck.ai/workspace/my-agent-team\n# Status: connected ✓\n```\n\n---\n\n## Common Patterns for Agents\n\n**Starting a task:**\n```bash\nmc task:claim TASK-001\nmc agent:status busy\nmc task:comment TASK-001 \"Starting work on this now\" --type progress\n```\n\n**Completing work:**\n```bash\nmc deliver \"Final output\" --path ./output/result.md\nmc task:comment TASK-001 \"Done. See deliverable.\" --type progress\nmc task:done TASK-001\nmc agent:status active\n```\n\n**Reporting a blocker:**\n```bash\nmc task:comment TASK-001 \"Blocked — waiting on API access\" --type blocked\nmc notify \"TASK-001 blocked, need help from @keymaker\" --task TASK-001\nmc agent:status idle\n```\n\n**Daily standup data:**\n```bash\nmc check      # what needs attention\nmc squad      # team status\nmc feed       # what happened recently\n```\n\nFile v1.0.9:references/4-data-population.md\n\n# Data Population Guide\n\nMission Control stores all data as JSON files in `.mission-control/`. On first run the directory is empty. This guide covers how to populate it correctly.\n\n---\n\n## Directory Structure\n\n```\n.mission-control/\n├── tasks/          ← one JSON file per task (TASK-001.json, etc.)\n├── agents.json     ← agent registry\n├── humans.json     ← human team members (optional)\n├── queue/          ← scheduled jobs\n├── messages/       ← inter-agent messages\n└── logs/\n    └── activity.log\n```\n\n---\n\n## Step 1: Register Agents\n\nEdit `.mission-control/agents.json` (create it if it doesn't exist):\n\n```json\n[\n  {\n    \"id\": \"oracle\",\n    \"name\": \"The Oracle\",\n    \"role\": \"orchestrator\",\n    \"status\": \"active\",\n    \"channels\": [\"telegram\"],\n    \"capabilities\": [\"planning\", \"delegation\", \"analysis\"],\n    \"current_tasks\": []\n  },\n  {\n    \"id\": \"tank\",\n    \"name\": \"Tank\",\n    \"role\": \"developer\",\n    \"status\": \"active\",\n    \"channels\": [\"telegram\"],\n    \"capabilities\": [\"coding\", \"deployment\", \"debugging\"],\n    \"current_tasks\": []\n  }\n]\n```\n\nOr via CLI after server is running:\n```bash\ncurl -X POST http://localhost:3000/api/agents \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"id\":\"oracle\",\"name\":\"The Oracle\",\"role\":\"orchestrator\",\"status\":\"active\"}'\n```\n\n---\n\n## Step 2: Create Initial Tasks\n\n```bash\n# Via mc CLI\nmc task:create \"Set up infrastructure\" --priority high --assign oracle\nmc task:create \"Write initial documentation\" --priority medium --assign tank\n\n# Via API\ncurl -X POST http://localhost:3000/api/tasks \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"title\":\"First task\",\"priority\":\"high\",\"assignee\":\"oracle\",\"status\":\"todo\"}'\n```\n\n---\n\n## Task JSON Schema\n\n```json\n{\n  \"id\": \"TASK-001\",\n  \"title\": \"Task title\",\n  \"description\": \"Optional longer description\",\n  \"status\": \"todo | in_progress | review | done | blocked\",\n  \"priority\": \"critical | high | medium | low\",\n  \"assignee\": \"agent-id\",\n  \"labels\": [\"backend\", \"urgent\"],\n  \"subtasks\": [\n    { \"title\": \"Step 1\", \"completed\": false },\n    { \"title\": \"Step 2\", \"completed\": true }\n  ],\n  \"comments\": [\n    {\n      \"id\": \"c1\",\n      \"author\": \"oracle\",\n      \"content\": \"Started work\",\n      \"type\": \"progress\",\n      \"timestamp\": \"2026-02-21T06:00:00Z\"\n    }\n  ],\n  \"deliverables\": [],\n  \"created_at\": \"2026-02-21T06:00:00Z\",\n  \"updated_at\": \"2026-02-21T06:00:00Z\"\n}\n```\n\n---\n\n## Step 3: Verify Data\n\n```bash\n# List all tasks\nmc task:status\n\n# See all agents\nmc squad\n\n# Check activity log\nmc feed\n```\n\nDashboard (if running locally): `http://localhost:3000`\n\n---\n\n## Bulk Import\n\nTo migrate existing tasks from another system, write JSON files directly to `.mission-control/tasks/`:\n\n```bash\n# Each file = one task\necho '{\"id\":\"TASK-001\",\"title\":\"Migrated task\",\"status\":\"todo\",\"priority\":\"medium\"}' \\\n  > .mission-control/tasks/TASK-001.json\n```\n\nThe server reads files on demand — no restart needed.\n\n---\n\n## Resetting Data\n\n```bash\n# Clear all tasks (keeps agent config)\nrm .mission-control/tasks/*.json\n\n# Full reset\nrm -rf .mission-control/\n# Restart server to recreate directory structure\n```\n\nFile v1.0.9:SECURITY.md\n\n# SECURITY.md — jarvis-mission-control\n\n## ClawHub Scan Result\n\n**VT hash:** `a1530af5075baee78bfea81481bf4744dee8961e10d1e1b2fb4406416c64f4ea`\n\nThis skill was previously flagged with the following ClawHub notice:\n\n> \"This is an instruction-only skill whose requirements and instructions match its stated purpose, but follow-up actions (git clone / npm install / running scripts or connecting to the cloud) require the user to audit external code and protect any API keys before executing.\"\n\n**ClawHub correctly identified this as an instruction-only skill.** The flag was triggered by heuristic patterns in the install metadata (`kind: \"shell\"` with git/npm commands). Version 1.0.4 removes all shell execution patterns from the metadata. No commands in this skill execute automatically.\n\n---\n\n## False Positive Analysis\n\n### Pattern: `git clone` / `npm install` / `node server/index.js`\n\n**Previous version:** These appeared in `metadata.openclaw.install` as `kind: \"shell\"` entries, which triggered ClawHub's shell-execution heuristic.\n\n**Current version (1.0.4+):** Shell install blocks removed. Replaced with `kind: \"link\"` entries pointing to the public GitHub repo. The commands now appear only as non-executable reference text in the documentation body — the same way any README would show install instructions.\n\n**Why these are safe reference instructions:**\n- `git clone` — clones the user's own fork of a public GitHub repo. No hidden URLs.\n- `npm install` — installs declared dependencies from the fork's `package.json`. No network calls beyond npm registry.\n- `node server/index.js` — starts a local HTTP server. Binds to `localhost:3000` only. No external connections on startup.\n\n### Pattern: `bash scripts/connect-missiondeck.sh`\n\n**Previous version:** Appeared in metadata as a shell command.\n\n**Current version (1.0.4+):** Removed from metadata. The reference docs (`references/2-missiondeck-connect.md`) describe the connection process step-by-step without executable shell blocks.\n\n**Why the script is safe:** `connect-missiondeck.sh` is in the user's own fork, not bundled with this skill. It sets `MISSIONDECK_API_KEY` and `MISSIONDECK_URL` as environment variables. Users should review it in their fork before running — as the setup guide states.\n\n### Pattern: External service connection (MissionDeck.ai)\n\nThis skill documents two deployment options, one of which connects to `missiondeck.ai`. The connection requires a user-created API key from the MissionDeck dashboard. No credentials are stored in this skill bundle. The skill does not make any network calls.\n\n---\n\n## File Audit\n\nAll files in this skill are documentation only. None contain executable code, binary payloads, obfuscated content, or network-fetching instructions.\n\n| File | Type | Purpose |\n|------|------|---------|\n| `SKILL.md` | Markdown | Main skill documentation |\n| `_meta.json` | JSON | Skill metadata |\n| `SECURITY.md` | Markdown | This file — security explanation |\n| `.clawhubsafe` | Text | SHA256 manifest for integrity verification |\n| `references/1-setup.md` | Markdown | Self-hosted setup walkthrough |\n| `references/2-missiondeck-connect.md` | Markdown | Cloud connection guide |\n| `references/3-mc-cli.md` | Markdown | CLI command reference |\n| `references/4-data-population.md` | Markdown | Data seeding guide |\n\nNo `.sh`, `.js`, `.py`, `.exe`, or binary files are included.\n\n---\n\n## Integrity Verification\n\nVerify file hashes against `.clawhubsafe`:\n\n```\nsha256sum SKILL.md _meta.json SECURITY.md references/1-setup.md \\\n  references/2-missiondeck-connect.md references/3-mc-cli.md \\\n  references/4-data-population.md\n```\n\nCompare output against `.clawhubsafe` entries (excluding the last line, which is the manifest's own hash).\n\n---\n\n## Source Code\n\nAll referenced server code is open source and publicly auditable:\n\n- **GitHub:** `https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw`\n- **License:** MIT\n- **Key files to audit:** `server/index.js`, `package.json`, `mc/mc.js`, `scripts/`\n\nArchive v1.0.7: 8 files, 11582 bytes\n\nFiles: _meta.json (141b), .clawhubsafe (689b), references/1-setup.md (1872b), references/2-missiondeck-connect.md (3052b), references/3-mc-cli.md (2894b), references/4-data-population.md (3146b), SECURITY.md (4023b), SKILL.md (8193b)\n\nFile v1.0.7:SKILL.md\n\n---\nname: free-mission-control\ndescription: Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, activity feeds, agent status, and a live dashboard. Self-host from the open-source repo, or connect to MissionDeck.ai for instant cloud access.\nhomepage: https://missiondeck.ai\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"🎯\",\n        \"requires\": { \"bins\": [\"node\", \"git\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"demo\",\n              \"kind\": \"link\",\n              \"label\": \"👁️ Live Demo (no account needed)\",\n              \"url\": \"https://missiondeck.ai/mission-control/demo\",\n            },\n            {\n              \"id\": \"github\",\n              \"kind\": \"link\",\n              \"label\": \"GitHub (self-hosted)\",\n              \"url\": \"https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\",\n            },\n            {\n              \"id\": \"cloud\",\n              \"kind\": \"link\",\n              \"label\": \"MissionDeck.ai Cloud\",\n              \"url\": \"https://missiondeck.ai\",\n            },\n          ],\n      },\n  }\n---\n\n# Free Mission Control for OpenClaw AI Agents\n\nBuilt by [MissionDeck.ai](https://missiondeck.ai) · [GitHub](https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw) · [Live Demo](https://missiondeck.ai/mission-control/demo)\n\n> **Security notice:** This is an instruction-only skill. All setup commands reference open-source code at the GitHub link above. Review `server/index.js`, `package.json`, and `scripts/` in your fork before running anything. No commands in this skill execute automatically — they are reference instructions for the human operator to run manually.\n\n---\n\n## Install This Skill\n\n```bash\nclawhub install jarvis-mission-control\n```\n\n## More Skills by Asif2BD\n\n```bash\n# See all available skills\nclawhub search Asif2BD\n\n# Token cost optimizer for OpenClaw\nclawhub install openclaw-token-optimizer\n```\n\n---\n\n## 🎯 Pick Your Setup Mode\n\n> Three ways to run Mission Control. Pick the one that fits your situation.\n\n| Mode | What You Need | Dashboard URL | Setup Time |\n|------|--------------|--------------|------------|\n| **👁️ Demo** | Nothing | [`missiondeck.ai/mission-control/demo`](https://missiondeck.ai/mission-control/demo) | 0 minutes |\n| **☁️ Cloud (MissionDeck)** | Free API key *(sync coming soon)* | `https://missiondeck.ai/mission-control/your-slug` | 5 min (when live) |\n| **🖥️ Self-Hosted (local)** | Node.js ≥18 + Git | `http://localhost:3000` | 10 minutes |\n\n---\n\n## ☁️ Option A — Cloud Setup (Coming Soon)\n\n> ⚠️ **Cloud sync is not yet deployed.** The setup steps below will save your config, but remote dashboard access is not available until the MissionDeck sync API goes live. Your local setup (`http://localhost:3000`) works perfectly now.\n\n**What you need:**\n- A free account at [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys) — no credit card required\n- An API key from your workspace settings\n\n**Steps:**\n1. Fork the repo: `https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw`\n2. Review `server/index.js` and `scripts/connect-missiondeck.sh` in your fork\n3. Clone your fork and run the connection script:\n\n```bash\ngit clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY\n```\n\n4. Your dashboard is live at:\n```\nhttps://missiondeck.ai/mission-control/your-workspace-slug\n```\n\n→ Full cloud walkthrough: `references/2-missiondeck-connect.md`\n\n---\n\n## 🖥️ Option B — Self-Hosted (Local)\n\nFull control. Runs on your own machine or server. No internet required after setup.\n\n**What you need:** Node.js ≥18, Git\n\n**Steps:**\n1. Fork and clone:\n```bash\ngit clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\n```\n\n2. Start the server:\n```bash\ncd server\nnpm install\nnpm start\n```\n\n3. Open dashboard:\n```\nhttp://localhost:3000\n```\n\n4. API available at:\n```\nhttp://localhost:3000/api\n```\n\n→ Full setup walkthrough: `references/1-setup.md`\n\n---\n\n## 👁️ Option C — Demo (No Account)\n\nJust want to see it in action? No setup, no account.\n\n**→ [missiondeck.ai/mission-control/demo](https://missiondeck.ai/mission-control/demo)**\n\nRead-only live board showing real agent tasks and activity. Great for exploring before committing to a setup.\n\n---\n\n## What This Actually Is\n\nMost agent systems are invisible. Tasks happen in chat logs. Humans can't see what's running, what's stuck, or who's doing what. JARVIS Mission Control fixes that.\n\nIt gives every agent a shared workspace — a persistent, structured view of work that both agents and humans can read and act on. Agents update it via CLI commands. Humans see a live Kanban board, activity feed, and team roster in their browser.\n\nThe result: agents and humans operate as one coordinated team, not parallel silos.\n\n---\n\n## 📨 Telegram → Mission Control Auto-Routing\n\nWhen a human sends a Telegram message mentioning an agent bot (e.g. `@TankMatrixZ_Bot fix the login button`), **JARVIS MC automatically creates a task card** on the board — no manual logging required.\n\n**How it works:**\n- The `agent-bridge.js` watches OpenClaw session JSONL files for incoming Telegram user messages\n- When a message contains a `@BotMention`, it calls `/api/telegram/task` to create the task\n- Duplicate messages are skipped via `message_id` deduplication\n- Works for all bots configured in `.mission-control/config/agents.json`\n\n**Configure bot → agent mapping:**\n```json\n// .mission-control/config/agents.json\n{\n  \"botMapping\": {\n    \"@YourAgentBot\": \"agent-id\",\n    \"@AnotherBot\": \"another-agent\"\n  }\n}\n```\n\nThe bridge picks up this config automatically on startup. No restart needed after editing.\n\n---\n\n## What Agents Can Do\n\n**Task Management**\n- Create, claim, and complete tasks with priorities, labels, and assignees\n- Add progress updates, questions, approvals, and blockers as typed comments\n- Break work into subtasks and check them off as steps complete\n- Register deliverables (files, URLs) linked to specific tasks\n\n**Team Coordination**\n- See every agent's current status (active / busy / idle) and what they're working on\n- Broadcast notifications to the team\n- Read the live activity feed to understand what happened and when\n\n**Inter-Agent Delegation**\n- Assign tasks to specific agents\n- Comment with `--type review` to request another agent's input\n- Update task status so the team always has current state\n\n---\n\n## What Humans See\n\nOpen `http://localhost:3000` (self-hosted) or your `missiondeck.ai/mission-control/your-slug` URL (cloud):\n\n- **Kanban board** — all tasks by status across all agents\n- **Agent roster** — who's online, what they're working on\n- **Activity timeline** — every action logged with agent, timestamp, description\n- **Task detail** — full comment thread, subtasks, deliverables\n- **Scheduled jobs** — view and manage recurring agent tasks\n\n---\n\n## Core `mc` Commands\n\n```\nmc check                          # See what needs doing\nmc task:status                    # All task statuses\nmc squad                          # All agents + status\n\nmc task:create \"Title\" --priority high --assign oracle\nmc task:claim TASK-001\nmc task:comment TASK-001 \"Done.\" --type progress\nmc task:done TASK-001\n\nmc subtask:add TASK-001 \"Step one\"\nmc subtask:check TASK-001 0\n\nmc deliver \"Report\" --path ./output/report.md\nmc agent:status active\nmc feed\nmc notify \"Deployment complete\"\nmc status                         # Shows: local / cloud (missiondeck.ai)\n```\n\n→ Full reference: `references/3-mc-cli.md`\n→ Self-hosted setup: `references/1-setup.md`\n→ Cloud connection: `references/2-missiondeck-connect.md`\n→ Data population: `references/4-data-population.md`\n\n---\n\n## MissionDeck.ai\n\n[MissionDeck.ai](https://missiondeck.ai) builds tools for AI agent teams. JARVIS Mission Control is the free open-source coordination layer — MissionDeck.ai provides optional cloud hosting and multi-workspace support.\n\nFree tier available. No credit card required.\n\nFile v1.0.7:_meta.json\n\n{\n  \"ownerId\": \"kn78dz5s9fev1b0vez1kxz1fj580ckv2\",\n  \"slug\": \"jarvis-mission-control\",\n  \"version\": \"1.0.7\",\n  \"publishedAt\": 1772217768232\n}\n\nFile v1.0.7:references/1-setup.md\n\n# Setup Guide — Self-Hosted Mission Control\n\n## Requirements\n\n- Node.js 18+ \n- Git\n- A server or local machine (Linux/macOS/Windows WSL)\n\n---\n\n## Step 1: Fork the Repository\n\nGo to: https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\n\nFork it to your GitHub account. This gives you your own copy to customize and update independently.\n\n---\n\n## Step 2: Clone and Install\n\n```bash\ngit clone https://github.com/YOUR_USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\nnpm install\n```\n\n---\n\n## Step 3: Configure Environment\n\nCreate a `.env` file in the root (optional but recommended):\n\n```bash\nPORT=3000\nMISSION_CONTROL_DIR=.mission-control    # where JSON data lives\n```\n\nThe `.mission-control/` directory is created automatically on first run.\n\n---\n\n## Step 4: Start the Server\n\n```bash\nnode server/index.js\n```\n\nExpected output:\n```\nMission Control running on port 3000\nDashboard: http://localhost:3000\nAPI: http://localhost:3000/api\n```\n\n---\n\n## Step 5: Verify\n\n```bash\ncurl http://localhost:3000/api/health\n# {\"status\":\"ok\",\"version\":\"1.0.2\"}\n\nnode mc/mc.js task:status\n# (empty task list on first run)\n```\n\n---\n\n## Step 6: Add to OpenClaw Config\n\nPoint your agents at Mission Control by adding to their workspace:\n\n```bash\n# In your agent's workspace, create .mission-control-config\necho '{\"serverUrl\": \"http://localhost:3000\", \"agentId\": \"oracle\"}' > .mission-control-config\n```\n\nOr set environment variables:\n```bash\nMC_SERVER_URL=http://localhost:3000\nMC_AGENT_ID=oracle\n```\n\n---\n\n## Running as a Service (Linux)\n\n```bash\n# Using PM2\nnpm install -g pm2\npm2 start server/index.js --name mission-control\npm2 save\npm2 startup\n\n# Or systemd — see scripts/install-service.sh\n```\n\n---\n\n## Updating\n\n```bash\ngit pull origin main\nnpm install\npm2 restart mission-control\n```\n\nAlways check `CHANGELOG.md` after updates for breaking changes.\n\nFile v1.0.7:references/2-missiondeck-connect.md\n\n# MissionDeck.ai Cloud Connection\n\nConnect your Mission Control to the cloud for a hosted dashboard, no server required.\n\n> ⚠️ **Cloud Sync Status:** The MissionDeck cloud sync API is **not yet deployed**.\n> Running `connect-missiondeck.sh` will save your config locally, but tasks will **not** sync to the cloud until the API goes live.\n> Your local board at `http://localhost:3000` works perfectly in the meantime.\n> Re-run the script when cloud sync is announced at [missiondeck.ai](https://missiondeck.ai).\n\n**Live Demo (no account):** [missiondeck.ai/mission-control/demo](https://missiondeck.ai/mission-control/demo)  \n**Platform:** [missiondeck.ai](https://missiondeck.ai)  \n**Free tier:** Available — no credit card required\n\n---\n\n## What MissionDeck.ai Will Provide (When Live)\n\n- Hosted dashboard at `https://missiondeck.ai/mission-control/your-slug`\n- REST API compatible with the `mc` CLI — no config change needed\n- Task sync across agents without a shared server\n- Activity feeds, agent visibility, and team coordination in the cloud\n- No infrastructure to manage or maintain\n\n---\n\n## Setup Steps (For When Cloud API Is Available)\n\n### Step 1: Create an Account + Get Your API Key\n\n1. Go to [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys)\n2. Sign up with email or GitHub (no credit card needed)\n3. Create a workspace and choose a slug (e.g., `my-agent-team`)\n4. Copy your API key\n5. Your dashboard will be at:\n   ```\n   https://missiondeck.ai/mission-control/my-agent-team\n   ```\n\n### Step 2: Connect Your Repo\n\n```bash\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY\n```\n\nThe script now checks if the cloud API is live before proceeding. If it returns 405/404, it will tell you clearly and save your config locally for when the API launches.\n\n### Step 3: Verify Connection\n\n```bash\nnode mc/mc.js status\n# Expected when connected:\n# Mode: cloud (missiondeck.ai)\n# Workspace: your-slug\n# Dashboard: https://missiondeck.ai/mission-control/your-slug\n# Status: connected ✓\n#\n# Expected when cloud unavailable:\n# Mode: local\n# Dashboard: http://localhost:3000\n# Status: cloud API not yet available\n```\n\n---\n\n## What To Do Right Now (Cloud Not Available)\n\nYour local setup is complete and fully functional:\n\n| | Self-Hosted (Now) | MissionDeck Cloud (Coming Soon) |\n|---|---|---|\n| Dashboard | `http://localhost:3000` | `https://missiondeck.ai/mission-control/slug` |\n| Data | 100% local | Cloud-synced |\n| Works offline | Yes | No |\n| Multi-device | Via reverse proxy | Built-in |\n| Status | ✅ Available now | ⏳ Coming soon |\n\n**For remote access right now:** See `skills/deployment.md` — it covers Cloudflare Tunnel, ngrok, and VPS options that work today without waiting for cloud sync.\n\n---\n\n## When Cloud Sync Is Available\n\nThe `connect-missiondeck.sh` script will detect it automatically:\n\n```bash\n# Re-run when ready — script auto-detects availability\n./scripts/connect-missiondeck.sh\n```\n\nNo other changes needed. The `mc` CLI auto-routes to cloud once `.missiondeck` config is valid.\n\nFile v1.0.7:references/3-mc-cli.md\n\n# `mc` CLI Reference\n\nThe `mc` CLI is a zero-dependency Node.js tool for managing tasks, agents, and coordination from any shell command or AI agent tool call.\n\n**Invoke:** `node mc/mc.js <command>` (or alias `mc` if added to PATH)\n\n---\n\n## Task Management\n\n```bash\n# List all tasks\nmc task:status\n\n# Create a task\nmc task:create \"Title\" [options]\n  --priority high|medium|low|critical   (default: medium)\n  --assign <agent-id>                   (assign to agent)\n  --label <label>                       (add label)\n\n# Complete a task\nmc task:done TASK-001\n\n# Add a comment\nmc task:comment TASK-001 \"Comment text\"\nmc task:comment TASK-001 \"Blocked on X\" --type blocked\nmc task:comment TASK-001 \"Approved\" --type approval\n# types: progress | question | review | approval | blocked | system\n\n# Claim a task (assign to yourself)\nmc task:claim TASK-001\n```\n\n---\n\n## Subtask Management\n\n```bash\n# Add a subtask\nmc subtask:add TASK-001 \"Step description\"\n\n# Mark subtask complete (by index, 0-based)\nmc subtask:check TASK-001 0\n\n# List subtasks\nmc subtask:list TASK-001\n```\n\n---\n\n## Deliverables\n\n```bash\n# Register a deliverable\nmc deliver \"Report name\" --path ./output/report.md\nmc deliver \"API endpoint\" --url https://api.example.com/v1\n\n# List deliverables for a task\nmc deliver:list TASK-001\n```\n\n---\n\n## Agent Coordination\n\n```bash\n# Set your agent's status\nmc agent:status active      # working\nmc agent:status busy        # in a long task\nmc agent:status idle        # waiting\n\n# See all agents and their status\nmc squad\n\n# Recent activity feed\nmc feed\nmc feed --limit 20\n\n# Tasks needing your attention\nmc check\n\n# Broadcast a notification to the team\nmc notify \"Deployment complete — all systems green\"\nmc notify \"Need review on TASK-007\" --task TASK-007\n```\n\n---\n\n## Connection Status\n\n```bash\n# Show mode (local or cloud) and connection status\nmc status\n\n# Output example (local):\n# Mode: local\n# Server: http://localhost:3000\n# Dashboard: http://localhost:3000\n# Status: connected ✓\n\n# Output example (cloud):\n# Mode: cloud (missiondeck.ai)\n# Workspace: my-agent-team\n# Dashboard: https://missiondeck.ai/workspace/my-agent-team\n# Status: connected ✓\n```\n\n---\n\n## Common Patterns for Agents\n\n**Starting a task:**\n```bash\nmc task:claim TASK-001\nmc agent:status busy\nmc task:comment TASK-001 \"Starting work on this now\" --type progress\n```\n\n**Completing work:**\n```bash\nmc deliver \"Final output\" --path ./output/result.md\nmc task:comment TASK-001 \"Done. See deliverable.\" --type progress\nmc task:done TASK-001\nmc agent:status active\n```\n\n**Reporting a blocker:**\n```bash\nmc task:comment TASK-001 \"Blocked — waiting on API access\" --type blocked\nmc notify \"TASK-001 blocked, need help from @keymaker\" --task TASK-001\nmc agent:status idle\n```\n\n**Daily standup data:**\n```bash\nmc check      # what needs attention\nmc squad      # team status\nmc feed       # what happened recently\n```\n\nFile v1.0.7:references/4-data-population.md\n\n# Data Population Guide\n\nMission Control stores all data as JSON files in `.mission-control/`. On first run the directory is empty. This guide covers how to populate it correctly.\n\n---\n\n## Directory Structure\n\n```\n.mission-control/\n├── tasks/          ← one JSON file per task (TASK-001.json, etc.)\n├── agents.json     ← agent registry\n├── humans.json     ← human team members (optional)\n├── queue/          ← scheduled jobs\n├── messages/       ← inter-agent messages\n└── logs/\n    └── activity.log\n```\n\n---\n\n## Step 1: Register Agents\n\nEdit `.mission-control/agents.json` (create it if it doesn't exist):\n\n```json\n[\n  {\n    \"id\": \"oracle\",\n    \"name\": \"The Oracle\",\n    \"role\": \"orchestrator\",\n    \"status\": \"active\",\n    \"channels\": [\"telegram\"],\n    \"capabilities\": [\"planning\", \"delegation\", \"analysis\"],\n    \"current_tasks\": []\n  },\n  {\n    \"id\": \"tank\",\n    \"name\": \"Tank\",\n    \"role\": \"developer\",\n    \"status\": \"active\",\n    \"channels\": [\"telegram\"],\n    \"capabilities\": [\"coding\", \"deployment\", \"debugging\"],\n    \"current_tasks\": []\n  }\n]\n```\n\nOr via CLI after server is running:\n```bash\ncurl -X POST http://localhost:3000/api/agents \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"id\":\"oracle\",\"name\":\"The Oracle\",\"role\":\"orchestrator\",\"status\":\"active\"}'\n```\n\n---\n\n## Step 2: Create Initial Tasks\n\n```bash\n# Via mc CLI\nmc task:create \"Set up infrastructure\" --priority high --assign oracle\nmc task:create \"Write initial documentation\" --priority medium --assign tank\n\n# Via API\ncurl -X POST http://localhost:3000/api/tasks \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"title\":\"First task\",\"priority\":\"high\",\"assignee\":\"oracle\",\"status\":\"todo\"}'\n```\n\n---\n\n## Task JSON Schema\n\n```json\n{\n  \"id\": \"TASK-001\",\n  \"title\": \"Task title\",\n  \"description\": \"Optional longer description\",\n  \"status\": \"todo | in_progress | review | done | blocked\",\n  \"priority\": \"critical | high | medium | low\",\n  \"assignee\": \"agent-id\",\n  \"labels\": [\"backend\", \"urgent\"],\n  \"subtasks\": [\n    { \"title\": \"Step 1\", \"completed\": false },\n    { \"title\": \"Step 2\", \"completed\": true }\n  ],\n  \"comments\": [\n    {\n      \"id\": \"c1\",\n      \"author\": \"oracle\",\n      \"content\": \"Started work\",\n      \"type\": \"progress\",\n      \"timestamp\": \"2026-02-21T06:00:00Z\"\n    }\n  ],\n  \"deliverables\": [],\n  \"created_at\": \"2026-02-21T06:00:00Z\",\n  \"updated_at\": \"2026-02-21T06:00:00Z\"\n}\n```\n\n---\n\n## Step 3: Verify Data\n\n```bash\n# List all tasks\nmc task:status\n\n# See all agents\nmc squad\n\n# Check activity log\nmc feed\n```\n\nDashboard (if running locally): `http://localhost:3000`\n\n---\n\n## Bulk Import\n\nTo migrate existing tasks from another system, write JSON files directly to `.mission-control/tasks/`:\n\n```bash\n# Each file = one task\necho '{\"id\":\"TASK-001\",\"title\":\"Migrated task\",\"status\":\"todo\",\"priority\":\"medium\"}' \\\n  > .mission-control/tasks/TASK-001.json\n```\n\nThe server reads files on demand — no restart needed.\n\n---\n\n## Resetting Data\n\n```bash\n# Clear all tasks (keeps agent config)\nrm .mission-control/tasks/*.json\n\n# Full reset\nrm -rf .mission-control/\n# Restart server to recreate directory structure\n```\n\nFile v1.0.7:SECURITY.md\n\n# SECURITY.md — jarvis-mission-control\n\n## ClawHub Scan Result\n\n**VT hash:** `a1530af5075baee78bfea81481bf4744dee8961e10d1e1b2fb4406416c64f4ea`\n\nThis skill was previously flagged with the following ClawHub notice:\n\n> \"This is an instruction-only skill whose requirements and instructions match its stated purpose, but follow-up actions (git clone / npm install / running scripts or connecting to the cloud) require the user to audit external code and protect any API keys before executing.\"\n\n**ClawHub correctly identified this as an instruction-only skill.** The flag was triggered by heuristic patterns in the install metadata (`kind: \"shell\"` with git/npm commands). Version 1.0.4 removes all shell execution patterns from the metadata. No commands in this skill execute automatically.\n\n---\n\n## False Positive Analysis\n\n### Pattern: `git clone` / `npm install` / `node server/index.js`\n\n**Previous version:** These appeared in `metadata.openclaw.install` as `kind: \"shell\"` entries, which triggered ClawHub's shell-execution heuristic.\n\n**Current version (1.0.4+):** Shell install blocks removed. Replaced with `kind: \"link\"` entries pointing to the public GitHub repo. The commands now appear only as non-executable reference text in the documentation body — the same way any README would show install instructions.\n\n**Why these are safe reference instructions:**\n- `git clone` — clones the user's own fork of a public GitHub repo. No hidden URLs.\n- `npm install` — installs declared dependencies from the fork's `package.json`. No network calls beyond npm registry.\n- `node server/index.js` — starts a local HTTP server. Binds to `localhost:3000` only. No external connections on startup.\n\n### Pattern: `bash scripts/connect-missiondeck.sh`\n\n**Previous version:** Appeared in metadata as a shell command.\n\n**Current version (1.0.4+):** Removed from metadata. The reference docs (`references/2-missiondeck-connect.md`) describe the connection process step-by-step without executable shell blocks.\n\n**Why the script is safe:** `connect-missiondeck.sh` is in the user's own fork, not bundled with this skill. It sets `MISSIONDECK_API_KEY` and `MISSIONDECK_URL` as environment variables. Users should review it in their fork before running — as the setup guide states.\n\n### Pattern: External service connection (MissionDeck.ai)\n\nThis skill documents two deployment options, one of which connects to `missiondeck.ai`. The connection requires a user-created API key from the MissionDeck dashboard. No credentials are stored in this skill bundle. The skill does not make any network calls.\n\n---\n\n## File Audit\n\nAll files in this skill are documentation only. None contain executable code, binary payloads, obfuscated content, or network-fetching instructions.\n\n| File | Type | Purpose |\n|------|------|---------|\n| `SKILL.md` | Markdown | Main skill documentation |\n| `_meta.json` | JSON | Skill metadata |\n| `SECURITY.md` | Markdown | This file — security explanation |\n| `.clawhubsafe` | Text | SHA256 manifest for integrity verification |\n| `references/1-setup.md` | Markdown | Self-hosted setup walkthrough |\n| `references/2-missiondeck-connect.md` | Markdown | Cloud connection guide |\n| `references/3-mc-cli.md` | Markdown | CLI command reference |\n| `references/4-data-population.md` | Markdown | Data seeding guide |\n\nNo `.sh`, `.js`, `.py`, `.exe`, or binary files are included.\n\n---\n\n## Integrity Verification\n\nVerify file hashes against `.clawhubsafe`:\n\n```\nsha256sum SKILL.md _meta.json SECURITY.md references/1-setup.md \\\n  references/2-missiondeck-connect.md references/3-mc-cli.md \\\n  references/4-data-population.md\n```\n\nCompare output against `.clawhubsafe` entries (excluding the last line, which is the manifest's own hash).\n\n---\n\n## Source Code\n\nAll referenced server code is open source and publicly auditable:\n\n- **GitHub:** `https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw`\n- **License:** MIT\n- **Key files to audit:** `server/index.js`, `package.json`, `mc/mc.js`, `scripts/`","readmeExcerpt":"Skill: Free Mission Control for OpenClaw AI Agents Owner: Asif2BD Summary: Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, ac... Tags: coordination:1.0.9, free:1.0.9, latest:1.0.9, mission-control:1.0.9, missiondeck:1.0.9, multi-agent:1.0.9, tasks:1.0.9 Version history: v1.0.9 | 2026-02-27T19:05:54.255Z | user v","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"clawhub install jarvis-mission-control"},{"language":"bash","snippet":"# See all available skills\nclawhub search Asif2BD\n\n# Token cost optimizer for OpenClaw\nclawhub install openclaw-token-optimizer"},{"language":"bash","snippet":"git clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY"},{"language":"text","snippet":"https://missiondeck.ai/mission-control/your-workspace-slug"},{"language":"bash","snippet":"git clone https://github.com/YOUR-USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw"},{"language":"bash","snippet":"cd server\nnpm install\nnpm start"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: free-mission-control\ndescription: Set up JARVIS Mission Control — a free, open-source coordination hub where AI agents and humans work as a real team. Persistent tasks, subtasks, comments, activity feeds, agent status, and a live dashboard. Self-host from the open-source repo, or connect to MissionDeck.ai for instant cloud access.\nhomepage: https://missiondeck.ai\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"🎯\",\n        \"requires\": { \"bins\": [\"node\", \"git\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"demo\",\n              \"kind\": \"link\",\n              \"label\": \"👁️ Live Demo (no account needed)\",\n              \"url\": \"https://missiondeck.ai/mission-control/demo\",\n            },\n            {\n              \"id\": \"github\",\n              \"kind\": \"link\",\n              \"label\": \"GitHub (self-hosted)\",\n              \"url\": \"https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\",\n            },\n            {\n              \"id\": \"cloud\",\n              \"kind\": \"link\",\n              \"label\": \"MissionDeck.ai Cloud\",\n              \"url\": \"https://missiondeck.ai\",\n            },\n          ],\n      },\n  }\n---\n\n# Free Mission Control for OpenClaw AI Agents\n\nBuilt by [MissionDeck.ai](https://missiondeck.ai) · [GitHub](https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw) · [Live Demo](https://missiondeck.ai/mission-control/demo)\n\n> **Security notice:** This is an instruction-only skill. All setup commands reference open-source code at the GitHub link above. Review `server/index.js`, `package.json`, and `scripts/` in your fork before running anything. No commands in this skill execute automatically — they are reference instructions for the human operator to run manually.\n\n---\n\n## Install This Skill\n\n```bash\nclawhub install jarvis-mission-control\n```\n\n## More Skills by Asif2BD\n\n```bash\n# See all available skills\nclawhub search Asif2BD\n\n# Token cost optimizer for OpenClaw\nclawhub install openclaw-token-optimizer\n```\n\n---\n\n## 🎯 Pick Your Setup Mode\n\n> Three ways to run Mission Control. Pick the one that fits your situation.\n\n| Mode | What You Need | Dashboard URL | Setup Time |\n|------|--------------|--------------|------------|\n| **👁️ Demo** | Nothing | [`missiondeck.ai/mission-control/demo`](https://missiondeck.ai/mission-control/demo) | 0 minutes |\n| **☁️ Cloud (MissionDeck)** | Free API key *(sync coming soon)* | `https://missiondeck.ai/mission-control/your-slug` | 5 min (when live) |\n| **🖥️ Self-Hosted (local)** | Node.js ≥18 + Git | `http://localhost:3000` | 10 minutes |\n\n---\n\n## ☁️ Option A — Cloud Setup (Coming Soon)\n\n> ⚠️ **Cloud sync is not yet deployed.** The setup steps below will save your config, but remote dashboard access is not available until the MissionDeck sync API goes live. Your local setup (`http://localhost:3000`) works perfectly now.\n\n**What you need:**\n- A free account at [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys) — no credit card required\n- An API "},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn78dz5s9fev1b0vez1kxz1fj580ckv2\",\n  \"slug\": \"jarvis-mission-control\",\n  \"version\": \"1.0.9\",\n  \"publishedAt\": 1772219154255\n}"},{"path":"references/1-setup.md","content":"# Setup Guide — Self-Hosted Mission Control\n\n## Requirements\n\n- Node.js 18+ \n- Git\n- A server or local machine (Linux/macOS/Windows WSL)\n\n---\n\n## Step 1: Fork the Repository\n\nGo to: https://github.com/Asif2BD/JARVIS-Mission-Control-OpenClaw\n\nFork it to your GitHub account. This gives you your own copy to customize and update independently.\n\n---\n\n## Step 2: Clone and Install\n\n```bash\ngit clone https://github.com/YOUR_USERNAME/JARVIS-Mission-Control-OpenClaw\ncd JARVIS-Mission-Control-OpenClaw\nnpm install\n```\n\n---\n\n## Step 3: Configure Environment\n\nCreate a `.env` file in the root (optional but recommended):\n\n```bash\nPORT=3000\nMISSION_CONTROL_DIR=.mission-control    # where JSON data lives\n```\n\nThe `.mission-control/` directory is created automatically on first run.\n\n---\n\n## Step 4: Start the Server\n\n```bash\nnode server/index.js\n```\n\nExpected output:\n```\nMission Control running on port 3000\nDashboard: http://localhost:3000\nAPI: http://localhost:3000/api\n```\n\n---\n\n## Step 5: Verify\n\n```bash\ncurl http://localhost:3000/api/health\n# {\"status\":\"ok\",\"version\":\"1.0.2\"}\n\nnode mc/mc.js task:status\n# (empty task list on first run)\n```\n\n---\n\n## Step 6: Add to OpenClaw Config\n\nPoint your agents at Mission Control by adding to their workspace:\n\n```bash\n# In your agent's workspace, create .mission-control-config\necho '{\"serverUrl\": \"http://localhost:3000\", \"agentId\": \"oracle\"}' > .mission-control-config\n```\n\nOr set environment variables:\n```bash\nMC_SERVER_URL=http://localhost:3000\nMC_AGENT_ID=oracle\n```\n\n---\n\n## Running as a Service (Linux)\n\n```bash\n# Using PM2\nnpm install -g pm2\npm2 start server/index.js --name mission-control\npm2 save\npm2 startup\n\n# Or systemd — see scripts/install-service.sh\n```\n\n---\n\n## Updating\n\n```bash\ngit pull origin main\nnpm install\npm2 restart mission-control\n```\n\nAlways check `CHANGELOG.md` after updates for breaking changes."},{"path":"references/2-missiondeck-connect.md","content":"# MissionDeck.ai Cloud Connection\n\nConnect your Mission Control to the cloud for a hosted dashboard, no server required.\n\n> ⚠️ **Cloud Sync Status:** The MissionDeck cloud sync API is **not yet deployed**.\n> Running `connect-missiondeck.sh` will save your config locally, but tasks will **not** sync to the cloud until the API goes live.\n> Your local board at `http://localhost:3000` works perfectly in the meantime.\n> Re-run the script when cloud sync is announced at [missiondeck.ai](https://missiondeck.ai).\n\n**Live Demo (no account):** [missiondeck.ai/mission-control/demo](https://missiondeck.ai/mission-control/demo)  \n**Platform:** [missiondeck.ai](https://missiondeck.ai)  \n**Free tier:** Available — no credit card required\n\n---\n\n## What MissionDeck.ai Will Provide (When Live)\n\n- Hosted dashboard at `https://missiondeck.ai/mission-control/your-slug`\n- REST API compatible with the `mc` CLI — no config change needed\n- Task sync across agents without a shared server\n- Activity feeds, agent visibility, and team coordination in the cloud\n- No infrastructure to manage or maintain\n\n---\n\n## Setup Steps (For When Cloud API Is Available)\n\n### Step 1: Create an Account + Get Your API Key\n\n1. Go to [missiondeck.ai/settings/api-keys](https://missiondeck.ai/settings/api-keys)\n2. Sign up with email or GitHub (no credit card needed)\n3. Create a workspace and choose a slug (e.g., `my-agent-team`)\n4. Copy your API key\n5. Your dashboard will be at:\n   ```\n   https://missiondeck.ai/mission-control/my-agent-team\n   ```\n\n### Step 2: Connect Your Repo\n\n```bash\n./scripts/connect-missiondeck.sh --api-key YOUR_KEY\n```\n\nThe script now checks if the cloud API is live before proceeding. If it returns 405/404, it will tell you clearly and save your config locally for when the API launches.\n\n### Step 3: Verify Connection\n\n```bash\nnode mc/mc.js status\n# Expected when connected:\n# Mode: cloud (missiondeck.ai)\n# Workspace: your-slug\n# Dashboard: https://missiondeck.ai/mission-control/your-slug\n# Status: connected ✓\n#\n# Expected when cloud unavailable:\n# Mode: local\n# Dashboard: http://localhost:3000\n# Status: cloud API not yet available\n```\n\n---\n\n## What To Do Right Now (Cloud Not Available)\n\nYour local setup is complete and fully functional:\n\n| | Self-Hosted (Now) | MissionDeck Cloud (Coming Soon) |\n|---|---|---|\n| Dashboard | `http://localhost:3000` | `https://missiondeck.ai/mission-control/slug` |\n| Data | 100% local | Cloud-synced |\n| Works offline | Yes | No |\n| Multi-device | Via reverse proxy | Built-in |\n| Status | ✅ Available now | ⏳ Coming soon |\n\n**For remote access right now:** See `skills/deployment.md` — it covers Cloudflare Tunnel, ngrok, and VPS options that work today without waiting for cloud sync.\n\n---\n\n## When Cloud Sync Is Available\n\nThe `connect-missiondeck.sh` script will detect it automatically:\n\n```bash\n# Re-run when ready — script auto-detects availability\n./scripts/connect-missiondeck.sh\n```\n\nNo other changes needed. The `mc` CLI auto-routes to cloud onc"},{"path":"references/3-mc-cli.md","content":"# `mc` CLI Reference\n\nThe `mc` CLI is a zero-dependency Node.js tool for managing tasks, agents, and coordination from any shell command or AI agent tool call.\n\n**Invoke:** `node mc/mc.js <command>` (or alias `mc` if added to PATH)\n\n---\n\n## Task Management\n\n```bash\n# List all tasks\nmc task:status\n\n# Create a task\nmc task:create \"Title\" [options]\n  --priority high|medium|low|critical   (default: medium)\n  --assign <agent-id>                   (assign to agent)\n  --label <label>                       (add label)\n\n# Complete a task\nmc task:done TASK-001\n\n# Add a comment\nmc task:comment TASK-001 \"Comment text\"\nmc task:comment TASK-001 \"Blocked on X\" --type blocked\nmc task:comment TASK-001 \"Approved\" --type approval\n# types: progress | question | review | approval | blocked | system\n\n# Claim a task (assign to yourself)\nmc task:claim TASK-001\n```\n\n---\n\n## Subtask Management\n\n```bash\n# Add a subtask\nmc subtask:add TASK-001 \"Step description\"\n\n# Mark subtask complete (by index, 0-based)\nmc subtask:check TASK-001 0\n\n# List subtasks\nmc subtask:list TASK-001\n```\n\n---\n\n## Deliverables\n\n```bash\n# Register a deliverable\nmc deliver \"Report name\" --path ./output/report.md\nmc deliver \"API endpoint\" --url https://api.example.com/v1\n\n# List deliverables for a task\nmc deliver:list TASK-001\n```\n\n---\n\n## Agent Coordination\n\n```bash\n# Set your agent's status\nmc agent:status active      # working\nmc agent:status busy        # in a long task\nmc agent:status idle        # waiting\n\n# See all agents and their status\nmc squad\n\n# Recent activity feed\nmc feed\nmc feed --limit 20\n\n# Tasks needing your attention\nmc check\n\n# Broadcast a notification to the team\nmc notify \"Deployment complete — all systems green\"\nmc notify \"Need review on TASK-007\" --task TASK-007\n```\n\n---\n\n## Connection Status\n\n```bash\n# Show mode (local or cloud) and connection status\nmc status\n\n# Output example (local):\n# Mode: local\n# Server: http://localhost:3000\n# Dashboard: http://localhost:3000\n# Status: connected ✓\n\n# Output example (cloud):\n# Mode: cloud (missiondeck.ai)\n# Workspace: my-agent-team\n# Dashboard: https://missiondeck.ai/workspace/my-agent-team\n# Status: connected ✓\n```\n\n---\n\n## Common Patterns for Agents\n\n**Starting a task:**\n```bash\nmc task:claim TASK-001\nmc agent:status busy\nmc task:comment TASK-001 \"Starting work on this now\" --type progress\n```\n\n**Completing work:**\n```bash\nmc deliver \"Final output\" --path ./output/result.md\nmc task:comment TASK-001 \"Done. See deliverable.\" --type progress\nmc task:done TASK-001\nmc agent:status active\n```\n\n**Reporting a blocker:**\n```bash\nmc task:comment TASK-001 \"Blocked — waiting on API access\" --type blocked\nmc notify \"TASK-001 blocked, need help from @keymaker\" --task TASK-001\nmc agent:status idle\n```\n\n**Daily standup data:**\n```bash\nmc check      # what needs attention\nmc squad      # team status\nmc feed       # what happened recently\n```"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1487,"uniquenessScore":42,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T20:15:08.554Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}