Anthropic's skill guidance: keep SKILL.md under 500 lines, split into
reference files linked one level deep as it nears that. using-scribe was
478 and every new practice lands there.
- SKILL.md 478 -> 317 lines. It keeps orientation, one copy, the reflexes,
scope, the judge section, UI and the process-skill index, plus a "Read
these when the moment comes" list naming each file with its moment.
- projects.md: binding a non-git directory (.scribe) and project inception.
- writing-records.md: where a new rule goes, lesson growth, and notes that
carry their own check (reflex 10 keeps a pointer).
- missed-retrieval.md: the record-before-dial route, verbatim.
- Text moved, not rewritten, except for the seams and one cross-reference.
Tests:
- tests.helpers.skill_text reads SKILL.md plus its reference files. The
ownership registry, the miss-route and the verification tests use it, so
a topic stays owned by its skill whichever file holds it.
- The force test scans every skill .md on its own, since each file is read
on its own.
- New test_skill_structure: SKILL.md <= 350 lines, every reference file is
linked from SKILL.md, none links another, and one over 100 lines opens
with Contents. Each guard is shown to fail.
The plugin version is minted. That also clears 4fb53b8's red Plugin hooks
lane, which failed only because PACKAGING.md changed without a mint.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Spike #4389 read the spec, Claude's docs and a dozen servers: the field is
for how the tools fit together, and the field runs ~600-1,600 characters.
Ours sat at the 2,048 cap as a keyword index that also carried stance.
- JUDGE, REPORT and MISSED leave the index. They fire mid-work, not at
session start; using-scribe and reporting-back state them in full, and
`placement`/`report_back` cue reporting in-band. No skill text changes.
- The rest is rewritten as plain practices (1,503 chars) and keeps every
session-start marker the ownership registry pins.
- INSTRUCTIONS_BUDGET 2000 -> 1600; the three index markers are dropped
from the registry; the miss-route index test now checks that the index
keeps what_might_apply and stays off the route.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>