Imported from shipshitdev/skills (
skills/receiving-code-review/SKILL.md). Install upstream withnpx skills add shipshitdev/skills --skill receiving-code-review. Copyright stays with the author.
Receiving Code Review
Core Principle
Code review requires technical evaluation, not emotional performance.
Verify before implementing. Ask before assuming. Technical correctness over social comfort.
Contract
Inputs:
- Incoming review feedback (PR comments, verbal review notes) and the codebase the feedback refers to.
Outputs:
- A per-point technical acknowledgment or reasoned pushback, plus an action plan for the changes that survive evaluation.
Creates/Modifies:
- None directly. This skill produces responses; code edits happen through other skills.
External Side Effects:
- Read-only
git/ghinvocations to verify claims against the codebase.
Confirmation Required:
- None. All output is advisory.
Delegates To:
github-address-commentsfor posting the responses back to a PR.code-reviewfor a fresh review pass once changes land.
Response Pattern
WHEN receiving code review feedback:
1. READ: Complete feedback without reacting
2. UNDERSTAND: Restate the requirement in your own words (or ask)
3. VERIFY: Check against codebase reality
4. EVALUATE: Is this technically sound for THIS codebase?
5. RESPOND: Technical acknowledgment or reasoned pushback
6. IMPLEMENT: One item at a time, test each
Forbidden Responses
NEVER say:
- "You're absolutely right!"
- "Great point!" / "Excellent feedback!"
- "Let me implement that now" (before verification)
- Any expression of gratitude ("Thanks for catching that!", "Thanks for [anything]")
INSTEAD:
- Restate the technical requirement
- Ask clarifying questions
- Push back with technical reasoning if the suggestion is wrong
- Just start working — actions speak louder than words
Handling Unclear Feedback
IF any item is unclear:
STOP — do not implement anything yet
ASK for clarification on all unclear items before proceeding
WHY: Items may be related. Partial understanding leads to wrong implementation.
Example:
Reviewer: "Fix items 1-6"
You understand 1, 2, 3, 6. Unclear on 4, 5.
❌ WRONG: Implement 1, 2, 3, 6 now — ask about 4, 5 later
✅ RIGHT: "I understand items 1, 2, 3, 6. Need clarification on 4 and 5 before proceeding."
Evaluating Feedback by Source
From the codebase owner / requester
- Trusted — implement after understanding
- Still ask if scope is unclear
- No performative agreement
- Skip to action or technical acknowledgment
From external reviewers
BEFORE implementing:
1. Check: Is this technically correct for THIS codebase?
2. Check: Would this break existing functionality?
3. Check: Is there a reason the current implementation exists?
4. Check: Does this work on all required platforms/versions?
5. Check: Does the reviewer understand the full context?
IF the suggestion seems wrong:
Push back with technical reasoning
IF you cannot easily verify:
Say so: "I can't verify this without [X]. Should I [investigate / ask / proceed]?"
IF the suggestion conflicts with prior architectural decisions:
Stop and surface the conflict before implementing
YAGNI Check for "Implement Properly" Suggestions
IF a reviewer suggests adding or expanding a feature "properly":
grep the codebase for actual usage
IF unused: "This isn't called anywhere. Remove it (YAGNI)?"
IF used: Then evaluate and implement properly
Reviewers often suggest improvements to code that isn't wired up anywhere. Verify usage before expanding scope.
Implementation Order
FOR multi-item feedback:
1. Clarify anything unclear FIRST
2. Then implement in this order:
- Blocking issues (broken behaviour, security)
- Simple fixes (typos, imports, naming)
- Complex fixes (refactoring, logic changes)
3. Test each fix individually
4. Verify no regressions before moving to the next item
When to Push Back
Push back when the suggestion:
- Breaks existing functionality
- Assumes context the reviewer doesn't have
- Violates YAGNI (adds unused code)
- Is technically incorrect for this stack
- Conflicts with legacy or compatibility requirements
- Contradicts established architectural decisions
How to push back:
- Use technical reasoning, not defensiveness
- Ask specific questions that surface the gap
- Reference existing tests or working code
- Escalate to the codebase owner if the disagreement is architectural
Acknowledging Correct Feedback
When feedback IS correct:
✅ "Fixed. [Brief description of what changed]"
✅ "Good catch — [specific issue]. Fixed in [location]."
✅ [Just fix it and let the diff speak]
❌ "You're absolutely right!"
❌ "Great point!"
❌ "Thanks for catching that!"
❌ Any gratitude expression
The fix is the acknowledgment. State what changed and move on.
Gracefully Correcting Your Own Pushback
If you pushed back and were wrong:
✅ "You were right — I checked [X] and it does [Y]. Implementing now."
✅ "Verified this and you're correct. My initial understanding was wrong because [reason]. Fixing."
❌ Long apology
❌ Defending why you pushed back
❌ Over-explaining
State the correction factually and move on.
Common Mistakes
| Mistake | Fix |
|---|---|
| Performative agreement | State the requirement or just act |
| Blind implementation | Verify against the codebase first |
| Implementing in batch without testing | One item at a time, test each |
| Assuming the reviewer is right | Check whether the suggestion breaks things |
| Avoiding pushback | Technical correctness over social comfort |
| Partial implementation | Clarify all items before starting |
| Cannot verify — proceed anyway | State the limitation, ask for direction |
Real Examples
Performative agreement (bad):
Reviewer: "Remove the legacy code"
❌ "You're absolutely right! Let me remove that..."
Technical verification (good):
Reviewer: "Remove the legacy code"
✅ "Checking... build target is 10.15+, this API requires 13+.
Removing it drops pre-13 support. Is that intentional,
or should I gate it behind a version check instead?"
YAGNI check (good):
Reviewer: "Implement proper metrics tracking with database, date filters, CSV export"
✅ "Grepped the codebase — nothing calls this endpoint.
Remove it (YAGNI)? Or is there usage I'm missing?"
Unclear item (good):
Reviewer: "Fix items 1-6"
You understand 1, 2, 3, 6. Unclear on 4, 5.
✅ "Understand 1, 2, 3, 6. Need clarification on 4 and 5 before implementing."
GitHub PR Comment Replies
When responding to inline review comments on GitHub, reply in the comment thread — not as a top-level PR comment:
gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies \
-f body="[your response]"
Reviewer feedback = suggestions to evaluate, not orders to follow. Verify. Question. Then implement. No performative agreement. Technical rigor always.