00 / 00

Matt Pocock Skills 参考

Matt Pocock 工程 Skill 集的能力清单,以及当前不推荐默认安装通用流程 Skill 的取舍。

Matt Pocock,TypeScript 领域很有影响力的教育者,Total TypeScript 创始人,前 Vercel Developer Advocate。GitHub 上的 TypeScript 类型体操教学影响了全球一大批开发者。

他的 skills 仓库 直接来自自己的 .claude 目录,把软件工程习惯整理成 Claude Code、Codex 等 AI 编码工具能执行的工作流。

它不是只服务 TypeScript 的工具包,而是一套面向不同语言和框架的通用工程流程。

项目地址: github.com/mattpocock/skills 许可协议: MIT

Matt Pocock Skills 仓库展示图

图源:mattpocock/skills README,原项目使用 MIT License。下面主体基于原 README 翻译并做了少量 01MVP 语境整理。

当前不推荐完整安装这套 Skills,也不推荐把 grill-mediagnosing-bugstdd、通用 code review、架构审视或整套任务编排设为默认常驻。它们与当前大模型和项目规则的重叠较高。

当前取舍

这页保留为能力清单和历史参考,不是整套安装指南。

如果明确需要生成规格、拆工单或管理 issue,可以只安装 to-specto-ticketstriage。如果需要真实的 Git 操作拦截,可以单独评估 git-guardrails。这些能力有明确交付物或安全边界,不等同于让一组通用提示词接管整个开发流程。

普通的需求澄清、计划、排错、测试、评审和完成前验证,直接在当前任务中要求模型执行即可。更多判断见 通用流程 Skill

原仓库要解决的问题

Matt 在 README 中把这些 Skills 定义为对 Claude Code、Codex 和其他编码代理常见失败模式的修复,把软件工程基本功整理成可重复执行的流程。下面是原仓库的设计背景,不代表当前的默认安装建议。

失败模式 1:Agent 没做出你想要的东西

最常见的问题不是模型能力不够,而是对齐不足。你以为自己说清楚了,Agent 也以为它理解了,等结果出来才发现两边想的不是同一件事。

对应的修复方式是先进行一次盘问:

  • /grill-me:适合非代码计划、产品方案、需求想法。
  • /grill-with-docs:类似 grill-me,但会结合项目文档和代码上下文继续追问。

这两个 Skill 的作用是让 Agent 在动手前先把你的计划问透。越早把边界、异常路径、优先级和判断标准摊开,后面的返工越少。

失败模式 2:Agent 太啰嗦

很多项目一开始没有共同语言。业务方、开发者、Agent 各说各的词,Agent 只能用很长的句子解释一个其实很短的概念。

Matt 的修复方式是建立共享语言。/grill-with-docs 不只是盘问,它还会帮助项目沉淀领域词汇,把难解释的决策写进 CONTEXT.md 和 ADR。这样 Agent 后续能用项目自己的词说话、命名文件、理解边界,token 消耗也会更低。

一个共享语言文档的收益通常有三层:

  • 变量、函数、文件命名更一致。
  • Agent 更容易在代码库里导航。
  • 讨论复杂业务时可以用更短、更准确的词。

失败模式 3:代码跑不起来

当需求已经对齐,代码仍然不工作,问题通常出在反馈回路。Agent 写代码时如果没有类型检查、浏览器验证、测试结果和可复现步骤,就只能猜。

Matt 提供了两个核心修复:

  • /tdd:把红绿重构变成固定流程。先写失败测试,再写最少代码让测试通过,最后重构。
  • /diagnosing-bugs:把排错收敛成循环:复现、最小化、假设、加观测、修复、回归测试。

这类 Skill 的价值不是“帮你看报错”,而是防止 AI 直接凭直觉改代码。

失败模式 4:代码库变成一团泥

AI 让写代码速度变快,也会让软件熵变快。功能越堆越多,边界越来越糊,最后任何修改都牵一发动全身。

Matt 的修复方式是把代码设计放进日常流程:

  • /to-spec:把已经对齐的讨论整理成规格,再决定会碰到哪些模块和边界。
  • /improve-codebase-architecture:扫描代码库,找出值得加深模块、降低耦合、重新划边界的地方,并生成可视化报告。

这是 improve-codebase-architecture 在原仓库中的设计目的。

Skill 参考

原仓库把 Skills 按“谁来触发”分成两类:

类型含义适合什么
User-invoked只有你显式输入 /skill-name 时才触发编排型流程,例如盘问、生成 PRD、拆 issue、架构审视
Model-invoked你可以显式调用,Agent 也可以在任务匹配时自动调用可复用纪律,例如 TDD、排错、领域建模、代码审查

一个 user-invoked Skill 可以调用 model-invoked Skill,但不应该再调用另一个 user-invoked Skill。这样能避免流程互相嵌套,越跑越乱。

工程类

原仓库的工程类清单如下。

Skill类型用途
ask-mattUser-invoked不确定该用哪个 Skill 时,让它做路由判断。
grill-with-docsUser-invoked结合项目文档盘问方案,同时沉淀领域模型、CONTEXT.md 和 ADR。
triageUser-invoked按 issue 状态机做标签、优先级和处理流转。
improve-codebase-architectureUser-invoked扫描代码库,生成架构改进报告,再围绕你选中的问题继续盘问。
setup-matt-pocock-skillsUser-invoked首次配置 issue tracker、triage labels、文档目录等基础设置。
to-specUser-invoked把当前讨论整理成规格,并发布到 issue tracker;不再重新访谈,只综合已有上下文。
to-ticketsUser-invoked把计划或规格拆成可独立领取的工单,并标出阻塞关系。
implementUser-invoked按规格或工单实现,关键缝合处走 /tdd,收尾前做 /code-review
wayfinderUser-invoked把一次会话装不下的大工作拆成决策工单地图,一次只解开一个路口。
prototypeModel-invoked做一次性原型,用可运行终端程序验证状态/逻辑问题,或做多种 UI 方案对比。
diagnosing-bugsModel-invoked针对疑难 bug 和性能回归做有纪律的诊断循环。
researchModel-invoked基于高可信一手来源做调研,并把带引用的 Markdown 调研结果写入仓库。
tddModel-invoked用红绿重构方式做功能或修 bug,一次推进一个垂直切片。
domain-modelingModel-invoked主动完善领域模型,挑战术语、补边界场景,并更新 CONTEXT.md 和 ADR。
codebase-designModel-invoked建立深模块、窄接口、清晰边界和可测试设计的共同语言。
code-reviewModel-invoked从两个维度审查变更:是否符合工程标准,是否忠实实现原 issue 或 PRD。

通用效率类

这组不只服务代码,也适合计划、交接、教学和 Skill 写作。

Skill类型用途
grill-meUser-invoked对计划或设计做高强度访谈,直到关键分支都被问清楚。
handoffUser-invoked把当前对话压缩成交接文档,让另一个 Agent 能继续工作。
teachUser-invoked把当前目录当作有状态学习空间,分多次会话教学一个概念或技能。
writing-great-skillsUser-invoked写和改 Skill 的参考规范,帮助 Skill 更可预测。
grillingModel-invokedgrill-megrill-with-docs 背后的可复用盘问循环。

和 baoyu-skills 的对比

如果你同时关注内容创作和代码开发,可能会在这两个 Skill 集之间犹豫。其实不用,它们的定位完全不同:

mattpocock/skillsbaoyu-skills
面向谁开发者、产品技术负责人、需要长期维护代码的人内容创作者
解决什么对齐、调试、测试、架构、issue 流程、领域语言配图、排版、发布、多平台分发
代表 Skillgrill-me、grill-with-docs、diagnosing-bugs、tdd、to-specxhs-images、cover-image、slide-deck
底层理念软件工程最佳实践内容生产自动化

两者解决的问题不同,但不建议因此整套同时安装。内容产出按需选择 baoyu-skills;工程侧只选择有明确交付物或安全作用的单项。

使用建议

  • 不完整安装,不运行整套初始化路由。
  • 不把 grill-mediagnosing-bugstdd、通用 code review 或架构审视设为默认常驻。
  • 需要规格、工单或 issue 管理时,只安装 to-specto-ticketstriage
  • 需要 Git 安全拦截时,先确认 Skill 包含真实 Hook 或命令保护,再单独安装。

相关资源:AI 设计反模式速查

如果你用 AI 编程工具做 UI,下面这些是 AI 生成界面最常出现的问题。对照你的项目检查,大部分可一键修复。

最常见的 6 种 AI 痕迹

紫色渐变:蓝紫色渐变 + 深色背景 + 青色强调,已成“AI 生成”的代名词。替换为品牌色。 侧边条纹卡片:卡片一侧粗色块边框 + 圆角,AI 生成 UI 最明显标志。 卡片套卡片:无限嵌套的卡片导致视觉噪声过度。一般不超过 2 层嵌套。 通篇 Inter 字体:标题、正文、按钮全用 Inter,没有字体层级变化。 重复卡片网格:相同尺寸卡片(图标 + 标题 + 文本)无限重复,缺少变化。 AI 色板:紫色/蓝紫色渐变 + 青色强调,应替换为有意图的品牌色板。

核心规则

  • 排版层级:标题之间至少 1.25x 比例差,正文 ≥ 16px,行高 ≥ 1.5
  • 色彩:正文对比度 ≥ 4.5:1,不要用纯黑 #000 做背景
  • 布局:正文每行不超过 80 字符,卡片嵌套不超过 2 层
  • 动效:用指数缓动(ease-out),不用弹跳缓动
  • CTA:每页只有一个主要行动点,不要让所有按钮都一样强

完整 37 条反模式清单参考 Impeccable Style

下一步

这篇文档有问题?