refactor: tighten the 10 worst skill-listing descriptions toward the shared budget - #2054
Conversation
…shared budget Issue #2022 option 2: mechanical tighten pass over the ten listing entries above 1,000 chars, trimming explanatory prose from each SKILL.md frontmatter description toward ~600-800 chars while preserving every single-quoted trigger phrase verbatim (skill-quality check 3 verified: zero lost triggers across all ten skills vs origin/main). Per-skill before -> after (entry chars): - source-control/babysit-loop: 1468 -> 931 - claude-config/audit-instructions: 1197 -> 948 - docs-hygiene/audit-derivability: 1161 -> 876 - session-flow/running-retro: 1116 -> 869 - session-flow/reconcile: 1072 -> 837 - adhd/clarify: 1058 -> 766 - architecture/improve: 1057 -> 900 - discipline/script-the-deterministic-work: 1054 -> 872 - planning/audit-answers: 1028 -> 899 - discipline/reuse-or-replace: 1022 -> 836 Total trimmed: 2,499 chars off the pooled full-install aggregate. Each touched plugin gets a patch version bump and a CHANGELOG entry: adhd 0.3.2, architecture 0.4.3, claude-config 0.25.1, discipline 0.10.2, docs-hygiene 0.9.6, planning 0.28.3, session-flow 0.20.1, source-control 0.48.1. Catalog and cheatsheet regenerated (no diff -- neither embeds skill frontmatter descriptions). Frontmatter contract verified against the current official Skills page (https://code.claude.com/docs/en/skills, fetched this session): description is the auto-invocation trigger surface, per-entry text truncates at 1,536 chars, and the shared listing budget defaults to 1% of the context window -- the page's own remedy is trimming description text at the source with the key use case first. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
|
Claude finished @kyle-sexton's task in 1m 15s —— View job Security review
Scope of this PR: 26 files, all either (a) one-line frontmatter Specific check performed: Also checked the Conclusion: no security issues found. This PR has no security-relevant surface — it's a mechanical, additive-only doc trim with no logic, workflow, config, or authorization changes. |
|
Claude finished @kyle-sexton's task in 4m 8s —— View job Review: PR #2054
What I checkedI diffed the PR commit against its direct parent ( Independently verified:
Not independently verified (author-claimed only): the pooled full-install aggregate (85,650 chars / 136 skills / 62 roots) from FindingOne inline comment on Everything else — trigger-phrase preservation, version/changelog hygiene, and scope — looks correct and mechanical, matching the PR's description of itself. |
|
Claude has reviewed this PR 3 times. The lane skips further automatic reviews after 5; deleting this comment resets the count. |
…pped Review finding on the tighten pass: the shortened description collapsed the fail-closed default (human-only until the tracked config adopts the lane), the anti-widening invariant (standing raises bind from the tracked seam only), the anti-spoofing clause on c3-this-run, and the independent frontier-tier resolver. All four restored in compact form; the trim keeps its savings elsewhere in the entry. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Finding accepted and fixed in 29babd4: all four invariants restored in compact form (fail-closed human-only default, tracked-seam-only standing raises, the c3-this-run anti-spoofing clause, and the independent frontier-tier resolver). The entry stays well under both the per-skill cap and its pre-trim size. |
…nsumers Review findings: (1) the new read cadence had no baseline on first entry — now defined as the consumer's own start time, advanced by each resume attempt, per-consumer and in-memory; (2) the cadence lived only in the contract and the two launch-prompt floors while the actual installed lane consumers (work-items work-loop + attend-queue, source-control babysit-loop) had no detection-record behavior — all three now carry it in their fail-open floor bullets. work-items 0.34.0 -> 0.34.1, source-control 0.48.0 -> 0.48.1. Note: source-control 0.48.1 may collide with in-flight #2054's bump from the same base (#1746 class); whichever merges second rebases and restacks. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…et-tighten # Conflicts: # plugins/claude-config/.claude-plugin/plugin.json # plugins/claude-config/CHANGELOG.md # plugins/docs-hygiene/CHANGELOG.md # plugins/session-flow/.claude-plugin/plugin.json # plugins/session-flow/CHANGELOG.md # plugins/source-control/CHANGELOG.md
|
Claude finished @kyle-sexton's task in 1m 8s —— View job Security review
Scope confirmed: 25 files, all either (a) one-line frontmatter Re-checked
C4/C5 unconditional-human-merge language is also preserved. This closes the gap the prior review flagged at the frontmatter (pre-invocation-decision) surface, and the skill body's full statement of the same contract is untouched. Other checked surfaces: each Conclusion: no security issues found. This PR has no security-relevant surface beyond the one prior finding, which is now resolved — it's a mechanical, additive-only doc trim with no logic, workflow, config, or authorization-boundary change. |
|
Claude finished @kyle-sexton's task in 3m 25s —— View job Review: PR #2054
What I checkedReviewed the 25 changed files (10 Independently verified:
Not independently verified (author-claimed): the pooled full-install listing-budget aggregate and Finding (inline)Left one inline comment on Everything elseTrigger-phrase preservation, scope (no unrelated files swept in), version/changelog hygiene elsewhere in the batch, and the babysit-loop safety-framing fix all check out. |
…tion The changelog entry still carried the original trim's 989; restoring the four merge-authority invariants grew the entry to 1,197 chars (net saving 271 from 1,468). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Fixed: the changelog now states 1,468 → 1,197 (measured on the current file; net −271 after the invariant restoration). The PR-body table row for babysit-loop carries the same correction caveat — the post-change aggregate quoted there (85,650) was measured before the restoration commit, so the true current aggregate is ~85,858; still ~10.7x, conclusion unchanged. |
|
Claude finished @kyle-sexton's task in 1m 17s —— View job Security review
Scope confirmed: 25 files — 10 one-line frontmatter Checks performed:
Conclusion: no security issues found. This PR has no security-relevant surface — it's a mechanical, additive-only documentation trim with no logic, workflow, config, or authorization-boundary change. (Non-security note, out of scope for this review but visible in the diff: |
|
Claude finished @kyle-sexton's task in 1m 32s —— View job Review: PR #2054 (re-review after synchronize)
What changed since the last reviewThis synchronize added exactly one commit, Independently verified
Everything elseAll findings from the prior two review rounds — trigger-phrase preservation across all 10 tightened descriptions, the babysit-loop safety-invariant restoration in |
|
Measured both ways in the worktree: the description is 1,197 characters (python len) and 1,199 UTF-8 bytes ( |
No linked issue
Summary
Executes issue #2022's option 2 (tighten the worst descriptions): a mechanical tighten pass over the ten skill-listing entries above 1,000 chars, trimming explanatory prose from each SKILL.md frontmatter
descriptiontoward the trigger phrases that earn their keep. The issue stays open — the operator records the option decision there separately.Fix
Tightened the ten worst
descriptionfields, preserving every single-quoted trigger phrase verbatim (skill-quality check 3's tracked surface):Pooled full-install aggregate (
check-listing-budget.sh plugins/*/skills, measured post-change on this branch): 85,650 chars over 136 listing-eligible skills across 62 roots (~10.7x the 8,000-char documented default). The issue's baseline (86,499 / 134 skills / 61 roots) was measured on an older main (19a3f7b3); on this branch's base (d894e3b3, which added skills since) the pre-change aggregate derives to 88,149, so this pass removes 2,499 chars. Still advisory-only and well over the default budget — this is exactly the no-structural-change remediation the issue's option 2 scoped.Each touched plugin gets a patch version bump + CHANGELOG entry: adhd 0.3.2, architecture 0.4.3, claude-config 0.25.1, discipline 0.10.2, docs-hygiene 0.9.6, planning 0.28.3, session-flow 0.20.1, source-control 0.48.1.
generate-catalog.mjs/generate-cheatsheet.mjsre-run: no diff (neither embeds skill frontmatter descriptions).Fresh-docs citation (frontmatter is a contract surface): verified against the current official Skills page, https://code.claude.com/docs/en/skills, fetched this session —
descriptionis the auto-invocation trigger surface ("Claude uses this to decide when to apply the skill"), the combineddescription+when_to_useentry truncates at 1,536 chars, the shared listing budget defaults to 1% of the model's context window (skillListingBudgetFraction/SLASH_COMMAND_TOOL_CHAR_BUDGET), and the page's own remedy is "trim thedescriptionandwhen_to_usetext at the source: put the key use case first."Verification
d894e3b3): extracted every single-quoted trigger phrase from each base description with the plugin's ownskill_frontmatter::extract_triggersandcomm -23-diffed against the new descriptions — zero lost triggers across all ten skills (including non-"Use when" quoted spans such as'autopilot','--merge c3-this-run','/planning:devils-advocate').check-skill.sh,CHECK_SKILL_SKIP_MARKDOWNLINT=1per the repo's own CI division of labor): all 10 touched skills PASS (rc=0). Only advisory WARNs remain, all pre-existing and body-level, untouched by this PR: soft line-count targets (babysit-loop 495, audit-instructions 398, running-retro 240, clarify 240) and two fresh-eyes-declaration heuristics (audit-instructions criteria.md, audit-derivability SKILL.md:122). Some gate runs completed after the branch commit landed, where check 3's default HEAD comparison is trivially clean — thecomm-based trigger verification above ran against origin/main explicitly, and CI'scheck-changed-skills.shre-verifies against the merge base.check-listing-budget.sh plugins/*/skillsre-run post-change — output quoted above.Related
Refs #2022 — this PR implements its option 2; the operator records the decision and closes the issue separately.
🤖 Generated with Claude Code