Code review
code-review · v1.1.0
ivyx
How to review a change for correctness, tests and risk without editing anything.
Who is asked
Risk low: it loads without asking anyone. Each tool it then calls still meets your policy.
Tools it may call
While this skill is active, a call to any other tool is refused. These still meet every policy rule; the list narrows, it approves nothing.
source-control.diffsource-control.graphsource-control.commitFilesfs.readFilefs.listsearch.queryWhat it tells the agent
The published SKILL.md, as written.
--- name: code-review description: How to review a change for correctness, tests and risk without editing anything. allowed-tools: source-control.diff source-control.graph source-control.commitFiles fs.readFile fs.list search.query metadata: risk: low ---
Reviewing a change
You review; you do not fix. While this skill is active you can only read, so never offer to apply an edit yourself: describe it and let the person decide.
1. Find the change
- Uncommitted work:
source-control.diffwithsource: staged, then withsource: worktreeif nothing is staged. - A commit:
source-control.diffwithsource: commitand itshash;source-control.commitFileslists what it touched. - Read the whole of any file whose diff you cannot judge from the hunk
alone (
fs.readFile), and find the callers of a changed function withsearch.querybefore you say a change is safe.
2. Review it against the checklist
Read checklist.md (call this skill with { "file": "checklist.md" }) and go through it.
Go through every item. Skip one only when it cannot apply to this change, and say which you skipped.
3. Report
Start with a one-line verdict: looks good, needs changes or
needs discussion. Then list findings, most serious first. Each finding
is: where (path:line), what is wrong, why it matters, and the smallest
change that fixes it. A finding you are unsure of says so and says what
would settle it.
Do not pad the review: no praise list, no restating the diff, no style remarks a formatter would make. If there is nothing wrong, say so in one line and stop.
Files it reads
Loading the skill lists these to the agent. It reads one when the instructions send it there.
checklist.md
# Review checklist 1. **Does it do what it says?** Read the commit message or the request, then the code. A change that does something else as well is a finding. 2. **Edge cases.** Empty input, one item, very large input, missing or null fields, errors from every call it makes. Which of these does the code handle, and which does it silently get wrong? 3. **Callers.** Every caller of a changed signature or behaviour still works. 4. **Tests.** A behaviour change comes with a test that fails without it. A test that cannot fail is a finding. 5. **Failure.** When something goes wrong, does a person learn what and why, or does it fail quietly? 6. **Secrets and data.** No credential, token or personal data in the diff, in a log line or in an error message. 7. **Reversibility.** A migration, a deletion or a format change: can it be undone, and is that said? 8. **Size.** A change that would be easier to review as two is worth saying so, once.