← 返回日报
🌐 机器翻译 · DeepSeek · GitHub

mattpocock skills


mattpocock 技能

为真正的工程师打造的技能

我每天用来做真正工程工作的 agent 技能——不是 vibe coding。

开发真正的应用很难。GSD、BMAD 和 Spec-Kit 这类方法试图通过接管流程来提供帮助。但在此过程中,它们夺走了你的控制权,并让流程中的 bug 变得难以解决。

这些技能被设计得小巧、易于调整、可组合。它们适用于任何模型。它们基于数十年的工程经验。

随意折腾它们。把它们变成你自己的。尽情享用。

如果你想跟上这些技能的变化,以及我创建的任何新技能,可以加入我的 newsletter,和约 60,000 名其他开发者一起:订阅 Newsletter

安装(30 秒设置)

两种方式,两种理念。Claude Code 插件将整套技能作为受管理的只读包安装,当 Anthropic 的 marketplace 收录我的发布版本时会自动更新,所以你是在订阅而不是 fork。skills.sh 则把可编辑的技能文件复制到你的项目中,这样你就可以折腾它们,把它们变成你自己的。

二选一:两个都装会导致每个技能出现两次。

1. 获取技能

Claude Code

claude plugins install mattpocock-skills

或者,在会话内执行:

/plugin install mattpocock-skills

它位于 Claude Code 的官方 marketplace 中,所以无需事先添加任何东西。如果提示找不到插件,请运行 claude plugins marketplace update 后重试。

更新会在 Anthropic 的 marketplace 将其固定版本推进到新发布版本时到达你这里,这可能比本仓库滞后数天或数周。卡在旧版本上?claude plugin list 会显示你当前的版本,CHANGELOG.md 会显示最新发布版本。

如果你想直接跟踪本仓库,请切换到它自己的 marketplace,并在 /plugin → Marketplaces 下为它开启自动更新(对于 Anthropic 之外的 marketplace,此功能默认关闭):

claude plugin uninstall mattpocock-skills@claude-plugins-official
claude plugin marketplace add mattpocock/skills
claude plugin install mattpocock-skills@mattpocock

Codex 及其他 agents

npx skills@latest add mattpocock/skills

选择你想要的技能,以及要安装到哪些 coding agents 上。安装器会让你选择要采用哪些技能,所以请确保 setup-matt-pocock-skills 是其中之一。

原生 Codex 插件已在路线图上(见 .agents/adr/0002-ship-as-a-claude-code-plugin.md)。

给爱折腾的人

在任意 agent 上使用同一个安装器,包括 Claude Code:

npx skills@latest add mattpocock/skills

它会把技能作为你自己拥有且可编辑的普通文件写入你的仓库。不会有任何东西在背后自动更新;当你想要我的最新改动时,用 npx skills update 拉取即可。

2. 运行 /setup-matt-pocock-skills

在你的 agent 中,每个仓库运行一次。它会:

我构建这些技能,是为了修复我在 Claude Code、Codex 和其他 coding agents 上看到的常见失败模式。

#1:Agent 没有做我想要的事

“没有人确切知道自己想要什么”
David Thomas & Andrew Hunt,《程序员修炼之道》

问题。软件开发中最常见的失败模式是错位。你以为开发者知道你想要什么。然后你看到他们构建出来的东西——你意识到它根本没理解你。

在 AI 时代也是一样。你和 agent 之间存在沟通鸿沟。

解决方法是来一场拷问会(grilling session)——让 agent 就你正在构建的东西向你提出详细问题。

修复方法是使用:

这些是我最受欢迎的技能。它们帮助你在开始之前与 agent 对齐,并深入思考你正在做的改动。每次你想做改动时都使用它们。

#2:Agent 太啰嗦了

有了通用语言,开发者之间的对话和代码表达都源自同一个领域模型。
Eric Evans,《领域驱动设计》

问题:在项目开始时,开发者和他们为之构建软件的人(领域专家)通常说着不同的语言。我和我的 agents 也有同样的紧张关系。Agents 通常被丢进一个项目,然后被要求边做边弄懂术语。所以它们用 20 个词来表达 1 个词就能表达的意思。

修复方法是共享语言。它是一份文档,帮助 agents 解码项目中使用的术语。

示例

这是一个示例词汇表(在那个固定提交中仍名为 CONTEXT.md,当时这些技能还没有重命名这一约定),来自我的 course-video-manager 仓库。哪一个更容易读?

之前:“当课程某个 section 内的 lesson 被‘实体化’(即,在文件系统中获得一个位置)时会出现问题”

之后:“materialization cascade 有问题”

这种简洁性会在一个又一个会话中带来回报。

这已内置于 /grill-with-docs 中。它是一场拷问会,但会帮助你与 AI 建立共享语言,并在 ADR 中记录难以解释的决策。

很难解释这有多强大。它可能是本仓库中最酷的技术。试试看吧。

提示

共享语言除了减少啰嗦之外还有许多其他好处:

问题:假设你和 agent 已经就构建什么达成了一致。如果 agent 仍然产出垃圾怎么办?是时候检查你的反馈循环了。如果对它所生成代码的实际运行情况没有反馈——

📖 阅读原文 →