Repository navigation
v3: rewrite wisdom as single-purpose skills in one plugin - #31
Merged
Merged
Conversation
v3 rewrites wisdom from scratch around three rules: one skill per purpose, magic words only where they help, and fewer tokens per session and per run. - Remove all 19 v2 plugins; the marketplace registers none until v3 skills land. - Rewrite README.md and add README.zh-TW.md: one `wisdom` plugin, 21 skills named after their single purpose, `smith` as the entry point, and a token budget for descriptions, bodies and references. - check-skill-spec: an empty SKILL.md glob now fails only when the marketplace still registers a plugin -- a repo with nothing to ship is not a layout the check has lost track of. - validate-fixtures: skip when no plugin exists to mutate. Both are stopgaps until the check suite is rewritten for the single-plugin layout. - Top-level marketplace version moves to 3.0.0. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
v3 ships every skill from one plugin, so the checks that assumed one skill per plugin -- and the v2 plugins their fixtures mutated -- are replaced, and the plugin lands with its first skill. - plugins/wisdom: plugin.json, LICENSE, marketplace entry at 3.0.0. - shortcut: greps only the `shortcut:` line of each candidate SKILL.md rather than reading whole files; searches user, project, then its sibling wisdom skills. - validate: plugin descriptions agree, magic words are unique across all skills, both READMEs list exactly the shipped skills with their words, `plugin:skill` references resolve, fences close. A README row for a skill not yet shipped warns while v3 is built skill by skill. - check-skill-spec: description <= 160 characters, body <= 100 lines (smith <= 150), per the README's token budget. - check-version-sync: drop the per-skill metadata.version -- one plugin, one version. - check-install-drift: read the shipped roster from skill directories. - validate-fixtures: rewritten against the new checks, 15 fixtures. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Reads cheapest-first, asks before hard-to-reverse choices, and writes a Context / Decisions / Units shape later skills read instead of rediscovering the project. validate now checks plugin:skill references only for plugins this marketplace ships, so file:line spans are not mistaken for one. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Baseline, test-first per unit type, verify beyond tests where they cannot reach, and report in a fixed five-line shape. Never commits. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Finds the command from PLAN.md, Makefile or the manifest, runs it once, and reports RESULT: PASS|FAIL|ERROR with each failure at file:line. No framework found is ERROR, never PASS. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Correctness, acceptance, tests, a security pass and quality, reported as a findings table and a VERDICT line that is always emitted, even at zero findings, so a caller can tell an empty review from one that never ran. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Commits only what is staged, follows the repo's template when it has one, never bypasses a failing hook, and adds an issue footer only when the work came from an issue. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Five kinds, nodes and edges listed from the source before drawing, a 100-column width limit and a split past 12 nodes. check-skill-spec's description message drops a v2 clause about catalogue copy. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2-4 real options compared on what the purpose needs, a recommendation, and a user checkpoint for hard-to-reverse choices; records the decision and what was deliberately left out. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Asks about gaps rather than filling them, and writes Goal / Non-goals / testable Requirements / Interfaces / Data model / Flow / Open questions. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Finds user-visible effects of the change, greps for stale mentions, updates every language copy, and verifies examples against the code. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Groups commits by conventional type, drops what users never see, and rewrites each kept subject for a user under Unreleased. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Gate on a clean, green branch; semver proposal confirmed by the user; a yes before anything leaves the machine; never moves a tag or force-pushes. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The reviewer-loop half of v2's pr-flow: fix test-first, push back with a reason, or ask the user; every reply and push is a checkpoint; never merges. Pre-authorises only read-only gh commands. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Maps the attack surface, traces untrusted input, confirms each candidate along its code path, and ends in a SECURITY line with counts by severity. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Per-ecosystem tool table; never installs a missing scanner, and reports INCOMPLETE rather than CLEAN when one could not run. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Observability, reliability, performance, deploy and rollback, capacity; ends in OPS: READY|CONCERN|BLOCK. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The one skill with no scope limit. Refuses to manufacture dissent on a subject too thin to read, and ends in GO|PAUSE|RECONSIDER. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Reformat only: keeps every data point, never writes files, and stops on an absent source rather than printing an empty table. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Result first, question before analysis, detail on request, one numbered topic at a time. Changes shape, never content; brief off ends it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Same memory/lingua.md schema as v2, so an existing preference carries over. The SessionStart hook moves into plugins/wisdom/hooks unchanged. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The entry point. Plans with plan + challenge, designs only when an interface or dependency is added, builds units in dependency batches (worktrees when parallel), routes review verdicts, runs only the checks the change calls for, and stops twice: plan approval and merge approval. It never fills in a silent skill's result and never tags or pushes unasked. With all 21 skills shipped, validate now fails a README row for a skill no plugin ships, and a fixture proves it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
CLAUDE.md is loaded in every session, and the v2 version described 19 plugins, per-skill versions and trigger-eval corpora that no longer exist. The rewrite keeps what an edit here needs -- layout, skill rules, checks, versions -- in 69 lines instead of 221. The Makefile eval comment drops its v2 case counts and cost figures. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Rewrites wisdom from scratch around three rules: one skill, one purpose, magic words only where they help, and fewer tokens. The 19 v2 plugins are replaced by one
wisdomplugin with 21 skills, andsmithstays the entry point.smith·plandesignspeccodetestreviewdocs·commitchangelogreleaseresolve·secureauditopschallenge·diagramcompactbrieflinguashortcutREADME.mdrewritten andREADME.zh-TW.mdadded.CLAUDE.mdis rewritten for v3 (221 → 69 lines).smith≤ 150), unique magic words, README tables that match exactly what ships, andwisdom:<skill>references that resolve.validate-fixturesis rewritten to match (16 fixtures).plugins/wisdom/hooks/unchanged, and thelingua.mdformat is the same, so existing preferences carry over.Why it uses fewer tokens
CLAUDE.md, loaded every sessionagent-elliscarried is now onlysecure).VERDICT:,RESULT:, …) instead of multi-field verdict blocks.PLAN.mdas shared memory: subagents are pointed at it instead of being handed restated context, and a finished unit shrinks to one row.Breaking changes
enabledPlugins, then installwisdom@wisdom. If both are enabled, lingua's hook runs twice.agent-hale→code,agent-ellis→review, …), and most magic words change.smithis kept.modelpinspr-flow(onlyresolveremains)Test plan
make test: all four checks passbash scripts/validate-fixtures: 16/16 passwisdom@wisdomin a fresh session and run a small task throughsmithshortcut🤖 Generated with Claude Code