Skill name+description pairs are preloaded into every session, costing ~6,200 tokens across 39 skills before any skill is invoked. The authoring rules mandated that growth: skill-author:104 and description-quality.md:21 both required padding, while skill-author:102 (the deflating rule) had no FAIL condition behind it. Gates (blocking, no baseline file): - description 250 chars SUGGESTION / 400 FAIL, measured on the folded YAML value - body-only 600 words SUGGESTION / 900 FAIL, independent of the unchanged whole-file 2770-word / 500-line spec backstop - every boundary-clause routing target must resolve to a real skill or agent; catches skill-improve, neuledge-context and gitea-labels - agents take the description gates but deliberately no body gate; a test pins that absence Vale: DescriptionOpener widened to ^This\b, new CompositionNote rule banning architecture notes from descriptions. 10 hits, 0 false positives. Kyberforge's own four skills retrofitted: descriptions 3,364 -> 938 chars (-72%), bodies 8,306 -> 2,487 words (-70%), all via the apm-workflow dispatch pattern. Fixes the skill-improve dangling route and the agent-author misroute to manual review. Also fixes a pre-existing false positive where any line-initial 'read ' was flagged as interactive input, which had already caused two scripts to be rewritten around it. Refs: ADR-0020
1.5 KiB
1.5 KiB
assets/
templates/
Annotated agent definition templates copied by scripts/new-agent.sh when scaffolding a new agent.
All three scaffold the description in the three-part ADR-0020 shape — a Use when trigger clause, at most one capability clause, and a boundary clause — rather than the deleted action-verb opener, and each carries a delegate-don't-restate note in the body.
claude-code.md— Claude Code agent definition template (project/user scope). Includes all supported frontmatter fields (required and optional) with inline guidance comments andFILL IN:placeholders.copilot.agent.md.template— Copilot CLI agent definition template (CLI format, project/user scope). Excludes cloud/IDE-only fields (target,user-invocable,disable-model-invocation,mcp-servers) and Claude Code-only fields. Uses Copilot tool aliases (execute,read,edit,search,agent,web).apm-agent.md— Vendor-neutral APM agent definition template (plugin/APM scope). Frontmatter is limited to theapm-agent-allowlistsection ofagent-audit'sreferences/field-inventory.md— the authoritative list, read from there as data byagent-audit'svalidate.sh; this file deliberately does not restate it. Notoolsand no Claude-only knobs, sinceapm compilecopies frontmatter verbatim to both the Claude Code and Copilot CLI targets with no per-target integrator;disallowedToolsis scaffolded as an opt-in comment because a denylist, unlike thetoolsallowlist, survives that copy (ADR-0016 and its 2026-08-14 amendment).