resolve-pr-parallel

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Resolve PR Comments in Parallel

并行解决PR评论

Resolve all unresolved PR review comments by spawning parallel agents for each thread.
通过为每个线程启动并行agent,解决所有未处理的PR评审评论。

Context Detection

上下文检测

Claude Code automatically detects git context:
  • Current branch and associated PR
  • All PR comments and review threads
  • Works with any PR by specifying the number
Claude Code会自动检测Git上下文:
  • 当前分支及关联的PR
  • 所有PR评论和评审线程
  • 通过指定PR编号,可适用于任意PR

Workflow

工作流程

1. Analyze

1. 分析

Fetch unresolved review threads using the GraphQL script:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/get-pr-comments PR_NUMBER
This returns only unresolved, non-outdated threads with file paths, line numbers, and comment bodies.
If the script fails, fall back to:
bash
gh pr view PR_NUMBER --json reviews,comments
gh api repos/{owner}/{repo}/pulls/PR_NUMBER/comments
使用GraphQL脚本获取未处理的评审线程:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/get-pr-comments PR_NUMBER
该脚本仅返回未处理、未过期的线程,包含文件路径、行号和评论内容。
若脚本执行失败,可使用以下命令作为备选:
bash
gh pr view PR_NUMBER --json reviews,comments
gh api repos/{owner}/{repo}/pulls/PR_NUMBER/comments

2. Plan

2. 规划

Create a TodoWrite list of all unresolved items grouped by type:
  • Code changes requested
  • Questions to answer
  • Style/convention fixes
  • Test additions needed
创建TodoWrite列表,将所有未处理项按类型分组:
  • 需要修改的代码
  • 需要解答的问题
  • 风格/规范修复
  • 需要添加的测试

3. Implement (PARALLEL)

3. 执行(并行)

Spawn a
pr-comment-resolver
agent for each unresolved item in parallel.
If there are 3 comments, spawn 3 agents:
  1. Task pr-comment-resolver(comment1)
  2. Task pr-comment-resolver(comment2)
  3. Task pr-comment-resolver(comment3)
Always run all in parallel subagents/Tasks for each Todo item.
为每个未处理项启动一个
pr-comment-resolver
agent,并行执行。
若有3条评论,则启动3个agent:
  1. 任务 pr-comment-resolver(comment1)
  2. 任务 pr-comment-resolver(comment2)
  3. 任务 pr-comment-resolver(comment3)
始终为每个Todo项启动并行子agent/任务。

4. Commit & Resolve

4. 提交与解决

  • Commit changes with a clear message referencing the PR feedback
  • Resolve each thread programmatically:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/resolve-pr-thread THREAD_ID
  • Push to remote
  • 提交修改,使用清晰的提交信息关联PR反馈
  • 通过编程方式解决每个线程:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/resolve-pr-thread THREAD_ID
  • 推送到远程仓库

5. Verify

5. 验证

Re-fetch comments to confirm all threads are resolved:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/get-pr-comments PR_NUMBER
Should return an empty array
[]
. If threads remain, repeat from step 1.
重新获取评论,确认所有线程已解决:
bash
bash ${CLAUDE_PLUGIN_ROOT}/skills/resolve-pr-parallel/scripts/get-pr-comments PR_NUMBER
返回结果应为空数组
[]
。若仍有未解决线程,请从步骤1重复执行。

Scripts

脚本

  • scripts/get-pr-comments - GraphQL query for unresolved review threads
  • scripts/resolve-pr-thread - GraphQL mutation to resolve a thread by ID
  • scripts/get-pr-comments - 用于查询未处理评审线程的GraphQL脚本
  • scripts/resolve-pr-thread - 通过ID解决线程的GraphQL变更脚本

Success Criteria

成功标准

  • All unresolved review threads addressed
  • Changes committed and pushed
  • Threads resolved via GraphQL (marked as resolved on GitHub)
  • Empty result from get-pr-comments on verify
  • 所有未处理的评审线程均已处理
  • 修改已提交并推送
  • 线程通过GraphQL标记为已解决(在GitHub上显示为已解决)
  • 验证时get-pr-comments返回空结果