SuperAPI AI 工具集

local-build-check

通用与其它

查看项目

更新于 10-16 06:49

技能介绍

用途:在打开 PR 前对 MongoDB 文档仓库 content/ 目录的待提交改动运行本地构建检查,用 Snooty RST 解析器提前捕获构建错误,避免等到 Netlify 才发现问题。

主要能力:可识别损坏的指令(如 Unknown directive type)、错误的 include 路径、未知引用、重复标签、无效替换、缩进错误、格式错误的角色等。脚本会自建 Python venv(使用 uv,缺失时自动安装),以 DIAGNOSTICS_FORMAT=JSON 运行 snooty build,解析 ERROR 与 WARNING 诊断;有错误时设置 OVERALL_RC=1。首次运行需安装 Snooty,约 1–3 分钟,之后小项目数秒、大型项目(如 Atlas 约 4700 文件)约 45 秒。可通过 --refresh-snooty 获取更新版本。

使用方式:运行 bash .claude/skills/local-build-check/scripts/check.sh(显式使用 bash,不依赖执行位)。脚本自行检测改动项目,若无 content/ 改动则输出“No pending content/ changes — nothing to build-check.”。结果写入 /tmp/local-build-check-<timestamp>.log,JSON 诊断写入 /tmp/snooty-diagnostics-<project>-<timestamp>.log,并在结束时写 /tmp/lbc-latest.log 符号链接。技能读写仓库内被 gitignore 的 .claude/build-errors/ 目录,含 knowledge.md(模式→修复配方)与 log.jsonl(逐行 JSON 错误日志)。

适用场景:仅覆盖 content/ 目录。若改动全在 code-example-tests/,应改用 Grove 技能;若全在 platform/,应停止并提示用户在 platform/ 目录运行 pnpm typecheck 和/或 pnpm lint。用户只想做内容审阅而非构建检查时也不适用。

限制:只验证构建,不检查 SEO/可发现性,不运行 ./lint-docs.sh。对 EOL(7.0 之前)版本目录只报告诊断、不应用修复。自动修复循环最多两轮,仍失败则停止并列出全部剩余错误。歧义修复需先询问用户,最多给出三个最可能选项。预存警告不阻塞,仅以计数形式列出。