技术1 阅读

Matt Pocock Skills:让 AI 编程像真正工程师一样工作

Matt Pocock 的 Skills 项目是一套面向 AI 编程助手(如 Claude Code)的工程化技能库,通过将软件开发的标准流程模块化,解决了 AI 代码生成质量不稳定的核心痛点。这个仅用几份 Markdown 文件构建的项目在 GitHub 上获得了 2.3 万颗星,成为 AI 辅助开发领域的重要实践。

项目背景:AI 编程的四大失败模式

传统 AI 开发工具倾向于让"一个聪明的 Agent 处理所有事情",但 Matt Pocock 采取了完全相反的策略:先识别 AI 实际失败的模式,然后为每种失败模式设计对应的技能。项目定义了四种典型失败场景:

  1. Agent didn't do what I want(AI 没理解你的意图)- 开发者与 AI 之间存在认知鸿沟,导致输出方向偏离预期

  2. Agent is way too verbose(输出过于冗长)- AI 生成大量无用代码或文档

  3. The code doesn't work(代码无法运行)- 缺少测试反馈,代码质量不稳定

  4. We built a ball of mud(架构变成泥球)- 长期迭代后代码库失去清晰结构

这种设计哲学放弃了"AI 足够聪明就能解决一切"的乐观假设,转而通过结构化流程来补偿 AI 的不确定性。

核心理念:流程标准化与技能模块化

Skills 项目的价值在于将"如何用 AI 做需求分析、设计、编码"的经验拆解为可复用的技能插件,让 AI 按照固定的靠谱套路工作,而不是依赖运气。每个技能都是一个完整的工作剧本,包含 YAML 格式的元数据(名称、描述、触发条件)和具体执行步骤。

项目的可组合性是其另一大特点:一个技能的输出可以作为下一个技能的输入。例如 write-a-prd 生成 GitHub issue 中的 PRD 文档,prd-to-issues 再将该 PRD 拆解为实施计划。这使得团队能通过串联技能创建定制化工作流。

五个核心技能构成完整工作链

1. grill-me:需求澄清阶段

这个仅 11 行的技能让 AI 像面试官一样逐个提问,确保双方对需求达成共识。它的关键特性包括:

有开发者分享在使用该技能时被问了 16 个问题,复杂功能甚至会进行 30-50 个问题的深度访谈。这个技能解决了 Claude Code 倾向于过早生成方案的问题,强制进行充分的前期沟通。

2. to-prd:产出需求文档

基于对话历史生成正式的产品需求文档(PRD),包含问题描述、解决方案、用户故事、实现决策、测试决策以及不做的事项。文档通过 gh 命令自动创建为 GitHub issue 保存。

3. to-issues:垂直切片拆解任务

将 PRD 拆解为独立的可执行小任务,采用垂直切片(tracer-bullet)方法论而非传统的前后端或模块划分。每个切片贯穿从数据库到界面到测试的完整路径,并明确标记是否需要人工介入。任务按依赖关系排序,后续任务等待前置任务完成。

4. tdd:测试驱动开发

强制执行严格的测试驱动开发流程,在失败测试存在之前不允许编写实现代码。这确保代码质量稳定,适合已有测试文化的项目。

5. improve-codebase-architecture:架构优化

基于 CONTEXT.md 中的领域语言和 docs/adr/ 中的架构决策记录(ADR),寻找代码库的"深化机会"。应用 John Ousterhout 的"深模块"原则(小接口隐藏大实现),提升可测试性和 AI 可导航性。该技能会识别浅层模块、紧耦合组件和未测试边界,并提出重构建议。

安装与使用

安装单个技能的命令格式为:

bash
npx skills add mattpocock/skills skill=grill-me -y -g

Skills 使用标准化结构,支持作用域包名(mattpocock/skills)和版本标签,安装后即可被支持技能协议的 AI 助手调用。

其他实用技能

除核心工作流外,项目还包含多个辅助技能:

局限性与发展

当前版本的主要限制是与 GitHub 的深度耦合:涉及 issue 操作的技能都硬编码了 gh 命令。使用 Linear、Jira 等其他项目管理工具的团队需要 fork 后修改代码,不过官方已表示对其他平台的支持正在开发中(截至 2026 年 4 月)。

Matt Pocock 在 2026 年 4 月更新了技能组合,用 /domain-model 替代 /grill-me,集成了领域驱动设计(DDD)概念,在讨论过程中同步生成文档和 ADR。这显示项目在持续演进,逐步整合更多软件工程最佳实践。

适用场景

这套技能库特别适合以下开发者:

正如一位开发者在删除大部分臃肿技能后的感悟:Matt Pocock 的技能集体现了极简主义哲学——小而精准、命名清晰的原语,更少的表面积却带来更大的杠杆效应。

总结

Matt Pocock Skills 不是简单的"让 AI 随便生成代码",而是通过需求澄清、TDD、诊断、任务拆解、架构优化等方式,让 AI 编程更接近真实工程师的工作方式。它强调的是:有流程、有反馈、有拆解、有复盘的工程化开发,而非仅凭感觉的 Vibe Coding。这正是当前 AI 辅助开发领域最需要的 — 不是更聪明的 AI,而是更好的工作流程。

SHARE

分享

分享这篇文章。