Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计提醒

agent-dashboardAgent 仪表板

Agent Skill

agent-dashboard 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

32,718

周安装

1,377

GitHub Stars

公开资料未说明

下载量

11,457
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:agent-dashboard(Agent 仪表板)
来源仓库:https://github.com/tahseen137/agent-dashboard
安装命令:
openclaw skills install agent-dashboard
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install agent-dashboard

简介

agent-dashboard 提供 OpenClaw 实时代理活动监控界面。

  • 适用于 OpenClaw 中远程查看任务进度与系统健康状态时使用。
  • 支持零配置启动与多级告警设置。agent-dashboard 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 数据来源于本地队列与心跳服务。
  • 建议配合 HTTPS 部署保障访问安全。

SKILL.md

name
agent-dashboard
description
>

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.

Quick Start

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:

  1. Gather current state (active tasks, crons, etc.)
  2. Generate a dashboard using the canvas tool
  3. 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:

  1. Create a repo:
   gh repo create mission-control --public --clone
   cd mission-control
  1. Copy the dashboard:
   mkdir -p data
   # Copy tier2-github.html to index.html
   # Copy assets/templates/dashboard-data.json to data/
  1. Edit index.html:

- Change YOUR_PIN_HERE to your chosen PIN

  1. Enable GitHub Pages:

- Go to repo Settings → Pages - Source: Deploy from branch main - Folder: / (root)

  1. 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:

  1. Replace YOUR_SUPABASE_URL with your project URL
  2. Replace YOUR_SUPABASE_ANON_KEY with your anon key
  3. 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.


Dashboard Features

🚨 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 Vars
Tier 1NoneNoneNone
Tier 2git, gh CLIGitHub (free)DASHBOARD_PIN
Tier 3curlSupabase (free), Vercel (free)See below

Environment Variables

VariableRequiredTierPurpose
DASHBOARD_PINNoAllPIN code for dashboard access (set directly in HTML config)
SUPABASE_URLYesTier 3 onlyYour Supabase project URL
SUPABASE_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

TierPermissionsWhy
Tier 1NoneCanvas is built into OpenClaw
Tier 2execTo run git push to YOUR GitHub repo
Tier 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

FieldTypeDescription
lastUpdatedISO-8601When data was last refreshed
actionRequired[].priority`high\medium\low`Urgency level
products[].status`live\testing\down`Product health
crons[].status`ok\error\paused`Job 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't
Render HTML dashboardsRead local files (no HEARTBEAT.md, no memory files, no source code)
Push operational status to YOUR servicesSend data to third-party services
Read OpenClaw APIs only (cron list, sessions_list)Store, log, or transmit credentials
Use 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"❌ No
activeNow[].task"Deploying v2.0"❌ No
products[].name"My App"❌ No
products[].url"https://myapp.com"❌ No (public URLs only)
products[].status"live"❌ No
crons[].name"Daily Report"❌ No
crons[].status"ok" / "error"❌ No
crons[].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❌ No
sessions_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

Troubleshooting

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.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

94.44%
按下载量换算10,820

安全审计

VirusTotal

可疑

ClawScan

可疑

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills