From swe-assistant
Use when the user is about to review someone else's pull request or merge request, has been asked to review code, is in the middle of leaving feedback on a PR, is on the receiving end of code review feedback (especially feedback that feels confusing, harsh, or unclear), or is asking how to give or receive code reviews well. Walks through how to give a good review — order of priorities (correctness, security, maintainability, clarity, then style), tone (questions over commands, suggest don't dictate), what to label as blocking vs nit, what to skip if a linter handles it, and when to praise. Also covers receiving reviews well — separating the code from the self, asking for clarification, when to push back with reasoning. Useful at any stage from Ramp-Up onward; central to the Contributor stage. Do not trigger for general engineering questions, debugging, or asks about how to *write* code from scratch — only when the situation is reviewing or being reviewed.
How this skill is triggered — by the user, by Claude, or both
Slash command
/swe-assistant:code-reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Informed by *The Missing Readme*, Chapter 1, "The Journey Ahead" (Contributor stage). The book's pointer is brief; this skill expands on it because code review is one of the most frequent recurring situations in any engineer's week.
Informed by The Missing Readme, Chapter 1, "The Journey Ahead" (Contributor stage). The book's pointer is brief; this skill expands on it because code review is one of the most frequent recurring situations in any engineer's week.
Code review is where a team's actual standards live. Docs say one thing; what gets approved says another. This skill fires whenever the user is on either side of that conversation — about to leave feedback, or about to react to feedback they received.
Code review is about the code, not the person. You are a co-author of quality, not a gatekeeper.
Two failure modes to avoid: harshness that makes people afraid to ship, and rubber-stamping that ships bad code. Aim for the middle: candid, specific, kind.
If there isn't one, stop and ask for one before reviewing. "Hey, can you add a short description of what this changes and why? It'll make the review faster for me and better for you." A reviewer with no context will either review badly or annoy the author with avoidable questions.
A diff in isolation is misleading. Click into the surrounding code if anything is non-obvious. If you don't understand what the function above the change does, your feedback on the change itself is suspect.
Look at things in roughly this order. Don't get stuck on style before you've looked at correctness.
Many teams use prefixes so the author knows what they have to address vs. what's optional:
Blocking: — must change before mergeSuggestion: — worth considering, author's callNit: — small/stylistic, ignore if you wantQuestion: — I want to understand, not asking you to change anythingPraise: — this is goodIf your team doesn't use these, you can still adopt them yourself. Authors love the clarity.
If three reviewers have already left the same comment, you don't need to add a fourth. Add a thumbs-up if you want the author to know it's a real concern; otherwise move on.
"I'm not sure about this — can you walk me through why X?" is honest, useful, and protects the author from defending against a confident wrong opinion.
The reviewer didn't say you are bad. They said the code could be better. This is the single hardest skill in receiving reviews. It gets easier with reps.
Even feedback that feels wrong usually points at something — maybe the code is fine but the intent isn't clear, or the docstring is misleading, or the abstraction surprised the reader. The feedback is data about how the code lands; what you do with it is your call.
"Can you say more about why you'd prefer Y? I want to make sure I'm getting your point." Better than guessing and re-doing the wrong thing.
"I considered Y but went with X because of Z — does that change your view?" That's a productive disagreement.
What's not productive: "This is fine." / "I disagree." / silently ignoring the comment.
Every comment deserves a reply, even if the reply is "good catch, fixed." Unresolved comments make reviewers feel ignored and slow down future reviews.
Especially the ones who left thoughtful or hard-but-fair feedback. They spent their time. A small thanks now buys you better reviews next time.
A simple test: "Will this matter in six months?" If no, let it go.
growth-self-check or contributor-playbook as appropriate.npx claudepluginhub tmerrien/swe-assistant --plugin swe-assistantProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.