mcpField
R
resolve-pr-parallel

resolve-pr-parallel

github.com/everyinc开发25.8k143 次安装今天更新
代码仓库

关于 resolve-pr-parallel

面向 Claude Code 的技能,可并行处理未解决的 PR 评审线程,并指导从获取评论到修改、提交、解决线程和复核的流程。

主要功能

  1. 01检测当前分支和 PR
  2. 02获取未解决的评审线程
  3. 03为每个线程分配 Agent
  4. 04提交、推送并解决线程
  5. 05复核是否仍有未解决评论

适用场景

  1. 01集中处理 PR 中的多条评审意见
  2. 02将独立修复分配给多个 Agent
  3. 03确认 GitHub 线程已解决

安装

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

$npx skills add https://github.com/everyinc/compound-engineering-plugin --skill resolve_pr_parallel

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

附带文件scripts/get-pr-commentsscripts/resolve-pr-thread

详细介绍

并行处理 PR 评论

通过为每个线程启动并行 Agent,处理所有未解决的 PR 审查评论。

上下文检测

从当前工作目录检测 Git 上下文:

  • 当前分支及关联的 PR
  • 所有 PR 评论和审查线程
  • 指定编号即可适用于任何 PR

工作流

1. 分析

使用 scripts/get-pr-comments 中的 GraphQL 脚本获取未解决的审查线程:

bash scripts/get-pr-comments PR_NUMBER

此脚本仅返回未解决且未过时的线程,并包含文件路径、行号和评论正文。

如果脚本失败,则改用:

gh pr view PR_NUMBER --json reviews,comments
gh api repos/{owner}/{repo}/pulls/PR_NUMBER/comments
2. 制定计划

按类型创建所有未解决事项的任务列表(例如,在 Claude Code 中使用 TaskCreate,在 Codex 中使用 update_plan):

  • 请求的代码修改
  • 需要回答的问题
  • 风格/约定修正
  • 需要补充的测试
3. 实施(并行)

为每个未解决事项启动一个 compound-engineering:workflow:pr-comment-resolver Agent。

如果有 3 条评论,就启动 3 个 Agent,每条评论对应一个。尽量并行运行所有 Agent;如果平台不支持并行调度,则按顺序运行。

控制父上下文的压力:

  • 如果有 1–4 个未解决事项,可直接接收并行任务的返回结果
  • 如果有 5 个或更多未解决事项,每批最多启动 4 个 Agent
  • 要求每个处理 Agent 向父任务返回简短的状态摘要:已处理的评论/线程、已修改的文件、已运行或跳过的测试、仍需人工处理的阻碍,以及仅涉及问题的线程所对应的实质性回复文本,以便父任务发布或核实

如果 PR 规模较大,分批返回的简短结果仍可能过于繁杂,则使用每次运行专属的临时目录,例如 .context/compound-engineering/resolve-pr-parallel/<run-id>/:

  • 让每个处理 Agent 在其中为其线程写入一份精简记录
  • 仅向父任务返回完成摘要
  • 仅重新读取解决线程、回答审查者问题或汇总批次所需的记录
4. 提交并解决
  • 提交更改,并使用清晰的提交说明引用 PR 反馈
  • 使用 scripts/resolve-pr-thread 以编程方式解决每个线程:
bash scripts/resolve-pr-thread THREAD_ID
  • 推送到远程
5. 验证

重新获取评论,确认所有线程均已解决:

bash scripts/get-pr-comments PR_NUMBER

结果应为空数组 []。如果仍有线程未解决,则从第 1 步重新开始。

如果使用了临时目录,且用户未要求检查该目录,则在验证成功后清理该目录。

脚本

成功标准

  • 处理所有未解决的审查线程
  • 已提交并推送更改
  • 通过 GraphQL 解决线程(在 GitHub 上标记为已解决)
  • 验证时 get-pr-comments 返回空结果

评论

支持 Markdown