@mattpocockuk: 已将我的 /retro 技能更新为进行中状态。您可以在任何会话(或批量会话)之后运行它,以尝试修复其……

X AI KOLs Timeline 工具

摘要

文章宣布为编码代理将 '/retro' 技能更新为进行中状态,旨在改进代理导航、编码标准和工具经济性。

已将我的 /retro 技能更新为进行中状态。 您可以在任何会话(或批量会话)之后运行它,以尝试为下次修复错误。 尝试改进: - 代理导航(提升探索能力) - 编码标准(优化代码审查) - 工具经济性 - 信息访问 试试看:
查看原文
查看缓存全文

缓存时间: 2026/08/25 06:02

已将我的 /retro 技能转为“进行中”状态。你可以在任何会话后运行它(或对多个会话批量运行),以尝试修复其下次可能出现的错误。该技能试图改进以下方面:

  • 代理导航(以实现更好的探索)
  • CODING_STANDARDS(以实现更好的评审)
  • 工具效率
  • 信息访问

试试看:


mattpocock/skills

来源:https://github.com/mattpocock/skills

面向真实工程师的技能

skills.sh (https://skills.sh/mattpocock/skills)

我日常使用的真实工程技能——非“凭感觉编码”。开发真实应用软件是困难的。GSD、BMAD 和 Spec-Kit 等方法试图通过接管流程来提供帮助,但在此过程中,它们剥夺了你的控制权,并使流程中的 Bug 难以解决。这些技能被设计为小巧、易于适配且可组合。它们适用于任何模型,基于数十年的工程经验。尽情探索,根据自己的需求改造它们。享受其中吧。

如果你想跟踪这些技能的任何变更以及我创建的新技能,可以加入约 6 万名开发者所在的通讯列表: 注册通讯列表

安装(30 秒完成)

两种方式,两种理念。

Claude Code 插件 (https://code.claude.com/docs/en/plugins) 将整个技能集作为托管的、只读的捆绑包安装。当我发布更新时,它会自动更新,因此你采用订阅而非 fork 的方式。

skills.sh (https://skills.sh/mattpocock/skills) 会将可编辑的技能文件复制到你的项目中,这样你就可以修改它们,并使其完全符合你的需求。

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

1. 获取技能

Claude Code

claude plugins install mattpocock-skills

或者在会话内:

/plugin install mattpocock-skills

它已在 Claude Code 的官方市场中,因此无需提前添加任何内容,更新会自动推送。

Codex 及其他代理

npx skills@latest add mattpocock/skills

选择你需要的技能以及要安装的编程代理。安装程序允许你选择要安装的技能,因此请确保 setup-matt-pocock-skills 是其中之一。 原生 Codex 插件已在路线图上(参见 .agents/adr/0002-ship-as-a-claude-code-plugin.md)。

对于爱折腾的用户 使用相同的安装程序,在任何代理上安装,包括 Claude Code:

npx skills@latest add mattpocock/skills

它会将技能作为你拥有的普通文件写入你的仓库,你可以进行编辑。不会在你不知情的情况下进行任何更新;当你需要时,可以使用 npx skills update 拉取我的最新更改。

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

在你的代理中,每个仓库只需运行一次。它将:

  • 询问你想使用哪个问题跟踪器(GitHub、Linear 或本地文件)
  • 询问你在对工单进行分类时应用的标签(/triage 使用标签)
  • 询问你想将创建的文档保存在哪里

3. 搞定——你已准备就绪。

为什么需要这些技能

我创建这些技能是为了修复我在 Claude Code、Codex 及其他编程代理中常见的故障模式。

#1:代理没有完成我想要的事情

“没有人确切知道自己想要什么” —— David Thomas 与 Andrew Hunt,《程序员修炼之道》(https://www.amazon.co.uk/Pragmatic-Programmer-Anniversary-Journey-Mastery/dp/B0833F1T3V)

问题。软件开发中最常见的故障模式是不对齐。你以为开发者知道你想要什么,然后看到他们构建的东西——才意识到他们完全没理解你。在 AI 时代,情况也是如此。你和代理之间存在沟通鸿沟。解决方法是进行一次详尽质询——让代理就你正在构建的内容向你提出详细问题。

解决方案是使用:

这是我最受欢迎的技能。它们帮助你与代理在开始工作前达成一致,并深入思考你将要进行的更改。在你想要进行任何更改时,每次都使用它们。

#2:代理过于啰嗦

“通过通用语言,开发者之间的对话和代码表达都源自相同的领域模型。” —— Eric Evans,《领域驱动设计》(https://www.amazon.co.uk/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215)

问题:在项目初期,开发者和构建软件的人(领域专家)通常说着不同的语言。我对我的代理也感受到了同样的张力。代理通常被直接放入项目中,被要求自行摸索术语。因此,它们会用 20 个词来表达只需 1 个词就能说明的内容。

解决方案是共享语言。这是一份帮助代理解读项目中行话的文档。

示例 这是我 course-video-manager 仓库中的一个 CONTEXT.md (https://github.com/mattpocock/course-video-manager/blob/076a5a7a182db0fe1e62971dd7a68bcadf010f1c/CONTEXT.md) 示例。

哪一个更容易阅读?

  • 修改前:“当课程中某个章节内的课程被‘实体化’(即在文件系统中获得位置)时,会出现一个问题。”
  • 修改后:“实体化级联存在问题。”

这种简洁性在每次会话中都能带来回报。这内置于 /grill-with-docs 中。这是一个详尽质询会话,但有助于你与 AI 共建共享语言,并通过 ADR(架构决策记录)记录难以解释的决策。很难解释这有多强大。它可能是本仓库中最酷的技术。试一试,亲自体验。

共享语言除了减少冗长之外,还有许多其他好处:

  • 变量、函数和文件使用共享语言进行一致命名。
  • 因此,代理更容易导航代码库。
  • 代理也减少了思考所需的 token 消耗,因为它能使用更简洁的语言。

#3:代码无法工作

“始终保持小而审慎的步伐。反馈速率就是你的速度限制。永远不要承担过大的任务。” —— David Thomas 与 Andrew Hunt,《程序员修炼之道》(https://www.amazon.co.uk/Pragmatic-Programmer-Anniversary-Journey-Mastery/dp/B0833F1T3V)

问题:假设你和代理已就构建内容达成一致。当代理仍然产出糟糕代码时怎么办?是时候审视你的反馈循环了。如果没有关于生成代码实际运行情况的反馈,代理将是在盲目飞行。

解决方案:你需要常规的反馈循环:静态类型、浏览器访问和自动化测试。对于自动化测试,红-绿-重构循环至关重要。即代理首先编写一个失败的测试,然后修复测试。这有助于为代理提供一致的反馈水平,从而产出更好的代码。

我创建了一个可以嵌入任何项目的 /tdd 技能。它鼓励红-绿-重构,并为代理提供了关于何为良好测试和不良测试的大量指导。

对于调试,我还创建了一个 /diagnosing-bugs 技能,它将最佳调试实践封装在一个严格的、按阶段门控的循环中。

#4:我们构建了一团乱麻

“每天都投资于系统设计。” —— Kent Beck,《解析极限编程》(https://www.amazon.co.uk/Extreme-Programming-Explained-Embrace-Change/dp/0321278658)

“最好的模块是深层的。它们允许通过简单的接口访问大量功能。” —— John Ousterhout,《软件设计哲学》(https://www.amazon.co.uk/Philosophy-Software-Design-2nd/dp/173210221X)

问题:大多数使用代理构建的应用都复杂且难以更改。因为代理能极大加速编码,它们也加速了软件熵。代码库以前所未有的速度变得复杂。

解决方案是一种全新的 AI 驱动开发方法:关注代码设计。这内置于这些技能的每一层:

  • /to-spec 在创建规范之前,会询问你正在处理哪些模块
  • 至关重要的是,/improve-codebase-architecture 会扫描代码库以寻找深化机会,并将候选方案交给你。我建议每隔几天在你的代码库上运行一次。这是一项调查,而非救援:在一个真正陈旧的代码库上,它会找到真正的候选方案,但它不会为你理清这团乱麻。

总结

软件工程的基本原理比以往任何时候都更重要。这些技能是我将基本原理浓缩为可重复实践的最好尝试,旨在帮助你发布职业生涯中最好的应用。享受其中吧。

参考

这些技能在一个维度上分类:谁可以调用它们。

用户调用的技能仅在你输入时可达(例如 /grill-me);它们的工作是进行编排。

模型调用的技能可以由你调用,或者当任务匹配时由代理自动调用;它们承载可重用的规范。一个用户调用的技能可以调用模型调用的技能,但绝不会调用另一个用户调用的技能。

工程技能

我用于日常代码工作的技能。

用户调用的技能

  • ask-matt:询问哪种技能或流程适合你的情况。本仓库中用户调用技能的路由器。
  • grill-with-docs:详尽质询会话,同时构建项目的领域模型,精炼术语并内联更新 CONTEXT.md 和 ADR。
  • triage:将工单通过分类角色的状态机进行流转。
  • improve-codebase-architecture:扫描代码库寻找深化机会,以可视化 HTML 报告形式呈现,然后对你选择的任何一个进行详尽质询。
  • setup-matt-pocock-skills:为工程技能配置本仓库(问题跟踪器、分类标签、领域文档布局)。在使用其他工程技能之前,每个仓库运行一次。
  • to-spec:将当前对话转换为规范并发布到问题跟踪器。无需访谈,仅综合你已讨论的内容。
  • to-tickets:将任何计划、规范或对话分解为一组“曳光弹”工单,每个工单声明其阻塞边界,可写为本地文件中的文本,或真实跟踪器上的原生阻塞链接。
  • implement:构建规范或一组工单描述的工作,在预设的接缝处驱动 /tdd,并在提交前使用 /code-review 进行收尾。
  • wayfinder:规划大量工作(超过单个代理会话能容纳的),将其转化为问题跟踪器上的共享决策工单地图,并逐一解决,直到通往目的地的道路清晰。

模型调用的技能

  • prototype:构建一个一次性原型以回答设计问题,可以是一个用于状态/逻辑问题的可共享 HTML 文件,或者多个根本不同的 UI 变体,可通过一个路由切换。
  • diagnosing-bugs:针对疑难 Bug 和性能回退的严格诊断循环:构建一个反馈循环:在此 Bug 上变红 → 最小化 → 假设 → 排查 → 修复 → 回归测试。
  • research:针对高可信度的主要来源调查问题,并将发现以引用的 Markdown 文件形式捕获到仓库中,作为后台代理运行。
  • tdd:采用红-绿-重构循环的测试驱动开发。一次一个垂直切片地构建功能或修复 Bug。
  • domain-modeling:积极构建和精炼项目的领域模型:根据术语表挑战术语,用边界场景进行压力测试,并内联更新 CONTEXT.md 和 ADR。
  • codebase-design:用于设计深层模块的共享规范和词汇:在小接口后提供大量行为,放置在清晰的接缝处,可通过该接口进行测试。
  • code-review:自固定点以来对差异的双轴评审:规范(是否遵循仓库编码标准,加上 Fowler 味道基线?)和规格(是否忠实地实现了原始问题/规范?),作为并行子代理运行,因此两者互不干扰。
  • resolving-merge-conflicts:逐个代码块处理进行中的 git merge 或 rebase 冲突,根据追溯到各方主要来源的意图进行解决,然后完成操作(永远不要 --abort)。
  • wizard:生成一个交互式 bash 向导,引导人类完成只有他们才能执行的步骤:配置基础设施、设置凭证或 CI 密钥、浏览陌生的第三方仪表板、或运行一次性迁移或切换。

生效力

通用工作流工具,非特定于代码。

用户调用的技能

  • grill-me:对计划或设计进行无情的追问,直到设计树的每个分支都得到解决。
  • handoff:将当前对话压缩成交接文档,以便另一个代理可以继续工作。
  • teach:在多个会话中教授用户新技能或概念,使用当前目录作为有状态的教学工作区。
  • to-questionnaire:将你无法独自回答的决策转化为 Markdown 问卷,交给唯一能回答的人异步填写,或在会议中共同完成。它追问的是发送对象(给谁、需要什么回复),而非主题。
  • wait-what:当消息未被理解时立即触发。代理会使用你缺失的上下文,用你的 CONTEXT.md 词汇,以清晰的中文重新表述。

模型调用的技能

  • grilling:就计划、决策或想法无情地追问用户,直到设计树的每个分支都得到解决。这是 grill-me、grill-with-docs、triage、wayfinder 和 improve-codebase-architecture 背后的可重用追问原语。
  • writing-for-agents:为代理撰写文档:技能、AGENTS.md/CLAUDE.md,以及代理通过指针访问的任何文档。

相似文章

@mattpocockuk: mattpocock/skills v1.3 发布了!- /pr(新增)编写易读的 PR 描述,展示能证明改动有效的有力证据,并评估合并风险……

X AI KOLs Timeline

Matt Pocock 发布了 mattpocock/skills 的 v1.3 版本,新增了几个 Claude Code skills:/pr 用于编写基于证据、附带合并风险评估的 PR 描述,/implement-spec 通过 subagents 实现规格说明和工单,/retro 用于复盘编码 agent 会话并提出仓库改进建议,同时将 CONTEXT.md 更名为 GLOSSARY.md。