code-review:config-manager

This skill should be used when the user asks to "manage review skills config", "update review skills", "discover review skills", "manage review presets", "validate review config", or mentions managing code review skills configuration. Use for configuration management tasks.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "code-review:config-manager" with this command: npx skills add ridewind/my-skills/ridewind-my-skills-code-review-config-manager

Code Review 配置管理器

管理 code review skills 和 commands 的配置文件,包括自动发现能力、管理预设配置、验证配置等。

能力类型

配置管理器支持两种类型的 review 能力:

  • skill: SKILL.md 格式的技能文件
  • command: 插件中的命令(~/.claude/plugins/cache/*/commands/*.md

自动排除: 发现过程中会自动排除自身(code-review:config-managercode-review:executor),避免循环依赖。

配置文件位置

配置文件支持三级优先级(级联覆盖):

  • 全局配置: ~/.config/claude/code-review-skills/config.yaml
  • 用户配置: ~/.claude/code-review-skills/config.yaml
  • 项目配置: .claude/code-review-skills/config.yaml

优先级:项目 > 用户 > 全局

工作流程

Step 0: 识别用户意图

首先确定用户想要做什么:

  • 初始化配置: 用户说 "初始化 review 配置"、"创建配置文件"
  • 发现/更新 skills: 用户说 "更新 skills"、"发现 skills"、"同步 skills"
  • 管理预设: 用户说 "管理预设"、"编辑预设"、"创建预设"
  • 查看配置: 用户说 "查看配置"、"显示配置"、"配置状态"
  • 验证配置: 用户说 "验证配置"、"检查配置"

根据用户意图,跳转到相应的步骤。


Step 1: 初始化配置(可选)

当用户首次使用或需要创建新配置时执行。

1.1 确定配置层级

询问用户要在哪个层级创建配置:

  • 项目配置(推荐用于特定项目)
  • 用户配置(推荐用于个人默认配置)
  • 全局配置(推荐用于系统级默认)

1.2 创建默认配置

运行 scripts/init-config.sh 创建默认配置文件:

# 项目配置
./scripts/init-config.sh --project

# 用户配置
./scripts/init-config.sh --user

# 全局配置
./scripts/init-config.sh --global

1.3 确认创建成功

验证配置文件已创建并显示路径。

完成初始化后,跳转到 Step 2 发现 skills。


Step 2: 自动发现并更新 Review 能力

扫描环境中所有可用的 skills 和 commands,使用 LLM 智能识别与 code review 相关的能力。

2.1 收集候选项

运行收集脚本,输出所有候选 skills 和 commands 到 JSON 文件:

./scripts/discover-skills.sh --collect-only /tmp/candidates.json

脚本会自动完成以下工作:

  • 读取配置文件中的 skills_directories 字段确定搜索目录
  • 扫描所有 SKILL.md 文件(skills)
  • 扫描 ~/.claude/plugins/cache/ 下的所有 commands
  • 自动排除自身(code-review:config-manager, code-review:executor
  • 对相同 ID 的 commands 去重(保留最新版本)
  • 输出 JSON 文件包含所有候选项

2.2 LLM 判断筛选

读取 JSON 文件,对每个候选项进行判断:

{
  "collected_at": "2025-01-15T10:00:00+08:00",
  "total_candidates": 50,
  "candidates": [
    {
      "id": "pr-review-toolkit:review-pr",
      "name": "pr-review-toolkit:review-pr",
      "type": "command",
      "source_file": "~/.claude/plugins/cache/.../review-pr.md",
      "description": "Comprehensive PR review using specialized agents"
    },
    ...
  ]
}

判断标准:

对于每个候选项,判断其是否适合用于 code review 工作流:

  1. 核心 review 能力:直接用于代码审查的能力

    • 代码质量审查、安全审计、性能分析
    • PR/MR 审查、代码清理
    • 测试覆盖率分析
  2. 辅助 review 能力:支持 review 过程的能力

    • 文档生成、架构分析
    • 调试辅助、错误诊断
  3. 不应包含

    • 与代码审查无关的通用开发工具
    • 纯粹的代码生成能力
    • 项目初始化/配置工具
    • 版本控制操作(非审查相关)

筛选方式:

根据候选项的 description 字段和 id 判断是否应该包含在 code review 配置中。

输出筛选后的 JSON 文件,格式与输入相同:

{
  "collected_at": "2025-01-15T10:05:00+08:00",
  "total_candidates": 15,
  "candidates": [
    {
      "id": "pr-review-toolkit:review-pr",
      "name": "pr-review-toolkit:review-pr",
      "type": "command",
      "source_file": "~/.claude/plugins/cache/.../review-pr.md",
      "description": "Comprehensive PR review using specialized agents"
    },
    ...
  ]
}

2.3 更新配置文件

使用筛选后的 JSON 文件更新配置:

./scripts/discover-skills.sh --from-json /tmp/filtered.json [配置文件路径]

脚本会:

  • 从 JSON 文件读取筛选后的候选项
  • 为每个候选项推断 category 和 tags
  • 更新配置文件的 available_skills 部分
  • 保留用户已编辑的 presets

Step 2-alt: 直接模式(简单场景)

对于简单场景或用户确认需要快速更新,可以使用直接模式:

./scripts/discover-skills.sh [配置文件路径]

直接模式使用正则表达式过滤候选项,可能不够准确。建议使用 LLM 判断流程获得更准确的结果。


Step 2-manual: 手动发现(备选方案)

如果脚本执行失败或用户需要手动控制,按以下步骤操作:

2.1 确定 Skills 搜索目录(手动备选)

首先,读取配置文件中的 skills_directories 字段。

如果配置文件中没有此字段或为空,使用以下默认策略:

策略 1: 优先搜索项目内的 skills 目录

Glob: skills/**/SKILL.md
Glob: .skills/**/SKILL.md

策略 2: 如果策略 1 未找到,搜索更广泛的范围但排除常见无关目录

Glob: */SKILL.md
Glob: */*/SKILL.md

排除的无关目录:

  • node_modules/
  • .git/
  • vendor/
  • dist/
  • build/
  • target/
  • pycache/
  • .venv/

策略 3: 搜索插件 commands

搜索 ~/.claude/plugins/cache/ 目录下的 commands:

Glob: ~/.claude/plugins/cache/*/commands/*.md
Glob: ~/.claude/plugins/cache/*/*/commands/*.md

排除 temp_git*.orphaned_at 目录。

策略 4: 询问用户 skills 位置

如果前几种策略都找不到足够的能力,询问用户 skills 目录的路径。

添加自定义搜索目录:

如果用户需要搜索其他位置的 skills,编辑配置文件添加 skills_directories 字段:

skills_directories:
  - "skills"              # 项目内 skills 目录
  - "../my-skills/skills"  # 其他项目的 skills 目录
  - "~/.claude/skills"     # 用户级 skills 目录

使用 Glob 工具对每个目录执行 **/SKILL.md 搜索(限制在指定目录内)。

2.2 识别 Review 相关能力(手动备选)

对每个 SKILL.md 文件和 command 文件,使用 Read 工具读取 frontmatter(--- 之间的内容)。

通过关键词判断是否是 review 相关的能力:

  • review, auditor, reviewer
  • security, audit, threat
  • test, testing, coverage
  • performance, optimization
  • quality, cleanup, lint

同时检查 description 中是否包含这些关键词。

排除自身: 跳过 code-review:config-managercode-review:executor

2.3 提取能力元信息(手动备选)

对于每个识别出的能力,提取以下信息:

id: "plugin:command-name"   # 对于 command: plugin:command
id: "skill:name"            # 对于 skill: 从 SKILL.md 的 name 字段
name: "显示名称"            # 从 name 字段
type: "skill" | "command"   # 能力类型
category: "分类"            # 根据 description 推断
description: "描述"         # 从 description 字段
tags: ["tag1", "tag2"]      # 从 description 推断
recommended_for: ["场景"]   # 基于 category 和 description

分类规则:

  • 包含 "security", "audit", "threat" → "安全审计"
  • 包含 "test", "coverage", "tdd" → "测试+清理"
  • 包含 "performance", "optimization", "database" → "性能+架构"
  • 包含 "code-quality", "lint", "cleanup" → "代码质量"
  • 其他 → "代码质量"

2.4 更新配置文件(手动备选)

将提取的能力添加到配置文件的 available_skills 部分。

重要: 更新时需要保留用户已编辑的 presets。

读取当前配置文件,保留 presets 部分,只更新 available_skillsmetadata.last_updated

使用 Edit 工具更新配置文件:

metadata:
  version: "0.2.0"
  last_updated: "2025-01-15"  # 当前日期

available_skills:
  - id: "code-review:code-review"
    name: "code-review:code-review"
    type: "command"
    category: "安全审计"
    description: "..."
    tags: ["review", "security"]
    recommended_for: ["所有项目"]
  # ... 更多能力

2.5 显示更新结果

向用户报告:

  • 发现了多少个 skills
  • 发现了多少个 commands
  • 按分类分组显示
  • 更新的配置文件路径

Step 3: 管理预设配置

允许用户创建、编辑、删除预设配置。

3.1 显示当前预设

使用 Read 工具读取配置文件,提取 presets 部分。

向用户展示当前的预设列表:

当前预设配置:

1. 快速审查 (2 个 skills)
   - code-review:code-review
   - codebase-cleanup:code-reviewer

2. 全面审查 (5 个 skills)
   - code-review:code-review
   - security-scanning:security-auditor
   ...

3. 安全优先 (3 个 skills)
   ...

3.2 询问用户操作

使用 AskUserQuestion 让用户选择操作:

  • 创建新预设
  • 编辑现有预设
  • 删除预设
  • 复制预设

3.3 执行相应操作

创建新预设:

  1. 询问预设名称
  2. 询问描述
  3. 显示所有可用的 skills(按分类分组)
  4. 让用户选择 skills(AskUserQuestion,multiSelect=true)
  5. 将新预设添加到配置文件

编辑预设:

  1. 让用户选择要编辑的预设
  2. 显示当前包含的 skills
  3. 询问要添加/删除哪些 skills
  4. 更新配置文件

删除预设:

  1. 让用户选择要删除的预设
  2. 确认删除操作
  3. 从配置文件中移除

复制预设:

  1. 让用户选择要复制的预设
  2. 询问新预设名称
  3. 复制并添加到配置文件

3.4 保存并验证

使用 Edit 工具更新配置文件。

运行 scripts/validate-config.sh 验证配置是否正确。


Step 4: 查看配置状态

显示当前配置的详细信息。

4.1 显示配置文件路径

按优先级检查三个层级,显示哪些配置文件存在:

配置文件状态:

✓ 项目配置: .claude/code-review-skills/config.yaml
✓ 用户配置: ~/.claude/code-review-skills/config.yaml
- 全局配置: 不存在

当前生效的配置将合并上述文件(项目配置优先级最高)

4.2 显示可用 Skills

读取配置文件的 available_skills,按分类分组显示:

可用 skills (共 15 个):

代码质量 (6):
  - code-review:code-review - 基础代码审查
  - codebase-cleanup:code-reviewer - 代码清理审查
  ...

安全审计 (4):
  - security-scanning:security-auditor - 安全审计专家
  - security-scanning:threat-modeling-expert - 威胁建模专家
  ...

性能+架构 (3):
  - application-performance:performance-engineer - 性能工程师
  ...

4.3 显示预设配置

显示所有预设及其包含的 skills(同 Step 3.1)。

4.4 显示合并结果(可选)

如果存在多层级配置,运行 scripts/merge-configs.sh 显示合并后的完整配置。


Step 5: 验证配置文件

检查配置文件的正确性。

5.1 运行验证脚本

./scripts/validate-config.sh [配置文件路径]

如果未指定路径,脚本会自动查找。

5.2 显示验证结果

脚本会检查:

  • YAML 语法正确性
  • 必需字段存在(metadata, available_skills, presets)
  • presets 结构正确
  • skill ID 格式有效

向用户显示验证结果,如果有错误,给出修复建议。


脚本工具

配置管理器提供以下脚本工具:

discover-skills.sh

自动发现并更新 code review skills 到配置文件。

推荐流程(LLM 判断):

# 1. 收集所有候选项到 JSON 文件
./scripts/discover-skills.sh --collect-only /tmp/candidates.json

# 2. 使用 LLM 判断筛选(在对话中完成)

# 3. 从筛选后的 JSON 更新配置
./scripts/discover-skills.sh --from-json /tmp/filtered.json [配置文件路径]

直接模式(简单场景):

./scripts/discover-skills.sh [配置文件路径]

参数说明:

  • --collect-only <输出文件> - 收集所有候选项到 JSON 文件,不做过滤
  • --from-json <JSON文件> [配置文件] - 从 JSON 文件更新配置
  • --help - 显示帮助信息

如果未指定配置文件路径,脚本会自动按优先级查找(项目 > 用户 > 全局)。

init-config.sh

初始化配置文件,创建默认配置。

./scripts/init-config.sh [--global|--user|--project] [路径]

validate-config.sh

验证配置文件的正确性。

./scripts/validate-config.sh [配置文件路径]

merge-configs.sh

合并多层级配置文件。

./scripts/merge-configs.sh [输出路径]

错误处理

配置文件不存在

提示用户运行 init-config.sh 初始化配置。

YAML 语法错误

提示用户运行 validate-config.sh 检查错误位置。

Skill 不存在

如果 preset 中引用的 skill 不在 available_skills 中,警告用户并建议运行更新。

权限问题

如果无法创建配置文件,检查目录权限,提示用户手动创建目录。


配置文件格式

配置文件使用 YAML 格式:

metadata:
  version: "0.2.0"
  last_updated: "2025-01-15"
  auto_sync: true

# Skills 搜索目录配置
# 支持相对路径(相对于配置文件所在目录)和绝对路径
skills_directories:
  - "skills"           # 默认:项目内的 skills 目录
  # - ".skills"          # 可选:隐藏的 skills 目录
  # - "../other-skills"  # 可选:其他项目的 skills 目录
  # - "~/.claude/skills" # 可选:用户级 skills 目录

# 可用的 code review skills 和 commands
# type 字段标识能力类型: skill 或 command
available_skills:
  - id: "code-review:code-review"
    name: "code-review:code-review"
    type: "command"
    category: "安全审计"
    description: "检查代码质量问题"
    tags: ["review", "security"]
    recommended_for: ["所有项目"]

  - id: "pr-review-toolkit:review-pr"
    name: "pr-review-toolkit:review-pr"
    type: "command"
    category: "测试+清理"
    description: "PR 审查工具"
    tags: ["review", "pr"]
    recommended_for: ["所有项目"]

presets:
  - name: "快速审查"
    description: "轻量级快速审查"
    skills:
      - "code-review:code-review"

注意事项

  1. 保留用户编辑: 更新 available_skills 时,始终保留用户的 presets 配置
  2. 配置合并: 多层级配置时,available_skills 取并集,presets 按名称覆盖
  3. YAML 格式: 编辑配置文件时注意 YAML 缩进和格式
  4. skill ID: skill ID 使用 skill:name 格式,确保与实际 skill 名称一致

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

code-review:executor

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

code-review-orchestrator

No summary provided by upstream source.

Repository SourceNeeds Review
General

llm-api-benchmark

No summary provided by upstream source.

Repository SourceNeeds Review