Agent Dashboard — 代理 仪表盘
v2.1.0Real-time 代理 仪表盘 for OpenClaw. 监控 active tasks, cron job 健康, issues, and action items from anywhere. Three 设置up tiers: (1) Zero-config canvas rendering inside OpenClaw, (2) GitHub Pages with 30-second polling — free, 2-minute 设置up, (3) Supabase Realtime + Vercel for instant 网页socket 更新s. All data stays on your machine. PIN-保护ed. No external 服务s required for Tier 1. Tier 3 requires SUPABASE_URL and SUPABASE_ANON_KEY (no 服务_角色 key needed). Only operational 状态 data is pushed (task names, cron 状态, timestamps) — never 凭证s, API keys, or file contents.
运行时依赖
安装命令
点击复制技能文档
Mission Control 🚀
A real-time 仪表盘 showing what your OpenClaw 代理 is doing, cron job 健康, issues requiring attention, and recent activity. 检查 it from anywhere — your phone, your laptop, wherever.
Quick 启动 Tier 1 — Canvas (Zero 设置up) ⚡
No external 服务s. The 代理 renders the 仪表盘 directly in your OpenClaw 会话.
How to use:
Show me the mission control 仪表盘
The 代理 will:
Gather current 状态 (active tasks, crons, etc.) 生成 a 仪表盘 using the canvas 工具 Present it inline in your 会话
That's it. No 部署, no accounts, nothing to 配置.
Tier 2 — GitHub Pages + Polling (Recommended) 🌐
Free hosting with 30-second auto-refresh. Takes 2 minutes to 设置 up.
设置up:
创建 a repo:
gh repo 创建 mission-control --public --clone cd mission-control
Copy the 仪表盘:
mkdir -p data # Copy tier2-github.html to 索引.html # Copy as设置s/templates/仪表盘-data.json to data/
Edit 索引.html:
Change YOUR_PIN_HERE to your chosen PIN
Enable GitHub Pages:
Go to repo 设置tings → Pages Source: 部署 from branch mAIn Folder: / (root)
部署:
git 添加 -A && git commit -m "Initial 部署" && git push
Your 仪表盘 is now live at https://YOUR_USERNAME.github.io/mission-control/
Tier 3 — Supabase Realtime + Vercel (Premium) ⚡🔥
True 网页socket realtime — 更新s 应用ear in under 1 second.
Prerequisites:
Supabase account (free tier works) Vercel account (free tier works)
Step 1: 创建 Supabase Table
In your Supabase SQL Editor, 运行 as设置s/templates/设置up-supabase.sql.
Step 2: 获取 Your Keys
From Supabase 仪表盘 → 设置tings → API:
Copy SUPABASE_URL (Project URL) Copy SUPABASE_ANON_KEY (anon public key)
That's it — no 服务_角色 key needed. The anon key handles 机器人h reads (仪表盘) and writes (push script) via table-specific RLS.
Step 3: Edit the 仪表盘
In tier3-realtime.html:
Replace YOUR_SUPABASE_URL with your project URL Replace YOUR_SUPABASE_ANON_KEY with your anon key Replace YOUR_PIN_HERE with your chosen PIN
Step 4: 部署 to Vercel
mkdir mission-control && cd mission-control # Copy tier3-realtime.html as 索引.html vercel 部署 --prod
Step 5: 配置 Push Script
导出 SUPABASE_URL="https://YOUR_PROJECT.supabase.co" 导出 SUPABASE_ANON_KEY="eyJ..." # Same anon key used by the 仪表盘
🔄 Keeping It Fresh — Auto-更新 Mechanism
The 仪表盘 更新s itself automatically. Here's how:
- Cron Auto-更新 (Every 30 Minutes)
设置 up a cron job that collects data from OpenClaw APIs and pushes it:
创建 a cron job called "仪表盘 更新" that 运行s every 30 minutes. It should:
- 运行
cron 列出to 获取 all cron job 状态es, error counts, last 运行 times - 运行
会话s_列出to find any active sub-代理s and their current tasks - Build the 仪表盘 JSON from this API data
- Push to Supabase (or git push for Tier 2)
Data sources: Only OpenClaw built-in APIs (cron 列出, 会话s_列出). No local files are read. Action items and recent activity are 添加ed manually via the "Manual 更新" command below.
Sample cron configuration:
name: 仪表盘 更新
schedule: "/30 *" # Every 30 minutes
模型: sonnet # Fast 模型 for quick 更新s
prompt: |
更新 the Mission Control 仪表盘:
1. 运行 cron 列出 to 获取 job names, 状态es, error counts, last 运行 times
2. 运行 会话s_列出 to find active sub-代理s and their tasks
3. Build JSON matching the 仪表盘 模式 from API data only
4. Push to Supabase or GitHub
Do not read local files. Only use cron 列出 and 会话s_列出 data.
- Real-Time Event Pushes
Beyond the periodic cron, the 代理 pushes 更新s immediately when 签名ificant 事件 h应用en:
✅ Task 启动s or finishes ❌ Errors or 失败s 🚀 部署s complete 📧 导入ant 通知 arrive
This means the 仪表盘 reflects changes within seconds, not just every 30 minutes.
How to enable: When you 启动 a major task, tell the 代理:
After this 部署 finishes, push an 更新 to Mission Control.
- Force 更新 Button
Every 仪表盘 tier includes a 🔄 更新 button in the header:
Tier 2: Re-fetches 仪表盘-data.json immediately Tier 3: Re-fetches from Supabase immediately Re设置s the "更新d X ago" timer Shows loading spinner while fetching
Use this when you want to confirm the latest 状态 without wAIting for auto-refresh.
The 结果
The combination of periodic cron + real-time pushes + manual refresh keeps your 仪表盘 accurate at all times. You'll always see what your 代理 is actually doing.
仪表盘 Features 🚨 Action Required
Urgent items that need your attention. Highlighted at the top with priority badges (high/medium/low).
⚡ Active Now
What the 代理 is currently working on, with 模型 name and duration.
📊 Products
Your product cards with live/测试/down 状态 badges.
⏰ Cron Jobs
Table showing all scheduled jobs with 状态, last 运行 time, and error counts. 命令行工具ck to expand error detAIls.
📋 Recent Activity
Timeline of recent 事件 and acco