internal-teachlisted
Install: claude install-skill erclx/canon
# Teach
Read `canon/context/teach.md` for structure, the render pipeline, and the decisions behind the surface before editing.
`governance/rules/canon/661-teach.md` already routes a `.canon/teach/**` edit to both standards, and it ships to targets. This skill covers the implementation and the fixture, which that rule does not reach.
## Authoring a lesson
- The chrome is spliced, never authored. Read `references/lesson-chrome.md` before writing or editing any lesson file.
- Take the quiz option order `canon teach lesson` reports rather than choosing one. The verb draws it because an author told to vary a position varies it by judgment, and nothing downstream compares the two.
- Run `canon teach nav` after the body lands, and read the result rather than assuming the splice fired.
## Working against the fixture
- Develop against `examples/teach/00-fixture/`. Real workspaces hold real learning and sit outside this repository.
- Pass `--root examples/teach` to reach the fixture. A bare `canon teach list` reads the operator's live workspaces instead, so a claim about "the workspace" made without the flag is a claim about the wrong tree.
- `workspace.ts` resolves a root whose basename is already `teach` as that root rather than nesting a second `teach` below it. A path ending in `teach` therefore behaves differently from one that does not.
- Renders committed under `examples/` are disclaimed rather than gated, because nothing outside `examples/` depends on them staying current