Vendor the engineering skills of https://github.com/mattpocock/skills into ai/skills/engineering, with their MIT license, and list them in AGENTS.md. The agent-specific metadata (agents/openai.yaml) is kept for other agents. Additional changes - Add scripts/update_mattpocock_skills.py to compare the copy with upstream by git blob hashes from a blobless clone and to update it on request. - Add tests/test_ai.py; it warns when the copy differs from upstream and caches the upstream hashes in the pytest cache for a day. - Document the engineering skills in docs/develop/ai.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
4.2 KiB
Engineering
Skills I use daily for code work.
User-invoked
Reachable only when you type them (Claude Code: disable-model-invocation: true; Codex: policy.allow_implicit_invocation: false in agents/openai.yaml).
- ask-matt: Ask which skill or flow fits your situation. A router over the user-invoked skills in this repo.
- grill-with-docs: Grilling session that also builds your project's domain model, sharpening terminology and updating
GLOSSARY.mdand ADRs inline. - triage: Move issues through a state machine of triage roles.
- improve-codebase-architecture: Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
- setup-matt-pocock-skills: Configure this repo for the engineering skills (issue tracker, triage labels, domain doc layout). Run once per repo.
- to-spec: Turn the current conversation into a spec and publish it to the issue tracker.
- to-tickets: Break any plan, spec, or conversation into a set of tracer-bullet tickets, each declaring its blocking edges, whether as text in a local file or as native blocking links on a real tracker.
- implement: Build the work described by a spec or set of tickets, driving
/tddat pre-agreed seams and closing out with/code-reviewbefore committing. - implement-spec: Implement a whole spec on one integration branch. Works the tickets as a task graph, running implementer subagents across the ready frontier for maximum concurrency, then closes out with
/code-review. - wayfinder: Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on the issue tracker, resolved one at a time until the way to the destination is clear.
- retro: Suggest improvements to the coding agent's environment (navigation, automated checks, coding standards, steering files, tooling) after a session, most severe first.
Model-invoked
Model- or user-reachable (rich trigger phrasing so the model can reach for them).
-
prototype: Build a throwaway prototype to answer a design question: a single shareable HTML file for state/logic, or several toggleable UI variations.
-
diagnosing-bugs: Disciplined diagnosis loop for hard bugs and performance regressions: build a feedback loop that goes red on this bug → minimise → hypothesise → instrument → fix → regression-test.
-
research: Investigate a question against high-trust primary sources and capture the findings as a cited Markdown file in the repo, run as a background agent.
-
tdd: Test-driven development with a red-green-refactor loop. Builds features or fixes bugs one vertical slice at a time.
-
domain-modeling: Actively build and sharpen a project's domain model by challenging terms, stress-testing with scenarios, and updating
GLOSSARY.mdand ADRs inline. -
codebase-design: Shared discipline and vocabulary for designing deep modules: small interfaces, clean seams, testable through the interface.
-
code-review: Two-axis review of the diff since a fixed point: Standards (does it follow the repo's coding standards, plus a Fowler smell baseline?) and Spec (does it faithfully implement the originating issue/spec?), run as parallel sub-agents.
-
pr: The shape a pull request body should take: a summary as the smallest visual that makes the change clear, before/after evidence that it works, and a merge-danger call (one-way or two-way door, plus blast radius).
-
wizard: Generate an interactive bash wizard that walks a human through steps only they can perform: provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover.