跳到正文
cccskills
免费在 GitHub 公开

live-dashboard

Build a dashboard that refreshes from email, websites, or local files. Track progress, highlight items needing attention, and retain a change history, with notifications when important changes or new issues appear.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Build self-updating dashboards from live sources.

查看安装方法

适用场景

  • Tracking application progress across email and websites
  • Reviewing deals or shipments in one place
  • Receiving alerts about important status changes
  • Keeping the last successful values when a source fails

包含的文件(1)

  • SKILL.md8.1 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Live Dashboard

Turn one sentence — "make a dashboard for our visa applications, update it daily from the email threads and the case-status site" — into a persistent, self-refreshing status page. The user describes what they want to see; you define the data contract, build a self-contained HTML dashboard, verify one live refresh, then schedule the recurring tick.

Setup runs once in the foreground; the recurring refresh runs as a cronjob tick. Installing this skill offers a daily all-dashboards sweep via /suggestions (the frontmatter blueprint).

When to Use

  • "Make a dashboard for <project/process> and keep it updated."
  • "I want one place to see the status of <deals / applications / bugs / shipments>."
  • "Track <thing> across my email and <website> and show me where it stands."
  • "Show me the <slug> dashboard." (re-render/preview an existing one)
  • A cron tick fires for an existing dashboard (steps 5-7).

Don't use for: one-off status questions (answer directly), price/availability thresholds on a single item (use product-price-monitor), or company news tracking (use competitor-news-monitor).

Prerequisites

  • At least one source connector the dashboard will read from: email/calendar via himalaya or google-workspace, websites via web_extract or browser_navigate, local files via read_file. If none is configured, renegotiate the sources in step 1 before writing any artifact.
  • cronjob for the recurring tick.
  • Optional: the desktop_preview tool (Hermes desktop app sessions). When it is in the toolset, dashboards render in the in-app preview pane; otherwise the user is given the file path.

Procedure — Setup (foreground, once)

1. Define the dashboard contract

From the user's sentence, pin down: the dashboard's purpose in one line, the entities being tracked (rows), the fields per entity (columns/indicators), what "needs attention" means, the sources each field is read from, and the refresh cadence. Ask about anything ambiguous — a dashboard that tracks the wrong grain is worthless. Done when every field on the dashboard names the source it will be read from.

2. Verify each source with one live read

For each source, do one bounded foreground read now: email/calendar via the connector skills (himalaya, google-workspace), websites via web_extract or browser_navigate, local files via read_file. Record what was actually retrievable — auth walls, missing permissions, or empty results surface here, not on the first scheduled run. Drop or replace sources that fail. Done when every field's source returned real data or was explicitly renegotiated with the user.

3. Build the dashboard artifact

Write two files under the Hermes home directory's dashboards/<slug>/ (the same directory that holds config.yaml; never assume a fixed location):

  • dashboard.json — the contract plus current state: purpose, entities, per-field values, per-field source + retrieval timestamp, a needs_attention list, and a change log (append-only, most recent first).
  • index.html — a single self-contained HTML page (inline CSS, no external requests) rendering the state: a header with purpose and last-updated time, a "Needs attention" section on top, the entity table, and the recent-changes list. Regenerate it from dashboard.json on every refresh; never hand-edit HTML state.

Populate both from the step-2 reads, then show the result (step 8). Done when the page renders the live data and every value on it carries a retrieval timestamp in dashboard.json.

4. Schedule the refresh

Only after step 3 succeeded, schedule the tick. If the daily all-dashboards sweep from /suggestions is already scheduled and its cadence suits, it will pick this dashboard up — say so and stop. Otherwise create a per-dashboard job whose prompt names the state file:

cronjob(action="create",
        schedule=<cadence from the contract, e.g. "0 8 * * *">,
        prompt="Load the live-dashboard skill and run the refresh tick for the dashboard at <absolute path to dashboards/<slug>/dashboard.json>.",
        deliver=<user's destination>)

Pick a cadence that respects source rate limits. Done when a job covering this dashboard exists and its prompt names the state-file path (or the sweep).

Procedure — Tick (each scheduled run)

5. Re-read sources and diff

Load dashboard.json (for the sweep: every dashboards/*/dashboard.json, one at a time), re-read each field from its named source, and compute a field-level diff against the stored state. A failed source read means unknown state: keep the last good value, mark the field stale with the failure time, and never overwrite good data with an error. Done when every field is either updated, unchanged, or explicitly marked stale.

6. Update state and re-render

Apply the diff to dashboard.json: update values and timestamps, append material changes to the change log, and recompute needs_attention against the contract's attention rules. Regenerate index.html from the updated state, then show the result (step 8). Done when the JSON and HTML agree and the change log entry for this run exists (or the run is recorded as no-change).

7. Deliver on material change, else stay silent

If the diff contains material changes or new needs-attention items, deliver a short summary: what changed, what needs attention, and where the dashboard is. Otherwise respond with [SILENT] — no "still watching" noise unless the user asked for a periodic digest. Done when delivery matches the diff.

Procedure — Show the dashboard (after every build or re-render, and on request)

8. Render where the user can see it

  • Desktop/GUI session (desktop_preview is in the toolset): desktop_preview(action="open", url=<absolute path to index.html>, label=<dashboard purpose>) so the page renders live in the preview pane beside the chat; re-open after each re-render so the pane shows the new state.
  • Any other session (CLI, messenger, cron tick without a GUI): report the absolute path of index.html and offer to open it where the platform allows.

Done when the user has either seen the rendered page or been told exactly where it lives.

Pitfalls

  • Building the page before verifying the sources — auth failures then surface on an unattended run.
  • Overwriting last-known-good values with an error page or empty read.
  • Rendering state into HTML only — dashboard.json is the source of truth; HTML is a projection.
  • Alerting on every refresh instead of on material change.
  • Tracking the wrong grain (per-thread when the user thinks per-application).
  • Hardcoding the Hermes home path — resolve it from the running install (the directory holding config.yaml) and write absolute paths into cron prompts.
  • Calling desktop_preview outside a desktop session — it is only in the toolset for GUI sessions; fall back to the path.

Verification

  • Every dashboard field names its source, and each source passed one foreground read before scheduling.
  • dashboard.json and index.html exist and agree; every value carries a retrieval timestamp.
  • Failed reads marked fields stale without destroying last-known-good state.
  • Ticks deliver only on material change; no-change runs were [SILENT].
  • The change log replays the dashboard's history from the state file alone.
  • The dashboard was shown in the preview pane (desktop) or its path reported (elsewhere).

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

1password

免费

Set up the 1Password CLI and use stored passwords or API keys in commands and configuration templates. Choose an authentication method, retrieve secret references, and pass credentials to processes through environment variables.

中文简介正在准备中。当前显示英语简介。

  • Installing and configuring the 1Password CLI
  • Running commands with stored API keys
  • Filling configuration templates with stored secrets
NousResearch/hermes-agent25.5万2026年10月18日 更新

Build an Excel workbook linking the income statement, balance sheet, and cash flow statement. Populate historical figures, create formula-based forecasts, compare scenarios, and check that balances and cash totals agree across all three statements.

中文简介正在准备中。当前显示英语简介。

  • Populating a financial model template with historical data
  • Building linked forecasts across three financial statements
  • Comparing base, upside, and downside scenarios
NousResearch/hermes-agent25.5万2026年10月18日 更新

Adapt existing PyTorch training scripts to use multiple GPUs or machines with limited code changes. The skill guides configuration, launch commands, mixed precision, which uses lower-precision numbers, and DeepSpeed or FSDP settings for distributing training work and memory.

中文简介正在准备中。当前显示英语简介。

  • Move a single-GPU training script to multiple GPUs
  • Configure mixed precision training
  • Set up DeepSpeed or FSDP to reduce memory use
NousResearch/hermes-agent25.5万2026年10月18日 更新

Configure Hermes to run AI models through Actual Computer on your own hardware. Set up either the hosted relay or a local connection, select models, verify responses, and troubleshoot request errors or empty output.

中文简介正在准备中。当前显示英语简介。

  • Connecting Hermes with an Actual inference key
  • Running models through a local Actual daemon
  • Downloading and loading local models
NousResearch/hermes-agent25.5万2026年10月18日 更新

Test an app from the perspective of a frustrated, less technical user. Find confusing steps and barriers, separate actionable usability problems from personal complaints, and produce screenshots, suggested fixes, and prioritized tickets.

中文简介正在准备中。当前显示英语简介。

  • Reviewing usability before a launch or demo
  • Checking the experience of a new user
  • Finding friction in signup and subscription flows
NousResearch/hermes-agent25.5万2026年10月18日 更新

Resolve Git merge conflicts between two agents by comparing both changes and their stated goals. Combine compatible work, explain choices where designs differ, and verify the merged result with project builds or tests.

中文简介正在准备中。当前显示英语简介。

  • Resolving conflicts between branches edited by two agents
  • Integrating changes from parallel worktrees
  • Reviewing reasons for conflicting design choices
NousResearch/hermes-agent25.5万2026年10月18日 更新

查看 NousResearch 的全部技能

报告此技能的问题