Matt Pocock 公开的自用 AI 代理 Skill 集——不做 Vibe Coding,用经典软件工程纪律驾驭编码代理。小而美、可组合、模型无关。
GSD、BMAD、Spec-Kit 等方案试图"拥有整个流程",代价是控制权旁落、流程出 bug 难排查。本仓库反其道而行:每个 Skill 只做一件事,嵌入你现有的工作流。
整个仓库的 Skill 只按一条轴分类——"谁能触发它"。这条边界保证了:编排权永远在你手里,纪律却能自动生效。
/grill-me 这样的命令才运行disable-model-invocation: true/grill-me/to-spec/to-tickets/implement/triage/wayfindertdddiagnosing-bugscode-reviewcodebase-designresearchREADME 中作者开宗明义:这套 Skill 是为修复他在 Claude Code、Codex 等代理上反复见到的四类失败而生。
软件开发最常见的失败是错位——你以为对方懂了,看到成果才发现完全不是那回事。AI 时代同样如此:你和代理之间有沟通鸿沟。
/grill-me /grill-with-docs(每次改动前都用)代理被丢进项目,边干边猜行话,用 20 个词表达 1 个词就能说清的事——会话臃肿、token 浪费。
grill-with-docs domain-modeling对齐了需求,代理还是产出垃圾?问题在反馈环——没有对代码实际运行效果的反馈,代理就是在盲飞。
tdd diagnosing-bugs(模型自动触发)代理极大加速编码,也以前所未有的速度加速软件熵增。代码库复杂度失控。
codebase-design improve-codebase-architecture(作者建议每隔几天跑一次)把 41 个 Skill 按真实工程流程串起来——这就是作者自己的日常开发方式。
实线 chip = 用户调用(输入 / 命令触发);虚线 chip = 模型自动触发(代理判断任务匹配时自行加载)。点击任意 chip 可跳转到下方卡片。
按仓库的六个分组桶组织。蓝标 = 用户调用(输入 / 命令触发);紫虚线标 = 模型自动触发。每个卡片附英文原始描述。
日常代码工作的核心桶——作者每天在用、对外主推的一组
/ask-matt⌨ 用户调用 /路由器:描述你的处境,它告诉该用哪个 Skill 或流程——本仓库的入口向导。
Ask which skill or flow fits your situation. A router over the skills in this repo.
/grill-with-docs⌨ 用户调用 /招牌 Skill 的工程版:拷问式访谈打磨计划,同时顺手沉淀文档——更新 CONTEXT.md 术语表与 ADR 决策记录。
A relentless interview to sharpen a plan or design, which also creates docs (ADRs and glossary).
/triage⌨ 用户调用 /工单分诊状态机:分类 → 验证 → 打标签,推动 issue 和外部 PR 在分诊角色间流转。
Move issues and external PRs through a state machine of triage roles.
/improve-codebase-architecture⌨ 用户调用 /屎山救援:扫描代码库的“深模块”改造机会,生成可视化 HTML 报告,再针对你选中的方向展开拷问。作者建议每隔几天跑一次。
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
/setup-matt-pocock-skills⌨ 用户调用 /每个仓库运行一次的配置器:设定 issue 追踪器(GitHub/Linear/本地)、分诊标签词汇、文档存放位置——使用其他工程 Skill 的前提。
Configure this repo for the engineering skills — issue tracker, triage labels, docs layout.
/to-spec⌨ 用户调用 /把当前对话直接合成为规格文档并发布到 issue 追踪器——不做访谈,只提炼已经讨论过的内容;生成前会追问你涉及哪些模块。
Turn the current conversation into a spec and publish it to the project issue tracker.
/to-tickets⌨ 用户调用 /把计划、规格或对话拆成一组“曳光弹”工单,每个工单声明自己的阻塞依赖边——写成文本或追踪器上的原生阻塞链接。
Break a plan, spec, or conversation into tracer-bullet tickets, each declaring its blocking edges.
/implement⌨ 用户调用 /按规格或工单集实现功能:在预先约定的接缝处驱动 /tdd,提交前以 /code-review 收尾。
Implement a piece of work based on a spec or set of tickets.
/wayfinder⌨ 用户调用 /规划超过单个代理会话容量的大型工作:拆成 issue 追踪器上的“调查工单共享地图”,逐个解决直到通往目标的路径清晰。
Plan a huge chunk of work as a shared map of investigation tickets on the issue tracker.
/prototype🤖 模型自动触发用一次性原型回答设计问题:状态/逻辑问题做可运行的终端程序,UI 问题做多个可一键切换的迥异变体。
Build a throwaway prototype to answer a design question.
/diagnosing-bugs🤖 模型自动触发疑难 Bug 与性能回退的诊断循环:复现 → 最小化 → 假设 → 插桩 → 修复 → 回归测试。
Diagnosis loop for hard bugs and performance regressions.
/research🤖 模型自动触发针对高可信一手资料调查问题, findings 落成仓库内带引用的 Markdown 文件,以后台代理方式运行。
Investigate a question against high-trust primary sources, capture findings as a cited Markdown file.
/tdd🤖 模型自动触发测试驱动开发:红-绿-重构循环,一次实现一个垂直切片,内含好测试与坏测试的判别指导。
Test-driven development with a red-green-refactor loop.
/domain-modeling🤖 模型自动触发主动构建和打磨项目领域模型:对照术语表挑战用词、用边界场景压测、就地更新 CONTEXT.md 与 ADR。
Build and sharpen a project's domain model — challenge terms, stress-test with edge cases.
/codebase-design🤖 模型自动触发“深模块”设计纪律与共享词汇:小接口背后承载大行为、落在干净的接缝上、可仅通过接口测试。
Shared discipline and vocabulary for designing deep modules.
/code-review🤖 模型自动触发双轴审查 diff:规范轴(仓库标准 + Fowler 坏味道基线)与规格轴(是否忠实实现原始 issue/PRD),由并行子代理执行互不污染。
Two-axis review: Standards and Spec, run as parallel sub-agents.
/resolving-merge-conflicts🤖 模型自动触发逐块解决进行中的 git merge/rebase 冲突,每个块追溯到冲突双方的原始意图来解决,绝不 --abort。
Work through a merge/rebase conflict hunk by hunk, resolving by intent — never --abort.
通用工作流工具,不限于代码场景
/grill-me⌨ 用户调用 /本仓库最出圈的 Skill:无情拷问你的计划或设计,直到决策树的每个分支都有答案。每次改动前都应该用。
A relentless interview to sharpen a plan or design.
/grilling🤖 模型自动触发grill-me 的模型自动触发版:当代理判断当前计划/决策/想法需要打磨时,自动开始拷问。
Grill the user relentlessly about a plan, decision, or idea — model-invoked.
/handoff⌨ 用户调用 /把当前对话压缩成交接文档,让另一个代理(或下一个会话)无缝接手继续工作。
Compact the conversation into a handoff document for another agent to pick up.
/teach⌨ 用户调用 /跨多个会话教你一项新技能或概念,教学内容基于当前工作区的真实代码。
Teach the user a new skill or concept, within this workspace.
/writing-great-skills⌨ 用户调用 /写好 Skill 的参考手册:让 Skill 真正生效的词汇与原则——写自己的 Skill 前必读。
Reference for writing and editing skills well.
保留但使用频率低的工具型 Skill
/git-guardrails-claude-code🤖 模型自动触发配置 Claude Code hooks 拦截危险 git 命令(push、reset --hard、clean、branch -D 等),给代理装上护栏。
Set up Claude Code hooks to block dangerous git commands.
/migrate-to-shoehorn🤖 模型自动触发把测试文件中的 as 类型断言迁移到 @total-typescript/shoehorn(更安全的测试数据构造方式)。
Migrate test files from `as` type assertions to @total-typescript/shoehorn.
/scaffold-exercises🤖 模型自动触发创建教学练习目录结构:章节、题目、答案、讲解四件套。
Create exercise directory structures with sections, problems, solutions, explainers.
/setup-pre-commit🤖 模型自动触发配置 Husky pre-commit 钩子:lint-staged(Prettier)+ 类型检查 + 测试,提交前自动把关。
Set up Husky pre-commit hooks with lint-staged, type checking, tests.
绑定 Matt 个人环境的 Skill,参考价值大于直接使用
/edit-article⌨ 用户调用 /编辑改进文章:重构章节结构、提升表达清晰度、收紧行文。
Edit and improve articles by restructuring sections and tightening prose.
/obsidian-vault🤖 模型自动触发在 Obsidian 笔记库中搜索、创建、管理笔记,维护 wikilinks 与索引笔记(绑定作者个人环境)。
Search, create, and manage notes in the Obsidian vault.
正在打磨的草稿,可能变动较大
/batch-grill-me⌨ 用户调用 /grill-me 的批处理版:一次性抛出所有前沿问题,逐轮拷问。
A relentless interview that asks every frontier question at once, round by round.
/claude-handoff⌨ 用户调用 /handoff 的后台版:把当前对话交给一个全新的后台代理,立即继续工作。
Hand the conversation off to a fresh background agent.
/loop-me⌨ 用户调用 /围绕你想构建的工作流进行规格拷问,帮你设计自动化流程。
Grill me about specs for the workflows I want to build.
/setup-ts-deep-modules⌨ 用户调用 /把 dependency-cruiser 接入 TypeScript 仓库,用工具强制每个 package 保持深模块结构。
Wire dependency-cruiser into a TypeScript repo so each package is a deep module.
/to-questionnaire⌨ 用户调用 /遇到一个你答不了的决策?把它变成一份问卷,交给能回答的人填写。
Turn a decision you can't fully answer into a questionnaire for someone else.
/wizard⌨ 用户调用 /生成一个交互式 bash 向导,一步步引导真人完成手工操作流程。
Generate an interactive bash wizard that walks a human through a manual procedure.
/writing-fragments⌨ 用户调用 /写作·探索阶段:挖掘原始素材片段,暂不做结构化。
Writing, explore — mine raw fragments, no structure yet.
/writing-beats⌨ 用户调用 /写作·组装阶段:把素材组织成“节拍”叙事线,每个术语先落地再推进。
Writing, exploit — assemble raw material into a journey of beats.
/writing-shape⌨ 用户调用 /写作·成文阶段:把素材逐段塑形成完整文章。
Writing, exploit — shape raw material into an article, paragraph by paragraph.
被 newer Skill 取代,保留供考古
/design-an-interface🤖 模型自动触发(已废弃)用并行子代理为一个模块生成多个迥异的接口设计。
Generate multiple radically different interface designs via parallel sub-agents.
/qa⌨ 用户调用 /(已废弃)对话式 QA 会话:用户口头报告 bug,代理定位并修复。
Interactive QA session where user reports bugs conversationally.
/request-refactor-plan⌨ 用户调用 /(已废弃)通过访谈制定小步提交的重构计划,归档为 GitHub issue。
Create a detailed refactor plan with tiny commits via user interview.
/ubiquitous-language⌨ 用户调用 /(已废弃)从对话中提取 DDD 式统一语言术语表——能力已并入 grill-with-docs 与 domain-modeling。
Extract a DDD-style ubiquitous language glossary from the conversation.
# 交互式安装:选 Skill、选代理、选作用域 npx skills@latest add mattpocock/skills # 然后在代理里运行一次配置(每个仓库一次) /setup-matt-pocock-skills
安装到共享缓存 ~/.agents/skills/,再软链接到各代理目录(Claude Code、Codex、Cursor 等)。fork 思维——文件是你的,随便 hack。
# 在 Claude Code 内执行 /plugin marketplace add mattpocock/skills /plugin install mattpocock-skills@mattpocock # 同样需要运行一次配置 /setup-matt-pocock-skills
只读、免维护、作者发新版即更新。订阅思维——你只想让它工作,不打算改它。