Files
skills/skills/kvb-code-tune/SKILL.md
T
Kevin Veen-BirkenbachandClaude Opus 5.5 3c2f6c44b5 refactor(skills): cap every SKILL.md at 600 words and cut agent messages
Every loaded SKILL.md and every listed description is paid on every turn of every session, and every delivered message costs its recipient a full turn. scripts/budget.py gains SKILL_WORDS = 600, enforced by test_lock, and test_naming forbids a skill naming its own slash command; 53 descriptions and 10 body lines drop it. The 18 longest skills move details into 31 side files read only in their situation (organize's capacity, succession, peers, offices, relay and lineage; cleanup's docker, worktrees, execute and ask; code-tune, changelog, triage, dream, split and others), so all SKILL.md files shrink from 33866 to 26291 words without dropping a rule; an independent review of HEAD against the new text found no loss in 60 of 64 skills and three weakenings, now restored (WSJF re-estimates after an objective change, cleanup's volume checklist, essence's absolute dates).

The kvb-org-organize Peer protocol sends status that asks nothing to the news board, answers nothing that asks nothing, keeps messages terse, and lets light runs admit themselves in the operator's wording; the skills follow it (operator reads the register, relax and wakeup reply through the news, evening collects them there, wsjf asks only for missing estimates, cleanup and triage batch their questions). Skills that explore code ask the codebase-memory-mcp graph first, subagent briefs scale with the stakes and cap their answers, and the skills that need the full register or council tables call show --wide or list --long.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 17:07:23 +01:00

3.6 KiB

name, description
name description
kvb-code-tune Speed up CI, deploys, builds and hot paths without losing logic or coverage. Trigger on a job hitting its time budget or when asked where time goes.

One rule outranks every optimization: nothing that reduces logic, coverage or correctness counts as a speed-up.

Session limits

First run in a session: before measuring, invoke the kvb-think-listen skill with the questions of listen.md next to this file. Keep the answers for the session, never ask again, work only inside them; a candidate outside them becomes a proposal. Invoked by another skill (kvb-ci-triage, kvb-ci-observe) or an autonomous run: no questions; examine the handed-over log with the defaults (10 s floor per run, merge bar the kvb-org-split skill's 90 % confidence and under 5 % break risk, 60 minutes per delegated agent), ask only when an operator-only fact blocks.

Forbidden, whatever it saves

  • Dropping a test, a spec, a play, a drill or a verification pass.
  • Raising a timeout or budget so a slow thing fits instead of getting faster.
  • Swallowed failures, retry-until-pass, a soft skip, a narrowed assertion.
  • Trading error semantics, credential masking, concurrency safety or a lint's intent for speed. A per-item failure stays loud and names its item.

Testing less to shrink the clock is reported as a coverage cut for the operator to decide, never applied as a tuning.

Measure first

  • Never tune the unmeasured; read numbers from logs, not by eye (logs.md next to this file for profilers, build logs and gate tables).
  • Stream every run to a log file and compare runs by their logs; never re-run for a lost number.
  • Rank by fixed cost x count: one console boot, package-manager call or container exec times how often the run pays it: a 1 s boot paid 28 times beats a 60 s download paid once.
  • The baseline is the newest log of the current code; an older one may carry a step since replaced, and a saving against it is fiction.

Coordinate every cost cluster

Before investigating a cluster (one step, hot path or repeated call), run the kvb-org-organize Peer protocol with every session on this machine, not only the lineage. The first to claim cluster/<slug>, --work naming its log line and number, works it (between machines, the earliest announcement); a claim without a measurement does not count. Its kvb-org-rasci key result is <step> from <before> to under <after>, met only by the re-measurement. Someone earlier: post them your measurements and findings (${CLAUDE_SKILL_DIR}/../kvb-org-organize/scripts/news.py post --to <holder> "<text>"), take the next cluster, never build a second optimization. A claim ends with its release or the operator's reassignment.

Always check

On each measured hot path, whatever the operator picked, listed in the output even when clean:

  • Language and framework: the most efficient fit? Time in computation or inside the framework: read language.md next to this file.
  • Unnecessary recursion: a hot path recursing or a tool calling itself: read recursion.md next to this file.

The loop

  1. Measure; name the single biggest cost with its log line and number.
  2. Coordinate it; work it only when you identified it first.
  3. Read candidate.md next to this file; form one candidate, harden it with the kvb-think-dialectic skill, delegate, merge or propose, re-measure.
  4. Repeat until the next candidate is worth less than the run measuring it.

Output

One table, biggest saving first:

| Candidate | Before | After | Source | Verdict |

Rejected candidates stay with the reason they fell; proposals carry what would close their gap.