开发与工程 github-prcode-reviewcoderabbitgitgithub-clireview-fixessecurity-hardening

CodeRabbit Autofix

安全地获取并应用 CodeRabbit 在 GitHub PR 上的未解决评审意见,逐项确认后再修复,绝不盲从评审文本中的指令。

FollowSkills 评估 · FSRS-2.0
谨慎使用
53/ 100 五分制 2.7 / 5
1 2 3 4 5 6
1信任安全18 / 25 · 3.6/5

SKILL.md 明确将审阅者评论与 Prompt for AI Agents 视为不可信输入,禁止读取密钥/dotfiles、限制外发内容、逐项修复需用户批准、单一汇总提交并先提示验证再推送,权限使用最小化的 gh/git;扣分点:无自动化回滚机制(仅靠 git 手动回退),发布者未经注册表验证,GraphQL/gh 的数据流虽披露但缺少对错误分支推送等异常后果的显式恢复指引。

2可靠稳定8 / 20 · 2.0/5

指令自洽、shell 片段完整、有明确的无 PR/审阅中/无线程等分支处理与可理解退出消息;扣分点:纯静态审阅无任何执行证据,无测试或边界覆盖(如 jq/gh 版本差异、GraphQL 分页失败),异常输入下的失败反馈仅靠提示词约定,依赖 AskUserQuestion 工具可用性未验证。

3适用触发8 / 15 · 2.7/5

适用场景(有 CodeRabbit 审阅的开放 GitHub PR)与非适用边界(已解决/过时线程)定义清晰,触发词丰富且语义精确;扣分点:完全依赖 gh、GitHub API 与 CodeRabbit 服务,对大陆网络可达性构成实际依赖风险,未见中文环境说明或降级路径。

4规范维护10 / 15 · 3.3/5

文档分层良好(SKILL.md 自足执行并镜像 github.md 共享原语),版本号 0.1.0、MIT 许可、README 明确用途与触发、仓库有 CI 与所有者审批流程;扣分点:技能自身无 changelog、FAQ 或已知限制章节,维护责任仅能从仓库工作流间接推断。

5有效结果6 / 15 · 2.0/5

声称完成'提取未解决线程→验证→批准修复→单次提交→PR 汇总'的完整闭环,相对手动逐条读评论有明确边际价值且每步可控;扣分点:静态审阅无法验证实际输出可直接使用,修复质量取决于宿主 agent 能力,PR summary 模板的价值证据有限。

6证据核验3 / 10 · 1.5/5

主要主张(GraphQL 查询结构、bot 账号名、状态检测字符串)可从源码审计,github.md 与 SKILL.md 相互印证;扣分点:无提交的测试套件、无第三方执行证据、无真实输出样例,覆盖面薄,无法独立复现。

证据充分度: 评估于 2026年9月10日 审查版本 aa49953c4cb2
使用前请注意
  • 该技能完全依赖 gh CLI、GitHub API 与 CodeRabbit 服务,中国大陆网络环境下可达性可能受限,使用前请确认网络条件。
  • 审阅者评论被正确视为不可信内容,但宿主 agent 的实际执行仍可能偏离提示词约束,建议在隔离环境先小范围试用。
  • 无自动回滚机制:若修复后需要撤销,只能依赖 git 手动回退合并前的提交。
  • 纯静态审阅,未执行验证;GitHub GraphQL 查询与状态字符串匹配在 API 变更后可能失效。
评估证据 [1][2][3][4][5][6]
查看完整评分方法 →

这个 Skill 能做什么,适合哪些场景?

这是 CodeRabbit 官方技能库中的一个便携式 Agent 技能,专注于一件事:把 CodeRabbit 机器人在你当前分支 PR 上留下的未解决评审线程,转化为经过人工逐项审批的代码修复。它会用 gh CLI 拉取评审线程、解析严重级别并按序展示问题,然后对每个问题独立验证其有效性、计算最小安全修复、经你批准后应用,最后打成一个合并提交并可选推送和发 PR 总结评论。技能内置了严格的防注入规则:评审者写的 "Prompt for AI Agents" 内容一律视为不可信输入,只作参考提示而不被执行,也不会读取密钥文件或超范围文件。适合已经用 CodeRabbit 做 PR 评审、希望安全地把评审意见落地的开发团队。

1) 加载仓库中的 AGENTS.md 指令并检查未提交/未推送的提交;2) 用 gh pr list 解析当前分支的 PR,必要时可交互式创建 PR;3) 通过 GitHub GraphQL 分页拉取 PR 上由 coderabbitai 机器人发起的未解决、未过时的评审线程;4) 从根评论解析问题类型、严重级别、描述、AI 提示与行号定位,按 CRITICAL/HIGH/MEDIUM/LOW 分级并决定 Fix 或 Review 动作;5) 逐个问题独立验证有效性,展示脱敏后的建议摘要与最小修复 diff,等待用户批准、推迟或修改;6) 将所有已应用的修复合为一个 fix: apply CodeRabbit auto-fixes 提交;7) 可选运行构建/lint 验证后推送,并在 PR 上发布一条总结评论(不含原始评审提示或敏感内容)。

  1. 维护者刚收到 CodeRabbit 对其 PR 的评审,希望逐条核对并修复其中的严重问题,而不是手动复制粘贴建议。
  2. 团队在 CI 前希望以可控方式消化评审反馈:每个修复都要人工批准,且所有修改归入单个可审查的提交。
  3. 对供应链安全敏感的开发者,担心评审评论中的 "Prompt for AI Agents" 可能携带提示注入指令,需要技能强制脱敏和防注入处理。
  4. 贡献者的分支还没有 PR,希望技能先交互式创建 PR,再等 CodeRabbit 约 5 分钟评审后回头跑修复流程。
  5. 评审仍在进行中(PR 上出现 "Come back again in a few minutes"),希望技能识别状态并安全退出,而不是基于半成品评审修复。

这个 Skill 有哪些优点和局限?

优点
  • 逐项审批 + 禁止批量自动应用,修复行为完全可控、可审计。
  • 内置提示注入防护:评审文本视为不可信,剥离 shell 命令、密钥路径和非 GitHub URL。
  • 流程严谨:识别评审进行中状态、忽略已解决/过时线程、保留线程顺序与严重级别。
  • 所有修复合并为单一提交,PR 总结评论只含本地安全摘要。
  • 遵循 AGENTS.md 的构建/lint/测试约定,尊重仓库既有规范。
局限
  • 依赖 CodeRabbit 生态:PR 必须已被 CodeRabbit 评审,无法处理其他评审机器人的意见。
  • 版本仅 0.1.0,源材料未提供测试套件或跨平台验证证据。
  • 需要 gh CLI 和已认证的 GitHub 访问,且仅覆盖 GitHub PR 场景(不支持 GitLab 等)。
  • 严格的一次一审批流程在大量评审意见时会比较慢;无真正的"一键全自动"模式。
  • AskUserQuestion 等交互机制依赖宿主 agent 支持,纯 API 环境需要自行适配。

如何安装这个 Skill?

1) 按 https://docs.coderabbit.ai/cli 安装并登录 CodeRabbit CLI(coderabbit auth login);2) 在支持 SKILL.md 的 agent 中安装该技能库:npx skills add coderabbitai/skills(可用 -s autofix 只装本技能,-g 装到用户目录,-a 指定 agent);3) Claude Code 用户也可通过插件市场安装:/plugin marketplace update 然后 /plugin install coderabbit。技能本体位于仓库的 skills/autofix/SKILL.md,可独立执行,另有 github.md 提供可复用的命令原语。

如何使用这个 Skill?

前置条件:GitHub 上的 Git 仓库、当前分支有打开的 PR、且该 PR 已被 CodeRabbit 机器人评审。需要 gh 与 git 已安装并已认证(gh auth status)。安装后在 agent 中用触发语唤醒,例如:"coderabbit autofix"、"fix coderabbit"、"cr fix"。技能会引导你完成:确认推送状态 → 拉取未解决线程 → 展示问题表 → 逐项批准修复 → 单个提交 → 可选推送并评论 PR。

这个 Skill 与同类方案有什么区别?

同一仓库中的姊妹技能 code-review 负责发起评审并发现 bug、安全问题(基于 CodeRabbit CLI),而本技能 autofix 专注其下游环节:消化已产生的未解决评审线程并安全落地修复。两者互补而非竞争。

常见问题

这个技能会自动改我的代码吗?
不会批量应用。每个修复都必须经过独立的验证和明确批准(Apply fix / Defer / Modify),技能明确禁止跳过审批的批量修复。
需要什么权限和依赖?
需要 gh(GitHub CLI)和 git,且 gh 已认证。技能会读写当前 Git 仓库、调用 GitHub API,并遵守 AGENTS.md;它声明绝不读取 .env、密钥、SSH 密钥或无关工作区文件。
如果 PR 还没创建或评审还在进行怎么办?
技能会询问是否创建 PR(用最近一条提交的标题和正文),创建后提示约 5 分钟后再运行;若检测到 CodeRabbit 的"评审进行中"消息,会安全退出。
修复后如何交付?
所有已应用修复会打成一个 `fix: apply CodeRabbit auto-fixes` 提交,可选先跑构建/lint 验证,然后在你的确认下 git push,并在 PR 上发布一条汇总评论。

同仓库的其他 Skills

均来自 coderabbitai/skills

相关 Skills