Borrowing it
Nothing to install: this file belongs to dlupiak/claude-session-dashboard. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/dlupiak/claude-session-dashboard/main/.claude/skills/dashboard/SKILL.mdgit clone --depth 1 https://github.com/dlupiak/claude-session-dashboardWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dlupiak/claude-session-dashboard/dashboard)<a href="https://agentmods.dev/skills/dlupiak/claude-session-dashboard/dashboard"><img src="https://agentmods.dev/badge/skills/dlupiak/claude-session-dashboard/dashboard.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 3 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Rogue Agent · line 47 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
- medium Rogue Agent · line 47 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
- medium MCP Rug Pull · line 47 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00027 | $0.00466 |
| Opus 5 | $0.00014 | $0.00233 |
| Sonnet 5 | $0.00005 | $0.00093 |
| Haiku 4.5 | $0.00003 | $0.00047 |
Grade A, and why
dashboard scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Open Dashboard
Steps
1. Check if dashboard is running
Run: lsof -i :3000 -sTCP:LISTEN
- If output is non-empty → dashboard is already running, skip to step 4
- If empty → go to step 2
2. Check for updates
Check whether the dashboard is installed globally or via npx, then compare versions:
INSTALLED=$(npm list -g claude-session-dashboard --depth=0 --json 2>/dev/null | node -p "try{JSON.parse(require('fs').readFileSync(0,'utf8')).dependencies?.['claude-session-dashboard']?.version||''}catch(e){''}" 2>/dev/null)
LATEST=$(npm view claude-session-dashboard version 2>/dev/null)
echo "installed=${INSTALLED} latest=${LATEST}"
- If
INSTALLEDis empty → using npx (always fetches latest automatically, no update needed) - If
INSTALLEDis non-empty and differs fromLATEST→ update is available, go to step 3 - If versions match → skip to step 4
3. Install update
A newer version is available. Install it:
npm install -g claude-session-dashboard@latest
Report to the user: "Updated claude-session-dashboard from vX.X.X to vY.Y.Y."
4. Start the dashboard
If not already running, start in background:
nohup npx claude-session-dashboard --port 3000 >> "$HOME/.claude/dashboard.log" 2>&1 & disown
Wait for it to be ready:
npx wait-on http://localhost:3000 --timeout 15000 2>/dev/null || sleep 5
5. Open in browser
open http://localhost:3000
Report to the user that the dashboard is open at http://localhost:3000.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 63 lines · 27 tokens per session scan A d4eeb905c9ba
dashboard is a skill published in the GitHub repository dlupiak/claude-session-dashboard (67 stars, last pushed today), licensed MIT. It adds 27 tokens to every session and 466 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-01.
Other skills, from other repositories
shipkit-qa-visual
Visual QA using Playwright as a browser automation library. --setup installs Playwright and creates ui-goals.json; default mode writes inline scripts to navigate, screenshot, and report against goals.
shipkit-work-memory
Log session progress and save resume state. Infers from conversation and git. Triggers: 'log progress', 'session summary', 'checkpoint', 'save progress', 'end session'.
website-to-hyperframes
Capture a website and create a HyperFrames video from it. Use when: (1) a user provides a URL and wants a video, (2) someone says "capture this site", "turn this into a video", "make a promo from my site", (3) the user wants a social ad, product tour, or any video based on an existing website, (4) the user shares a…
webapp-testing
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs. Use when testing or debugging a local web app, verifying frontend behavior, or capturing browser screenshots and…
session-update
Use when the user says "update session", "log progress", "checkpoint session", or invokes /session-update — especially before /clear or handoff.
gcp-setup
Automates Google Cloud Console setup via browser. Use when the user wants to set up a GCP project, enable APIs, create service accounts, configure IAM, set up billing, configure OAuth, set up firewall rules, or deploy to Cloud Run/App Engine/GKE. Also use when the user says "set up GCP", "configure Google Cloud"…