← All skills
Tencent SkillHub Β· AI

Agent Dashboard

Real-time agent dashboard for OpenClaw. Monitor active tasks, cron job health, issues, and action items from anywhere. Three setup tiers: (1) Zero-config can...

skill openclawclawhub Free
0 Downloads
0 Stars
0 Installs
0 Score
High Signal

Real-time agent dashboard for OpenClaw. Monitor active tasks, cron job health, issues, and action items from anywhere. Three setup tiers: (1) Zero-config can...

⬇ 0 downloads β˜… 0 stars Unverified but indexed

Install for OpenClaw

Quick setup
  1. Download the package from Yavira.
  2. Extract the archive and review SKILL.md first.
  3. Import or place the package into your OpenClaw setup.

Requirements

Target platform
OpenClaw
Install method
Manual import
Extraction
Extract archive
Prerequisites
OpenClaw
Primary doc
SKILL.md

Package facts

Download mode
Yavira redirect
Package format
ZIP package
Source platform
Tencent SkillHub
What's included
SKILL.md, assets/push-dashboard.sh, assets/templates/dashboard-data.json, assets/templates/setup-supabase.sql, assets/tier1-canvas.html, assets/tier2-github.html

Validation

  • Use the Yavira download entry.
  • Review SKILL.md after the package is downloaded.
  • Confirm the extracted package contains the expected setup assets.

Install with your agent

Agent handoff

Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.

  1. Download the package from Yavira.
  2. Extract it into a folder your agent can access.
  3. Paste one of the prompts below and point your agent at the extracted folder.
New install

I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.

Upgrade existing

I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.

Trust & source

Release facts

Source
Tencent SkillHub
Verification
Indexed source record
Version
1.0.4

Documentation

ClawHub primary doc Primary doc: SKILL.md 33 sections Open source page

Mission Control πŸš€

A real-time dashboard showing what your OpenClaw agent is doing, cron job health, issues requiring attention, and recent activity. Check it from anywhere β€” your phone, your laptop, wherever.

Tier 1 β€” Canvas (Zero Setup) ⚑

No external services. The agent renders the dashboard directly in your OpenClaw session. How to use: Show me the mission control dashboard The agent will: Gather current state (active tasks, crons, etc.) Generate a dashboard using the canvas tool Present it inline in your session That's it. No deploy, no accounts, nothing to configure.

Tier 2 β€” GitHub Pages + Polling (Recommended) 🌐

Free hosting with 30-second auto-refresh. Takes 2 minutes to set up. Setup: Create a repo: gh repo create mission-control --public --clone cd mission-control Copy the dashboard: mkdir -p data # Copy tier2-github.html to index.html # Copy assets/templates/dashboard-data.json to data/ Edit index.html: Change YOUR_PIN_HERE to your chosen PIN Enable GitHub Pages: Go to repo Settings β†’ Pages Source: Deploy from branch main Folder: / (root) Deploy: git add -A && git commit -m "Initial deploy" && git push Your dashboard is now live at https://YOUR_USERNAME.github.io/mission-control/

Tier 3 β€” Supabase Realtime + Vercel (Premium) ⚑πŸ”₯

True websocket realtime β€” updates appear in under 1 second. Prerequisites: Supabase account (free tier works) Vercel account (free tier works) Step 1: Create Supabase Table In your Supabase SQL Editor, run assets/templates/setup-supabase.sql. Step 2: Get Your Keys From Supabase Dashboard β†’ Settings β†’ API: Copy SUPABASE_URL (Project URL) Copy SUPABASE_ANON_KEY (anon public key) That's it β€” no service_role key needed. The anon key handles both reads (dashboard) and writes (push script) via table-specific RLS. Step 3: Edit the Dashboard 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: Deploy to Vercel mkdir mission-control && cd mission-control # Copy tier3-realtime.html as index.html vercel deploy --prod Step 5: Configure Push Script export SUPABASE_URL="https://YOUR_PROJECT.supabase.co" export SUPABASE_ANON_KEY="eyJ..." # Same anon key used by the dashboard

πŸ”„ Keeping It Fresh β€” Auto-Update Mechanism

The dashboard updates itself automatically. Here's how:

1. Cron Auto-Update (Every 30 Minutes)

Set up a cron job that collects data from OpenClaw APIs and pushes it: Create a cron job called "Dashboard Update" that runs every 30 minutes. It should: 1. Run `cron list` to get all cron job statuses, error counts, last run times 2. Run `sessions_list` to find any active sub-agents and their current tasks 3. Build the dashboard JSON from this API data 4. Push to Supabase (or git push for Tier 2) Data sources: Only OpenClaw built-in APIs (cron list, sessions_list). No local files are read. Action items and recent activity are added manually via the "Manual Update" command below. Sample cron configuration: name: Dashboard Update schedule: "*/30 * * * *" # Every 30 minutes model: sonnet # Fast model for quick updates prompt: | Update the Mission Control dashboard: 1. Run `cron list` to get job names, statuses, error counts, last run times 2. Run `sessions_list` to find active sub-agents and their tasks 3. Build JSON matching the dashboard schema from API data only 4. Push to Supabase or GitHub Do not read local files. Only use cron list and sessions_list data.

2. Real-Time Event Pushes

Beyond the periodic cron, the agent pushes updates immediately when significant events happen: βœ… Task starts or finishes ❌ Errors or failures πŸš€ Deploys complete πŸ“§ Important notifications arrive This means the dashboard reflects changes within seconds, not just every 30 minutes. How to enable: When you start a major task, tell the agent: After this deploy finishes, push an update to Mission Control.

3. Force Update Button

Every dashboard tier includes a πŸ”„ Update button in the header: Tier 2: Re-fetches dashboard-data.json immediately Tier 3: Re-fetches from Supabase immediately Resets the "Updated X ago" timer Shows loading spinner while fetching Use this when you want to confirm the latest state without waiting for auto-refresh.

The Result

The combination of periodic cron + real-time pushes + manual refresh keeps your dashboard accurate at all times. You'll always see what your agent is actually doing.

🚨 Action Required

Urgent items that need your attention. Highlighted at the top with priority badges (high/medium/low).

⚑ Active Now

What the agent is currently working on, with model name and duration.

πŸ“Š Products

Your product cards with live/testing/down status badges.

⏰ Cron Jobs

Table showing all scheduled jobs with status, last run time, and error counts. Click to expand error details.

πŸ“‹ Recent Activity

Timeline of recent events and accomplishments.

πŸ”΄ Live Indicator (Tier 3 only)

Green pulsing dot shows websocket is connected. Flash animation when data updates.

Requirements by Tier

TierTools NeededExternal AccountsEnv VarsTier 1NoneNoneNoneTier 2git, gh CLIGitHub (free)DASHBOARD_PINTier 3curlSupabase (free), Vercel (free)See below

Environment Variables

VariableRequiredTierPurposeDASHBOARD_PINNoAllPIN code for dashboard access (set directly in HTML config)SUPABASE_URLYesTier 3 onlyYour Supabase project URLSUPABASE_ANON_KEYYesTier 3 onlySupabase anon key β€” used for both dashboard reads AND push script writes Tier 1 needs zero env vars. Tier 2 needs only a GitHub repo. Tier 3 needs only SUPABASE_URL and SUPABASE_ANON_KEY β€” no service_role key required.

Permissions Used by OpenClaw

TierPermissionsWhyTier 1NoneCanvas is built into OpenClawTier 2execTo run git push to YOUR GitHub repoTier 3execTo run curl to YOUR Supabase project No other permissions are used. No read permission needed β€” this skill does not access local files.

Data Schema

The dashboard expects JSON in this format: { "lastUpdated": "2024-01-15T12:00:00Z", "actionRequired": [ { "title": "Review PR #42", "url": "https://github.com/you/repo/pull/42", "priority": "high" } ], "activeNow": [ { "task": "Deploying new feature", "model": "opus", "startedAt": "2024-01-15T11:45:00Z" } ], "products": [ { "name": "My App", "url": "https://myapp.example.com", "status": "live", "lastChecked": "2024-01-15T12:00:00Z" } ], "crons": [ { "name": "Daily Report", "schedule": "9:00 AM daily", "lastRun": "2024-01-15T09:00:00Z", "status": "ok", "errors": 0, "lastError": null } ], "recentActivity": [ { "time": "2024-01-15T11:30:00Z", "event": "βœ… Deployed v2.1.0 to production" } ] }

Field Reference

FieldTypeDescriptionlastUpdatedISO-8601When data was last refreshedactionRequired[].priorityhigh|medium|lowUrgency levelproducts[].statuslive|testing|downProduct healthcrons[].statusok|error|pausedJob status

Security & Privacy

This is an instruction-only skill β€” no executable code, no install scripts, no third-party dependencies.

What This Skill Does and Doesn't Do

βœ… Does❌ Doesn'tRender HTML dashboardsRead local files (no HEARTBEAT.md, no memory files, no source code)Push operational status to YOUR servicesSend data to third-party servicesRead OpenClaw APIs only (cron list, sessions_list)Store, log, or transmit credentialsUse YOUR Supabase/GitHub accountsRequire service_role or admin keys

Exactly What Data Gets Pushed (Tier 2 & 3)

The dashboard pushes ONLY these fields β€” nothing else: FieldExampleContains secrets?actionRequired[].title"Review PR #42"❌ NoactiveNow[].task"Deploying v2.0"❌ Noproducts[].name"My App"❌ Noproducts[].url"https://myapp.com"❌ No (public URLs only)products[].status"live"❌ Nocrons[].name"Daily Report"❌ Nocrons[].status"ok" / "error"❌ Nocrons[].lastError"timeout after 30s"❌ No (error messages only)recentActivity[].event"βœ… Deployed v2.1"❌ No Never pushed: passwords, API keys, tokens, file contents, database credentials, user data, or PII. The agent builds the JSON from operational status only β€” task names, timestamps, and status codes.

What Data the Agent Reads

The auto-update cron uses ONLY OpenClaw built-in APIs: SourceWhat it extractsSensitive?cron list (OpenClaw API)Job names, status, error counts❌ Nosessions_list (OpenClaw API)Active task labels, models❌ No No local files are read. The cron does not access HEARTBEAT.md, memory files, source code, or any other files on disk. Action items and recent activity are added manually by the user via the "Manual Update" command.

No Service Role Key Required

This skill does NOT require a Supabase service_role key. The anon key handles both reads and writes via table-specific RLS: The dashboard_state table allows anon SELECT and UPDATE (via RLS policy) The anon key can ONLY read/write this single table β€” it cannot access any other tables Worst case if someone gets your anon key: they can overwrite dashboard status data (not sensitive) The anon key is the same one already embedded in your client-side Supabase app

Row Level Security (Tier 3)

The provided SQL (setup-supabase.sql) configures table-specific RLS: SELECT: Allowed for anon β€” dashboard can read status UPDATE: Allowed for anon on dashboard_state table only β€” push script can update status Other tables: Unaffected β€” the anon key's existing RLS policies on all other tables remain unchanged No DELETE: Anon cannot delete the dashboard row

PIN Protection β€” Limitations

The client-side PIN prevents casual access, NOT determined attackers. For stronger protection: Tier 2: Make your GitHub Pages repo private (GitHub Pro) Tier 3: Use Vercel's password protection (Pro plan) or add Supabase Auth All tiers: The dashboard only contains operational status β€” no secrets to steal even if accessed

Files Included

agent-dashboard/ β”œβ”€β”€ SKILL.md # This file β”œβ”€β”€ assets/ β”‚ β”œβ”€β”€ tier1-canvas.html # Lightweight canvas version β”‚ β”œβ”€β”€ tier2-github.html # GitHub Pages + polling β”‚ β”œβ”€β”€ tier3-realtime.html # Supabase Realtime version β”‚ └── push-dashboard.sh # Push script for Tier 3 β”œβ”€β”€ assets/templates/ β”‚ β”œβ”€β”€ dashboard-data.json # Sample data structure β”‚ └── setup-supabase.sql # Supabase table setup └── references/ └── customization.md # Theme and layout customization

Dashboard shows "Disconnected" (Tier 3)

Check Supabase project is running Verify anon key is correct Ensure realtime is enabled on the table

Data not updating (Tier 2)

Check GitHub Pages is enabled Verify data/dashboard-data.json was pushed Hard refresh the page (Ctrl+Shift+R) Click the Force Update button to confirm data is stale

PIN not working

PINs are case-sensitive Check you're using the same PIN in HTML config

Cron status not accurate

Ensure your Dashboard Update cron is running (cron list) Check for errors in the cron output Manually run the update: "Update my Mission Control dashboard now"

Credits

Built for the OpenClaw community. MIT License.

Category context

Agent frameworks, memory systems, reasoning layers, and model-native orchestration.

Source: Tencent SkillHub

Largest current source with strong distribution and engagement signals.

Package contents

Included in package
3 Assets1 Docs1 Scripts1 Config
  • SKILL.md Primary doc
  • assets/push-dashboard.sh Scripts
  • assets/templates/dashboard-data.json Config
  • assets/templates/setup-supabase.sql Assets
  • assets/tier1-canvas.html Assets
  • assets/tier2-github.html Assets