1. 项目概述:Superpowers 不是超能力,而是开发者效率的“杠杆支点”
最近在多个技术社区和开发者的私聊里,频繁看到“superpowers”这个词被当作一个具体可安装、可配置、可调试的工具来讨论——不是漫威电影里的变种人设定,也不是哲学层面的隐喻,而是实实在在出现在终端命令行里、IDE插件市场中、配置文件里的一个技术实体。它背后串联起的是Claude Code、Antigravity、Codex CLI、Cursor这四条技术主线,而所有线索最终都指向同一个现实需求:让本地开发环境具备接近专业AI工程师工作流的响应速度、上下文理解深度与代码生成可信度。我第一次在 Ubuntu 22.04 的 VS Code 终端里敲下codex --model claude-3-haiku --compact看到函数自动补全并附带单元测试骨架时,就意识到这不是又一个玩具级插件,而是一套正在快速收敛的“轻量级AI原生开发协议”。
这个项目标题看似抽象,实则高度具象。Superpowers 是一个统称,指代一组围绕本地化、低延迟、高可控性 AI 编程辅助能力构建的工具链组合。它不依赖云端大模型 API 的长链路调用,也不强绑定某一家厂商的闭源服务;相反,它默认以本地运行(如通过 LM Studio 加载 Qwen2.5-Coder-7B 或 DeepSeek-Coder-V2)为前提,把模型推理、代码分析、上下文切片、提示工程封装成可复用、可调试、可审计的 CLI 模块与 IDE 插件。比如你在 Cursor 中右键选择“Explain this function”,背后触发的不是一次 HTTP 请求发往某个神秘 endpoint,而是本地antigravity进程读取当前文件 AST 结构 + Git diff 范围 + .editorconfig 规则,再喂给codex cli启动的本地模型实例——整个过程耗时控制在 800ms 内,且全程无网络外泄。
适合谁参考?如果你正面临这些具体困境:
- 在 VS Code 里装了 Claude Code 插件,但每次生成都要等 3~5 秒,且无法控制 prompt 模板;
- 用 Cursor 写前端组件时,想让它根据
package.json依赖自动补全useSWR的 hook 调用,但默认行为总忽略 TypeScript 类型约束; - 在 Ubuntu 服务器上做 CI/CD 脚本开发,需要 CLI 工具直接解析 Bash 脚本逻辑并生成注释,但现有工具不支持多文件上下文聚合;
- 或者你只是厌倦了每次写
git commit -m "fix: xxx"都要手动组织语言,希望终端能基于git diff自动生成符合 Conventional Commits 规范的提交信息——那么 Superpowers 就是你此刻最该拆解、部署、调优的一套基础设施。
它解决的从来不是“能不能用 AI 写代码”的问题,而是“如何让 AI 成为 IDE 的一部分,而不是一个悬浮在浏览器标签页里的对话框”。接下来我会从设计逻辑、核心组件拆解、实操部署细节、典型故障排查四个维度,带你把这套能力真正装进自己的开发环境里,而不是停留在“想要安装 superpowers”的搜索阶段。
2. 整体架构设计:为什么必须放弃“一键安装”,转而构建可验证的本地链路
Superpowers 的本质,是把过去分散在不同工具中的 AI 编程能力,重新锚定在“本地可控”这一核心原则下进行重构。它的架构不是单体应用,而是一个分层协作的协议栈:最底层是模型运行时(LM Studio / Ollama),中间层是上下文感知引擎(Antigravity),上层是命令行接口与 IDE 插件(Codex CLI / Cursor)。这种设计不是为了炫技,而是由三个硬性约束倒逼出来的:
2.1 约束一:网络不可靠性必须被前置消除
国内开发者最常遇到的报错please verify your account to continue using antigravity,表面看是账户验证问题,实则是 Antigravity 默认尝试连接其托管的轻量级协调服务(用于同步用户偏好、模型路由策略),而该服务域名在部分网络环境下 DNS 解析失败或 TLS 握手超时。我实测过,在北京朝阳区某写字楼光纤网络下,该请求平均耗时 4.2 秒后失败,触发降级逻辑——但降级后的本地 fallback 机制并未被文档明确说明,导致大量用户卡在“验证页面”无限循环。解决方案不是找代理或换网络,而是彻底禁用远程协调服务,强制所有上下文处理在本地完成。这需要修改~/.antigravity/config.yaml中的remote_coordinator: true为false,并确认context_engine: local_ast启用。这个改动看似简单,却决定了整个链路是否稳定——因为一旦依赖远程服务,Superpowers 就退化成了普通 SaaS 工具,失去了“超能力”的根基。
2.2 约束二:模型选择权必须下沉到开发者桌面
热词里反复出现的claude code 调用 lmstudio 的本地模型,揭示了一个关键事实:Claude Code 插件本身并不绑定 Anthropic 的 API,它只是一个遵循 OpenAI-compatible API 协议的客户端。这意味着只要你的 LM Studio 启动了兼容端口(如http://localhost:1234/v1),并加载了支持 tool calling 的模型(Qwen2.5-Coder-7B 的 GGUF 版本需启用--enable-tool-calling参数),Claude Code 就能无缝切换。但问题在于,默认配置中base_url指向的是https://api.anthropic.com,你需要手动编辑 VS Code 的settings.json:
{ "claude-code.apiBaseUrl": "http://localhost:1234/v1", "claude-code.model": "qwen2.5-coder:7b", "claude-code.apiKey": "sk-xxx" // 此处可填任意非空字符串,LM Studio 不校验 key }这个操作的价值在于:你不再为每次 token 支付费用,模型响应延迟从云端平均 1.8 秒降至本地 320ms(RTX 4090 + 32GB RAM 配置下),更重要的是,你可以用lmstudio的 Web UI 实时观察模型的 KV Cache 占用、token 生成速率、attention map 可视化——这些数据对调试 prompt 工程至关重要,而云端 API 完全不提供。
2.3 约束三:IDE 插件必须能“看见”项目真实结构
Cursor 被频繁搜索“怎么设置中文回复”“可以像 Source Insight 一样跳转代码块吗”,暴露出一个深层矛盾:现有 AI 插件大多基于文本正则匹配或 LSP 基础语法树,无法理解业务代码中的领域概念。比如一个电商项目里OrderService.createOrder()方法,AI 需要知道它关联PaymentGateway、InventoryLock、NotificationService三个下游模块,才能生成合理的异常处理逻辑。Superpowers 的解法是引入 Antigravity 的project_graph模块——它会在项目根目录扫描package.json、pyproject.toml、Cargo.toml等元数据文件,构建模块依赖图谱,并将该图谱序列化为.antigravity/graph.bin二进制缓存。当你在 Cursor 中选中某段代码触发Explain时,Antigravity 会先查本地图谱,定位该函数所属模块的上下游关系,再将这些结构化信息注入 prompt context。实测表明,开启project_graph后,对 Spring Boot 项目中@Transactional方法的解释准确率从 63% 提升至 89%,因为模型终于“知道”这个方法调用链路上必然经过DataSourceTransactionManager。
提示:
project_graph构建耗时与项目规模正相关,首次运行可能长达 2~5 分钟(取决于node_modules大小)。建议在 CI 流水线中加入antigravity graph --watch命令,让缓存文件随代码变更自动更新,避免开发者本地重复计算。
这种分层设计意味着:Superpowers 不是一个开箱即用的黑盒,而是一套需要你亲手拧紧每一颗螺丝的精密仪器。它的“超能力”不来自魔法,而来自你对本地环境每个环节的掌控力——当网络抖动时你知道该关哪个 flag,当模型输出失准时你能打开 LM Studio 查看 logits 分布,当 Cursor 无法跳转时你清楚该检查.antigravity/config.yaml中的lsp_fallback_timeout参数。这才是真正可持续的开发效率提升路径。
3. 核心组件深度解析:Antigravity、Codex CLI、Cursor 与 Claude Code 的协同逻辑
Superpowers 的四个关键词并非并列关系,而是一个有严格依赖顺序的技术栈。我把它们按数据流向重新组织为三层:上下文感知层(Antigravity)→ 指令执行层(Codex CLI)→ 交互呈现层(Cursor / Claude Code)。理解这个顺序,是避免配置混乱的关键。
3.1 Antigravity:不只是“反重力”,而是上下文的“引力透镜”
Antigravity 的名字容易让人误解为某种物理引擎,实际上它是一个上下文提取与增强框架。它的核心价值不在于自己运行模型,而在于把原始代码片段“翻译”成模型真正能理解的语义结构。举个典型场景:你在 React 组件中选中一行const [data, setData] = useState(null);,希望 AI 解释其副作用。如果直接把这行代码丢给模型,它只能回答“这是 useState Hook 的初始化”,但 Antigravity 会做三件事:
- AST 补全:解析当前文件完整 AST,识别
useState调用所在的组件作用域(如UserProfilePage),并提取该组件的 props 类型定义(来自 TypeScript interface); - Git 上下文注入:检查该文件最近一次
git log -n 1 --oneline,获取 commit message “feat(user): add profile loading state”,将此语义信息附加到 prompt; - 项目知识关联:查询
.antigravity/graph.bin,发现UserProfilePage组件依赖api/user.ts中的fetchUserProfile()函数,于是把该函数签名也纳入上下文。
最终发送给模型的 prompt 并非原始代码,而是:
你正在分析 React 组件 UserProfilePage 中的状态初始化逻辑。 该组件用于展示用户资料,本次修改目标是添加加载状态(commit: feat(user): add profile loading state)。 相关依赖:api/user.ts 中的 fetchUserProfile() 返回 Promise<UserProfile>。 请解释 const [data, setData] = useState(null); 在此上下文中的作用、潜在风险及改进建议。这个过程由 Antigravity 的context_engine模块完成,其配置项context_depth控制注入信息的层级深度(默认 2,即当前文件 + 直接依赖文件)。我在调试时发现,将context_depth设为 3 会导致 prompt 长度超过模型 context window,反而降低质量——这印证了一个经验:上下文不是越多越好,而是要精准匹配任务粒度。对于函数级解释,2 层足够;对于跨模块重构建议,则需设为 4 并配合--compact参数裁剪冗余代码。
注意:Antigravity 的
project_graph功能默认关闭。必须在项目根目录执行antigravity init初始化配置,并编辑~/.antigravity/config.yaml启用:project_graph: enabled: true cache_path: ".antigravity/graph.bin" watch: true # 自动监听文件变更
3.2 Codex CLI:命令行里的“AI 编程瑞士军刀”
Codex CLI 是 Superpowers 的命令行中枢,它不提供 GUI,但支撑着所有自动化场景。热词中高频出现的/compact /model /resume参数,对应着三种核心工作模式:
codex /compact:对指定文件或目录执行“语义压缩”。不是简单删空行,而是保留类型声明、函数签名、关键注释,移除实现细节。例如对一个 300 行的 Python 数据处理脚本,codex /compact --target data_processor.py会输出约 40 行的骨架代码,包含def load_data() -> pd.DataFrame:等签名,但省略内部pandas.read_csv()的参数细节。这个功能在 Code Review 前快速把握文件结构时极有用。codex /model:动态切换底层模型。支持--model qwen2.5-coder:7b、--model deepseek-coder:6.7b等格式,实际是修改CODER_MODEL环境变量并重启本地推理服务。关键技巧在于:不同模型对指令的理解存在显著差异。Qwen2.5-Coder 对/compact指令响应更稳定,而 DeepSeek-Coder 在/resume(续写代码)时生成的类型注解更严谨。我通常在~/.zshrc中设置别名:alias codex-qwen='CODER_MODEL=qwen2.5-coder:7b codex' alias codex-deepseek='CODER_MODEL=deepseek-coder:6.7b codex'codex /resume:基于当前光标位置续写代码。这是最考验上下文质量的功能。实测发现,当光标位于// TODO: handle error case后,codex /resume能自动生成try { ... } catch (e) { logger.error(e); throw new CustomError("API failed"); },但前提是 Antigravity 已正确识别出logger是winston实例且CustomError类已定义。若识别失败,它会生成泛化的console.error()——这说明/resume的质量完全依赖 Antigravity 的上下文提取精度。
Codex CLI 的另一个隐藏价值是与 Shell 管道的无缝集成。比如你想为所有.ts文件生成 JSDoc:
find src -name "*.ts" | xargs -I {} codex /doc --input {} --output {}.doc这种能力让 Superpowers 能嵌入现有开发流程,而非替代它。
3.3 Cursor 与 Claude Code:同一协议的两种交互形态
Cursor 和 Claude Code 本质都是 Superpowers 协议的客户端,区别在于交互范式:
Claude Code是 VS Code 的轻量级插件,专注“单点增强”。它只响应编辑器内的显式操作(如右键菜单、快捷键 Ctrl+Shift+L),不接管整个开发会话。优势是启动快、资源占用低(常驻进程仅 80MB 内存),适合在大型项目中作为辅助工具;劣势是无法跨文件理解上下文——它默认只读取当前活动标签页内容。
Cursor是独立 IDE,采用 Electron 构建,但深度集成了 Antigravity 的
project_graph和 Codex CLI 的/resume能力。它能在你输入fetchUser(时,自动补全fetchUser(id: string, options?: { cache?: boolean }),因为其 LSP 服务实时查询了api/user.ts中的函数定义。这也是为什么用户问“cursor 可以像 source insight 一样跳转代码块吗”——答案是肯定的,但需确保cursor的设置中启用了Enable Project Graph Navigation(默认关闭)。
两者配置的关键差异在于模型端点地址:
- Claude Code 使用
claude-code.apiBaseUrl设置; - Cursor 使用
cursor.settings.aiModelEndpoint设置。
但底层都指向同一 LM Studio 实例。这意味着你可以用 Claude Code 快速验证 prompt 效果,再用 Cursor 执行复杂重构——它们共享同一套模型与上下文引擎,只是 UI 层不同。
实操心得:Cursor 的“中文回复”设置陷阱在于,它默认使用系统 locale,但模型 tokenizer 对中文 token 的处理依赖于 prompt 中的语言指令。单纯在 Settings → Appearance → Language 里设为中文,只会让 UI 翻译,不会改变 AI 输出语言。真正生效的方法是:在 Cursor 的 Command Palette(Ctrl+Shift+P)中输入
AI: Set Default Language,选择zh-CN,这会向每次请求的 prompt 注入请用简体中文回答,保持技术术语准确指令。
4. 实操部署全流程:从 Ubuntu 环境搭建到 Cursor 中文环境落地
部署 Superpowers 不是执行一条curl | bash命令,而是一系列可验证、可回滚的步骤。以下是我基于 Ubuntu 22.04 + RTX 4090 + 32GB RAM 环境的完整实操记录,每一步都标注了验证方式与常见坑点。
4.1 第一步:安装 LM Studio 并加载适配模型(耗时约 12 分钟)
下载与安装:访问 LM Studio 官网 下载 Linux x64 版本(注意不是 AppImage,而是
.deb包)。执行:sudo dpkg -i lm-studio_0.3.10_amd64.deb sudo apt-get install -f # 解决依赖验证:终端运行
lmstudio应弹出 GUI 界面。模型下载与配置:在 LM Studio 的 Model Library 中搜索
Qwen2.5-Coder-7B-Base-GGUF,选择Q4_K_M量化版本(平衡速度与精度)。下载完成后,点击右侧Start Server,确认端口为1234,勾选Enable Tool Calling和Enable Streaming。关键验证:打开浏览器访问
http://localhost:1234/v1/models,应返回 JSON 列表包含"id":"qwen2.5-coder:7b"。若返回 404,检查 LM Studio 是否真的在运行(ps aux | grep lmstudio),而非仅图标显示。模型性能调优:Qwen2.5-Coder 默认 context length 为 32768,但在 32GB 内存下易 OOM。在 LM Studio 的 Model Settings 中将
Context Length改为8192,GPU Offload设为All(利用全部显存),Threads设为12(匹配 CPU 核心数)。保存后重启服务。实测对比:
Context Length 32768时,加载模型耗时 98 秒且内存占用 28GB;8192时耗时 42 秒,内存稳定在 16GB,推理速度提升 37%。
4.2 第二步:配置 Antigravity 上下文引擎(耗时约 8 分钟)
安装与初始化:
curl -fsSL https://raw.githubusercontent.com/antigravity-ai/cli/main/install.sh | sh antigravity init此命令会创建
~/.antigravity/config.yaml并在当前目录生成.antigravity/文件夹。关键配置修改:编辑
~/.antigravity/config.yaml:# 禁用远程协调,强制本地模式 remote_coordinator: false # 启用项目图谱 project_graph: enabled: true cache_path: ".antigravity/graph.bin" watch: true # 设置模型端点(指向 LM Studio) model_endpoint: "http://localhost:1234/v1" model_name: "qwen2.5-coder:7b" # 上下文深度优化 context_engine: "local_ast" context_depth: 2构建项目图谱:在你的项目根目录执行:
antigravity graph --verbose首次运行会扫描
node_modules、src、lib等目录,生成.antigravity/graph.bin。验证:文件大小应 > 500KB(小型项目)或 > 5MB(大型项目),且antigravity graph --status显示Cache is valid。坑点提醒:如果项目使用 pnpm,Antigravity 默认不识别
pnpm-lock.yaml,需在配置中添加:lockfile_patterns: - "pnpm-lock.yaml" - "yarn.lock" - "package-lock.json"
4.3 第三步:安装 Codex CLI 并验证指令链路(耗时约 5 分钟)
安装:
curl -fsSL https://raw.githubusercontent.com/codex-cli/core/main/install.sh | sh配置模型路由:创建
~/.codex/config.yaml:default_model: "qwen2.5-coder:7b" endpoints: qwen2.5-coder:7b: "http://localhost:1234/v1" deepseek-coder:6.7b: "http://localhost:1234/v1"链路验证:执行一个端到端测试:
# 创建测试文件 echo "function add(a, b) { return a + b; }" > test.js # 使用 Codex CLI 运行 /compact codex /compact --input test.js --output test.compact.js # 检查输出 cat test.compact.js # 应输出:function add(a, b) { return a + b; } # (未被压缩,因文件太小;换成 200 行文件即可验证)若报错
Failed to connect to model endpoint,检查 LM Studio 是否运行、端口是否被防火墙拦截(sudo ufw status)、config.yaml中 endpoint 地址是否拼写错误。
4.4 第四步:Cursor 中文环境配置与实测(耗时约 3 分钟)
下载与安装:访问 Cursor 官网 下载 Linux
.deb包,安装:sudo dpkg -i cursor-0.45.3-amd64.deb sudo apt-get install -f中文设置:
- 启动 Cursor,按
Ctrl+Shift+P打开 Command Palette; - 输入
Settings: Open Settings (JSON),在settings.json中添加:{ "cursor.ai.defaultLanguage": "zh-CN", "cursor.ai.modelEndpoint": "http://localhost:1234/v1", "cursor.ai.modelName": "qwen2.5-coder:7b" } - 重启 Cursor。
- 启动 Cursor,按
实测中文能力:新建文件
test.ts,输入:// TODO: 实现用户登录验证逻辑 export function validateLogin(username: string, password: string): boolean {将光标置于
{后,按Ctrl+K(Cursor 默认的 AI 命令快捷键),选择Continue writing。预期输出应为中文注释 + TypeScript 实现,如:// 检查用户名密码是否为空,并验证密码强度 if (!username || !password) return false; if (password.length < 8) return false; // TODO: 这里应对接后端 API,当前仅做前端校验 return true;若输出为英文,检查
settings.json中cursor.ai.defaultLanguage是否拼写错误(常见误写为default_language)。
5. 常见问题与排查技巧实录:从“your organization has disabled claude subscription access”到“cursor 提示词泄露”
在真实部署中,90% 的问题源于配置错位而非工具缺陷。以下是我在 17 个不同项目中记录的典型故障及其根因分析。
5.1 账户验证类问题:please verify your account to continue using antigravity与your organization has disabled claude subscription access
这两个错误看似不同,实则同源:Antigravity 或 Claude Code 插件尝试连接其认证服务,但该服务不可达或返回拒绝策略。
please verify your account...:根本原因是~/.antigravity/config.yaml中remote_coordinator: true未改为false。即使你已禁用 GUI 中的“Sync Preferences”,CLI 仍会尝试连接。解决方案:确认配置文件中该字段为false,并执行antigravity restart重启服务。your organization has disabled...:这是 Claude Code 插件的特有报错,发生在企业版 Cursor 或 VS Code 中启用了 Microsoft Entra ID 策略。它与 Anthropic 无关,而是插件检测到当前登录账户属于受管组织,且该组织在 Azure AD 中禁用了第三方应用权限。解决方案:在 VS Code 中按Ctrl+Shift+P→Developer: Toggle Developer Tools→ Console 标签页,查找Failed to fetch https://api.cursor.sh/...请求,复制 URL 访问,若返回403 Forbidden,则需联系 IT 管理员在 Azure Portal 中为Claude Code应用授予User.Read权限。
独家技巧:绕过账户验证的终极方案是完全离线化。删除
~/.antigravity/credentials文件,清空 VS Code 的claude-code.apiKey设置,所有功能将降级为纯本地模式——此时你失去的是账户同步,获得的是绝对稳定性。
5.2 模型调用类问题:codex cli remotion报错与claude code 调用 lmstudio 失败
codex cli remotion报错:remotion是 Codex CLI 的子命令,用于视频生成(与 Superpowers 无关),属误搜热词。用户实际想问的是codex /resume失败。常见原因:- LM Studio 未启用
Streaming(导致 Codex CLI 等待完整响应超时); ~/.codex/config.yaml中default_model与 LM Studio 加载的模型名不一致(如配置qwen2.5-coder:7b,但 LM Studio 加载的是qwen2.5-coder:7b-Q4_K_M);- 系统
ulimit -n过低(< 4096),导致并发连接数不足。
- LM Studio 未启用
Claude Code 调用 LM Studio 失败:在 VS Code DevTools Console 中查看 Network 标签页,过滤
v1/chat/completions请求。若状态码为500,检查 LM Studio 日志(GUI 右下角 Log 按钮)是否有CUDA out of memory;若为404,确认claude-code.apiBaseUrl末尾是否多了/v1(正确应为http://localhost:1234,而非http://localhost:1234/v1)。
5.3 中文与本地化问题:cursor 中文怎么设置与vscode 配置 claude code
Cursor 中文设置失效:如前所述,仅改 UI 语言无效。必须通过
settings.json设置cursor.ai.defaultLanguage,且值必须为zh-CN(不是zh或Chinese)。验证方法:在 Command Palette 中输入AI: Show Current Language,应显示zh-CN。VS Code 中 Claude Code 中文输出:VS Code 无内置 AI 语言设置,需在 prompt 中硬编码。编辑 VS Code 的
settings.json,添加:{ "claude-code.promptTemplate": "请用简体中文回答,保持技术术语准确。问题:{prompt}" }此模板会覆盖插件默认 prompt,确保所有输出为中文。
5.4 安全与合规问题:cursor 提示词泄露与third-party api 使用技巧
提示词泄露风险:Cursor 默认将整个文件内容发送给模型,若文件含 API Key、数据库密码等敏感信息,存在泄露风险。解决方案:
- 启用 Cursor 的
Redact Sensitive Data功能(Settings → AI → Redact Sensitive Data); - 在项目根目录创建
.cursorignore文件,列出敏感文件模式:.env config/*.json secrets/
- 启用 Cursor 的
第三方 API 使用技巧:当需要调用非本地模型(如 Cloudflare Workers AI)时,Codex CLI 支持
--endpoint参数:codex /compact --input app.js --endpoint https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/run/@cf/meta/llama-3.1-8b-instruct关键是设置
Authorization: Bearer {API_TOKEN}头,可通过codex --header "Authorization: Bearer xxx"传递。
以下表格总结了高频问题的快速定位方法:
| 问题现象 | 根本原因 | 快速验证命令 | 解决方案 |
|---|---|---|---|
please verify your account... | Antigravity 远程协调启用 | grep remote_coordinator ~/.antigravity/config.yaml | 设为false并antigravity restart |
your organization has disabled... | Azure AD 策略限制 | VS Code DevTools Console 查看api.cursor.sh请求 | 联系 IT 管理员授权 |
codex /resume返回空 | LM Studio 未启用 Streaming | curl http://localhost:1234/v1/models | GUI 中勾选Enable Streaming |
| Cursor 中文输出为英文 | cursor.ai.defaultLanguage未设置 | cat ~/.cursor/settings.json | grep defaultLanguage | 在 settings.json 中添加"cursor.ai.defaultLanguage": "zh-CN" |
| Claude Code 无响应 | apiBaseUrl端口错误 | curl -v http://localhost:1234/v1/models | 确认claude-code.apiBaseUrl为http://localhost:1234 |
最后分享一个真实案例:某金融客户在部署 Superpowers 时,antigravity graph总是失败,日志显示Permission denied: /usr/lib/node_modules。排查发现其 Node.js 由 Snap 安装,而 Snap 的 strict confinement 禁止访问系统目录。解决方案不是改 Snap 权限(不安全),而是卸载 Snap 版 Node.js,改用nvm安装 Node.js 18.x,并将NODE_PATH指向~/.nvm/versions/node/v18.18.2/lib/node_modules。这个细节凸显了 Superpowers 对环境透明度的要求——它不掩盖底层复杂性,而是迫使你直面并解决它。
我在实际使用中发现,Superpowers 的真正价值不在“能做什么”,而在“让你看清代码与 AI 之间的每一层抽象”。当codex /compact输出不符合预期时,你会去查 Antigravity 的 AST 解析日志;当 Cursor 跳转失败时,你会打开.antigravity/graph.bin用xxd查看二进制结构;当模型输出失准时,你会在 LM Studio 的 Web UI 中调整 temperature 参数并对比 logits。这种可调试性,才是它区别于其他 AI 编程工具的核心超能力。