
1. 为什么AI编程“快而不稳”是我最先想聊的痛点不知道你有没有经历过这种场景让AI帮忙写一个登录模块第一版代码三分钟就出来了速度确实快。结果你往项目里一接发现它自动引用了一个不存在的user_roles字段数据库里根本没有这张表。你让它改它改了字段名顺手又把查询逻辑也改了你再让它恢复它开始跟你讨论“是不是应该新建一张表”。一个小时过去原本三分钟写完的活还没并入主线。这就是我过去大半年用AI编程最真实的感受——快是真快稳是真不稳。不是说模型能力不行而是直接让大模型“裸写”代码这件事本身就不符合它的工作方式。大模型的本质是“根据前文预测下一个token”它没有项目管理意识没有“我现在需要先确认需求再动手”的本能更不会主动给自己设置验证关卡。上下文稍微一长它就飘前面说好的技术栈、约定、命名规范隔了几轮对话后就变成它自己理解的一套了。这种“快而不稳”的状态几乎每天都在消耗开发者的时间。你以为省了半小时结果调试、纠偏、返工又花掉两小时。我身边不少同事已经得出结论AI编程最大的瓶颈不是模型不够聪明而是缺少一套约束它“按流程办事”的机制。后来我接触到Superpowers——一套运行在Claude Code之上的开源技能增强体系。它要解决的就是这个“快而不稳”的问题核心思路不是堆提示词而是把人类开发者的工作方法固化成一堆可复用的“技能”skills让AI每次动手前先规划、动手后自检把可靠变成默认行为。这篇文章我就想把自己实际使用Superpowers的整套流程、核心机制、安装方式和踩坑经验完整梳理一遍。如果你已经在用Claude Code写代码但频繁被返工折磨或者你刚听说Superpowers想知道它到底能干什么、怎么安装、那些skills具体怎么引入——这篇文章应该能帮你把这些问题一次性理清。2. Superpowers不是提示词而是一套“技能操作系统”先澄清一个常见误解Superpowers不是某个“超级提示词”不是一段复制进去就能让AI变强的咒语。它是一套以Markdown文件为载体的技能库外加一整套调用机制。你可以把它理解成给AI配了一本《专业工作手册》手册里不是空泛的原则而是逐条可执行的操作流程、完成标准、验证清单。2.1 一个skill到底是什么每个skill就是一个文件夹核心是一个叫SKILL.md的文件。这个文件用结构化的方式描述三件事什么时候该用这个技能——比如“用户要求修改现有代码行为时使用Refactor”具体怎么执行——分步骤的操作流程包括先读什么文件、要做什么分析、按什么顺序改动怎么算完成——明确列出验证清单AI做完后必须逐条自检举个例子Plan这个skill规划技能会要求AI先收集需求、提出问题、输出一份包含文件改动清单的技术方案然后停在那里等你确认而不是马上敲代码。Implementation技能则专注把方案变成实际代码每一步都要对照Plan执行。Testing技能会要求AI先写出测试用例再跑测试验证。每个skill都像是一份“行为准则说明书”AI一旦激活对应skill就会按照这份说明书走完整个流程。2.2 普通提示词和Superpowers的本质区别这可能是很多人最困惑的点。普通提示词和skill看起来都是“给AI一段文字”但两者的生命周期完全不同。普通提示词是一次性的。你今天写“请先分析需求再写代码”AI照做了明天新开一个会话它又把这件事忘了因为提示词没有沉淀下来。而且提示词只能描述“结果应该是什么样”很难约束“过程应该怎么走”。Superpowers的skill是可复用、可组合、可更新的。你初始化一次之后每次新会话AI都能通过读取skills目录重新获得这套工作方法。它描述的不只是“结果”更是“过程”——先做什么、再做什么、卡住怎么办、做完怎么验收。我用一个生活化的类比普通提示词就像你跟厨师说“给我做一份红烧肉”厨师凭感觉发挥味道全看当天状态Superpowers是递给厨师一张标准菜谱卡上面精确到五花肉切多大块、炒糖色到什么程度、炖多少分钟、出锅前怎么验收。同一张卡换一个厨师也能做出稳定水平的菜。2.3 Superpowers的层次结构从我的实际使用来看Superpowers大致分三层第一层是交互面板。在Claude Code里输入/superpowers会唤出一个可视化面板展示当前可用的所有skills你可以勾选启用哪些技能。第二层是skills库。这是一堆SKILL.md文件按功能分成几大类核心工作流类Plan规划、Implementation实现、Testing测试、Refactor重构研究调查类Investigate排查问题、Web网页抓取与分析、Browser浏览器操作、Read文档阅读内容协作类Brainstorm头脑风暴、Writing写作、Improving Writing润色文件操作类File Operations文件读写、Run命令执行第三层是底层组件库Superpowers背后依赖一个叫craft-ai-toolkit的组件集提供跨语言、跨框架的可复用开发组件让skill不只是“说话”而是真正能调用文件系统、执行命令、操作浏览器去完成任务。这三层叠在一起才构成了完整的“超能力”体验底层组件保证AI有手有脚中层skills保证AI按规范办事上层面板保证你能灵活调度。3. 把Superpowers装进Claude Code的完整路径安装这部分官方文档更新很快我一直建议以仓库README为准。我下面写的是自己多次安装验证过的一套流程照着走基本不会出大问题。3.1 环境准备首先你得有一个能跑的Claude Code环境。如果你还没安装先装Node.js 18以上版本然后执行npm install -g anthropic-ai/claude-code装完后在任意目录执行claude能正常进入会话说明基础环境OK。这里提醒一句最好在项目根目录使用Claude Code因为Superpowers的很多skills需要基于项目上下文来工作比如读文件、写文件、跑测试没有一个明确的项目目录技能就成了无根之木。3.2 克隆Superpowers仓库并初始化接着把Superpowers仓库克隆到本地。我习惯放在用户目录下的隐藏目录里git clone https://github.com/obra/superpowers.git ~/superpowers cd ~/superpowers npm install npm run setupnpm run setup这一步是关键的——它会帮你做两件事一是安装底层依赖二是把skills目录的引用写入你的项目CLAUDE.md文件。如果你执行完发现没有CLAUDE.md生成也可以手动创建在里面加上一行引用/Users/你的用户名/superpowers/skills注意这里要用绝对路径别用~这种简写某些版本的Claude Code解析波浪号会失败。路径写好后保存重启Claude Code会话。3.3 验证安装是否成功进入项目目录启动Claude Codeclaude在会话里输入/superpowers正常情况下会弹出技能管理面板列出当前可用的skills清单。你也可以直接对AI说“请读取 skills 目录列出所有可用技能。”如果AI能准确报出Plan、Implementation、Testing这些名字说明引用成功。一个小技巧安装完之后我会让AI“用自己的话复述一遍Superpowers的使用流程”确认它真的读懂了SKILL.md的内容而不只是找到了文件。这一步能提前发现路径引用错误、文件解析失败等隐患。3.4 安装时最容易踩的坑我装过不下五次踩过的坑基本就这几个第一CLAUDE.md被覆盖没备份。setup脚本可能会改写你的CLAUDE.md如果你之前在里面配过其他重要的项目说明记得先复制一份备份。我自己吃过亏初始化后发现自己原来写的一堆项目规范没了。第二路径里有空格或中文。某些版本对路径解析不够健壮建议把Superpowers整个目录放在纯英文路径下。第三GitHub访问不稳定导致git clone失败。这个问题在国内网络环境下很常见我一般直接退而求其次把仓库打包下载解压到本地目录再手动做引用。只要SKILL.md文件都在本地目录和克隆仓库效果是一样的。第四引用了但AI不生效。多数情况是因为会话缓存了旧的上下文退出重进一次就好。如果还不生效检查引用行是不是被放进了注释块里注释里的内容AI是看不到的。4. 从“让AI自己写”到“按流程交付”可靠性的底层逻辑安装只是开胃菜真正有价值的是理解Superpowers为什么能让AI交付变得更可靠。我用了几个月后复盘出几个核心机制。4.1 先规划后编码打断“直接写”的默认行为裸用Claude Code时AI的默认行为是“你给需求我直接出代码”。这个默认行为恰恰是大多数翻车事故的根源——需求本身可能就有歧义AI连问都不问就开写写完才发现理解偏了。Superpowers给AI设的第一条铁律就是任何非平凡的功能开发必须先走Plan流程。Plan skill会强制AI做一套标准动作复述它对需求的理解列出所有不确定、需要用户澄清的问题等用户回答完毕后输出一份技术方案方案里必须包含涉及哪些文件、每个文件怎么改、有什么风险然后停下来等用户确认这一步彻底改变了AI的工作节奏。过去它像急着交卷的学生现在变成了先打草稿、再誊写的稳当型选手。我实际体验最明显的改善是AI不再自作主张了。它开始主动提问主动确认而不是闷头输出一堆带着假设的代码。4.2 验证闭环完成标准不是“写完了”而是“验证通过了”普通AI编程最大的问题是没有验收机制。AI把代码交给你就认为任务完成至于代码能不能编译、测试过不过、有没有破坏其他模块它一概不管。问题留给谁留给你。Superpowers的每个skill都内置了“验证步骤”。比如Implementation技能完成代码编写后会自动检查语法、跑相关测试Testing技能会先明确“要覆盖哪些用例”再动手写测试。它定义了一个新标准只有验证通过任务才算完成。这一点有多重要我举个例子。以前我让AI重构一个工具函数它改完后自信地说“完成”结果一跑测试六个用例挂了四个。后来走Refactor技能流程它先梳理这个函数的所有调用方列出改动影响面再分步修改每一步都跑一遍测试完成后还要把测试结果贴出来。整个流程慢了一些但一次通过率大幅提升。4.3 上下文治理把长任务拆成短流程降低“飘移率”大模型对话一长就容易“飘”前面约定好的事情后面就忘。Superpowers应对这个问题的方式很务实用流程拆分对话。每个skill都是一段相对短小、目标明确的对话流程Plan阶段产出的方案文档会作为下一阶段的输入被重新加载而不是依赖模型记住几十分钟前的对话内容。换句话说它把“一长段不可靠的上下文”拆成“多段可靠的短上下文”。每段短上下文只聚焦一个任务模型不容易跑偏。这比任何提示词技巧都治本。4.4 用户确认点关键决策留在人手里还有一个容易被忽略的设计Superpowers在关键节点会强制设置“用户确认点”。规划完成后要你确认重大文件改动前要你确认实施结束后要你确认。它不会一股脑把所有事情全干完而是每到一个决策点就停下来问你“这样行不行”。这个设计的好处是AI走偏的代价被实时截断了。它可能在第五步走错方向但你第三步就发现了顶多损失两步的工作量而不是等它把所有代码都写完才发现整个方向错了。我把裸用Claude Code和接入Superpowers的差异整理成一个表方便你直观感受维度裸用Claude Code接入Superpowers任务启动直接出代码先出方案、列问题等你确认文件改动凭对项目的猜测直接改先读文件、列改动清单、再动手完成定义代码写完就算完成自检清单全部通过才算完成出问题时反复对话往回掰按技能流程回滚到上一步重来经验沉淀对话结束就消失固化成skill下次还能用返工率高容易在细节上反复显著下降但流程耗时增加这张表是我自己真实体验的总结。Superpowers确实牺牲了一部分“第一轮出活的速度”换来了整体交付的稳定性。如果你追求的是“三分钟出一个能跑的版本”那种爽感它可能不适合你如果你追求的是“写完不用大改”它几乎是目前最好的选择。5. 日常项目里的Superpowers打开方式常用skills与组合实战说了一堆机制来点实际的。我个人在项目里最常用的就那几个skill组合起来基本覆盖了80%的日常开发场景。5.1 常用skills清单速览技能名称使用时机典型产出Brainstorm需求模糊需要梳理方向多角度的方案选项Plan需求明确准备动手含文件改动清单的技术方案Implementation方案已确认开始编码贴合方案的具体代码Testing代码写完补测试测试用例与测试结果Refactor既有代码结构调整分步重构方案与验证记录Investigate遇到线上问题但原因不明根因分析报告Writing / Improving Writing写文档、整理注释、润色README高质量文本内容5.2 实战给订单模块加Redis缓存我拿一个很常见的需求走一遍完整流程你感受一下Superpowers的“技能编排”是怎么玩的。第一步激活Plan。我在对话里输入Plan或在/superpowers面板中勾选Plan然后说“给订单模块的查询接口加Redis缓存缓存key怎么设计你帮我一起定一下。”AI会进入规划模式先问我几个问题需要缓存哪些查询条件失效时间打算多长缓存更新策略是主动刷新还是被动过期有没有分布式部署、需不需要考虑缓存穿透这些问题回答完之后它输出一份Plan内容包括缓存key的设计方案比如order:{id}:{timestamp}还是order:list:{userId}:{page}涉及文件OrderService.java、OrderController.java、配置类改动步骤先加配置再侵入查询逻辑再补缓存工具类风险说明缓存与数据库一致性问题、可能出现的脏读场景看到这份Plan我会针对性调整key设计和失效策略然后说“确认按这个方案执行”。AI才会进入下一步。第二步激活Implementation。我把Implementation写在对话里它会严格按Plan文件操作先读OrderService.java现在的代码再定位查询方法注入缓存逻辑。整个过程会边做边说明“我马上要改OrderService.java第120行这个改动只影响queryById这一个方法”。它改一屏停一下等你看到改动合理了再继续。第三步激活Testing。实现完成后我要求它写测试。它会把缓存命中、缓存未命中、缓存过期三种情况列出来然后写单元测试用例最后跑一遍。这一套组合拳下来改动全链路都有记录、有验证、有确认点。过去这种需求我可能要跟AI来回拉锯十几次现在基本“配速”稳定在半小时之内完成而且上线后不用返工。5.3 平时怎么调度这些技能我不太会每次都手动输入SkillName那样太累。更高效的方式是在项目CLAUDE.md里声明默认工作流。比如我会写一句“本项目所有功能开发默认遵守先Plan确认后Implementation再Testing验证。”这样新会话启动后AI会主动按这套流程走不需要每次手动指定。还有一个经验不要一上来就全量启用所有skills。每个skill被激活都会占用一定的上下文窗口全量启用会导致模型可用的思考空间变小。我建议平时只开Plan、Implementation、Testing、Refactor这几个核心的需要的时候再临时激活其他技能。资源要给最核心的流程用。6. 用了几个月的真实体验这些坑和建议值得你知道最后分享一些文档里不会写的经验。这些东西是我踩了坑、试了错之后才明白的。6.1 流程不是越重越好小任务要“走快通道”Superpowers的完整流程在功能开发、重构、排障这些场景下非常好用但如果你只是让AI改一行文案、修一个拼写错误、补一个注释走完整套Plan→Implementation→Testing流程就太笨重了。这种小任务直接描述清楚、让它马上改就行别启用任何技能。我自己定了个简单标准改动范围不超过3个文件、不涉及逻辑调整的任务走快通道超过这个范围必须走完整流程。6.2 skill版本和Claude Code版本存在兼容问题这是我最想提醒的一点。Superpowers更新很勤某些新版skill对Claude Code有版本要求。我遇到过的最典型问题某次升级后Plan skill生成的方案里出现了一堆乱码标签任务根本无法执行。排查到最后发现是skill用了更新的Markdown语法而我的Claude Code版本太老解析不了。如果你也遇到这种诡异问题第一反应别是怀疑自己的配置先去看看skill仓库的版本更新记录再对比一下Claude Code版本。锁定版本组合不要两边都保持最新这是稳定使用的关键。6.3 自定义skill没有想象中难用的时间长了你会发现官方自带的skills不一定完全贴合你的工作习惯。比如我做前端项目时希望AI每次提交前自动检查图片资源是否压缩、组件是否有无用的样式残留。这些定制需求Superpowers完全支持。我给自己写过一个“前端交付检查”skill流程非常简单复制一个现有skill的文件夹改SKILL.md的内容把“什么时候用”“怎么用”“完成标准”三段描述清楚保存后在CLAUDE.md里引用新目录重启会话就生效了。整个过程十来分钟。写的时候注意让描述足够具体AI才不会读成“空话”。比如“检查组件样式”不如“扫描每个组件的style标签移除类名超过10个且样式内未使用的选择器”。6.4 开会前别让AI用Brainstorm这个建议可能有点个人化但我真的吃过亏。Brainstorm技能会引导AI输出大量方向性的想法这适合需求探索不适合你已经明确要做什么的时候。你明明说“给订单接口加个缓存”它给你列了六种缓存架构方案还分析了每种方案的优缺点信息量很大但完全不解决问题。需求明确时直接用Plan需求模糊时才用Brainstorm。这两者别混用。6.5 团队协作时CLAUDE.md纳入版本管理如果你在团队里推广Superpowers一定要把CLAUDE.md和skills引用一起提交到代码仓库。否则每个同事都要手动配一遍而且配置不一致会导致AI行为差异很大。我现在的做法是仓库根目录的CLAUDE.md里写清楚“技能库引用路径和工作流约定”新成员clone项目后按照README里的步骤跑一次npm run setup就能获得和团队一致的AI工作流。6.6 会话开头花五分钟“对齐上下文”最后分享一个我自己一直在用的小习惯。每次启动新会话进入正题之前我会先跟AI说“请先读取项目CLAUDE.md和skills目录总结本项目的工作约定和技术栈然后复述给我。”确认它复述对了再开始干活。这五分钟的“对齐动作”能避免后面一小时的返工也是我对Superpowers“可靠”体验的一个重要补充——工具给你搭好了骨架但每次开工前对齐上下文这个习惯永远值得你亲自坚持。用了几个月的Superpowers我的体会是它没有让AI编程变“快”太多但让我的项目从“写完就提心吊胆”变成了“写完基本能跑”。如果你正在被AI返工折磨不妨照着这篇文章装一套试试感受一下“按流程交付”和“凭感觉写码”之间的差距。