mirror of
https://github.com/jnMetaCode/superpowers-zh.git
synced 2026-09-02 22:54:06 +08:00
## Crush(#40) 查权威源(charmbracelet/crush repo 文档)确认:Crush 遵循 Agent Skills 开放标准, 项目级**自动发现** .crush/skills、.agents/skills、.claude/skills、.cursor/skills 四个目录,无需任何配置;用户级为 ~/.config/crush/skills。 重要副作用写进了 docs:已经为 CC / Cursor / Codex / Antigravity 装过的用户, Crush 现在就已经能读到那些 skills,此时不要再装 --tool crush,否则同一批 skills 会有两份、被重复加载。docs 里给了确认命令。 - TARGETS 加 Crush(detect: .crush / crush.json / .crush.json),支持 --global - CLI_PROBES 加 crush(它是 CLI,PATH 探得到) - skills-only 适配,不需要 bootstrap;不动用户的 crush.json - 新增 docs/README.crush.md - 计数 22 -> 23(installer TARGETS 22 条 + Copilot CLI 单独计) 实测:装 20 skills / 二次装幂等 / 卸载零残留且正确保留用户的 crush.json; --global 装到 ~/.config/crush/skills 并可干净卸载。 ## audit Category 5 当场抓到我漏改的 5 处 加计数时忘了 site/build.mjs 的 5 个位置(三语言标语 + FAQ 枚举)。上个版本 新加的计数一致性检查直接 FAIL 拦下 —— 这是它第一次在真实改动中生效。已补 site 18 处并重建,三语言首页 23 计数、0 残留、Crush 均已出现。 ## verify-release.sh 有同样的漂移问题,已修 它有自己独立的覆盖清单,加新工具时不进去就静默不测(本次 Crush 就是: 分数仍是 82,因为压根没测它)。 - SPEC / DETECT / GLOBAL_OK 三处补 Crush - 顺带发现 B 段还漏了 3 个工具的检测标记:DeerFlow(deer_flow)、 VS Code(.github/copilot-instructions.md)、Gemini CLI(GEMINI.md)—— 后两个是文件而非目录,DETECT 循环原先一律 mkdir,现按扩展名区分创建方式 - 新增 G 段自检:SPEC 覆盖数必须等于 installer 宣称的工具数; DETECT 覆盖的工具名集合必须包含全部 TARGETS 名字(用集合比对而非数条数 —— 一个工具可以有多个检测标记,数数会误判) 覆盖从 82 项升到 90 项。 回归:audit.sh 152 pass / 0 warn / 0 fail、verify-release.sh 90 pass / 0 fail
superpowers-zh 官网
零依赖静态站生成器。一条命令产出中/英双语站点 + 每个 skill 的详情(操作文档)页,内容全部来自 ../skills/*/SKILL.md,与源文件同步、不会漂移。
构建 / 预览
node site/build.mjs # 生成 site/dist/(42 个页面)
npx serve site/dist # 本地预览(或 python3 -m http.server)
产物结构:
dist/
index.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.mjs 的 SKILL_META |
| 首页所有文案(中/英) | site/build.mjs 的 T.zh / T.en |
| 支持工具 / 安装命令 | site/build.mjs 的 TOOLS(与 bin/superpowers-zh.js 的 TARGETS 对齐) |
| 样式 / 主题 | 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 command:
node site/build.mjs - Build output directory:
site/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_TOKEN(Pages 编辑权限)CLOUDFLARE_ACCOUNT_ID
之后 site/ 或 skills/ 变更 push 到 main 即自动部署。
国内访问优先用 Cloudflare Pages + 自定义域名;GitHub Pages 在国内访问较慢,不建议作为主站。