大模型应用
已有 .claude/ 体系诊断与增量补齐(不破坏既有资产)
当仓库已存在 .claude/ 目录、需要对照理想形态诊断差距并只做增量追补时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
已有 .claude/ 体系诊断与增量补特定
解决思路
- 确认目标仓库路径(省略参数时用当前目录),先调查既有 .claude/:ls .claude/ 判断是否存在;find .claude/agents -name "*.md" 与 find .claude/rules -name "*.md" 列出 Agent 与 Rules;ls .claude/skills/ 列出 Skills;cat .claude/settings.json 查看 hooks;cat CLAUDE.md | head -80 查看主文件;cat skills-lock.json | head -30 查看技能锁;用 readlink 检查 .claude/workflows/implement-issue-tree.js 的 symlink 目标是否为 ../skills/implement-issue-tree/scripts/implement-issue-tree.js、是否 dangling。若 .claude/ 不存在则引导使用 init-claude 并中断。
- 按 6 个维度诊断与理想形态的差距:2-1 Agent(是否有 research/implement/testing/quality/docs 分类、是否有对应技术层 builder、model 配分是否遵守 实现·调查=sonnet/机械=haiku/横断判断=opus 或 fable、tools 是否最小权限、是否有 skill-author/agent-author/rules-author/docs-writer 等委派 Agent);2-2 Rules(delegation.md、delegation-impl.md、对应主要语言的 coding 规约、security.md 含 OWASP Top 10 与秘密信息防混入、japanese-style.md、conventional-commits.md、code-comment-style.md、out-of-scope-tracking.md);2-3 Skills(列出 npx skills add Fandhe-AI/agent-cli-skills 可导入但未在 skills-lock.json 中的技能,必需项:create-commit、create-pr、create-issue、implement-issue、implement-issue-tree、implement-review、implement-review-pr、update-docs、comment-code);2-4 hooks(SessionStart 是否有日语·委派·Conventional Commits·禁止 --no-verify 的提醒,PostToolUse 是否有按语言的自动格式化);2-5 CLAUDE.md(委派方针的路径切换表、Sub-agents 一览、Rules 一览、Current Skills);2-6 implement-issue-tree 前提(gh auth status、用 gh api "repos/<owner>/<repo>/issues/<既有issue番号>/sub_issues" 验证 sub_issues API(不要用仓库直下的 sub_issues 端点)、workflow js 的存在·目标一致·参照先可解析)。
- 把差距清单按「不足·需追补项」与「既有资产(需上写确认项)」两类格式化提示给用户,取得批准后才进入追补;批准粒度分为全部追补、限定项目追补、既有文件上写需逐项确认。
- 追补缺失 Agent:在 .claude/agents/<category>/<name>.md 添加,frontmatter 使用 name/description(含触发词)/model/tools,键名用 name(subagent_type 是调用参数而非定义键);若仓库有 dotclaude-via-temp 规则则经 _/dotclaude/ 写入,否则可直接写 .claude/。
- 追补缺失 Rules:在 .claude/rules/ 添加;delegation.md 与 delegation-impl.md 参考 Fandhe-AI/agent-cli-skills 实例按目标仓库路径结构定制;code-comment-style.md 与 out-of-scope-tracking.md 缺失时参照 init-claude 的「3-3. rules/ を生成する」雏形骨架,并按目标仓库语言与结构(文档注释形式、目录结构等)调整。
- 补齐缺失 Skills:cd 到目标仓库后执行 SKILLS_CLI_VERSION="1.5.23" 与 npx --yes "skills@${SKILLS_CLI_VERSION}" add Fandhe-AI/agent-cli-skills;失败时输出错误并 exit 1,不回退到未固定版本的 npx skills add;确认 skills-lock.json 已更新。
- 追补 hooks:在 settings.json 添加/更新 SessionStart hook,command 用 echo 输出「<仓库名>: 日语交流 / 作业委派给 subagent 以压低 main 消耗 / 严守 Conventional Commits(禁止 --no-verify)/ implement-issue 在计划批准后实施」;command 中不得嵌入 API key、token、密码,也不得直接展开用户输入;PostToolUse 自动格式化 hook 在确认语言工具存在后提案,仅用户希望时添加。
- 更新 CLAUDE.md:追补缺失章节(委派方针表、Sub-agents 一览、Rules 一览、model 配分表、Current Skills);上写既有章节时仅改已批准项。
- 整备 implement-issue-tree 前提:若不以 named workflow({name: "implement-issue-tree"})调用,则无需放到 .claude/workflows/,直接在 Workflow 工具 scriptPath 指定 .claude/skills/implement-issue-tree/scripts/implement-issue-tree.js 即可;作为 named workflow 放置时必须用相对 symlink 而非 cp(cp 会把 symlink 换成实体文件,导致 npx skills add 的更新无法到达 named workflow)。
- symlink 张り替え前先用 command -v readlink 确认可用;不可用时中断自动张り替え并引导手动处理(否则空 CURRENT_TARGET 会把正常 symlink 误判为 stale)。
- 用 readlink 校验现有 symlink:目标与期望不一致(stale)或参照先消失(dangling)时张り替え;若 $LINK 是指向目录的 symlink 则拒绝自动张り替え并提示手动确认;若是实体文件(非 symlink)则不上写,仅警告并询问是否 symlink 化。
- 张り替え/新建时先把新链接建到不冲突的临时路径 TMP_LINK=<target-repo>/_/dotclaude/workflows/implement-issue-tree.js,确认 mkdir/ln 成功后再用 mv 替换既有链接(不要先 rm,否则 mkdir/ln 失败会丢失旧链接);若 TMP_LINK 已存在(过去失败残留)则不上写并提示确认删除后重试;mv 失败时提示 TMP_LINK 可能残留。
- 设置后检查:若 $LINK 是 symlink 但 [ -e ] 不成立则警告仍 dangling(可能期望目标本身未 vendored),引导用 npx skills add 重新获取;若 symlink 本身不存在则说明是 create/replace 失败(TMP_LINK 残留等),提示先解决错误原因再手动 ln -s 或重试(重跑 npx skills add 无法恢复)。
- sub_issues API 不可用时引导用户启用 GitHub Apps。
- 报告追补结果:追补的文件一览与变更内容、跳过的项目及理由、implement-issue-tree 运行前提的满足状况、需要手动设置的后续动作指引。
- skills CLI 版本固定与更新:用 npm view skills version 确认 latest、npm view skills repository.url 确认是 vercel-labs/skills、npm view skills time --json 确认发布时间无异常;更新时改 Step 4-3 中唯一的 SKILLS_CLI_VERSION 定义处,用 node --test skills/update-claude/tests/*.mjs 验证 exact semver 与执行行固定,在 1 个仓库实跑确认差异正常,以 chore(update-claude): skills CLI を X.Y.Z へ更新 提交,并建议同步更新 init-claude / sync-skills-lock 的同名节(值同步非必须,若背离需在某一节记录)。
- 验证:find <target-repo>/.claude -type f | sort、ls <target-repo>/CLAUDE.md、cat skills-lock.json | head -20、用 readlink 检查 workflow js 的目标一致与参照先解析、gh auth status。
适用边界 · 注意事项
- 目标仓库不存在 .claude/ 目录时(应改用 init-claude 做全新搭建)
- 未获得用户对诊断结果的批准、或未对既有文件取得个别上写许可时
- 环境中没有 readlink 命令时(无法正确判定 stale/dangling,应中断自动张り替え并手动处理)