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

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)
始终为每个待办项运行并行子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脚本返回空结果