☰
Superpowers:把AI从聊天助手变成结对程序员的技能体系
2026/10/8 12:21:56 网站建设 项目流程

如果你最近在折腾 AI 编程工具,大概率已经听过 superpowers 这个名字。它不是什么花哨的插件图标,也不是某个模型的新版本,而是 VS Code 生态里一套把 AI 从“聊天助手”变成“结对程序员”的技能体系。我用了大概三个月,从最初觉得“这不就是一套提示词合集吗”,到后来发现它其实重新定义了 AI 参与编码的方式。今天就从安装到核心技能拆解,再到实际踩坑,把整个使用链路从头到尾捋一遍,给想上手的朋友一份可以直接照着做的参考。

1. Superpowers 到底是什么:先搞懂这套技能体系解决什么问题

1.1 从“会聊天的 AI”到“会干活的 AI”:核心痛点的转变

先聊聊我为什么开始关注 superpowers。过去很长一段时间,我习惯在编辑器里装各种 AI 插件,让模型帮忙写函数、补注释、解释报错。效果确实有,但总感觉差一口气:AI 回答得很快,却经常答非所问,尤其是在处理复杂重构、跨文件排查问题的时候,它给出的建议往往只覆盖局部,抓不住全局。这背后的原因是模型默认的交互模式太“被动”了——你问一句,它答一句,没有深入思考的过程,也没有一套稳定的工作流程。

superpowers 的出现就是为了打破这种模式。它本质上是一套运行在 VS Code 扩展里的“技能库”,每个技能(skill)都是一份结构化的 Markdown 指令文件,里面写清楚了 AI 在面对某类任务时应该遵循的思考步骤、检查清单和输出格式。比如“深度代码审查”这个技能,会要求 AI 先分析架构层面的风险,再逐层检查数据流、错误处理、安全性,最后才输出带优先级的修改建议。整个过程不是模型临场发挥,而是按照提前设计好的方法论在执行。

从我实际使用的感受来说,这套体系最大的价值是让 AI 的产出变得“可预期”。你不会再收到那种看似合理、实则漏掉关键边界条件的答案,因为技能文件里已经把人类工程师的思考方式固化进去了。它适合的人群很明确:正在用 AI 辅助编码、但对回答质量不满意的开发者,尤其是需要处理中大型项目、代码审查、测试驱动开发这类复杂任务的团队。

1.2 Skills 机制拆解:不是插件,是结构化的“工作方法”

要理解 superpowers,首先得把“技能”和“插件”这两个概念分开。传统插件是给编辑器增加功能按钮、快捷键、UI 面板,而 superpowers 的技能是一套“行为准则”+“工具组合”。每个技能包含两部分:一部分是给 AI 看的指令文本,另一部分是可能调用的外部工具或脚本。当你在对话中触发某个技能时,AI 会先读取对应的 SKILL.md 文件,按照里面的步骤执行任务。

我打个比方。普通 AI 对话就像你找了个实习生,你跟他说“帮我把这段代码重构一下”,他凭感觉就上手改了,改完你可能还得返工;而 superpowers 相当于给这个实习生一本操作手册,手册里写着“先列出当前模块的所有依赖关系,再找出重复逻辑,制定重构方案,最后分三步执行,每步都要跑测试”。同样是重构,后者出错的概率低得多,而且过程可追溯。

这套机制的实现也不复杂。技能文件通常放在项目的.superpowers目录下,或者扩展自带的技能包里。文件采用 Markdown 格式,里面用---分隔的 YAML frontmatter 定义技能的名称、描述、适用场景,正文部分则是详细的指令。AI 通过 MCP(Model Context Protocol)协议读取这些文件,所以技能可以被动态加载、按需启用,也可以由团队自定义。这意味着你可以把团队内部的编码规范、代码审查 checklist、发布流程全部写成技能文件,让 AI 在执行任务时自动遵守。

2. 安装与引入:5 分钟把 Superpowers 跑起来

2.1 前置检查:版本、模型与网络环境

安装之前,先确认几个前提条件,不然容易在配置环节卡住。我的环境是 VS Code 1.90 以上版本,操作系统是 macOS,理论上 Windows 和 Linux 也没问题,但路径配置略有差异。superpowers 本身不绑定某个特定模型,它是通过 MCP 与模型通信的,所以你需要一个支持 MCP 的 AI 编程环境——最常见的是 Claude Code,以及部分支持 MCP 的编辑器内 AI 助手。我用的是 Claude 系列模型,配合 OpenAI 兼容接口也能跑,但实测下来 Claude 对技能指令的遵循度更高,尤其是长指令和分步骤任务。

网络方面,因为技能包的下载和 MCP 服务的连接都需要访问远程仓库,如果你的开发环境有严格的网络限制,建议先确认能正常访问 GitHub 和 Open VSX 这两个站点。另外提醒一句,如果公司内网有代理,记得在 VS Code 的代理设置里配好,否则安装扩展后可能一直处于“连接中”状态,这个问题后面排查章节还会讲到。

2.2 完整安装步骤:从 Open VSX 安装到 MCP 配置

第一步是安装扩展本体。在 VS Code 的扩展市场里搜不到 superpowers 的话,可以去 Open VSX 网站下载对应的 .vsix 安装包,然后在扩展面板里选择“从 VSIX 安装”。装完之后左侧活动栏会出现一个新的图标,这就是 superpowers 的入口面板。需要注意的是,安装完成不代表配置完成,你还得在项目目录下创建一个 MCP 配置文件。

具体操作是这样的:在项目根目录打开命令面板(Cmd+Shift+P),输入MCP: Open Configuration,选择创建新的 MCP 配置。文件内容是 JSON 格式,参考下面这段:

{ "mcpServers": { "superpowers": { "command": "npx", "args": ["-y", "superpowers-mcp"], "cwd": "${workspaceFolder}" } } }

保存后重启 VS Code,右下角会弹出提示询问是否信任该 MCP 服务,选择信任。然后在 superpowers 面板里如果看到状态变成绿色,说明 MCP 通信已经建立。我最初在这里踩了个坑:cwd字段没有设置,导致技能文件定位到了错误的目录,AI 一直说找不到技能。加了${workspaceFolder}之后问题立刻消失,这个参数的作用是把当前工作区作为技能查找的根目录。

2.3 引入技能的三种方式:斜杠命令、MCP 工具与自动触发

安装完成之后,你是怎么把技能“用起来”的?我总结了三种方式,对应不同的使用习惯。

第一种是斜杠命令触发。在 AI 对话输入框里敲/,会弹出所有可用技能的列表,比如/deep-think、/code-review、/tdd。这种方式最直观,适合你知道自己需要哪个技能的时候,比如刚写完一个模块,想让它做深度审查,直接输入/code-review就能唤起。

第二种是直接调用 MCP 工具。superpowers 会通过 MCP 暴露一组工具,比如list_skills、read_skill、run_skill。你可以让 AI 自己决定什么时候调用哪个工具,也可以手动在对话中引用工具名称。这种方式灵活,但需要你对工具列表有一定了解。我一般是在和 AI 讨论“怎么做”的时候让它自动选择,它读完技能描述后会自动匹配当前任务。

第三种是自动触发。这是我觉得最惊喜的一点——你在对话中描述任务时,如果任务特征和某个技能的描述匹配,AI 会自动加载对应技能。比如你说“帮我审查一下这个文件的安全性”,AI 就会自动调用安全评审技能。前提是技能描述写得到位,所以如果是自己写的技能,描述部分要仔细打磨。

3. 核心技能逐个拆解:这些 Skills 到底强在哪

3.1 思维链技能:让 AI 先“想清楚”再动手

先聊我最常用的一个技能:思维链,对应命令是/deep-think。这个技能的核心逻辑是强制 AI 在给出结论之前,先输出完整推理过程。听起来很简单,但实际效果差别很大。默认模式下,AI 往往是“边想边答”,遇到复杂问题容易漏掉中间步骤,直接跳到结论;而思维链技能会把整个过程拆成“理解问题、列出已知条件、枚举可能方案、逐个分析可行性、给出推荐方案”几个阶段,每一步都要有明确输出。

我实际用下来的感受是,它特别适合两类场景:一类是模糊需求,比如“这段代码性能不太好,帮我优化一下”,AI 会先追问瓶颈具体在哪,是 CPU 还是内存,再给出针对性的优化建议;另一类是跨模块的架构调整,AI 会先梳理依赖图,再分析改动影响范围,最后才给出实施步骤。我遇到过一次模型在没有思维链的情况下推荐了一个“看似简洁但会破坏现有接口兼容性”的方案,开了深度思考之后,它就会主动检查调用方代码,避免出这种问题。

3.2 深度代码审查:从挑错到架构级把关

代码审查技能(/code-review)是我推荐每个团队都启用的技能。传统的 AI 代码审查往往是“改错别字”级别的,比如变量命名不规范、缺少空指针判断。但 superpowers 的深度审查技能把审查分成五个层级:第一层是语法和类型错误,第二层是逻辑正确性,第三层是数据流和状态管理,第四层是错误处理和边界条件,第五层是架构一致性和扩展性。你可以通过参数控制审查深度,比如只审查某个 diff,或者针对某个模块做全量审查。

值得一提的是,这个技能会要求 AI 在输出审查报告时按“严重程度”分类问题,并且为每个问题标注所属文件、行号和修改建议。我拿它审查过一段同事写的支付回调代码,它发现了一个我在代码评审会上没注意到的竞态条件:两个并发的回调事件可能同时修改订单状态。AI 不仅指出了风险,还给出了加锁和状态机两种解决方案。这种深度已经超出“语法检查”的范畴,接近一个资深工程师的 Code Review 水平了。

3.3 测试驱动开发:逼着 AI 按 TDD 节奏干活

测试驱动开发技能(/tdd)是我最近才真正上手用的,一开始觉得“让 AI 写测试?我自己写不香吗”,但用完之后觉得它确实能把 TDD 的节奏跑起来。这个技能的流程是:AI 先分析你要实现的功能,拆解出几个行为维度的测试用例;然后先写一个失败的测试;接着写让测试通过的最简实现;最后做重构,确保测试仍然通过。

这个过程看起来机械,但有个隐藏的好处:它强制 AI 在动手写功能代码之前,先明确函数的输入输出和边界行为。我有一次让它开发一个日期格式化工具,AI 先写了覆盖时区、闰年、非法输入等 8 个场景的测试,然后才开始实现。后来我把这些测试集成到 CI 里,连续跑了两周,没有出现过一次回归。相比直接让 AI 写功能代码,TDD 技能生成的代码质量确实高一个档次,因为测试本身就是一道护栏。

3.4 其他值得关注的高频技能

除了上面三个,还有几个技能我平时使用频率也很高,简单列一下:

技能名称触发命令适用场景输出特点
重构技能/refactor提取函数、消除重复逻辑、调整模块结构分步骤执行,每步都有测试验证
调试辅助/debug分析报错堆栈、定位根因先列出假设,再逐个验证
Git 协作/commit生成规范的提交信息、整理变更描述遵循 Conventional Commits 格式
安全评审/security-review检查注入、越权、敏感信息泄露风险按风险等级输出漏洞报告

以调试辅助为例,它和我过去用的debugger不同,AI 不会一上来就让你打印日志,而是先根据堆栈信息列出可能的失败原因,再按概率排序逐项排查。有一回线上偶发超时,AI 根据日志锁定了三个可疑点,最后发现是连接池配置问题,而不是代码逻辑错误。这种“先假设后验证”的思路,确实比无头苍蝇式排查高效得多。

4. 实操配置与工作流整合:让 Superpowers 真正贴合项目

4.1 模型端点的配置与切换

很多人装了扩展却发现技能执行得不好,第一个要检查的就是模型端点配置。superpowers 的 MCP 服务本身不提供推理能力,所有技能指令都是由后端模型执行的,所以模型的聪明程度直接决定技能效果。配置路径是.superpowers/config.json,我贴一份我在用的配置模板:

{ "model": { "provider": "anthropic", "apiKeyEnvVar": "ANTHROPIC_API_KEY", "modelName": "claude-sonnet-4-20250514", "temperature": 0.2, "maxTokens": 8192 }, "skills": { "enabled": ["deep-think", "code-review", "tdd", "refactor"], "disabled": [] }, "mcp": { "serverTimeout": 30000 } }

这里provider也可以是openai或者custom,如果你用的是兼容 OpenAI 协议的国内模型服务,可以设置baseUrl指向你的网关地址。temperature我建议设置在 0.2 左右,太高的话模型回答会发散,技能指令的约束力会被削弱;太低的回答又显得机械,缺少灵活性。maxTokens根据你的任务复杂度调整,像深度代码审查这种需要输出长报告的任务,建议给到 8192 以上。

4.2 自定义团队技能:把规范写进 SKILL.md

如果说内置技能是超级英雄的初始装备,那自定义技能就是你给它打造的专属武器。团队可以把自己的编码规范、架构决策记录模板、发布检查清单都写成 SKILL.md 文件,放在.superpowers/skills/目录下,AI 就能在对话中自动加载。

我分享一下我们团队一个实际案例。我们有一个 Java 后端项目,要求所有新增接口必须包含参数校验、统一异常包装、幂等性处理三个要素,以前靠人肉 Code Review 检查,总有漏网之鱼。后来我把这三条规范写成了一份技能,每次 AI 生成接口代码时都会自动对照检查,不满足就主动补充。这份技能的大致结构是这样的:

--- name: api-compliance description: 用于检查新增 API 接口是否符合团队规范 --- ## 检查清单 1. 参数校验:所有入参必须有 @Validated 注解,并定义校验规则 2. 异常包装:方法内不得直接抛出业务异常,必须通过 ResultWrapper 包装 3. 幂等性:写操作必须校验幂等性 key,处理重复请求时返回首次结果 ## 输出要求 - 如果代码不符合清单中任意一项,指出具体行号并给出修改代码 - 输出结果按“不符合项 -> 修改建议 -> 修改后代码”的格式组织

写这个技能文件有几个要点。一是description要写得具体,AI 是靠它来判断何时触发技能的,太笼统的描述会导致 AI 在不该用的时候乱用。二是正文字数不要太多,我实测超过 500 行后,模型对指令的遵循度会明显下降,因为长指令会稀释关键信息的权重。三是尽量用“必须”“不得”这类强约束词,不要用“建议”“可以考虑”,否则 AI 在执行时容易“自由发挥”。

4.3 与现有工作流的结合方式

配置好之后,接下来就是把 superpowers 嵌入到日常开发流程里。我目前的工作流是这样:每天早上打开项目,先让 AI 基于 Git 历史生成一份“昨日变更摘要”,这个是通过自定义技能实现的,AI 会去读git log和git diff,然后输出一份带了影响范围的摘要。接着开始写代码,每完成一个功能模块,用/tdd技能让 AI 补测试;提交合并请求之前,用/code-review做一轮深度审查;如果测试挂了,用/debug技能定位问题。

这样一来,AI 就不是一个偶尔想起来才打开的对话框,而是变成了流水线上固定的一个工位。你可能觉得这样是不是把简单问题复杂化了,但当你习惯了这种流程化协作,再回到“问一句答一句”的模式,你会明显感觉到产出质量的落差。特别是一个项目有多个协作者时,流程化的 AI 辅助能保证每一个人提交的代码都经过同等深度的检查,团队整体质量下限被拉高了。

不过要提醒一点,技能的调用最好有“节奏感”,不要每个对话都挂deep-think,否则每次响应都要多等几秒。我一般在小改动上用短暂模式,重构、审查、调试这类复杂任务才挂深度技能。合理的分工才能让这个工具发挥最大作用。

5. 常见问题与排查技巧实录

5.1 MCP 连接失败与技能不可用

装完扩展最常遇到的问题就是 MCP 连接不上,面板一直显示黄色或红色状态。这时候我一般按照顺序排查:第一,检查.mcp.json里配置的command和args是否正确,特别注意npx是否能正确执行,Windows 上有时需要写成npx.cmd;第二,检查网络能不能访问 npx 的包仓库,如果企业内网限制多,需要在.npmrc里配镜像源;第三,看 VS Code 输出面板的 MCP 日志,里面会有具体的错误信息。

还有一个很隐蔽的问题:如果你之前装过其他 MCP 服务,它们之间有端口冲突的可能性虽然小,但确实存在。我遇到过 superpowers 和另一个工具都使用了默认的 3000 端口,导致服务起不来。解决办法是在配置里给env字段加一个PORT=3001,强制指定一个空闲端口。

5.2 上下文窗口被技能文件撑爆

技能的本质是把指令文本塞进上下文,所以它必然占用 token 配额。如果你的模型上下文窗口是 64k,一个技能文件平均 5k~10k 字符,那 5 个技能同时加载就占了接近一半。遇到这种情况,AI 的回复质量会肉眼可见地下降,因为它“记住”的有效上下文空间变小了。

我的解决办法是“按需启用”,只在.superpowers/config.json里保留当前项目最常用的 3~5 个技能,其他全部放入disabled列表。另外,自定义技能文件要注意精简,如果某个技能确实包含大量参考示例,可以把示例拆到单独的文件里,在指令中用相对路径引用,比如写“具体示例见 examples.md ”,这样 AI 可以根据需要决定是否读取,减轻上下文压力。

5.3 模型输出质量不稳定

技能执行效果时好时坏,这是很多人疑惑的地方。我观察下来,原因主要有两个:一是模型版本更新后行为变化了,某个版本对长指令的遵循度变差;二是任务描述太模糊,AI 即使加载了技能也不知道你想要什么。

针对第一个原因,我的方法是在模型配置里锁版本号,不要用latest这种浮动标签,等模型稳定版出来后手动升级。针对第二个原因,关键在于对话的“开场白”,我会把任务描述拆成“目标 + 约束 + 参考信息”三块。比如“帮我重构PaymentService中的支付逻辑,目标是消除重复代码,约束是不改变外部接口签名,参考信息是我已经梳理的依赖图在docs/deps.md里”。任务描述越清晰,技能指令的发挥空间越大。

5.4 技能文件管理技巧

最后分享几个我维护技能文件的心得。第一,版本管理很重要,.superpowers/目录应该纳入 Git 版本管理,这样技能变更可以被 review 和回滚。第二,技能文件命名用“作用域-行为”的格式,比如java-api-compliance.md,比skill1.md可读性强得多,也方便 AI 根据文件名判断是否匹配当前任务。第三,定期清理不再使用的技能,留着一堆无效技能会占用配置空间,还会干扰 AI 对技能的选择判断。

如果你和团队一起使用,还可以把技能文件单独建一个仓库,通过子模块或者符号链接引入到各个项目里,这样更新一次,所有项目都能同步。当然这样会带来同步时机的管理成本,所以在团队初期,我更推荐每个项目独立维护技能文件,等稳定之后再考虑集中管理。

我在实际使用中最深的体会是:工具只是把方法论固化下来的载体,真正值钱的还是技能文件里写的那套“做事逻辑”。刚开始用 superpowers 时我总觉得内置技能不够用,后来把团队规范写进去之后才找到了正确的打开方式。如果你也想让 AI 在项目里发挥稳定、可预期的生产力,建议从深度审查和 TDD 这两个技能开始,它们覆盖的代码质量场景最通用,学习成本也最低。等跑顺了,再按你的业务场景定制技能,把团队的隐性知识慢慢沉淀进去。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询