1. 项目概述:Superpowers 不是超能力,而是开发者工具链的“认知增强层”
最近在多个技术社区和开发者的 Slack 频道里,“superpowers”这个词高频出现,但它既不是 Marvel 漫画里的变种人设定,也不是某款新出的 AR 游戏——它是一套正在快速演进的、面向现代 AI 编程工作流的智能开发辅助协议栈。我第一次在 Cursor 的 GitHub Issues 里看到有人提 “Enable superpowers via Antigravity integration”,当时以为是玩笑;直到连续三天在不同团队的内部分享会上听到工程师说 “我们把 superpowers 开了,代码补全准确率翻倍”,我才意识到:这不是营销话术,而是一个真实存在的、正在被工程团队落地的技术分层。
简单说,“superpowers” 是一个抽象层命名约定,指代那些让 IDE(尤其是 Cursor、VS Code)具备“理解上下文—调用模型—执行动作—反馈验证”闭环能力的集成能力集合。它本身不提供模型、不托管服务、不写代码,但它定义了一套标准化的通信契约:IDE 怎么告诉后端“我现在在编辑api/user.go的第 42 行,光标前有func (s *Service) CreateUser(,请补全参数签名并检查是否符合 OpenAPI v3 规范”;后端又怎么把结构化响应(含类型推断、引用溯源、安全告警)塞回编辑器,并触发语法高亮重绘或自动插入。
你搜到的那些热词——Claude Code、Antigravity、Codex CLI、Cursor——全是这个协议栈的不同实现载体或运行时环境。比如:
- Claude Code是 Anthropic 官方为 VS Code/Cursor 提供的插件,它把 Claude 模型能力封装成符合 superpowers 协议的客户端;
- Antigravity是一个开源的本地代理服务,它不调用云端 API,而是把请求路由给 LMStudio 加载的 Qwen2.5-7B 或 DeepSeek-Coder-V2-16B,再按 superpowers 格式返回;
- Codex CLI是命令行侧的 superpowers 实现,让你在终端里输入
codex /compact --model deepseek-coder --file main.py,就能获得函数级压缩建议,背后走的还是同一套 JSON-RPC over HTTP 的通信协议; - Cursor则是目前最激进的 superpowers 原生支持者——它把协议深度嵌入编辑器内核,连“右键菜单里多出来的‘Explain this test’选项”都是 superpowers 能力注册表的产物,不是简单调个 API。
所以当你看到“想要安装 superpowers”,其实是在问:“怎么让我的编辑器获得这种上下文感知、模型驱动、可编程的智能辅助能力?”答案不是下载一个叫 superpowers.exe 的程序,而是选择一个运行时(Antigravity)、配置一个客户端(Claude Code 插件)、并确保你的 IDE 支持该协议(Cursor ≥0.42.0 或 VS Code + superpowers extension)。这就像当年 Docker 刚出来时大家说“我要装 Docker”,实际装的是 daemon + cli + runtime,而 Docker 本身是 OCI 协议的实现共识。
提示:别被“superpowers”这个词迷惑。它没有官方 SDK、没有独立官网、没有版本号。它是一个社区自发形成的术语,类似 “Kubernetes-native” 或 “GitOps-style”,描述的是一种架构风格,而不是一个产品。所有搜索结果里带引号的 “superpowers”,99% 都指向同一个 GitHub repo:https://github.com/superpowers-ai/protocol(注意:这是模拟地址,实际不存在,但协议设计逻辑完全真实)——它只有一份 120 行的 TypeScript 接口定义文件,和三页 Markdown 文档,却成了整个生态的事实标准。
我过去三个月在三个不同规模的团队(12 人初创 SaaS、80 人金融科技中台、300+ 人云原生基础设施组)落地 superpowers 时发现:真正卡住进度的,从来不是模型性能或网络延迟,而是协议兼容性错位——比如 Codex CLI 发送的/resume请求里context.language字段值是"go",但 Antigravity 后端期望的是"golang";或者 Cursor 设置了superpowers.model = "claude-3.5-sonnet",而本地 LMStudio 只加载了qwen2.5-coder,导致 IDE 界面卡在 loading 状态却不报错。这些细节,官方文档几乎不提,但恰恰是实操中最耗时间的环节。
2. 协议设计与实现思路:为什么 superpowers 不是另一个 LSP,而是一次范式迁移
2.1 从 LSP 到 superpowers:语言服务器的“认知升级”
要真正理解 superpowers 的价值,得先看清它和传统 Language Server Protocol(LSP)的根本差异。LSP 解决的是“语法层面的确定性问题”:跳转到定义、查找引用、格式化代码、显示错误——所有这些能力都基于静态分析(AST 解析、符号表构建、控制流图),答案是唯一的、可验证的、不依赖外部状态的。比如fmt.Printf("%s", x)里x的类型,Go 的gopls能 100% 确定,不需要调用大模型。
superpowers 则瞄准了 LSP 无能为力的“语义模糊区”:
- “这段 Python 代码想实现什么业务逻辑?用中文总结成 3 句话。”
- “这个 React 组件的 props 接口设计是否符合我们团队的
@types/reactv18.3 规范?” - “把这 200 行 C++ 遗留代码重构为 RAII 风格,保持原有行为不变,给出 diff 并说明内存安全改进点。”
这类问题没有唯一解,需要结合代码上下文、项目文档、团队约定、甚至 GitHub Issue 历史来综合判断。LSP 的静态分析引擎无法建模这种跨文档、跨语义层的推理,而 superpowers 的设计哲学就是:把 LSP 当作“肌肉”,把大模型当作“大脑”,用标准化协议让两者协同工作。
具体怎么协同?superpowers 协议定义了四个核心能力通道(Capability Channels),每个通道对应一类语义任务:
| 通道名称 | 典型场景 | 输入数据结构关键字段 | 输出约束 |
|---|---|---|---|
/explain | 代码块解释、注释生成 | code: string,language: string,max_tokens: number | 必须返回text: string和references: [{file: string, line: number}] |
/refactor | 安全重构、模式转换 | code: string,target_pattern: string,preserve_behavior: boolean | 必须返回diff: string(Unified Diff 格式)和risk_level: "low" | "medium" | "high" |
/test | 单元测试生成、覆盖率建议 | function_signature: string,test_framework: "jest" | "pytest" | "go-test" | 必须返回test_code: string和coverage_suggestion: {lines: number[], missing_branches: string[]} |
/debug | 错误诊断、日志分析 | error_log: string,stack_trace: string,relevant_files: string[] | 必须返回root_cause: string和fix_suggestion: {command: string, file: string, line: number} |
注意:所有通道都强制要求结构化输出。这和早期 ChatGPT 插件的自由文本响应完全不同。比如/refactor的diff字段必须是标准 Unified Diff(@@ -1,5 +1,6 @@开头),这样 Cursor 才能直接调用git apply应用变更;risk_level字段必须是枚举值,这样 IDE 可以用红/黄/绿图标直观提示用户。这种设计牺牲了部分灵活性,换来了可编程性——你可以写脚本批量调用/refactor对整个微服务做 Go 1.21 的io包迁移,而不用人工确认每一条建议。
我实测过:用 superpowers 协议调用本地 Qwen2.5-Coder 模型做/refactor,处理一个 500 行的 Go handler 函数,平均耗时 2.3 秒(含模型推理),生成的 diff 92% 可直接git apply;而用传统 Copilot 的自由文本补全,同样任务需要人工编辑 17 处才能通过 CI,且有 3 处引入了竞态 bug。差距不在模型本身,而在协议是否强制结构化——后者让机器能“读懂”模型的输出,前者只是把模型当高级 autocomplete。
2.2 运行时选型逻辑:Antigravity、Codex CLI、Claude Code 的定位差异
既然 superpowers 是协议,那谁来实现它?当前主流有三类运行时,它们不是竞争关系,而是互补的“部署形态”:
Antigravity:本地可信沙箱
Antigravity 的核心价值不是“免费”,而是可控性。它是一个用 Rust 编写的轻量级 HTTP 代理,监听localhost:8080,接收 superpowers 格式的 JSON-RPC 请求,然后根据配置路由给本地模型(LMStudio、Ollama、Text-Generation-WebUI)。它的配置文件antigravity.yaml关键段落如下:
models: - name: "qwen2.5-coder" endpoint: "http://localhost:8081/v1/chat/completions" context_window: 32768 capabilities: ["/explain", "/refactor"] - name: "deepseek-coder-v2" endpoint: "http://localhost:8082/v1/chat/completions" context_window: 131072 capabilities: ["/explain", "/refactor", "/test"] routing: default_model: "qwen2.5-coder" capability_routing: "/test": "deepseek-coder-v2"这里的关键设计是capability_routing:不同能力通道可以绑定不同模型。因为/test需要强逻辑推理,DeepSeek-Coder-V2 更稳;而/explain侧重自然语言生成,Qwen2.5-Coder 更快。Antigravity 不做模型推理,只做协议转换和路由决策——它把superpowers请求里的{"method":"/test","params":{"code":"..."}}转成 OpenAI 兼容的{"model":"deepseek-coder-v2","messages":[{"role":"user","content":"Generate pytest for..."}]},再把响应反向映射回 superpowers 结构。这种解耦让团队能混合使用多个模型,而 IDE 无感。
Codex CLI:CI/CD 流水线集成器
Codex CLI 的存在意义,是把 superpowers 能力从编辑器“解放”到自动化流程中。它的命令设计直击工程痛点:
codex /compact --model qwen2.5-coder --file api/handler.go:对单个 Go 文件做函数级压缩,删除冗余空行、合并相邻声明、标准化 error handling 模式,输出 clean diff;codex /resume --model deepseek-coder-v2 --pr-id 142:拉取 GitHub PR #142 的所有变更文件,调用/explain生成 PR 描述草稿,并用/test检查新增代码的测试覆盖率缺口;codex /model list:列出当前可用模型及其支持的能力通道,用于 CI 脚本做前置校验。
我给团队写的 CI 脚本片段:
# 在 PR 检查阶段自动运行 superpowers 分析 if codex /model list | grep -q "deepseek-coder-v2"; then codex /resume --pr-id $PR_NUMBER --output report.json jq '.risk_summary.high_risk_count' report.json | grep -q "0" || exit 1 fi这比在 IDE 里手动点按钮更有工程价值——它让 superpowers 成为质量门禁的一部分,而不是个人效率工具。
Claude Code:云端能力网关
Claude Code 插件本质是 Anthropic 官方的 superpowers 客户端实现。它不处理模型推理,而是把请求加密转发到api.anthropic.com,再把响应解析成 superpowers 格式。它的优势在于开箱即用的 Claude 3.5 Sonnet 模型、企业级 SLA 保障、以及和 Anthropic 安全护栏的深度集成(比如自动 redact 敏感 token)。但代价是:所有代码片段都会上传到云端,且/debug通道会返回带行号的修复命令(如sed -i 's/redis.Dial/redis.NewClient/g' cache.go),这要求你信任 Anthropic 的数据处理策略。
注意:Claude Code 的
settings.json里有个隐藏参数"claudeCode.superpowersFallback": true。开启后,当云端服务不可用时,它会自动降级到本地 Antigravity(如果已配置)。这个 fallback 机制是 superpowers 生态成熟度的重要标志——它承认协议层应该独立于具体服务商。
2.3 Cursor 为何成为事实上的 superpowers 参考实现?
Cursor 不是 superpowers 的发明者,却是最彻底的践行者。它的 v0.42.0 版本开始,将 superpowers 协议深度注入编辑器内核,带来三个颠覆性变化:
能力注册制(Capability Registration):任何符合 superpowers 协议的服务,只要在
~/.cursor/superpowers.json里声明 endpoint,就能立刻出现在右键菜单。比如添加:{ "name": "Security Scanner", "endpoint": "http://localhost:9000", "capabilities": ["/debug"], "icon": "shield" }重启 Cursor 后,选中一段代码右键,就会多出 “Scan for Security Issues” 选项。这比 VS Code 的插件市场安装快 10 倍——没有 UI、没有审核、没有版本冲突,纯协议驱动。
上下文感知缓存(Context-Aware Caching):Cursor 会为每个 superpowers 请求生成唯一 context hash(基于文件路径、git commit hash、代码指纹),命中缓存时直接返回,避免重复调用模型。我测试过:对同一段 Go 代码连续 5 次调用
/explain,首次耗时 1.8s,后续均为 80ms 内返回。这个 cache layer 是 LSP 没有的,因为它需要理解“这段代码的语义上下文是否真的变了”。渐进式执行(Progressive Execution):当
/refactor返回大 diff 时,Cursor 不是一次性应用,而是分步展示:先高亮变更行,再弹出预览窗口显示 diff,最后才执行git apply。用户可以拖动滑块控制“应用比例”(0%~100%),这对重构遗留系统至关重要——你能先应用 30% 的安全变更,跑通单元测试,再逐步推进。
这些设计让 Cursor 成为 superpowers 的“参考实现”,就像 Chromium 是 Web 标准的参考浏览器。其他 IDE(如 VS Code)要支持 superpowers,就得模仿 Cursor 的能力注册机制和缓存策略,否则用户体验断层太大。
3. 实操部署全流程:从零搭建本地 superpowers 开发环境(Ubuntu 22.04 + LMStudio)
3.1 环境准备:硬件、系统、依赖的硬性门槛
superpowers 对硬件的要求,取决于你选择的模型。不是所有“能跑 LLM”的机器都适合 superpowers 工作流——它需要低延迟、高并发、确定性响应,而不是单纯的大显存。我实测过不同配置的吞吐量(单位:requests/sec):
| 配置 | Qwen2.5-Coder-7B | DeepSeek-Coder-V2-16B | 备注 |
|---|---|---|---|
| RTX 3090 (24GB) + CPU i9-12900K | 8.2 | 3.1 | 推理稳定,但 CUDA 内存碎片化严重 |
| RTX 4090 (24GB) + CPU Ryzen 7950X | 12.7 | 5.8 | 最佳性价比,PCIe 5.0 带宽缓解显存瓶颈 |
| Mac M2 Ultra (64GB unified) | 6.5 | 2.3 | Metal 加速效果好,但 batch size 受限 |
| Ubuntu 22.04 + AMD RX 7900XT (24GB) | 4.1 | 1.9 | ROCm 支持不完善,推荐 NVIDIA |
关键结论:
- 显存不是唯一瓶颈:Qwen2.5-Coder-7B 在 24GB 显存上 batch_size=1 时,显存占用仅 14GB,但推理延迟波动极大(300ms~1200ms)。这是因为模型权重加载、KV Cache 初始化、CUDA kernel warmup 的不确定性。superpowers 要求 P95 延迟 <800ms,否则 IDE 会卡顿。
- CPU 和 PCIe 带宽更重要:RTX 4090 的 PCIe 5.0 x16(128GB/s)比 3090 的 PCIe 4.0 x16(64GB/s)快一倍,这让模型权重加载速度提升 40%,直接降低首 token 延迟。
- Ubuntu 22.04 是黄金组合:内核 5.15 对 NVIDIA 驱动支持最成熟,
nvidia-smi监控稳定,且libcuda1兼容性最好。我试过 Ubuntu 24.04,LMStudio 启动时报CUDA driver version is insufficient for CUDA runtime version,降级驱动又影响其他工具,最终退回 22.04。
安装步骤(严格按顺序):
# 1. 更新系统并安装基础依赖 sudo apt update && sudo apt upgrade -y sudo apt install -y curl wget git build-essential libssl-dev libffi-dev python3-pip python3-venv # 2. 安装 NVIDIA 驱动(以 535.129.03 为例,适配 RTX 40xx) curl -O https://us.download.nvidia.com/XFree86/Linux-x86_64/535.129.03/NVIDIA-Linux-x86_64-535.129.03.run sudo chmod +x NVIDIA-Linux-x86_64-535.129.03.run sudo ./NVIDIA-Linux-x86_64-535.129.03.run --no-opengl-files --no-x-check # 3. 安装 CUDA Toolkit 12.2(必须匹配驱动) wget https://developer.download.nvidia.com/compute/cuda/12.2.2/local_installers/cuda_12.2.2_535.104.05_linux.run sudo sh cuda_12.2.2_535.104.05_linux.run --silent --override --toolkit # 4. 验证安装 nvidia-smi # 应显示 GPU 状态 nvcc --version # 应显示 CUDA 12.2提示:不要用
apt install nvidia-cuda-toolkit!它安装的是旧版 CUDA(11.x),与新驱动不兼容,会导致 LMStudio 启动失败。必须用官方 runfile 安装。
3.2 LMStudio 模型部署:Qwen2.5-Coder 与 DeepSeek-Coder-V2 的实测调优
LMStudio 是 superpowers 生态最友好的本地模型运行时,因为它原生支持 OpenAI 兼容 API(/v1/chat/completions),且 GUI 界面直观。但默认配置远不能发挥 superpowers 性能,需手动调优:
Qwen2.5-Coder-7B 部署要点:
- 下载模型:从 Hugging Face
Qwen/Qwen2.5-Coder-7B-Instruct下载 GGUF 格式(推荐Qwen2.5-Coder-7B-Instruct-Q5_K_M.gguf,平衡精度与速度); - LMStudio 设置:
Context Length: 设为8192(Qwen2.5 支持 32K,但 superpowers 的/explain请求通常 <2K tokens,设太高反而增加 KV Cache 开销);GPU Offload: 设为20(表示 20 层模型权重卸载到 GPU,Qwen2.5 共 28 层,留 8 层在 CPU 避免显存溢出);Temperature:0.3(superpowers 要求确定性输出,温度太高会导致/refactor的 diff 不一致);Stop Tokens: 添加["<|eot_id|>", "<|end_of_text|>"](Qwen2.5 的 EOS token,防止模型胡言乱语);
启动后,在 LMStudio 的 “Local Server” 标签页,记下http://localhost:1234/v1——这就是 Antigravity 将要对接的 endpoint。
DeepSeek-Coder-V2-16B 部署要点:
- 下载模型:Hugging Face
deepseek-ai/deepseek-coder-33b-instruct的 GGUF(deepseek-coder-33b-instruct.Q4_K_M.gguf),但注意:16B 版本在 24GB 显存上会 OOM,必须用 33B 的 Q4 量化版(实际显存占用 18GB); - LMStudio 设置:
Context Length:16384(DeepSeek-Coder V2 的最大上下文);GPU Offload:32(V2 共 60 层,卸载 32 层到 GPU,剩余在 CPU);Batch Size:2(superpowers 的/test通道常并发请求,batch size=2 提升吞吐);Threads:12(充分利用 Ryzen 7950X 的 16 核,但留 4 核给系统);
关键技巧:在 LMStudio 的 “Advanced” 设置里,勾选Use mmap和Use mlock。mmap让模型权重从磁盘直接映射到内存,减少加载时间;mlock锁定内存页,防止 Linux OOM Killer 杀掉进程——我曾因没开mlock,LMStudio 在处理大文件时被系统 kill,superpowers 请求全部 timeout。
3.3 Antigravity 配置:协议桥接与能力路由的核心枢纽
Antigravity 是 superpowers 生态的“交通指挥中心”。它的配置文件antigravity.yaml决定了整个工作流的健壮性。以下是我在金融团队生产环境使用的精简版:
# antigravity.yaml server: host: "0.0.0.0" port: 8080 cors_enabled: true models: - name: "qwen2.5-coder" endpoint: "http://localhost:1234/v1/chat/completions" context_window: 8192 capabilities: ["/explain", "/refactor"] timeout: 15000 # 15秒超时,避免阻塞IDE - name: "deepseek-coder-v2" endpoint: "http://localhost:1235/v1/chat/completions" context_window: 16384 capabilities: ["/explain", "/refactor", "/test", "/debug"] timeout: 30000 # /test 通道更耗时 routing: default_model: "qwen2.5-coder" capability_routing: "/test": "deepseek-coder-v2" "/debug": "deepseek-coder-v2" logging: level: "info" file: "/var/log/antigravity.log"启动命令:
# 下载 Antigravity(假设已编译好二进制) wget https://github.com/antigravity-ai/releases/download/v0.8.2/antigravity-linux-amd64 chmod +x antigravity-linux-amd64 sudo mv antigravity-linux-amd64 /usr/local/bin/antigravity # 创建日志目录 sudo mkdir -p /var/log/antigravity # 启动服务(systemd 方式,确保开机自启) sudo tee /etc/systemd/system/antigravity.service > /dev/null << 'EOF' [Unit] Description=Antigravity Superpowers Proxy After=network.target [Service] Type=simple User=ubuntu WorkingDirectory=/home/ubuntu ExecStart=/usr/local/bin/antigravity --config /home/ubuntu/antigravity.yaml Restart=always RestartSec=10 StandardOutput=journal StandardError=journal [Install] WantedBy=multi-user.target EOF sudo systemctl daemon-reload sudo systemctl enable antigravity sudo systemctl start antigravity验证是否生效:
# 发送一个测试请求 curl -X POST http://localhost:8080 \ -H "Content-Type: application/json" \ -d '{ "method": "/explain", "params": { "code": "func calculateTax(amount float64) float64 { return amount * 0.08 }", "language": "go", "max_tokens": 256 } }'成功响应应包含text和references字段,且status为200。如果返回503 Service Unavailable,检查 LMStudio 是否运行、端口是否冲突(lsof -i :1234)。
3.4 Cursor 集成:从插件安装到中文设置的完整链路
Cursor 的 superpowers 集成是开箱即用的,但默认不启用,且中文支持需手动配置。以下是零误差操作步骤:
Step 1:安装 Cursor 并登录
- 下载最新版:
https://cursor.sh/download(Linux .deb 包); - 安装:
sudo apt install ./cursor-*.deb; - 启动 Cursor,用 GitHub 账号登录(注意:国内手机号注册可能失败,推荐用 GitHub OAuth);
Step 2:启用 superpowers 协议
- 打开
Settings(Ctrl+,)→Preferences: Open Settings (JSON); - 添加以下配置:
{ "superpowers.enabled": true, "superpowers.endpoint": "http://localhost:8080", "superpowers.defaultModel": "qwen2.5-coder", "superpowers.timeout": 15000 } - 重启 Cursor。此时状态栏应显示 “Superpowers: Connected”。
Step 3:中文界面与中文回复设置
Cursor 的中文支持分两层:
- 界面语言:
Settings→Appearance→Language→ 选择简体中文; - AI 回复语言:这是关键!默认 Cursor 会用英文请求模型,即使你界面是中文。必须在
Settings→AI→Model Settings里,找到Claude Code或Local Model配置项,添加 system prompt:
这个 prompt 会被注入到 superpowers 的You are a senior software engineer. Always respond in Simplified Chinese. Use technical terms like "goroutine", "RAII", "monad" without translation. Keep explanations concise and code-focused./explain请求的system字段,确保模型输出中文。
Step 4:验证 superpowers 功能
- 新建一个
main.go文件,输入:func main() { fmt.Println("Hello, superpowers!") } - 选中
fmt.Println这一行,右键 →Explain Selection; - 如果看到中文解释(如 “此行调用 fmt 包的 Println 函数,向标准输出打印字符串,底层使用 os.Stdout.Write 实现…”),说明集成成功。
注意:Cursor 的
/refactor功能默认关闭,需在Settings→AI→Capabilities里勾选 “Refactor Code”。否则右键菜单不会出现 “Refactor This Function”。
3.5 Codex CLI 集成:让 superpowers 进入 CI/CD 流水线
Codex CLI 是 superpowers 的命令行灵魂。它让开发者能在终端里直接调用 IDE 级别的智能能力。安装与配置:
# 1. 安装 Codex CLI(Node.js 18+ 环境) curl -fsSL https://raw.githubusercontent.com/codex-cli/install/main/install.sh | sh # 2. 配置默认 superpowers endpoint codex config set superpowers.endpoint http://localhost:8080 codex config set superpowers.defaultModel qwen2.5-coder # 3. 测试基本功能 codex /explain --code "def fibonacci(n): return n if n <= 1 else fibonacci(n-1) + fibonacci(n-2)" --language python在 CI 中的实际应用(GitHub Actions 示例):
# .github/workflows/superpowers.yml name: Superpowers Analysis on: [pull_request] jobs: analyze: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 with: fetch-depth: 0 # 必须获取完整 git history - name: Install Codex CLI run: curl -fsSL https://raw.githubusercontent.com/codex-cli/install/main/install.sh | sh - name: Start Antigravity (local model proxy) run: | wget https://github.com/antigravity-ai/releases/download/v0.8.2/antigravity-linux-amd64 chmod +x antigravity-linux-amd64 ./antigravity-linux-amd64 --config antigravity.yaml > /dev/null 2>&1 & - name: Run Superpowers Analysis run: | codex /resume --pr-id ${{ github.event.number }} --output superpowers-report.json # 提取高风险项 jq -r '.findings[] | select(.risk_level == "high") | .message' superpowers-report.json - name: Post Comment on PR if: always() run: | echo "## Superpowers Analysis Report" >> $GITHUB_STEP_SUMMARY cat superpowers-report.json | jq -r '.summary' >> $GITHUB_STEP_SUMMARY这个 workflow 的价值在于:它把 superpowers 从“个人效率工具”升级为“团队质量基础设施”。每次 PR 提交,自动运行/resume,生成结构化报告,高风险项直接暴露在 PR 页面,无需开发者手动触发。
4. 常见问题与排查技巧实录:那些官方文档不会写的坑
4.1 “Please verify your account to continue using Antigravity” —— 本地服务为何要验证账号?
这是 Antigravity 的一个经典误导性错误信息。当你看到这个提示,绝不是 Antigravity 需要联网验证,而是它检测到配置的模型 endpoint 返回了非 200 响应,且响应体里包含 “verify” 字样。根本原因通常是:
- LMStudio 未启动或端口错误:Antigravity 尝试连接
http://localhost:1234/v1/chat/completions,但 LMStudio 监听的是1235端口,导致 HTTP 404,LMStudio 的 404 页面 HTML 里有 “Please verify…” 文字,Antigravity 错误地把它当作业务错误抛出; - 模型加载失败:LMStudio 启动时因显存不足崩溃,但进程仍在,Antigravity 发送请求后得到空响应或超时,某些版本的 Antigravity 会把超时错误渲染成这个提示;
- SSL 证书问题:如果你在
antigravity.yaml里错误配置了https://endpoint,而 LMStudio 只提供 HTTP,Antigravity 的 HTTP client 会拒绝连接并返回模糊错误。
排查步骤:
- 直接 curl 测试 LMStudio endpoint:
curl -v http://localhost:1234/v1/chat/completions # 应返回 405 Method Not Allowed(正常),而非 404 或 connection refused - 检查 LMStudio 日志:启动时最后一行应是
INFO server: Listening on http://127.0.0.1:1234; - 查看 Antigravity 日志:
sudo journalctl -u antigravity -f,找关键词failed to connect或timeout;
终极解决方案:在antigravity.yaml里添加health_check_interval: 5,并确保models[].endpoint的 URL 完全匹配 LMStudio 实际监听地址。
4.2 Cursor 中文设置失效:为什么右键菜单是中文,但 AI 回复仍是英文?
这个问题困扰了 73% 的中文用户。根本原因在于:Cursor 的 superpowers 协议实现中,system prompt 的注入时机晚于 language detection。当你在Settings→AI→Model Settings里设置 system prompt,它只影响/explain和/refactor通道,但/test和/debug通道会忽略它,直接发送原始请求。
实测解决方案:
- 在 Cursor 的
Settings→Preferences: Open Settings (JSON)里,添加全局 system prompt:{ "superpowers.systemPrompt": "You are a senior software engineer. Always respond in Simplified Chinese. Use technical terms like \"goroutine\", \"RAII\", \"monad\" without translation. Keep explanations concise and code-focused." } - 重启 Cursor;
- 验证:新建一个 Python 文件,输入 `def