关于 config-review-bot
config-review-bot 是用于审计或配置仓库本地 CodeRabbit 设置的技能。它指导开发者基于证据检查生效配置、架构有效性、规则覆盖和评审完成情况,并将设置变更限制在请求范围内。
主要功能
- 01审计仓库本地 CodeRabbit 设置
- 02使用受支持的验证器检查配置架构
- 03检查规则质量与路径覆盖
- 04核实拉取请求评审证据
- 05仅修改明确要求的设置
适用场景
- 01审计仓库当前的 CodeRabbit 配置
- 02对照已跟踪文件检查路径指令
- 03验证请求的配置变更
- 04区分绿色检查状态与评审已完成
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ paulnsorensen/ git-gouda --skill config-review-bot安装后在 Claude Code 中输入/config-review-bot确认已加载。
附带文件evals/evals.json
详细介绍
config-review-bot
审计或配置此仓库的 CodeRabbit。
铁律: 任何配置声明或编辑,都必须有当前证据支持其适用范围和实际生效行为,否则均无效。
范围
此技能涵盖仓库本地的 CodeRabbit 配置。它不会安装 CodeRabbit 应用或 CLI、发起付费审查、发布评论、修改分支保护或规则集,也不会配置其他审查机器人。设置变更需要明确授权。
输入
请求需指定模式:audit [PR <n>]、set up 或 update <change>。仅调用技能时,默认审计当前仓库。
- 阅读仓库说明。若存在仓库 wiki,也要阅读;但不要求必须有 wiki。
- 若请求指定了拉取请求,在提出任何声明前,记录其准确的 head SHA 和 base 分支。
- 阅读
.coderabbit.yaml、仓库设置,以及组织或工作区继承配置的证据。 - 阅读定义仓库行为的构建、测试和 CI 配置。
- 根据证据确定主分支、语言和路径布局,不要凭假设判断。
- 保留用户对范围、严重程度、预设、分支和强制执行方式的明确决定。
- 阅读当前官方 CodeRabbit 文档。所有默认值都视为有时效性,必须在文档中确认。
完成条件:指出生效配置来源是文件、继承配置、UI,还是 unknown;若涉及拉取请求,则记录其 head 和 base。
审计
审计模式为只读。分别报告三项结论:架构有效性、规则质量,以及审查已完成的证据。
架构有效性
- 若
--help确认存在该命令,优先使用coderabbit config validate <path>。 - 先通过 CLI 帮助和当前 CLI 参考文档确认命令和选项名称。
- 否则,使用仓库已有的 YAML 工具,根据官方 JSON Schema 进行验证。
- 仅在受支持的验证器成功时报告 valid。若没有验证器或 Schema 证据,则报告 cannot validate。
- 使用已安装的工具进行审计。安装 CLI 属于设置变更,不是审计步骤。
完成条件:结论为 valid、invalid: <error> 或 cannot validate: <reason>。
规则质量
| 检查项 | 需收集的证据 |
|---|---|
| 反馈与强制执行 | reviews.profile 用于设置反馈量。request_changes_workflow 和分支保护决定合并语义。分别报告。 |
| 分支范围 | base_branches 是一个正则表达式列表,会在默认分支之外增加匹配项。根据当前文档确认这一点。 |
| 审查频率 | 根据当前文档确认增量审查、草稿、自动暂停和速率限制的默认值。 |
| 路径覆盖 | 根据实际跟踪的文件名测试 path_instructions 和 path_filters glob。涵盖点文件、隐藏资源目录、无扩展名脚本、模板,以及 POSIX、Bash 和 zsh 方言。 |
| 测试文件 | 将特定语言的测试文件映射到项目实际使用的测试命令。 |
| 指南 | 检查指南的自动发现、实际适用范围、显式映射和 UI 状态。只有在范围有文档说明或观察到证据时,发现的说明才适用。 |
| 信号策略 | 抑制仅涉及风格一致性的发现。保留安全性和正确性相关的发现。 |
| 重复项 | 定向规则不得重复已有指南、格式化工具、代码检查工具或 CI 检查。 |
| 固定测试数据 | 黄金测试预期应便于审查。排除可丢弃的生成噪声。 |
| 排除项 | 单独报告默认排除项,以及本仓库新增的排除项。 |
检查路径时使用 CodeRabbit 的 minimatch 语义,不要仅凭 Schema 推断。只有具备该仓库的比较证据时,才提出迁移预设的建议。
完成条件:每一行都有发现结论,或有证据支持的明确 no gap。
审查完成情况
绿色状态检查与审查已完成是两种不同的说法。报告审查已运行前,请先核实审查事件、发现的问题,以及确切的拉取请求头 SHA。
设置或更新
- 展示满足请求所需的最小仓库本地配置差异。
- 使用首选验证器验证差异,或说明无法验证的原因。
- 仅更改用户要求的配置。全面替换模板绝不是正确做法。
- 根据用户明确提出的决定,重新检查最终差异。
普通配置请求到展示差异为止。以下每项操作都需要用户明确请求:发布评论、触发付费审查、更改分支保护或规则集、移除 Copilot 审查配置、安装服务或 CLI、提交更改,以及推送更改。
完成标准:已展示差异、已说明验证结论,且每一行都能追溯到用户请求。
配置结构
使用官方架构 https://coderabbit.ai/integrations/schema.v2.json。保持配置精简:
reviews.profile控制反馈数量,不负责执行合并策略。reviews.path_instructions使用{path, instructions}结构的条目,并采用相对于仓库的 minimatch 模式。- 测试具有代表性的已跟踪文件名,包括
skills/**/SKILL.md、skills/**/assets/**、skills/**/references/**、skills/**/evals/**和.github/**。
安全规则
- 编辑前先审计并说明。
- 绝不添加凭据或令牌。
- 有效 UI 设置或继承设置不可见时,绝不推断其内容。应说明证据缺口。
- 绝不根据其他结果声称架构有效、路径覆盖充分或审查已完成。
- 绝不根据
.coderabbit.yaml或单独的状态检查暗示审查已运行。 - 现有策略与请求不一致时,先询问再更改。
警示信号
遇到以下情况时,停止并调查:
- 将绿色状态视为审查已完成的证明;
- 将架构验证通过视为路径或指南覆盖充分的证明;
- 将发现的指令应用到其文档或观测到的作用范围之外;
- 在缺乏工作流和分支规则证据时,将配置级别视为合并强制措施;
- 设置请求扩展为发布评论、付费审查、分支规则、安装服务或提交更改;
- 缺乏对比证据却提出仓库范围的预设迁移。
| 牵强理由 | 不成立的原因 | 必须采取的措施 |
|---|---|---|
| “检查是绿色的,所以 CodeRabbit 已完成审查。” | 状态检查与审查已完成的证据是两种不同的说法。 | 核实审查事件、发现的问题以及确切的拉取请求头。 |
| “架构有效,所以覆盖充分。” | 语法约束无法证明路径或指南覆盖充分。 | 测试具有代表性的已跟踪路径,并报告缺口。 |
| “旧机器人已退役,所以它的指南已停用。” | 指南可能仍保留在文件、继承设置或 UI 状态中。 | 在移除或忽略之前,先搜索相关来源和有效设置。 |
输出
## CodeRabbit <audit | setup>: <repo> [PR <n> @ <head-sha>]
- Schema: valid | invalid: <error> | cannot validate: <reason>
- Effective config source: file | inherited | UI | unknown
- Review completion (PR only): verified @ <sha> | not verified: <reason>
| # | Severity | Confidence | Check | Location | Finding | Recommendation |
|---|---|---|---|---|---|---|
### Evidence gaps
- <what was not checkable and why>
### Proposed diff (setup only)
严重程度:阻断、高、中、低。置信度:对于有引用依据的文件、文档或拉取请求事件,使用 certain;对于可核查但尚未验证的说法,使用 speculative。删除没有证据支持的说法。
行内示例
reviews:
profile: chill
path_instructions:
- path: "skills/**/SKILL.md"
instructions: "Check portability, scope, and resource references."
操作示例
/config-review-bot audit PR 123 at the exact head and base; report findings only
/config-review-bot set up CodeRabbit for this repository; propose and validate only the requested config changes