to-speclisted
Install: claude install-skill jacobrees-canoncore/CanonCore
Take the conversation and the codebase understanding you already have, and produce a spec. **Do not
interview the user** — synthesise what you know.
**This body is self-sufficient — run it without reading anything else.** The pointers name where an
argument lives, for when a step surprises you.
**Every path named here is relative to the CanonCore repository root.** In CanonCore that is the
working directory. In a Provider repository this skill arrived as a Claude Code plugin, so the root
is `${CLAUDE_PLUGIN_ROOT}` — and `${CLAUDE_PLUGIN_ROOT}/CLAUDE.md` and
`${CLAUDE_PLUGIN_ROOT}/CONTEXT.md` are the documents to write to, because neither is in the
repository you are working in.
## Process
1. **Explore the repository**, if you have not already. Use the vocabulary in `CONTEXT.md`
throughout the spec: an `_Avoid_` word used for the concept it is listed against is a finding,
and `node scripts/check-docs.ts` fails a build over one. Respect the ADRs in the area you are
touching, and surface a contradiction rather than overriding it silently
(`CONTEXT.md` → *Using these documents*).
2. **Sketch the seams you will test the feature at.** Prefer an existing seam to a new one, and the
highest seam you can. The fewer seams the better, and one is ideal. Where a new seam is needed,
propose it at the highest point available. **Check with the user that these match what they
expected**, before anything is written.
3. **Write the spec to a file, guard the file, then