有人构建了一个免费的生产级工程技能集合,它能教你的 AI 编码代理像资深工程师一样工作。 它叫 agent-skills。在 GitHub 上有 60,800+ 星标。 你只需将其导入 Claude Code、Codex、Cursor 或 Gemini CLI。
以下是它的功能:
→ /spec 强制代理在动代码前定义要构建什么。规格先行,代码其次。每次都如此。
→ /plan 将规格拆分成小型、原子化的任务。没有巨型 PR。没有神秘的差异。
→ /build 一次实现一个切片。每个任务都采用测试驱动开发,并单独提交。
→ /build auto 生成计划并在一轮批准通过后运行所有任务。你只需批准一次。它自主执行。在失败或高风险步骤时暂停。
→ /test 证明代码有效。测试被视为证明,而非事后补充。
→ /review 在合并前强制代码健康检查。真正的质量关卡,而非随意检查。
→ /code-simplify 为清晰度而重写,而非耍小聪明。消灭代理在凌晨 2 点写的那些巧妙废话。
→ /ship 运行完整的生产检查清单。只有不遗漏任何步骤时,更快才更安全。
→ 技能根据上下文自动激活。构建 API 会触发 api-and-interface-design。构建 UI 会触发 frontend-ui-engineering。无需手动配置。
Agent Skills 这个开源项目给 AI 编程助手装上了一套高级工程师的工作脑。它不教 AI 写代码,而是教 AI 怎么像在 Google 干了十年的老员工一样,按规范流程把活儿干漂亮。
AI 写代码早就不是新鲜事了,但 AI 写的代码能不能直接用在正经项目里,那完全是另一回事。很多 AI 生成的代码表面上能跑,但实际上经不起推敲,没文档、没测试、没考虑异常情况,更别提什么安全漏洞了。
Agent Skills 就是专门来治这个病的。它把资深工程师脑子里那套干活的规矩,变成了一条条 AI 必须遵守的硬性流程。用了它,AI 就不再是那个只会噼里啪啦敲键盘的码农,而是一个有章法的工程熟手。
Spec 命令:先把话说明白再动手
Spec 是 Specification 的缩写,就是规格说明书。很多 AI 一听到“帮我做个博客”,马上就开始噼里啪啦写代码。结果写出来一个带评论功能的购物车,或者压根没有登录页面。
Agent Skills 里的 /spec 命令会强制 AI 停下来。它会让 AI 先把下面这些东西写清楚:这个功能到底要解决什么问题,谁会用,用的时候要经过哪些步骤,如果出了问题怎么办。全部用大白话写在文档里。
等用户确认了这份文档,AI 才能碰键盘。这就好比装修队进场前,必须先拿出设计图让房东签字。没有签字,一块砖都不能动。这个步骤把模糊的需求变成了白纸黑字的验收标准。
AI 后面的所有工作都得对照这份标准来。如果需求变了,那就修改 Spec 文档,而不是直接改代码。这样一来,用户和 AI 之间就有了一个共同的参照物,不会出现 AI 闷头干了两天,推出来一个完全不是用户想要的东西。
Plan 命令:把大任务拆成能一口吃掉的小块
Spec 文档定下来之后,AI 不会直接跳到写代码。它先运行 /plan 命令。这个命令会把 Spec 里描述的一大坨功能,拆成一个个独立的小任务。
比如做一个博客系统,它会拆成用户注册登录、文章增删改查、评论点赞、搜索排序。每个小任务都是独立的一条。每个任务后面还标注了依赖关系。必须先做哪个,后做哪个。
每个任务都配了验收标准。完成后怎么验证它没问题。这就把一个大象装进冰箱的难题,变成了一个萝卜一个坑的具体动作。AI 拿到计划之后,心里有谱了,知道今天要走到哪一步,明天要干啥。
用户看着计划也能清楚地知道,这个项目到底要分几步走,走到哪一步了。不会出现 AI 闷头干了两小时,推上来一个 2000 行的代码修改,没人看得懂。计划就是整个项目的施工蓝图,每一步都标得明明白白。
Build 命令:一次只砌一块砖
现在进入真正的编码阶段。/build 命令会按照刚才生成的计划,一次只执行一个任务。AI 写代码的时候,会盯着眼前这一小块任务。它不会超前想后面的登录功能怎么实现。它只关心眼下这个文章列表怎么显示。
代码写完后,它会自动运行相关的测试,证明这块砖是结实的。测试通过之后,它会把这一个任务的改动单独提交一次,写上清晰的提交记录。所以你会发现,用 Agent Skills 的项目,提交记录是一连串清晰的小步快跑。
完成了文章列表、完成了文章详情页、完成了按标签筛选。而不是一条孤零零的记录:更新了所有代码。这种一次只砌一块砖的方式,让代码审查变得轻松愉快。审查的人只需要检查这一小块改动能正常运行,逻辑没毛病。
不用担心改了一行 A 文件,把 B 文件的功能搞崩了。Git 合并的时候冲突也少。因为每次改动范围很小,很精准。这就像搭乐高积木,一块一块往上搭,每搭一块都确认它卡紧了,再搭下一块。
Build Auto 命令:全程自动驾驶但要系好安全带
如果你觉得手动执行每个任务太慢了,Agent Skills 提供了 /build auto 模式。这个命令会读取完整的计划,然后像个自动驾驶汽车一样,从头到尾一个接一个地执行每个任务。它会写代码、跑测试、提交代码,一气呵成。
整个过程里,AI 会自己判断每个任务是否顺利完成。如果某个任务跑测试失败了,它会停下来,把错误信息打印出来等你处理。如果它觉得某个步骤风险很高,比如要删除大量旧代码或者改数据库结构,它也会停下来等你确认。
你只需要在最开始批准一次运行。批准之后就放手让 AI 自己跑起来。你可以去喝杯咖啡或者干点别的。回来的时候,要么整个计划全部执行完毕,要么 AI 卡在一个它搞不定的地方等你救场。
这个模式把重复性的机械劳动全包了,只把关键决策权留给你。它既保留了人工把关的安全感,又拿到了自动化执行的效率。就像一个靠谱的实习生,你给他一套明确的指令,他就能自己干活,遇到拿不准的事情再来问你。
Test 命令:拿测试结果当铁证
很多 AI 写完代码会说“我觉得没问题”。Agent Skills 里的 /test 命令不接受“觉得”。它会强制 AI 写测试代码。而且不是随便写两个示例。它要求 AI 按照测试金字塔的结构来组织。
底层是大量快速运行的单元测试,检查每个函数是不是干了自己该干的活。中间是集成测试,检查几个模块凑在一起能不能正常协作。顶层是少量的端到端测试,模拟真实用户打开浏览器点来点去,检查整个系统能不能跑通。
测试写完之后,AI 会执行一遍。如果测试全部通过,那代码就是有证据支撑的正确。如果测试挂了,AI 就得回去改代码,直到所有测试变绿为止。测试就变成了代码正确性的铁证。
以后谁要是改动了逻辑,跑一遍测试,立马知道有没有破坏旧功能。这比任何口头保证都管用。有了这层防护网,你就敢放心大胆地改代码、加功能,不怕把以前好好的东西弄坏了。
Review 命令:质量把关不是走过场
代码写完了,测试也绿了,是不是就能合并了?Agent Skills 说不行。还得过 /review 这关。这个 Review 不是随便瞄两眼。它会激活一个专门的代码审查员角色。这个虚拟的审查员会以资深工程师的眼光来审视代码。
它不光看代码能不能跑。它看代码结构是不是清晰,以后好不好改。看有没有明显的性能隐患,比如循环套循环。看有没有安全漏洞,比如 SQL 注入的风险。看代码风格是不是统一,命名是不是合理。
它会把发现的问题列出来,给出修改建议。有些严重的问题它会直接拒绝合并。只有所有问题都解决了,代码才能通过审查。这就等于在每个 PR 合并之前,强制安排了一次高质量的人工 Code Review。
只不过这个审查员是 AI 扮演的,而且它不知疲倦,不会忘记检查任何一条规则。不管你是凌晨三点提交的代码,还是改了上千行,它都会一字一句地看完,挑出毛病来。这扇门把低质量的代码挡在了门外。
Code Simplify 命令:把花里胡哨的写法变老实
AI 有时候会写出一些很聪明的代码。比如用了一行嵌套了五个三元运算符的表达式。或者搞了一个复杂的泛型继承链。这种代码看起来很厉害,但过两天连 AI 自己可能都看不懂了。
Agent Skills 里的 /code-simplify 命令就是专门对付这种情况的。它会扫描代码,找到那些过度设计的、绕来绕去的复杂逻辑。然后尝试用更简单直接的方式重写它们。它会消灭不必要的抽象层,把嵌套太深的条件语句拆平,用清晰的变量名解释复杂的表达式。
重写之后它还会确保所有原来的测试依然能通过。最终的代码读起来像一份清晰的操作手册,而不是一本天书。这就保证了项目越做越大,代码不会变得越来越难维护。代码的清晰度始终排在炫技前面。
写代码不只是写给机器看的,更是写给人看的。人看懂了,才能放心地改。这个命令就是把 AI 那些半夜两点写出来的“天才代码”,变成第二天早上谁都能看懂的“老实代码”。
Ship 命令:上生产线前的终极安检
所有工作都做完了,准备上线了。/ship 命令就是最后的安检门。它会自动运行一张完整的生产环境检查清单。这张清单包括:所有测试是不是都过了,代码审查有没有遗留问题,性能指标有没有衰退,安全扫描有没有漏洞,文档是不是更新了,环境变量配置好了没有。
每一条都检查通过之后,/ship 才会真正执行部署操作。如果有任何一项没达标,这个命令就会亮红灯,阻止上线。这确保了一个团队不会因为赶时间而跳过必要的步骤。
它把“快速上线”和“安全上线”统一起来了。只有不走捷径的时候,快才是安全的。这套流程走下来,你得到的不是一个代码文件,而是一个经过完整工程化流程检验的、可部署的产品增量。就像飞机起飞前的最后检查单,每一项都打勾了,才能推油门。
技能自动激活:不用你操心,它自己就懂了
Agent Skills 最巧妙的设计是,这些技能不是靠你手动输入命令才能用的。它在后台装了一个智能触发器。这个触发器会时刻盯着你当前的工作内容。比如你让 AI 去写一个用户登录的 API 接口。
它识别出你在做后端接口设计,就会自动把 API 接口设计规范这个技能加载到 AI 的工作记忆里。AI 写代码的时候就会自动遵循 RESTful 风格,把版本号写在 URL 里,用标准 HTTP 状态码。如果你开始写一个 React 的前端页面,它就自动加载前端 UI 工程技能。
AI 就知道要按组件化方式组织代码,要考虑状态管理,要用合适的 Hook。你完全不用管背后这些技能切换的细节。AI 自己就知道现在手里是什么活儿,应该用哪套规矩来干。这就像一个经验丰富的师傅,看到你在切菜,不用你说,自动就把磨刀石和案板准备好了。
这种自动切换的机制,让整个开发过程变得非常流畅。你不需要记住每个命令对应的场景,也不需要手动加载什么插件。AI 会自己判断,自己适配,你只需要专注于描述你要做什么就行了。
源文档驱动开发:不懂就问说明书
Agent Skills 里有个很有意思的技能,叫源文档驱动开发。它要求 AI 在写任何代码之前,先去找这个东西的官方文档。比如你要用 OpenAI 的 API,AI 会先去 OpenAI 官网查最新的 API 调用方式,看参数怎么传,返回值什么格式。
如果你要用 Supabase 数据库,它会去查 Supabase 的 JavaScript SDK 文档。它不会依赖自己训练数据里的陈旧知识。这解决了 AI 经常会编造不存在的函数名或者用废弃的老方法的问题。因为它的每一次调用,都是照着官方说明书来的。
这跟人做开发是一样的,遇到不确定的库,第一反应是去查文档,而不是自己闷头猜。AI 把这个好习惯学会了,写出来的代码就能直接跑,不会出一堆运行时错误。AI 不再是一个瞎蒙的选手,而是一个照着手册干活的标准工人。
很多项目出问题,不是逻辑写错了,而是用了已经过时的 API。源文档驱动开发直接从源头上杜绝了这个问题。它确保 AI 写的每一行代码,都有官方的依据做支撑,不是它自己编出来的幻觉。
怀疑驱动开发:教 AI 自己跟自己抬杠
这个技能是 Agent Skills 里最有脑洞的一个。它给 AI 增加了一个自我怀疑的机制。正常 AI 的逻辑是,用户问一个问题,AI 直接给一个答案。怀疑驱动开发强制 AI 在给答案之前,先走四步。
第一步是提出一个初步结论。第二步是从这个结论里提取出关键假设。第三步是主动质疑这些假设。它会问自己,如果我的前提是错的呢?如果用户的需求其实不是这个意思呢?我漏掉了什么边缘情况吗?第四步是根据质疑的结果,要么调整结论,要么补充证据,最终形成一个经得起推敲的最终答案。
这等于在 AI 的大脑里装了一个唱反调的小人。当 AI 想偷懒给出一个平庸方案的时候,这个小人会跳出来说,等等,这个方案真的稳妥吗?通过这种强制性的二次思考,AI 给出的方案质量比直接回答要高出一大截。
它考虑得更全面,也更能应对真实世界的复杂性。就像你写完一篇文章,自己再读一遍,找出逻辑不通顺的地方改掉。AI 现在也会做这件事了。它的输出不再是第一反应,而是经过反思后的最优解。
安全加固技能:给代码打上防弹补丁
AI 生成的代码最容易忽略的就是安全问题。因为安全问题往往是那些“正常情况”之外的东西。比如用户输入里夹带了一段 SQL 代码,或者恶意脚本。Agent Skills 里的安全技能会在后台持续运行。
它把 OWASP 组织发布的十大 Web 应用安全风险清单,变成了一条条 AI 必须遵守的规则。AI 在写数据库查询的时候,它会被强制要求使用参数化查询,防止 SQL 注入。在处理用户上传文件的时候,它会被要求检查文件类型和大小,防止恶意文件上传。
在涉及用户权限的地方,它会被要求加上鉴权逻辑,确保一个普通用户不能访问管理员的页面。它还负责检查代码里有没有硬编码的密码、API 密钥。一旦发现,AI 会自动提示你把它移到环境变量里去。这就相当于在代码生产过程中同步进行安全审计。
而不是等项目做完了再请安全专家来打补丁。安全这事,越早做代价越小。等到代码都写完了才发现漏洞,改起来就费劲了。这个技能让 AI 从一开始就写出安全的代码,把漏洞堵在源头。
可观测性技能:给系统装上仪表盘
代码跑在生产环境里,不能是一个黑盒子。可观测性技能会要求 AI 在编写业务逻辑的同时,把日志记录和监控埋点也一起写了。比如一个处理订单的函数,AI 会在关键路径上加上日志。
函数入口记录一下收到了什么请求。调用支付网关前后记录一下耗时。数据库操作失败的时候记录详细的错误堆栈。除了日志,它还要求添加指标统计。比如这个接口被调用了多少次,平均响应时间是多少,错误率是多少。
这些数据会源源不断地流到监控面板上。以后系统出问题了,你不用去猜哪里爆了。直接看监控面板,看错误日志,你就能清楚地知道是数据库慢了还是第三方接口超时了。这就像开车,你不能光看着前方路面,你还得时不时瞄一眼仪表盘。
知道油箱还有多少油,水温正不正常。这些数据就是你系统运行的仪表盘。有了这些数据,运维不再是瞎蒙,而是有理有据地排查。开发人员也能根据这些数据来优化系统,而不是凭感觉猜哪里是瓶颈。
Code Reviewer 人格:一个较真的代码审查员
Agent Skills 不只有工作流,它还内置了不同角色的专业人格。Code Reviewer 人格会把 AI 变成一个超级较真的审查员。它不会因为你写得辛苦就手下留情。它会用最苛刻的标准扫描你的代码。
它会检查你的函数是不是太长,应该拆分。检查你的类是不是承担了太多职责,违反单一职责原则。检查你的模块之间是不是耦合太紧,以后要改一处就得动全身。检查你的异常处理是不是太粗糙,把所有错误都吞掉了。
它会把你代码里的每一处可以改进的地方都揪出来,用严谨但客气的语气写成审查意见。它不会直接替你改,而是告诉你哪里有问题,建议你怎么改。你要做的就是根据这些意见去优化代码。这个角色的存在,强制每个 PR 都达到了团队设定的代码质量标准。
不会出现代码能跑就行的低质量合并。它的标准是死的,不会因为今天心情好就放水。你每一次提交,它都会用同一把尺子去量,保证了代码质量的长期稳定。
Test Engineer 人格:一个魔怔的测试狂魔
Test Engineer 人格会把 AI 变成一个对测试痴迷的工程师。它的眼睛里全是边界条件。当你写了一个函数,功能是返回两个数的商。正常 AI 会写一个测试,验证 10 除以 2 等于 5。Test Engineer 人格会写一组测试。
验证正常情况能算对。验证分母为零的时候能不能抛出清晰的错误。验证输入不是数字的时候能不能友好地拒绝。验证大数字运算会不会溢出。验证负数运算是不是符合预期。它会穷举所有可能出错的情况。它还会检查你的测试覆盖率报告。
如果你的代码里有哪一行没有被测试覆盖到,它会追问你为什么那一行不测。是没必要的日志?还是遗漏的关键逻辑?它会坚持把代码里每一条分支都走到。这种魔怔般的测试态度,保证了代码的健壮性。你不用担心用户输入了一个奇怪的值导致程序崩溃。
因为所有奇怪的值在测试阶段都被验证过了。它把可能出问题的地方,一个一个都拿测试用例堵死了。这就像给代码上了一道又一道保险,每条分支都有人盯着,出了问题立马就能发现。
Security Auditor 人格:一个神经质的安全警察
Security Auditor 人格会把 AI 变成一个对安全极度敏感的家伙。它看代码的角度跟别人不一样。你看到的是一个搜索框,它看到的是一个 SQL 注入的入口。你看到的是一个文件上传按钮,它看到的是一个远程代码执行的通道。
它会重点审查所有跟用户输入打交道的地方。有没有做严格的过滤和转义。它会审查所有跟权限相关的逻辑。用户有没有越权看到别人的数据。它会检查你用的第三方依赖库,有没有已知的高危漏洞。如果有,它会发出警报并建议你升级到安全版本。
它会检查你配置的跨域策略,是不是太宽松了,允许任何网站访问你的接口。这个角色的存在,相当于给你的项目配了一个 24 小时不休息的安全专家。它用最坏情况的假设去审视每一行代码,把潜在的安全风险扼杀在开发阶段。
安全问题的可怕之处在于,平时没事,一出事就是大事。这个人格的存在,就是把那些平时容易忽略的安全死角,一个一个给你翻出来晒晒太阳,让它们无处藏身。
Web Performance Auditor 人格:一个速度偏执狂
Web Performance Auditor 人格会一直盯着页面的加载速度。它会检查前端资源的打包体积。如果打出来的 JavaScript 文件太大了,它会建议你开启代码分割,按需加载。它会检查图片有没有被压缩,格式是不是用对了,是不是用了下一代图片格式。
它会检查页面的首屏渲染逻辑,是不是阻塞了关键路径。它会检查有没有频繁操作 DOM 导致页面重排重绘。它会模拟 3G 慢网速环境,测试页面到底几秒钟才能让用户看到内容。它会输出一份详细的性能报告,告诉你哪里拖慢了速度,给出具体的优化指令。
这种对速度的偏执,保证了用户打开你的网站时,不用等半天才能看到东西。在移动网络环境下,每一毫秒的延迟都赶走一个用户。这个角色就是把性能优化从“有空再做”变成了“必须做好”的硬性要求。
它不会因为你用了高配置的电脑测试就放过你,它永远在模拟最差的环境。用户的手机可能是三年前的旧款,网络可能在信号不好的地铁里。它就要确保在这种最差的情况下,你的页面还能正常打开,功能还能用。
为什么这个项目能火到六万星
这个项目在 GitHub 上短时间就涨到了六万多颗星。原因其实不复杂。现在用 AI 写代码的人太多了,但大家慢慢发现,AI 写出来的代码质量参差不齐。有时候它很强,有时候它又蠢得离谱。
问题的根源不在 AI 会不会写代码,而在 AI 有没有工程纪律。GPT、Claude、Gemini 这些模型本身已经足够聪明了,它们什么语法都懂,什么框架都会。但它们缺的就是一套稳定的、靠谱的干活流程。
Agent Skills 正好补上了这块。它相当于给 AI 装了一个工程操作系统。以前 AI 是凭感觉干活,现在 AI 是按流程干活。流程这个东西,看着死板,但它能保证下限。不管 AI 今天状态好不好,按照流程走,结果都不会太差。
这个项目火,就是因为它解决了一个真实存在的痛点。大家缺的不是更聪明的 AI,而是能让 AI 稳定输出高质量代码的那套规矩。Agent Skills 把规矩给到了,而且给得规规矩矩、明明白白,谁都能上手用。