reportslisted
Install: claude install-skill supermodo/skills
# reports — reports as web pages
> **Requires:** the sibling `protocols` skill (shared protocol masters) and a valid `skills.config.json` (create with the `config` skill). Missing either → halt with that exact pointer; never guess.
A THIN wrapper around a deterministic script. The page structure, the visual
block grammar and the report format all live in
`../protocols/references/reports.md`. Follow that master exactly; this file
adds only invocation and policy.
Read `../protocols/references/reports.md` and validate config FIRST per
`../protocols/references/config.md`.
**The HTML is a projection, never the source.** `.md` files stay the source of
truth — machine-readable, hashable, the medium other stages read. Deleting
every generated `.html` loses nothing; the next render recreates it byte for
byte.
## Invocation
`reports [--run <run-id> | --report <path.md>] [--open | --no-open]`
| form | behavior |
| --- | --- |
| `reports` | render everything under `.skills/supermodo/`, refresh the index, open the index |
| `--run <run-id>` | render that run's page, refresh the index, open the run page |
| `--report <path.md>` | render that one report, refresh the index, open it |
| `--open` / `--no-open` | override the configured open policy for this invocation |
All of it is the script:
```
node <skill-dir>/scripts/render.ts [flags]
```
Never hand-write HTML, never edit a generated `.html`, never render from
inside another skill's prose — every caller invokes this script.
##