Render the interactive roadmap dashboard. The HTML is generated deterministically by roadmap.py render from the template at ~/.claude/library/templates/roadmap-artefact.html: this skill runs the command and opens the result; it writes no HTML itself. Same data in, same file out, so regenerated artefacts diff cleanly and can never drift from roadmaps.json.
Shared conventions (statuses, colour table): ~/.claude/library/references/roadmap-conventions.md.
Steps
- Check the format. Run
python3 "$HOME"/.claude/library/scripts/roadmap.py detect. Exit 3 = old simple format: stop and tell the user to runroadmap-migratefirst. Exit 2 = could not locate/parse; ask for the path. Proceed on exit 0. - Render. Run
python3 "$HOME"/.claude/library/scripts/roadmap.py render, adding--phase "$ARGUMENTS"when the user named a phase (required if several are active). Default output:{project_root}/docs/artefacts/roadmap-{slug}.html. On a validation-discrepancy note in the output, still render (the page shows a discrepancy banner) but include the discrepancies in your report. - Open and report.
openthe written file. Report: the file path; milestone and task counts plus done percentage (roadmap.py stats); the unblockedtodotasks (roadmap.py ready; surfaced directly, no need to open the file); any validation discrepancies.
Notes
- The dashboard refreshes automatically when
roadmap-maintainruns (recompute --render); invoke this skill for the first render or an on-demand refresh. - Collapsible sections (the milestone
<details>blocks) default to closed; the template owns this. Never re-addopenattributes, in the template or any generated file. - Sections, palette and behaviour live in the template. To change the dashboard's look, edit
library/templates/roadmap-artefact.html; to change status colours, change the canonical table (STATUS_STYLEinroadmap.py+ the conventions reference); never patch a generated file. - The artefact is generated in the CLI's own canonical form (tabs, single-line JSON payload), not Prettier's. A repo that runs Prettier (or another formatter) in a pre-commit hook or CI should exclude it: add
docs/artefacts/roadmap-*.htmlto.prettierignore, the same way.claude/roadmaps.jsonis already excluded, so regenerating the dashboard never fights the formatter. - The template already follows
~/.claude/library/references/artefact-conventions.md(theme-sourced palette, IBM Plex Mono/Sans pairing, the three-state light/dark/explicit-toggle contract with its masthead toggle control, collapsible milestone<details>closed by default). Any future template edit should stay inside that contract rather than drift from it — the template is the one place to fix a divergence, never a generated file.