ARTICLE · 1116396
AI 写代码越来越快,为什么项目却越来越乱?这次一次讲清sdd+tdd一个274k star 的skill解决烦恼!
AI 写代码越来越快,为什么项目却越来越乱?这次一次讲清sdd+tdd一个274k star 的skill解决烦恼!
一句话让 AI 改功能、补接口、写测试,甚至从零搭一个项目,速度确实越来越快。 但一个很现实的问题也出现了: 代码写得越快,项目真的就越好吗? 很多人应该遇到过这种情况: 让 AI 加一个功能,它没搞懂需求就直接开写; Bug 出现后,它不断修改代码,却始终找不到真正原因; 项目做到后面,文件越来越多,逻辑越来越乱; 换一个 AI 会话,又得重新解释一遍项目里的各种概念。 AI Coding 解决了“写代码慢”的问题,却可能把另一个问题放大了——软件工程本身。 而今天这个 GitHub 项目,解决的就是这个问题。 "GitHub:mattpocock/skills" (https://reference-url-citation.invalid/0) 不是让 AI 更会写代码,而是让它更像一个工程师 这个项目叫 mattpocock/skills,作者 Matt Pocock 将自己日常用于真实软件开发的一套 Agent Skills 开源出来。 项目的定位非常明确: Skills for Real Engineers,而不是 Vibe Coding。 
更有意思的是,它把软件开发过程中最容易出问题的几个环节,分别做成了 Agent 可以调用的 Skill。 需求没搞懂?先别急着写代码 很多 AI Coding 的灾难,其实从第一句话就开始了。 你说: «“给这个项目加一个用户权限系统。”» AI 马上开始改代码。 但它可能根本不知道: 权限是 RBAC 还是 ABAC? 管理员和普通用户有什么区别? 权限应该在哪里判断? 现有项目有没有类似机制? 数据库结构是否需要调整? 于是 AI 写了一大堆代码,你最后发现——它理解错了。 它不会急着写代码,而是先不断向你提问,把需求中的模糊部分一点点逼出来。 如果需要更进一步,还可以使用 "grill-with-docs",在沟通的同时把重要决策、术语和架构信息沉淀下来。 这其实非常符合真实的软件开发流程: 先把问题想清楚,再开始写代码。 AI 最大的问题之一:每次都重新理解你的项目 另一个很容易被忽略的问题,是“项目语言”。 一个成熟项目里往往有大量内部术语。 比如某个业务对象叫 "Materialization",某个流程叫 "Cascade"。 人类开发者知道这些词是什么意思,但 AI 每次进入新的上下文,都可能重新分析一遍。 它可以帮助项目建立统一的领域语言,让 AI、人和代码使用同一套概念。 这样以后你不需要每次解释: “这里的 materialization 是指……” 直接告诉 Agent: “检查 materialization cascade。” 它就可以结合项目已有的上下文继续工作。 这看起来只是一个文档,但对于长期维护 AI Coding 项目来说,非常关键。 写代码之前先规划,写完之后还要验证 项目里还有一套非常完整的开发 Skills。 比如: 其中我比较推荐关注 "tdd"。 因为 AI 写代码最大的风险之一就是: 它可以非常快地写出“看起来合理”的代码。 但看起来合理,不代表真的正确。 TDD Skill 会引导 Agent 先建立失败测试,再实现功能,最后重构。 这样 AI 就不再只是: “我觉得这样应该可以。” 而是: “测试告诉我,这个实现到底行不行。” 这就是反馈循环。 甚至连 Git 操作都可以管起来 这个项目还有一个比较实用的 Skill: "git-guardrails-claude-code" 它可以为 Claude Code 设置 Git 安全保护,阻止一些危险操作,比如 "push"、"reset --hard"、"clean" 等。 对于经常把 AI Agent 放进真实项目里工作的开发者来说,这类保护其实很有价值。 因为 Agent 越强,能够执行的操作越多,误操作的风险也会一起增加。 安装也很简单 如果你使用 Claude Code,可以直接安装: claude plugins install mattpocock-skills 如果使用 Codex 或其他支持 Agent Skills 的工具,则可以: npx skills@latest add mattpocock/skills 安装器可以让你选择需要的 Skills,而不是必须全部安装。 项目还提供了 "setup-matt-pocock-skills",首次使用时可以配置 Issue Tracker、标签以及文档存放位置。 另外一个很重要的设计是: 你可以把 Skills 当普通文件放进自己的项目里。 这样你可以直接修改它们,而不是把它们当成一个无法调整的黑盒。项目 README 也明确区分了 Claude Code 的托管插件方式和可编辑文件方式。 还有一些正在实验中的玩法 仓库里还有一个 "in-progress" 区域。 这里目前可以看到 "loop-me"、"writing-beats"、"writing-fragments" 等实验性 Skills。 作者明确说明,这些 Skill 目前处于 Beta 状态,可能发生变化甚至消失,因此不会直接进入正式插件。 这也说明一个趋势: 模型负责“思考和生成”,而 Skills 负责告诉模型: 什么时候应该提问? 什么时候应该规划? 什么时候应该写测试? 什么时候应该停下来检查? 什么时候不能直接执行危险操作? 这实际上是在给 AI Agent 加上一套“工作方法”。 写在最后 过去我们讨论 AI Coding,最关心的是: 哪个模型写代码更快? 现在可能需要开始关心另一个问题: 怎样让 AI 写出来的代码能够长期维护? "mattpocock/skills" 有意思的地方就在这里。 AI 可以让一个人完成过去几个人的工作量。 但如果没有工程方法,AI 也可能让一个人更快地制造一堆没人敢改的代码。 所以真正值得关注的,也许不是: “AI 能不能帮我写代码?” 而是: “我能不能教会 AI,什么样的代码才值得写?”
现在用 Claude Code、Codex 之类的 AI Coding Agent 写项目,已经不是什么新鲜事了。

它并不是一个“大而全”的 AI 编程框架,也不是让 Agent 接管整个开发流程。
作者反而强调:这些 Skills 应该足够小、容易修改,并且可以组合使用。
截至目前,这个仓库已经积累了274k star, 2.3 万+ Fork、493 次提交、538 个 Issue,项目当前版本为 1.2.3。
