Skip to content

Repository files navigation

🦞 OpenClaw Command Center

English | 简体中文

Mission control for your AI agents

CILicense: MITNodeClawHubPRs Welcome

FeaturesQuick StartSecurityConfiguration


Why Command Center?

Your AI agents are running 24/7. You need to know what they're doing.

Command Center gives you real-time visibility into your OpenClaw deployment — sessions, costs, system health, scheduled tasks — all in one secure dashboard.

⚡ Fast

  • Single API call — unified state endpoint, not 16+ separate requests
  • 2-second updates — real-time SSE push, not polling
  • 5-second cache — backend stays responsive under load
  • Instant startup — no build step, no compilation

🪶 Lightweight

  • Zero dependencies for users — just Node.js
  • ~200KB total — dashboard + server
  • No webpack/vite/bundler — runs directly
  • No React/Vue/Angular — vanilla JS, works everywhere

📱 Responsive

  • Desktop & mobile — works on any screen size
  • Dark mode — easy on the eyes, Starcraft-inspired
  • Live updates — no manual refresh needed
  • Offline-friendly — graceful degradation

🔧 Modern

  • ES Modules — clean component architecture
  • SSE streaming — efficient real-time updates
  • REST API — integrate with your tools
  • TypeScript-ready — JSDoc types included

🔒 Security (Most Important)

Command Center takes security seriously:

FeatureDescription
Auth ModesToken, Tailscale, Cloudflare Access, IP allowlist
No external callsDashboard runs 100% locally — no telemetry, no CDNs
Localhost defaultBinds to 127.0.0.1 by default
Read-only by defaultView your agents without exposing control
No secrets in UIAPI keys, tokens never displayed
Audit loggingKnow who accessed what, when
# Secure deployment example (Tailscale)
DASHBOARD_AUTH_MODE=tailscale node lib/server.js
# Only users on your Tailscale network can access

Features

FeatureDescription
📊 Session MonitoringReal-time view of active AI sessions
LLM Fuel GaugesToken usage, costs, quota remaining
💻 System VitalsCPU, memory, disk, temperature
Cron JobsView and manage scheduled tasks
🧠 Cerebro TopicsAutomatic conversation tagging
👥 OperatorsWho's talking to your agents
📝 Memory BrowserView agent memory files
🔒 Privacy ControlsHide sensitive topics for demos/screenshots
💰 Cost BreakdownDetailed per-model cost analysis
📈 Savings ProjectionsMonthly cost vs. manual estimates

Quick Start

npx clawhub@latest install command-center
cd skills/command-center
node lib/server.js

Dashboard runs at http://localhost:3333 🎉

Alternative: Git clone
git clone https://github.com/jontsai/openclaw-command-center
cd openclaw-command-center
node lib/server.js

Zero-Config Experience

Command Center auto-detects your OpenClaw workspace:

  1. $OPENCLAW_WORKSPACE environment variable
  2. ~/.openclaw-workspace or ~/openclaw-workspace
  3. Common names: ~/molty, ~/clawd, ~/moltbot

If you have memory/ or state/ directories, you're good to go.


Optional System Dependencies

Command Center requires only Node.js to run. However, some system vitals features benefit from optional packages. Without them, the dashboard still works — those metrics simply show zeros or fall back gracefully.

OSPackagePurposeInstallWithout It
LinuxsysstatDisk I/O vitals (IOPS, throughput)sudo apt install sysstatDisk stats show zeros
Linuxlm-sensorsAdditional temperature sensorssudo apt install lm-sensorsUses thermal_zone (usually works)
macOS (Intel)osx-cpu-tempCPU temperatureBuild from sourceBattery temp fallback
macOS (Apple Silicon)passwordless sudoCPU temperature via powermetricsConfigure in sudoersShows note in UI

Command Center logs hints for missing optional dependencies once at startup.


Configuration

Environment Variables

VariableDescriptionDefault
PORTServer port3333
OPENCLAW_WORKSPACEWorkspace rootAuto-detect
OPENCLAW_PROFILEProfile name(none)

🔒 Authentication

ModeUse CaseConfig
noneLocal devDASHBOARD_AUTH_MODE=none
tokenAPI accessDASHBOARD_AUTH_MODE=token DASHBOARD_TOKEN=secret
tailscaleTeam accessDASHBOARD_AUTH_MODE=tailscale
cloudflarePublic deployDASHBOARD_AUTH_MODE=cloudflare
allowlistIP whitelistDASHBOARD_AUTH_MODE=allowlist DASHBOARD_ALLOWED_IPS=...

📋 Recommended OpenClaw Settings

For the best Command Center experience, configure your OpenClaw gateway:

Slack Threading (Critical)

Enable threading for all messages to get proper topic tracking:

# In your OpenClaw config (gateway.yaml or via openclaw gateway config)slack:
capabilities:
threading: all # Options: all, dm, group, none

Why this matters: Without threading, the dashboard can't track conversation topics properly. Each thread becomes a trackable unit of work.

Session Labels

Use descriptive session labels for better dashboard visibility:

sessions:
labelFormat: "{channel}:{topic}"# Customize as needed

Cerebro (Topic Tracking)

Enable Cerebro for automatic conversation tagging:

# Initialize Cerebro directories
mkdir -p ~/your-workspace/cerebro/topics
mkdir -p ~/your-workspace/cerebro/orphans

The dashboard will automatically detect and display topic data.


Multi-Profile Support

Running multiple OpenClaw instances?

# Production dashboard
node lib/server.js --profile production --port 3333
# Development dashboard
node lib/server.js --profile dev --port 3334

API

Command Center exposes a REST API:

EndpointDescription
GET /api/stateUnified state — all dashboard data in one call
GET /api/healthHealth check
GET /api/vitalsSystem metrics
GET /api/sessionsActive sessions
GET /api/eventsSSE stream for real-time updates

Architecture

command-center/
├── lib/
│ ├── server.js # HTTP server + API
│ ├── config.js # Configuration
│ └── jobs.js # Cron integration
├── public/
│ ├── index.html # Dashboard UI
│ └── js/ # Components (ES modules)
└── scripts/
├── setup.sh # First-time setup
└── verify.sh # Health check

🚀 Coming Soon

Advanced Job Scheduling

Building on OpenClaw's native cron system with intelligent scheduling primitives:

PrimitiveDescription
run-if-notSkip if job already running (dedupe)
run-if-idleOnly execute when system capacity available
run-afterDependency chains between jobs
run-with-backoffExponential retry on failure
priority-queueCritical vs. background work prioritization

Multi-Agent Orchestration

  • Agent-to-agent handoffs
  • Swarm coordination patterns
  • Specialized agent routing (data analysis, documentation, testing)
  • Cross-session context sharing

Integration Ecosystem

  • Webhook triggers for external systems
  • Slack slash commands for quick actions
  • API for custom integrations
  • Plugin architecture for specialized agents

Screenshots

Dashboard Overview

The hero view shows key metrics at a glance: total tokens, costs, active sessions, estimated savings, and system capacity.

Dashboard Hero

Sessions Panel

Monitor all active AI sessions in real-time. Each card shows model, channel, token usage, cost, and activity status. Filter by status (live/recent/idle), channel, or session type.

Sessions Panel

Cron Jobs

View and manage scheduled tasks. See run history, next scheduled time, and enable/disable jobs. The dashboard shows job success/failure sparklines and filters by status and schedule type.

Cron Jobs Panel

Cerebro Topics

Automatic conversation organization. Topics are auto-detected from Slack threads, with status tracking (active/resolved/parked), thread counts, and quick navigation. Privacy controls let you hide sensitive topics.

Cerebro Topics Panel

Operators

See who's interacting with your AI agents. Track active sessions per operator, permission levels, and last activity timestamps.

Operators Panel

Memory Browser

Browse your agent's memory files — daily logs, long-term memory, and workspace files. Quick navigation with file sizes and modification times.

Memory Panel

Cost Breakdown Modal

Click on any cost stat to see detailed breakdowns: token usage by type, pricing rates, and calculation methodology. Includes estimated savings vs. manual work.

Cost Breakdown Modal

Operator Details

Click on an operator card to see their session history, stats, and activity timeline.

Operator Details Modal

Privacy Settings

Control what's visible for demos and screenshots. Hide sensitive topics, sessions, or cron jobs. Settings sync to the server automatically.

Privacy Settings Modal

Session Details

Click any session card to see detailed information: summary, key facts, tools used, and recent messages.

Session Details Panel

Full Dashboard

The complete dashboard with all panels visible.

Click to expand full dashboard view

Full Dashboard


Contributing

Contributions welcome! Please read CONTRIBUTING.md.

Development

npm install # Install dev dependencies
npm run dev # Watch mode
npm run lint # Check code style
npm run format # Auto-format
./scripts/verify.sh # Run health checks

License

MIT © Jonathan Tsai


About

🤖 AI assistant command and control dashboard — Spawn more Overlords!

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages