Skip to content
Back to skills

Code Review Alistairstead

ASecurity

Code review local changes

  • 57 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 17, 2026
securitygobashsqlawscode-reviewgitapisecurityperformancedocumentation

Works with

  • cli
  • api

Security analysis

A100/100

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill code-review-alistairstead --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Code Review Alistairstead?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Code Review Alistairstead
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-code-review-alistairstead/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-code-review-alistairstead)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: code-review
description: "Code review local changes"
allowed-tools: Bash(jj diff:*), Bash(jj log:*)
---

# Code Review

Review local changes using specialized subagents across 5 domains. Only noteworthy findings — no nitpicking.

**Agent assumptions (applies to all agents and subagents):**
- All tools are functional. Do not test tools or make exploratory calls.
- Only call a tool if required. Every tool call should have a clear purpose.
- If you are running a jj diff ALWAYS include the --git flag.

## Workflow

### 1. Gather context

Launch a sonnet agent to collect:
```bash
jj diff --git --from main --summary   # changed files
jj diff --git --from main             # full diff
jj log --limit 5                      # recent commits for context
```

### 2. Launch 5 specialized review agents in parallel

Pass each agent the full diff, file summary, and the CRITICAL FILTER below verbatim. Each returns a list of issues with: file, line, description, severity (critical/warning), and domain tag.

**Scope rule:** Only review lines starting with `+` in the diff. Ignore context lines (no `+`/`-` prefix). You are reviewing the change, not the file.

**Agent 1 — Security (opus)**
Scan for vulnerabilities in changed `+` lines only:
- Injection flaws (SQL, command, XSS)
- Authentication/authorization weaknesses
- Cryptographic misuse (weak hashing, predictable tokens)
- Sensitive data exposure (credentials, PII in responses)
- OWASP Top 10 patterns

**Agent 2 — Code Quality (sonnet)**
Review structural quality of changed code only:
- Clear logic errors, unreachable code, dead branches
- Type safety issues (any, missing null checks on nullable values)
- Error handling gaps (unhandled promise rejections, swallowed errors)
- CLAUDE.md compliance — quote the exact rule broken

**Agent 3 — Performance (sonnet)**
Flag performance concerns in changed code only:
- Algorithmic complexity issues (O(n²)+ where O(n) is possible)
- N+1 query patterns, unnecessary DB round-trips
- Missing pagination on unbounded queries
- Blocking operations in async contexts

**Agent 4 — Test Coverage (sonnet)**
Evaluate test adequacy for changed code:
- New public functions/endpoints without corresponding tests
- Changed behavior without updated tests
- Edge cases in critical paths (auth, payments, data mutation) lacking coverage
- Only flag when absence creates real risk, not for trivial utilities

**Agent 5 — Documentation Accuracy (sonnet)**
Cross-check user-facing docs against implementation:
- README/docs claims that contradict the actual code
- API documentation (JSDoc/TSDoc) with wrong parameters, return types, or behavior
- Outdated examples that won't work with current code
- Scope: README, CHANGELOG, API doc comments only. Ignore inline TODOs and dev notes

**CRITICAL FILTER for ALL agents:**

Only report issues that are **noteworthy** — a senior engineer would stop and comment on them. Specifically:

Flag:
- Will cause bugs, data loss, or security breach
- Misleads future developers (wrong docs, deceptive naming)
- Performance cliff that scales badly
- Missing tests for critical/risky code paths

Do NOT flag:
- Style preferences, formatting, naming conventions
- Linter-catchable issues
- Pre-existing issues outside the diff
- "Nice to have" improvements
- Issues that depend on unknown runtime state
- General suggestions without concrete problems

If uncertain whether an issue is real, do not flag it.

### 3. Validate flagged issues

For each issue from step 2, launch a parallel validation subagent:
- Security/logic issues → opus agent reads relevant code and confirms
- Quality/docs/test/perf issues → sonnet agent validates

Each validator gets the issue description and must confirm: **valid** or **false positive** with reasoning.

Reject as false positive if:
- Linter/formatter would catch it
- Issue is in unchanged context lines, not `+` lines
- Cosmetic or stylistic concern
- Would be auto-fixed by tooling
- Uncertain — when in doubt, reject

Filter out false positives.

### 4. Deduplicate and build action plan

Deduplicate by (file, line). If multiple agents flag the same location, merge into one issue with all relevant domain tags.

Assign unified severity:
- **P0** — data loss, security exploits, production crashes
- **P1** — logic errors, perf degradation at scale, public API without tests
- **P2** — misleading docs, missing error handling, moderate perf issues

For each issue include:
- Severity (P0/P1/P2)
- Domain tags
- File and line
- Description
- Suggested fix (committable suggestion for small fixes, description for larger ones)

Present sorted by severity. Ask user which items they want to resolve.

### 5. Execute selected fixes

Only fix items the user selects. For unselected items, leave them as-is without comment.

If NO issues found across all domains:
```
No issues found. Checked: security, code quality, performance, test coverage, documentation accuracy.
```

## Quick Reference

| Domain | Agent | Focus |
|--------|-------|-------|
| Security | opus | injection, auth, crypto, data exposure |
| Code Quality | sonnet | logic errors, types, error handling, CLAUDE.md |
| Performance | sonnet | complexity, N+1, unbounded queries |
| Test Coverage | sonnet | missing tests for risky/public code |
| Documentation | sonnet | code/docs mismatches |

## Common Mistakes

- **Flagging style issues** — no formatting, naming, or convention feedback unless CLAUDE.md requires it
- **Reviewing pre-existing code** — only review what's in the diff
- **Missing validation step** — every issue must be validated before reporting
- **Duplicate issues** — one entry per unique problem, even if multiple agents flag it
- **Fixing without asking** — present plan first, let user choose what to resolve

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.