Files
superpowers-zh/site
AI不止语 1f66b091b7 fix(site): 官网工具墙停在 20 款 —— Cline / Kilo Code / Crush 的用户在下拉里找不到自己的工具
起因是核对首页:统计块写着「20 支持工具」,同一屏下面的标题写着「一套 skill,
23 款工具通用」,FAQ 里又老老实实枚举了 23 款。三处自己打自己。

根因:文案计数早就跟着 installer 改到了 23,但 `site/build.mjs` 的 `TOOLS`
数组从来没人补 —— audit 只校验文案里的数字,不校验列表本身。

## 1. 工具列表补 3 款 + 修 4 处错的

`TOOLS` 20 条 -> 23 条(= TARGETS 22 条 + Copilot CLI 单独计数)。
统计块的 `20` 是硬编码的,改成 `TOOLS.length`。

漏的三款(installer 一直支持,官网从没有过):Cline、Kilo Code、Crush。

已有条目里查出的错(逐条实测过命令):

| 条目 | 原来 | 现在 | 依据 |
|---|---|---|---|
| Claw Code | `--tool claw` | 直接 `npx superpowers-zh` | detect 是 `.claw` / `CLAW.md`,实测能自动检出 |
| Hermes Agent | `--tool hermes` | `--global --tool hermes` | 官方只自动加载 `~/.hermes/skills/`,项目级要手写 config.yaml,给项目级命令等于给「装了不生效」 |
| Qwen Code | 类型 IDE | CLI | 它是 QwenLM/qwen-code 命令行工具,不是通义灵码 |
| Antigravity | 类型 CLI | IDE | Google 的 AI IDE,docs/README.antigravity.md 里本来就这么写 |

`auto: true/false` 两态不够用了(Hermes 是「能检出但项目级不生效」),换成
`mode: auto / manual / global`,三语各补一条对应说明文案。

## 2. FAQ 的「支持全局」清单少了 4 款

写着 7 款,installer 实际 11 款 —— CodeArts / Crush / Hermes / CodeBuddy
陆续拿到 `--global` 之后这句话没跟。三语同步补齐。
两版 README 的同一句也少了 CodeArts(v1.7.11 补 --global 时漏改),一并修。

## 3. skill 详情页有 6 条死链

`SKILL.md` 里指向兄弟文件的相对链接(`implementer-prompt.md`、
`../requesting-code-review/code-reviewer.md` 等)站点上根本没有这些 .md:
`../` 开头的直接 404,不带 `./` 的被 md.mjs 的 scheme 白名单打成 `href="#"`
—— 点了没反应,比 404 还难查。

`renderMarkdown(src, base)` 加基址参数,相对链接解析到 GitHub 源文件。
5 个目标地址逐个 curl 过,都是 200。全站扫描:死链 0、`href="#"` 0。

## 4. 加两条门禁,堵住这次的漏法

audit 原来只数文案里的数字,这次两个问题它一个都发现不了。补:

- 官网 `TOOLS` 条目数必须 = TARGETS + 1
- 官网 FAQ 全局清单必须包含 installer 里每个带 `global:` 的工具

反向验证过:删掉 Crush、去掉 CodeArts,两条各自报错。

audit 170 pass / 0 fail(新增 2 条);verify-release 114 pass / 1 fail,
唯一那条是 windsurf.com 返回 429 限流,改动前的干净树上同样失败,与本次无关。
2026-08-28 21:48:01 +08:00
..

superpowers-zh 官网

零依赖静态站生成器。一条命令产出中/英双语站点 + 每个 skill 的详情(操作文档)页,内容全部来自 ../skills/*/SKILL.md,与源文件同步、不会漂移。

构建 / 预览

node site/build.mjs          # 生成 site/dist/66 个页面)
npx serve site/dist          # 本地预览(或 python3 -m http.server

产物结构:

dist/
  index.html              # 中文首页
  sponsors.html           # 中文赞助商页(每种语言一份)
  en/index.html           # 英文首页
  skills/<name>.html      # 中文 skill 详情(操作文档)× 20
  en/skills/<name>.html   # 英文 skill 详情 × 20
  styles.css  app.js      # 深/浅主题 + 交互(原生 JS零依赖
  assets/                 # 图标 + 公众号/抖音二维码
  _headers                # Cloudflare Pages 缓存策略

特性

  • 中英双语服务端生成两套真实页面非前端切换SEO 友好、无闪烁。导航栏「中文 / EN」互切。
  • 深 / 浅主题CSS 变量 + localStorage 记忆,内联脚本在首屏前生效,无白屏闪烁。导航栏 ◐ 按钮切换。
  • Skill 详情页:内置零依赖 Markdown 渲染器(md.mjs),把每个 SKILL.md 渲染成完整操作文档,支持标题/代码块/表格/列表/引用。
  • 安装命令生成器、Skill 搜索 / 分类筛选、一键复制 —— 全部原生 JS。

改内容改哪里

想改什么 改哪里
Skill 正文 / 文档内容 源头 skills/<name>/SKILL.md(改完重新 node site/build.mjs
Skill 中/英标题、英文简介、分组 site/build.mjsSKILL_META
首页所有文案(中/英) site/build.mjsT.zh / T.en
支持工具 / 安装命令 site/build.mjsTOOLS(与 bin/superpowers-zh.jsTARGETS 对齐;每条的 mode = auto 自动识别 / manual 必须 --tool / global 只有 --global 才生效)。条目数由 scripts/audit.sh 卡死 = TARGETS 条目数 + 1Copilot CLI 单独计数)
赞助商logo / banner / 文案 / 链接 / 优惠码) site/build.mjsSPONSORSlogo 小图标 + img 大 banner 都放 assets/sponsors/,构建时自动拷进 dist/assets/sponsors/)——首页不放赞助内容,全部在 sponsors.html改完同步改 README.md / README.zh-Hant.md 的赞助商区块
赞助商页文案 / 赞助权益 / 赞助 FAQ site/build.mjsT.<lang>.sp
谁上旗舰位 SPONSORS 里该条的 tier'flagship' 用大 banner 单独成块(读 img),其余是紧凑卡(读 logo,简介截 4 行);没有 flagship 时该区块渲染成「虚位以待」招商卡
样式 / 主题 site/template/styles.css
交互逻辑 site/template/app.js
Markdown 渲染规则 site/md.mjs

部署到 Cloudflare Pages

发布目录 site/dist,三选一:

方式 A — 连接仓库自动构建(推荐,无需密钥)

Cloudflare Dashboard → Pages → 连接 GitHub 仓库 jnMetaCode/superpowers-zh

  • Build commandnode site/build.mjs
  • Build output directorysite/dist

之后每次 push 自动重建发布。绑自定义域名(当前线上:sp.aiolaola.com)。

方式 B — 命令行一键发布

npx wrangler login                  # 浏览器登录(交互,仅首次)
npm run site:deploy                 # = 构建 + wrangler pages deploy site/dist

在本会话中可用 ! 前缀直接登录:!npx wrangler login

方式 C — GitHub Actions 自动部署

仓库已含 .github/workflows/deploy-site.yml。在 Settings → Secrets and variables → Actions 配置:

  • CLOUDFLARE_API_TOKENPages 编辑权限)
  • CLOUDFLARE_ACCOUNT_ID

之后 site/skills/ 变更 push 到 main 即自动部署。


国内访问优先用 Cloudflare Pages + 自定义域名GitHub Pages 在国内访问较慢,不建议作为主站。