mcpField
F
fix-pr

fix-pr

github.com/prathamdby开发6526 次安装3 天前更新
代码仓库

关于 fix-pr

fix-pr 是用于处理 GitHub 拉取请求审查反馈的技能,面向需要核查问题、修复代码并回复审查意见的开发者。它按固定流程收集反馈、验证修复并管理提交、推送和回复状态。

主要功能

  1. 01同步本地分支与 PR 头提交
  2. 02收集并去重审查意见及 CI 失败
  3. 03逐项判定并验证修复
  4. 04按配置提交、推送和回复
  5. 05报告证据、状态与未回复目标

适用场景

  1. 01处理当前分支 PR 的审查意见
  2. 02查找并修复阻塞合并的 CI 问题
  3. 03仅在本地保留修复而不推送
  4. 04汇总审查处理结果与未完成事项

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/prathamdby/skills --skill fix-pr

安装后在 Claude Code 中输入/fix-pr确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

REFERENCE.md
references/
hunt.md
replies.md
unslop-reply-drafts.md

详细介绍

修复 PR

选项和依赖项

默认:当前分支的 PR,启用推送和回复。指定 PR 编号/URL 可选中对应 PR; “不要推送”/“保留本地”会禁用推送;“不要回复”会禁用回复。 缺少指定值时必须阻止操作。在进行任何 GitHub I/O 前,验证并读取 ../gh/SKILL.md;提交前,验证并读取 ../commit/SKILL.md。 缺少依赖项时必须阻止操作并指出路径,不得临时编造替代方案。

1. 同步

解析仓库、PR URL/编号/base/head/远程 SHA。PR 已关闭/不存在、认证 失败、工作树不干净或检出不安全时,必须阻止操作。获取更新、检出 head,并 快进到远程 SHA;绝不重置/强制操作。 记录 PR/SHA | push/replies | hunt counts/pages | finding/verdict/evidence | commit/push | native targets | terminal。 完成条件:本地 HEAD 等于远程 PR head,且身份已确认。

2. 仅执行一次排查

通过 gh 收集未解决的讨论串(包括过时的)、所有嵌套页面、 REST 审查评论链、可采取行动的审查正文、对话评论,以及 head SHA 上未成功的终态必需/阻塞检查和注释。 使用 pr-threads --json --open --complete 和 ci-failures,并提供 PR/SHA。 应用 references/hunt.md 中的所有完整性/核对规则; 仅凭脚本退出不能证明 REST 根评论或必需检查已完整获取。 六个来源全部完整之前,不得分类处理/编辑。规范化/去重问题时,不得丢失原生回复目标。 完成条件:每页均已完整获取,且每个发现均已记录。 仅执行一次此排查,不得在编辑/提交/推送/回复后再次执行。后续反馈或 CI 问题需要新的调用;重试一次失败的回复不算再次排查。

3. 分类处理并修复

结合周边源代码追踪每条问题;尽可能复现。 基于证据,将其判定为修复/驳回/澄清/已修复,并说明证据,包括跳过原因。 所有判定完成之前不得编辑。仅在集中的范围内应用修复,并运行范围最小的检查;必需检查失败时必须阻止操作。完成条件:每条发现均有判定,且每项修复均有经过验证的差异,或无需修复。

4. 提交并推送

存在差异时,丢弃之前起草的提交信息,并以未暂存的范围调用 commit。 提交操作负责所有洁净环境规则,包括仅针对对话的测试和 ../commit/REFERENCE.md 中的 trailer 规范;此处不得重复其他提交信息规则。工作树干净时跳过提交。 启用推送时,推送并验证远程 SHA,绝不强制推送;远程变动/拒绝时必须阻止操作。 关闭推送时,将已修复的问题标记为 AWAITING_PUSH。推送前重新检查 %B,确保提交信息不存在被拒绝的表述/未经请求的 trailer。完成条件:不存在差异,或已验证的提交已推送;仅本地修复不算推送成功。

5. 回复并报告

启用回复时,应用 references/replies.md,然后应用 references/unslop-reply-drafts.md。合并共同的父评论,保留机器人前缀,并且仅通过 gh 的回复脚本发布。跳过已解决的目标。 内联回复失败后不得重试。遵循 pr-reply 错误处理,并在主对话中发布该正文。主对话发布失败时,重新获取并重试一次;再次失败则必须阻止操作。 修复类回复必须对应已推送的 SHA。除非收到明确请求,且有单独授权的操作支持,否则不得解决讨论串。 报告发现/判定/操作/证据、URL、提交/推送、排查计数,以及未回复的目标。完成条件:所有已授权回复均符合对应判定。

终态:SUCCESS、NO_CODE_CHANGE、AWAITING_PUSH、BLOCKED。存在未解决的发现时,绝不能标记为 SUCCESS。若某项发现已在其内联讨论串中回复,或通过备用方式在主对话中回复,即视为已解决。恢复执行时从“同步”重新开始;不得修复合并冲突。

评论

支持 Markdown