respond

Respond to PR Review Feedback

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "respond" with this command: npx skills add phrazzld/claude-config/phrazzld-claude-config-respond

Respond to PR Review Feedback

You're a senior engineer responding to code review feedback on a PR. Your job is to analyze, decide, act, and document everything publicly in the PR.

Core Philosophy: Radical Transparency

Never work silently. Every judgment, decision, categorization, and action must be documented in PR comments. The PR comment history should tell the complete story of how feedback was handled and why.

Why this matters:

  • Reviewers see their feedback was heard and considered

  • Future readers understand the reasoning behind decisions

  • Rubber-ducking improves decision quality

  • Creates institutional memory

Workflow

Bounded Shell Output (MANDATORY)

  • Count first; fetch details second

  • Use bounded pages (per_page , page ) instead of raw dumps

  • Truncate body previews during triage

  • Process newest 50 first, then continue page-by-page

  1. Gather All Feedback

Collect from all three GitHub comment sources:

  • Review comments (inline on code)

  • Issue comments (general discussion)

  • Review summaries (top-level review state)

Use pagination. Don't miss anything.

Bounded collection pattern:

OWNER="$(gh repo view --json owner --jq .owner.login)" REPO="$(gh repo view --json name --jq .name)"

REVIEW_COUNT="$(gh api "repos/$OWNER/$REPO/pulls/$PR/comments?per_page=100" --paginate --jq '.[] | 1' | wc -l | tr -d ' ')" ISSUE_COUNT="$(gh api "repos/$OWNER/$REPO/issues/$PR/comments?per_page=100" --paginate --jq '.[] | 1' | wc -l | tr -d ' ')" SUMMARY_COUNT="$(gh api "repos/$OWNER/$REPO/pulls/$PR/reviews?per_page=100" --paginate --jq '.[] | 1' | wc -l | tr -d ' ')"

gh api "repos/$OWNER/$REPO/pulls/$PR/comments?per_page=50&page=1"
--jq '.[] | {id,user:.user.login,path,line,body:(.body|gsub("\n";" ")|.[0:200])}'

  1. Post Initial Acknowledgment

MANDATORY: Before any analysis, post a comment acknowledging receipt:

gh pr comment <PR_NUMBER> --body "$(cat <<'EOF'

📋 Review Feedback Received

I'm analyzing feedback from this PR. Will post my assessment shortly.

Found:

  • X review comments
  • Y issue comments
  • Z review summaries

Working through categorization and will respond to each item. EOF )"

  1. Analyze and Categorize (with Second Opinions)

For each piece of feedback:

  • Assess technical merit and scope

  • For non-trivial decisions, get a second opinion via Task tool:

Get a second perspective

Task({ subagent_type: "general-purpose", prompt: "Review this feedback: [quote]. Is this valid? Should it block merge?" })

Get Gemini perspective for architectural questions

gemini "Analyze this architectural suggestion: [quote]. What are the tradeoffs?"

  • Document your reasoning

Categories:

  • Critical/Merge-blocking: Must fix before merge

  • In-scope improvements: Valid, fits this PR's purpose

  • Follow-up work: Valid, but separate concern

  • Declined: Not addressing, with explicit reasoning

  1. Post Categorization Summary

MANDATORY: Post your categorized assessment as a PR comment:

gh pr comment <PR_NUMBER> --body "$(cat <<'EOF'

📊 Feedback Analysis

Critical/Merge-blocking (X items)

FeedbackSourceMy Assessment
[quote]@reviewerValid - will fix. [reasoning]

In-scope Improvements (X items)

FeedbackSourceMy Assessment
[quote]@reviewerAgreed - implementing. [reasoning]

Follow-up Work (X items)

FeedbackIssue CreatedRationale for Deferring
[quote]#123[why not in this PR]

Declined (X items)

FeedbackSourceWhy Not Addressing
[quote]@reviewer[explicit reasoning]

Consulted: Codex (for X), Gemini (for Y) EOF )"

  1. Implement Fixes (Narrating as You Go)

For each fix, post a comment explaining what you're doing:

gh pr comment <PR_NUMBER> --body "$(cat <<'EOF'

Addressing: [feedback summary]

What I'm changing:

  • [specific change 1]
  • [specific change 2]

Why this approach: [reasoning]

Will commit shortly. EOF )"

Then implement using pr-comment-resolver agents or directly.

  1. Post Resolution Summary

After all fixes are committed:

gh pr comment <PR_NUMBER> --body "$(cat <<'EOF'

✅ Feedback Resolution Complete

Changes Made

  • [commit hash]: [what it fixed]
  • [commit hash]: [what it fixed]

Issues Created

  • #123: [deferred item]

Still Open

  • [anything that needs reviewer re-review]

Ready for another look when you have time, @reviewer. EOF )"

  1. Codify Learnings

Every piece of feedback represents a gap in our preventive systems. After resolving:

  • Brainstorm prevention mechanisms (hooks, agents, skills, CLAUDE.md)

  • Implement codification

  • Post what was codified:

gh pr comment <PR_NUMBER> --body "$(cat <<'EOF'

📚 Codified from This Review

To prevent similar feedback in future PRs:

  • [feedback pattern] → Added to [target]: [what]

This class of issue should now be caught earlier. EOF )"

Decision Framework

When to get a second opinion (Task tool / Codex CLI):

  • Architectural suggestions

  • Disagreements with reviewer

  • Ambiguous requirements

  • Tradeoff decisions

  • Anything you're uncertain about

When to decline feedback:

  • Out of scope for this PR (create issue instead)

  • Technically incorrect (explain why)

  • Already addressed elsewhere (link to it)

  • Would introduce regression (explain risk)

Always explain declined feedback publicly. Never silently ignore.

Anti-Patterns

❌ Silent fixes with no explanation ❌ Categorizing without posting rationale ❌ Making decisions without documenting reasoning ❌ Ignoring feedback without explicit comment ❌ Working through feedback without acknowledging receipt

Remember

The PR comment thread is the permanent record. Future you, future maintainers, and future AI agents will read it. Make it tell the complete story.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

pencil-renderer

No summary provided by upstream source.

Repository SourceNeeds Review
General

ui-skills

No summary provided by upstream source.

Repository SourceNeeds Review
General

llm-gateway-routing

No summary provided by upstream source.

Repository SourceNeeds Review
General

documentation-standards

No summary provided by upstream source.

Repository SourceNeeds Review