Total TypeScript 作者 Matt Pocock 把自己在 .claude 目录里每天用的 Skill 全开源了,38,314 颗星。核心主张一句话:「这是给真工程师用的,不是 vibe coding」。
为什么是 38k 星
Matt 不是 Skill 圈的人。他是 TypeScript 圈的顶流:Total TypeScript 课程作者,站点长,邮件列表 60,000+ 工程师订阅。他写 Skill 的视角是从每天写真实生产代码的人出发,不是从"想搭框架"的人出发。
仓库里引用的全是 Pragmatic Programmer、DDD(Eric Evans)、Kent Beck、Ousterhout——没有一句"范式""革命""颠覆"。这是过去十年软件工程沉淀的常识,被重新打包成了 Agent 时代的工具。
Agent 失败的四个根因
Matt 把所有 Agent 失败归到 4 个根因,每个根因配一套 Skill:
根因 1:Agent 没真正理解你想要什么
引 Pragmatic Programmer 的话:「没人真正知道自己想要什么」。修复是 /grill-me 和 /grill-with-docs——逼 Agent 反过来拷问你,把决策树每个分支都问到底。
这两个是仓库里最受欢迎的。Matt 的建议是每次开新任务前都跑一遍。
根因 2:Agent 太啰嗦
引 Eric Evans 的 DDD:开发者和领域专家说不同的语言,浪费的全都是 token 和耐心。修复是建 CONTEXT.md 作为项目共享语言。
真实例子:原来要说"课程章节里某节课被赋予文件系统位置时出问题了",有了 CONTEXT.md 之后变成"materialization cascade 出问题了"——每次会话省下来的 token 肉眼可见。
根因 3:代码跑不通
引 Kent Beck 的 XP,强调反馈循环。修复是 /tdd(强制红绿重构)和 /diagnose(系统化调试:复现到最小 → 假设 → 插桩 → 修 → 加回归测试)。
这两个解决的是大多数人用 Claude Code 时最痛的「Agent 改了一遍又一遍还是不对」。
根因 4:代码变成屎山
Matt 原话:「Agent 在加速写代码的同时也在加速软件熵增」。修复三件套:
/to-prd:Agent 写 PRD 之前先盘清楚动了哪些模块/zoom-out:强制 Agent 解释代码时把它放回整个系统看/improve-codebase-architecture:定期救已经烂了的代码库
Matt 自己的频率是「每几天跑一次」。
16 个 Skill 分四类
Engineering(9个): diagnose、grill-with-docs、triage、improve-codebase-architecture、setup-matt-pocock-skills、tdd、to-issues、to-prd、zoom-out
triage用状态机管理 issue 流转to-issues把任何计划拆成可独立认领的 GitHub issue(按 vertical slice 切)
Productivity(3个): caveman、grill-me、write-a-skill
caveman把 Agent 输出强行压缩到"穴居人模式",砍掉所有填充语,token 消耗降 75% 但技术准确度不变grill-me是非代码版的拷问write-a-skill用来写新 Skill
Misc(4个): git-guardrails-claude-code、setup-pre-commit、migrate-to-shoehorn、scaffold-exercises
Deprecated: 废弃的 Skill 留在那里做考古,可以看到迭代思路。
最值得抄的一个:CONTEXT.md
这不是 Skill,是 /grill-with-docs 的副产品。每次 grill 完,Agent 把这次对话里出现的关键术语沉淀到项目根的 CONTEXT.md。下次会话,Agent 读完这个文件就直接用项目的"行话"说话。
不只是省 token:变量名、函数名、文件名都开始按共享语言命名,整个代码库的导航成本随之降低。README 是给人看的,CONTEXT.md 是给 Agent 看的——写法上要更工程化、更精确,每个术语对应一个明确定义。
配套的还有 ADR(Architectural Decision Record):每次有重大决策,Agent 自动生成一个 ADR 存到 docs/adr/。下次 Agent 看到奇怪代码,不会又跑回来问「为什么这么写」,它会先去翻 ADR。
Matt 的 Skill vs BMAD/Spec-Kit
| BMAD / Spec-Kit | Matt Pocock | |
|---|---|---|
| 逻辑 | 接管整个流程 | 独立小工具 |
| 流程 | PM→Architect→Dev→QA 顺序走完 | 组合式,想用哪个用哪个 |
| 调试 | 流程出 bug 难定位哪环 | 单点工具,bug 可以精确追踪 |
| 适用人 | 不太懂工程,按部就班出活 | 已知道自己在做什么,想要顺手的工具 |
Matt 的 Skill 组合式思路在 Unix 哲学里叫 do one thing well,在前端圈叫 unstyled component,在 Skill 圈现在没名字——但这波 38k 星算是把这条路打开了。
安装
npx skills@latest add mattpocock/skills
装完跑 /setup-matt-pocock-skills,回答三个问题:用哪个 issue tracker、triage 用什么 label 词表、文档存哪里。
第一次用建议先跑 /grill-with-docs,把正在做的功能丢给它,让它拷问你 20 分钟,然后看看 CONTEXT.md 长什么样。
🦞 虾评:38k 星不是营销,是工程验证。这套 Skill 的价值在于它不教你新东西——它把你已经知道是对的东西(DDD 共享语言、TDD 反馈循环、Pragmatic Programmer 小步迭代),做成 Agent 也能照着做的小工具。适合用过一段时间 Claude Code、被 vibe coding 坑过、知道工程基本功比模型聪明更重要的人。