- Create
skills/<skill-name>/SKILL.md - Add frontmatter:
name,description - Include a Gear reference header (
> **Gears:** ...) - Include an Iron Law or core rule
- Include Red Flags and/or Rationalization Prevention table
- Stay under 200 lines
- Update
skills/engage/SKILL.mdSkill Routing table - Run
bash tests/run-tests.sh— all tests must pass
- Run tests before AND after changes
- Keep files under 200 lines
- Maintain
shifu:<name>cross-reference consistency - Don't change Iron Laws without evidence from pressure testing
- Token budget: Every paragraph must earn its place. If Claude already knows it, don't repeat it.
- One purpose per skill: A skill that does two things should be two skills.
- Gear adaptation required: Every skill must specify behavior per gear (G1/G2/G3).
- Iron Laws are non-negotiable: One per skill, stated early, enforced throughout.
bash tests/run-tests.shTests verify:
- Skill files have correct frontmatter
- No files exceed 200 lines
- No placeholder content (TBD, TODO, FIXME)
- All
shifu:<name>references resolve - Session-start hook outputs valid JSON
feat:— new skill or featurefix:— bug fix or content correctiondocs:— documentation onlytest:— test additions or fixesrefactor:— restructuring without behavior changechore:— tooling, CI, version bumps
- One skill per PR preferred
- Tests must pass
- Describe the problem solved, not just what changed
- Fill in all sections of the PR template