From persona-dashboard
Add a visual dashboard to a persona — HTML dashboard, task tracking, and browser launcher. Use when the user asks to add a dashboard, set up a dashboard, create a task board, or wants visual status for a persona.
How this skill is triggered — by the user, by Claude, or both
Slash command
/persona-dashboard:installThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
An optional expansion pack that adds a visual HTML dashboard to any persona. Install this into a persona when the user asks for it — it's not included by default.
An optional expansion pack that adds a visual HTML dashboard to any persona. Install this into a persona when the user asks for it — it's not included by default.
Good candidates: personas with rich ongoing data, task tracking, or regular review cycles. Skip for: simple personas (one-off advice, single-skill tools).
Create in the persona root. This is the task tracking file the dashboard reads:
# Tasks
## Active
- [ ] **Task title** — context, due [date]
## Waiting On
- [ ] **Waiting on X** — since [date]
## Someday
## Done
- [x] ~~Completed task~~ ([date])
Copy the template from assets/dashboard.html in this skill's directory to the persona root. Then customize:
TASKS.md, user/profile.md, user/memory/MEMORY.md, CLAUDE.mdThe dashboard is a single-file HTML app served by a local Python HTTP server. It uses fetch() to load markdown files and renders them as formatted cards.
Create in the persona root:
#!/bin/bash
PERSONA_DIR="$HOME/.personas/{name}"
PORT={unique-port}
cd "$PERSONA_DIR"
pkill -f "python3 -m http.server $PORT" 2>/dev/null
python3 -m http.server "$PORT" &
sleep 0.5
# WSL-compatible browser open
if command -v explorer.exe &>/dev/null; then
explorer.exe "http://localhost:$PORT/dashboard.html"
elif command -v xdg-open &>/dev/null; then
xdg-open "http://localhost:$PORT/dashboard.html"
elif command -v open &>/dev/null; then
open "http://localhost:$PORT/dashboard.html"
fi
Make it executable: chmod +x open.sh
Use a unique port per persona to avoid collisions (pick from 7300-7399 range).
fetch() from the local HTTP serverAdapt tabs to the persona's domain:
| Domain | Suggested tabs |
|---|---|
| Finance | Priorities, Profile, Memory, System |
| Life system | Today, Briefing, Profile, Memory |
| Creative | Priorities, Content, Profile, Memory |
| Health | Today, Progress, Profile, Memory |
After installing the dashboard, update the persona's CLAUDE.md:
TASKS.md under the Skills or Important Rules section (e.g., "Update TASKS.md when tasks change")open.sh reference to Session Start (optional — "run bash open.sh to launch dashboard")Commit the new files: feat({name}): add dashboard expansion pack
npx claudepluginhub kickinrad/personas --plugin persona-dashboardManages tasks in TASKS.md with Active/Waiting/Someday/Done sections; add/complete/summarize tasks, extract from conversations, setup HTML dashboard.
Defines conventions for TASKS.md files: structure with optional sections, status symbols ([ ] todo, [/] ongoing, [x] done, [-] backlog), task descriptions, and testable acceptance criteria. Use for creating, editing, updating tasks or tracking progress.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.