code-review:config-manager

📁 ridewind/my-skills 📅 3 days ago
1
总安装量
1
周安装量
#54020
全站排名
安装命令
npx skills add https://github.com/ridewind/my-skills --skill code-review:config-manager

Agent 安装分布

mcpjam 1
github-copilot 1
replit 1
junie 1
windsurf 1
zencoder 1

Skill 文档

Code Review 配置管理器

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

配置文件位置

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

  • 全局配置: ~/.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: 自动发现并更新 Skills

扫描环境中所有可用的 skills,识别与 code review 相关的技能。

2.1 扫描可用 Skills

使用 Glob 工具查找所有 SKILL.md 文件:

Glob: **/SKILL.md

2.2 识别 Review 相关 Skills

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

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

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

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

2.3 提取 Skill 元信息

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

id: "skill:name"           # 从 SKILL.md 的 name 字段
name: "显示名称"            # 从 name 字段
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 更新配置文件

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

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

读取当前配置文件,保留 presets 部分,只更新 available_skills 和 metadata.last_updated。

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

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

available_skills:
  - id: "code-review:code-review"
    name: "基础代码审查"
    category: "代码质量"
    description: "..."
    tags: ["basic", "quality"]
    recommended_for: ["所有项目"]
  # ... 更多 skills

2.5 显示更新结果

向用户报告:

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

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 格式有效

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


脚本工具

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

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.1.0"
  last_updated: "2025-01-15"
  auto_sync: true

available_skills:
  - id: "code-review:code-review"
    name: "基础代码审查"
    category: "代码质量"
    description: "检查代码质量问题"
    tags: ["basic", "quality"]
    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 名称一致