Skip to content

Put the description contract in a skill, not in a reviewer's memory - #203

Closed
abernier wants to merge 1 commit into
rename-build-llmsfrom
describe-example-skill
Closed

Put the description contract in a skill, not in a reviewer's memory#203
abernier wants to merge 1 commit into
rename-build-llmsfrom
describe-example-skill

Conversation

@abernier

@abernier abernier commented Aug 14, 2026

Copy link
Copy Markdown
Member

llms.txt and the per-example documents are built and served correctly.
The content they carry is what fails: 40 of the 170 descriptions are
empty, and the other 130 run to a median of 56 characters that generally
name no technique. aquarium ships an empty line and the single tag
transmission, while the thing that makes the demo work -- a stencil
mask, useMask plus a backside MeshTransmissionMaterial -- is named
nowhere.

Fixing that is 170 acts of judgement, and judgement at that scale needs
its rules written down somewhere a reviewer can point at.
.claude/skills/describe-example/ holds them: English, 120 characters,
prose with no identifiers, naming the technique rather than the code --
because a line describing what the code does rots at the first refactor,
and one naming which technique is employed survives. Identifiers go to
apis, which is checkable against the example's own imports and is what
keeps the 120 characters comfortable.

Vendored here rather than installed, following the precedent the shadcn
skill already set: it encodes this repo's conventions, so it is reviewed
and versioned with them.

The skill proposes and waits. One example per run, written only after the
maintainer's ok, and the output committed -- git stays the source of
truth and no model runs in bin/, where a call would make the site build
non-reproducible, offline-hostile and cache-busting on every run.

explain.md carries the second mode. It deliberately does not read the
source and write: it runs teach in sub-agents, supplies the mission
they would otherwise interview a human for, caps the passes at three, and
keeps the workspace outside the repo -- lessons and learning records are
one person's learning state, not artefacts of a gallery of 170 shared
demos, so only the distillation and the glossary come back.

Ships no content change, so it can be reviewed as prose.

Co-Authored-By: Claude Opus 5 (1M context) noreply@anthropic.com


Stack created with GitHub Stacks CLIGive Feedback 💬


Closes #196. Position 2 of the stack, on top of #201 — which renames build-catalog.mjs to build-llms.mjs, the name this skill's prose uses.

pnpm check 5/5 · pnpm test:turbo 55/55.

🤖 Generated with Claude Code

`llms.txt` and the per-example documents are built and served correctly.
The content they carry is what fails: 40 of the 170 descriptions are
empty, and the other 130 run to a median of 56 characters that generally
name no technique. `aquarium` ships an empty line and the single tag
`transmission`, while the thing that makes the demo work -- a stencil
mask, `useMask` plus a backside `MeshTransmissionMaterial` -- is named
nowhere.

Fixing that is 170 acts of judgement, and judgement at that scale needs
its rules written down somewhere a reviewer can point at.
`.claude/skills/describe-example/` holds them: English, 120 characters,
prose with no identifiers, naming the technique rather than the code --
because a line describing what the code does rots at the first refactor,
and one naming which technique is employed survives. Identifiers go to
`apis`, which is checkable against the example's own imports and is what
keeps the 120 characters comfortable.

Vendored here rather than installed, following the precedent the `shadcn`
skill already set: it encodes this repo's conventions, so it is reviewed
and versioned with them.

The skill proposes and waits. One example per run, written only after the
maintainer's ok, and the output committed -- git stays the source of
truth and no model runs in `bin/`, where a call would make the site build
non-reproducible, offline-hostile and cache-busting on every run.

`explain.md` carries the second mode. It deliberately does not read the
source and write: it runs `teach` in sub-agents, supplies the mission
they would otherwise interview a human for, caps the passes at three, and
keeps the workspace outside the repo -- lessons and learning records are
one person's learning state, not artefacts of a gallery of 170 shared
demos, so only the distillation and the glossary come back.

Ships no content change, so it can be reviewed as prose.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Put the description contract in a skill, not in a reviewer's memory

1 participant