13 KiB
mattpocock-skills
1.1.0
Minor Changes
-
#406
930a450Thanks @mattpocock! - Bring theask-mattrouter up to date with the full skill set. It now maps five skills it was missing:tdd(woven into the main flow as the red-green engineimplementdrives),diagnosing-bugs(a new "Something's broken" on-ramp — there was previously no route for a bug),domain-modelingandcodebase-design(a new "Vocabulary underneath" section), andgrilling(the shared interview primitive).prototypeis fleshed out as a standalone and the description broadens from "user-invoked skills" to "the skills". A maintenance rule is added toCLAUDE.mdso any future skill add/rename/remove or flow change triggers anask-mattre-check, beside the existing docs-page re-sync rule. -
#405
14c13c5Thanks @mattpocock! - Rename the in-progressreviewskill tocode-reviewand promote it fromin-progress/to theengineering/bucket. It now ships in the plugin, is listed in the top-level and Engineering READMEs (Model-invoked), and has a human-facing docs page atdocs/engineering/code-review.md. The/implementskill and docs now point at/code-review. -
#401
64d9f3dThanks @mattpocock! - Add a fourth Task ticket type to thedecision-mappingskill. Some blockers are neither a decision, a prototype, nor research — just literal manual work that has to happen before the discussion can move forward (moving data, signing up for a third-party service, provisioning access). The agent automates it where it can, otherwise hands the human a precise checklist, and records any resulting facts later tickets depend on. -
850873cThanks @mattpocock! - Make theprototypeskill model-invoked, so the agent can reach for it autonomously (and other skills can too). Its description is rewritten around the leading word prototype — throwaway code that answers a design question — with one trigger per branch (state/logic sanity-check, or UI exploration). -
#413
5c3c49dThanks @mattpocock! - Makewayfindercollaborative by moving the map off a local Markdown file and onto the repo's issue tracker.The map is now a single
wayfinder:mapissue whose tickets are its child issues — one shared URL the whole team can watch and comment on. Blocking, claiming (wayfinder:claimed), and the frontier query all use native tracker semantics, so a session loads the map at low resolution (Notes + one context pointer per closed ticket + Fog prose) and zooms into individual tickets on demand, instead of loading the whole map every time.Wayfinder stays tracker-agnostic: the per-tracker mechanics live behind a pointer in
docs/agents/issue-tracker.md, sosetup-matt-pocock-skillsnow seeds a "Wayfinding operations" section for GitHub, GitLab, and local-markdown. Absent that doc, Wayfinder defaults to local-markdown. -
#419
9272935Thanks @mattpocock! - Makewayfinder's no-duplication contract explicit: the map is an index, not a store.Adopting "index" as the leading word for the map's role fixes two duplication risks. The map now states up front that a decision lives in exactly one place — its ticket — so it only ever gists and links, never restates the answer (previously this rule was implied inside an HTML comment in the map-body template). And graduating fog into a ticket now clears the graduated patch from the Fog, so a suspected question can't linger in both places at once.
-
#412
4027ea6Thanks @mattpocock! - Rename thedecision-mappingskill towayfinder, invoked as/wayfinder."Decision map" was jargony and inaccurate — only one of the skill's four ticket types (Grilling) is actually a decision. The reframe charts a route through a foggy problem, resolving investigation tickets one at a time until the way to the goal is clear. This makes one coherent leading-word frame (fog of war / frontier / the map) instead of mixing an invented term on top of it.
Also a pruning pass: unified
node→ticket, bound "the frontier" to the unblocked tickets, dropped the duplicated "one question at a time" (owned by/grilling), and trimmed intro no-ops.
Patch Changes
-
#394
7a4c756Thanks @mattpocock! - Give the in-progresscode-reviewskill an always-on Fowler smell baseline on its Standards axis. A curated ~12 high-signal "Bad Smells in Code" (Mysterious Name, Duplicated Code, Feature Envy, Data Clumps, Primitive Obsession, Repeated Switches, Shotgun Surgery, Divergent Change, Speculative Generality, Message Chains, Middle Man, Refused Bequest) are inlined intoSKILL.mdas a fixed baseline alongside whatever the repo documents — not a new third axis. Two binding rules keep it safe: a documented repo standard overrides the baseline, and every smell is reported as a judgement call, never a hard violation. -
#393
e81f976Thanks @mattpocock! - Reshape thetddskill into reference-only. The red → green → refactor loop is anchored by leading words the model already holds, so the step-by-step Workflow was largely restating the loop and duplicating the horizontal-slicing anti-pattern. Dropped the Workflow and per-cycle checklist; folded their one durable idea — vertical slices / tracer bullets — into the Anti-patterns section and a short Rules-of-the-loop list. Introduced seam as the leading word for where tests go, collapsing the old Philosophy "public interfaces" prose and the Planning "confirm interface / behaviors" handshake into one rule: test only at pre-agreed seams, confirmed with the user before any test is written.Also dropped the refactor stage — TDD is now red → green, not red → green → refactor. Refactoring belongs to the review stage, not the implementation loop, so the refactor rule and
refactoring.mdwere removed (its home is thereviewskill). -
43ea088Thanks @mattpocock! - Add the tautological test anti-pattern to thetddskill. Tests whose assertion is recomputed the way the code computes it pass by construction and give zero confidence — distinct from the implementation-coupling anti-pattern already covered. Added as a peer at the same three sites: a Philosophy principle (expected values must come from an independent source of truth), a per-cycle checklist gate, and a BAD/GOOD example pair intests.md. -
e00eadbThanks @mattpocock! - Extend thetriageskill to triage external pull requests, treating a PR as an issue with attached code that runs through the same roles and state machine. PRs flow inline alongside issues (gated by a per-repo setup toggle), discovery surfaces only external PRs, the bug-only "reproduce" step is generalized into a single "verify the claim" step, and a redundancy check resolves already-implemented requests towontfixwithout polluting the out-of-scope knowledge base.setup-matt-pocock-skillsgains the PRs-as-a-request-surface toggle for GitHub/GitLab.
1.0.1
Patch Changes
d20ee26Thanks @mattpocock! - Make theteachskill reuse-first. Lessons are now built from reusable components in./assets/— stylesheets, quiz widgets, simulators, diagram helpers. Reuse is the default: the agent reads./assets/before authoring a lesson, builds from what's there, and extracts anything new and reusable into a component rather than inlining it.
1.0.0
Major Changes
-
47bde84Thanks @mattpocock! - Add theask-mattskill — a user-invoked router that points you at the right skill or flow for your situation.Breaking:
ask-mattroutes over the other user-invoked skills in this repo, so it expects them to be installed. -
47bde84Thanks @mattpocock! - Add the shared design skills and rewire existing skills onto them.- New
codebase-designskill — the deep-module vocabulary (module, interface, depth, seam, adapter) and the principles for putting a lot of behaviour behind a small interface. The language that previously lived inimprove-codebase-architecture/LANGUAGE.mdnow lives here, generalized for reuse across skills. - New
domain-modelingskill — actively build and sharpen a project's domain model, stress-testing terms against the glossary and keepingCONTEXT.mdand ADRs current. improve-codebase-architecturenow draws its architecture vocabulary from/codebase-designand its domain model from/domain-modeling.tddnow leans on/codebase-designfor interface-design guidance — its inlinedeep-modules.md/interface-design.mdnotes were removed in favour of the shared skill.grill-with-docsnow builds the domain model inline via/domain-modeling.
Breaking: these skills now depend on the new
codebase-design/domain-modelingskills, so you must install them too. - New
-
47bde84Thanks @mattpocock! - Remove thecavemanandzoom-outskills.cavemanwas a duplicate of another skill I was testing and was never meant to be public.zoom-outwent unused in practice, so it's been removed from the repo.
Breaking: both skills have been removed.
-
47bde84Thanks @mattpocock! - Rename thediagnoseskill todiagnosing-bugs.Breaking: invoke it as
/diagnosing-bugs— the old/diagnosename no longer exists. -
47bde84Thanks @mattpocock! - Replacewrite-a-skillwithwriting-great-skills.- Removed
write-a-skill. - Added
writing-great-skills(plus itsGLOSSARY.md) — a reference for writing and editing skills well: the vocabulary and principles that make a skill predictable, hunting no-ops down to the sentence level. - Exposed
grillingas a model-invoked skill — the reusable interview loop behindgrill-meandgrill-with-docs.
Breaking:
write-a-skillhas been removed; usewriting-great-skillsinstead. - Removed
Minor Changes
-
47bde84Thanks @mattpocock! - Add theresolving-merge-conflictsskill — a loop for resolving an in-progress git merge or rebase conflict. Standalone, with no dependencies on other skills. -
47bde84Thanks @mattpocock! - Rename the skill taxonomy from Commands / Skills to User-invoked / Model-invoked across the docs, and adddocs/invocation.mddefining the split: user-invoked skills are reachable only when you type them and exist to orchestrate; model-invoked skills can also be reached automatically when the task fits. A user-invoked skill may invoke model-invoked skills, but never another user-invoked one.
Patch Changes
47bde84Thanks @mattpocock! - Tighten thereviewskill: fail-fast ref check, single-sourced rules, and no-op cuts.