Matt Pocock Skills: Making AI Code Like a Real Engineer

Matt Pocock's Skills project is an engineering skill library for AI coding assistants (such as Claude Code). By modularizing the standard processes of software development, it solves the core pain point of unstable AI code generation quality. This project, built with just a few Markdown files, has gained 23,000 stars on GitHub and become an important practice in the AI-assisted development field.
Project Background: The Four Failure Modes of AI Programming
Traditional AI development tools tend to let "one smart Agent handle everything," but Matt Pocock took a completely opposite approach: first identify the patterns where AI actually fails, then design corresponding skills for each failure mode. The project defines four typical failure scenarios:
Agent didn't do what I want (AI didn't understand your intention) - There is a cognitive gap between the developer and AI, causing the output to deviate from expectations.
Agent is way too verbose (Output is too verbose) - AI generates a large amount of useless code or documentation.
The code doesn't work (The code doesn't run) - Lack of test feedback leads to unstable code quality.
We built a ball of mud (Architecture becomes a ball of mud) - After long-term iteration, the codebase loses clear structure.
This design philosophy abandons the optimistic assumption that "AI is smart enough to solve everything" and instead compensates for AI's uncertainty through structured processes.
Core Concept: Process Standardization and Skill Modularization
The value of the Skills project lies in breaking down the experience of "how to use AI for requirements analysis, design, and coding" into reusable skill plugins, allowing AI to follow a fixed, reliable routine rather than relying on luck. Each skill is a complete work script, including metadata in YAML format (name, description, trigger conditions) and specific execution steps.
Composability is another major feature of the project: the output of one skill can serve as input for the next. For example, write-a-prd generates a PRD document in a GitHub issue, and prd-to-issues then breaks down that PRD into an implementation plan. This enables teams to create customized workflows by chaining skills together.
Five Core Skills Form a Complete Work Chain
1. grill-me: Requirements Clarification Phase
This skill, just 11 lines long, makes AI ask questions one by one like an interviewer, ensuring both sides reach a consensus on requirements. Its key features include:
Ask only one question at a time to avoid information overload
AI provides suggested answers for confirmation, rather than just asking questions
Questions that can be automatically answered from the codebase do not disturb the developer
Some developers have shared that they were asked 16 questions when using this skill, and complex features can even go through 30-50 questions in a deep interview. This skill solves the problem of Claude Code tending to generate solutions prematurely, forcing adequate upfront communication.
2. to-prd: Produce Requirements Documents
Generate a formal Product Requirements Document (PRD) based on conversation history, including problem description, solution, user stories, implementation decisions, testing decisions, and things not to do. The document is automatically created and saved as a GitHub issue via the gh command.
3. to-issues: Vertical Slice Decomposition
Break down the PRD into independent executable small tasks, using the vertical slice (tracer-bullet) methodology rather than traditional front-end/back-end or module division. Each slice runs through the complete path from database to interface to testing, and clearly marks whether human intervention is needed. Tasks are sorted by dependency, with subsequent tasks waiting for prerequisites to be completed.
4. tdd: Test-Driven Development
Enforce a strict test-driven development process, not allowing implementation code to be written before failing tests exist. This ensures stable code quality and is suitable for projects that already have a testing culture.
5. improve-codebase-architecture: Architecture Optimization
Based on the domain language in CONTEXT.md and the Architecture Decision Records (ADR) in docs/adr/, find "deepening opportunities" in the codebase. Apply John Ousterhout's "deep module" principle (small interface hiding large implementation) to improve testability and AI navigability. This skill identifies shallow modules, tightly coupled components, and untested boundaries, and proposes refactoring suggestions.
Installation and Usage
The command format for installing a single skill is:
npx skills add mattpocock/skills skill=grill-me -y -gSkills uses a standardized structure, supports scoped package names (mattpocock/skills) and version tags. Once installed, they can be called by AI assistants that support the skills protocol.
Other Useful Skills
In addition to the core workflow, the project includes several auxiliary skills:
triage: Issue state machine management, suitable for label and priority assignment in team collaboration scenarios
zoom-out: When stuck in local details, helps re-examine the code's position in the overall architecture
write-a-skill: Guides users through the complete process of creating custom skills, including trigger conditions, execution steps, and output specifications
diagnose: Diagnose code that doesn't run, used in conjunction with the TDD skill
Limitations and Development
The main limitation of the current version is its tight coupling with GitHub: skills involving issue operations all hardcode the gh command. Teams using other project management tools like Linear or Jira need to fork and modify the code, although the official team has indicated that support for other platforms is under development (as of April 2026).
In April 2026, Matt Pocock updated the skill set, replacing /domain-model with /grill-me, integrating Domain-Driven Design (DDD) concepts, and generating documentation and ADRs synchronously during discussions. This shows the project is continuously evolving, gradually integrating more software engineering best practices.
Applicable Scenarios
This skill library is especially suitable for the following developers:
Already using AI coding tools like Claude Code, Cursor, etc., but feel that "AI can write code but cannot do engineering"
Want to establish a stable AI-assisted development process rather than relying on luck each time
Need to elevate the quality of AI-generated code to production level
Need to standardize the way AI is used in team collaboration
As one developer reflected after deleting most of the bloated skills: Matt Pocock's skill set embodies the minimalist philosophy—small, precise, clearly named primitives, with less surface area yet greater leverage.
Summary
Matt Pocock Skills is not simply about "letting AI generate code arbitrarily," but through requirements clarification, TDD, diagnosis, task decomposition, architecture optimization, etc., it makes AI programming closer to the way real engineers work. What it emphasizes is: engineering development with process, feedback, decomposition, and review, rather than mere "Vibe Coding" based on intuition. This is exactly what the AI-assisted development field needs most right now—not smarter AI, but better workflows.
Follow on Google
Add HeyBinyang as a preferred source on Google
If you'd like to keep finding my updates through Google, you can mark this site as a preferred source and make it easier to spot in relevant reading flows.
SHARE
Share
Share this article.