Mission Control dashboard for the Zara OpenClaw agent — chat, orchestration, portfolio, and world intel.
-
Clone the repo and install dependencies:
npm install
-
Copy environment template and fill in values:
cp .env.example .env # Edit .env: set MISSION_CONTROL_PASSWORD, AUTH_SECRET, EVM_WALLET_ADDRESS, SOLANA_WALLET_ADDRESS, etc. -
Run a build once after cloning to generate
.next/types/routes.d.tsand other Next.js artifacts:npm run build
-
Validate environment (optional):
npm run validate-env
-
Start the dashboard:
npm run dev
-
Mission Control (this repo) — Next.js dashboard and API. It provides the UI (login, chat, orchestration, portfolio, world monitor) and proxies requests to the OpenClaw gateway when needed. Config and secrets live in
.env(single source of truth for the app). -
OpenClaw — Gateway, Telegram bot, and agents are installed and run separately (e.g. via
openclaw gatewayor LaunchAgent). OpenClaw is configured via~/.openclaw/openclaw.jsonand~/.openclaw/.env. Mission Control talks to the gateway over HTTP/WebSocket usingGATEWAY_URLand the token from the gateway config.
| Variable | Purpose |
|---|---|
MISSION_CONTROL_PASSWORD |
Login password for the dashboard |
AUTH_SECRET |
Cookie signing secret (generate with: openssl rand -base64 32) |
EVM_WALLET_ADDRESS |
Wallet address for display/adapters |
SOLANA_WALLET_ADDRESS |
Wallet address for display/adapters |
GATEWAY_URL— OpenClaw gateway URL (default:http://localhost:18789)OPENCLAW_GATEWAY_TOKENorGATEWAY_AUTH_TOKEN— Gateway auth token (or read from~/.openclaw/openclaw.json)- Polymarket:
POLYMARKET_API_KEY,POLYMARKET_SECRET,POLYMARKET_PASSPHRASE,POLYMARKET_CLOB_WALLET - RPC:
ETH_RPC_URL,BASE_RPC_URL,SOLANA_RPC_URL COINGECKO_API_KEY— Optional; improves rate limits for price data
- Config:
~/.openclaw/openclaw.json(ensurechmod 600for security) - Env:
~/.openclaw/.env(Telegram bot token, model API keys, etc.)
npm run dev— Start Next.js dev servernpm run build— Production buildnpm run start— Start production servernpm run lint— Run ESLintnpm run validate-env— Check required env vars in.envnpm run test— Run Vitest
Private.