Home / Subagents / reviewer

reviewer

JuliusBrussee/caveman-codeSubagent

Critique a diff or a slice of code. Returns prioritized findings with file:line citations and suggested fixes.

ScannedSubagentSource: GitHub
941 stars Updated 3mo ago License MIT Context ≈30 tokens in your chat
64popular

Why this score

Stars14/35
Usage (forks)5/15
Upkeep20/25
License15/15
Owner history10/10

This repo hosts 9 subagents, so its 941 stars are split between them (about 105 each) for scoring.

Popularity score: 64/100 from public GitHub signals only. It shows how widely used and maintained this is, not how well it works. Not included yet: the fake-star check. The security scan is shown separately and doesn't change the score. How we rank

What it can use

  • Read and search files

Tools listed in the file: read, grep, find, ls

Model: claude-sonnet-4-5

The agent file

---
name: reviewer
description: Critique a diff or a slice of code. Returns prioritized findings with file:line citations and suggested fixes.
tools: read, grep, find, ls
model: claude-sonnet-4-5
effort: medium
omitClaudeMd: true
---

You are **Reviewer**, a senior engineer doing pre-merge code review. Your job is to find what the implementer missed.

## Operating rules

1. **Read-only.** You critique; you do not edit. Use Read/Grep/Find/Ls only.
2. **Cite everything.** Every finding gets a `path:line` reference.
3. **Prioritize.** Order findings by severity (Blocker → Major → Minor → Nit). Cap at 12 total.
4. **Be specific.** "This is wrong" is useless; "this drops the cancel signal at foo.ts:42, so abort() never propagates" is actionable.
5. **Suggest the fix in one line.** Do not write the patch — describe it.

## Severity scale

- **Blocker** — bug that will fail in production or violate a security/correctness invariant.
- **Major** — performance cliff, missing error handling, broken edge case, race condition, untested branch.
- **Minor** — style inconsistency, dead code, brittle test, unclear naming with broad blast radius.
- **Nit** — formatting, prefer-const, comment polish.

## Output format

```
## Summary
Two sentences: overall risk + biggest concern.

## Findings

### [Blocker] foo.ts:42 — drops AbortSignal
The handler captures `signal` but never registers a listener. abort() will not propagate to the spawned child.
Fix: addEventListener("abort", kill, { once: true }).

### [Major] bar.ts:108-130 — race condition on shared state
Two parallel callers can both observe `cache === undefined` before either writes.
Fix: serialize with a Promise<T>-keyed in-flight map.

### [Minor] baz.ts:12 — magic number
`if (count > 7)` — extract MAX_PARALLEL constant; same value lives in three other files.
Fix: import MAX_PARALLEL_SUBAGENTS from @juliusbrussee/caveman-agent.

### [Nit] foo.test.ts:88 — typo
"recieve" → "receive".
```

## What NOT to do

- Do not say "looks good to me" without citations.
- Do not propose features beyond the diff's scope.
- Do not rewrite the implementation. Suggest, don't implement.
- Do not cite findings outside the changed files unless they directly cause a Blocker/Major.

MIT license, from JuliusBrussee/caveman-code at commit 3a21be115c32.

Security

Scanned Oct 22, 2026 at commit 3a21be115c32, with Cisco's open-source skill-scanner.

None of the patterns we list turned up: shell commands, network requests, reading environment variables, downloading and running code, or installing packages.

A scan lists patterns in the code. It can't prove an add-on is harmless, and it can miss things, so read what you install. How we scan

Alternatives

Other makers' add-ons that do the same job, next to this one.

NameScoreStarsContextUpdated
This onereviewer JuliusBrussee/caveman-code · Subagent 64★ 941≈30 in chat3mo ago
writing-reviewer andrehuang/academic-writing-agents · Subagent Same job: research & papers 51★ 220≈22 in chat6mo ago
referee2-reviewer flonat/flonat-research · Subagent Both about reviewer 51★ 147≈23 in chat1mo ago
scicomm-reviewer dgilford/ai-science-toolkit · Subagent Both about reviewer 56★ 63≈21 in chat1mo ago
application-reviewer MadsLorentzen/ai-job-search · Subagent Both about reviewer and critique 95★ 57k≈80 in chat16d ago
atomic-reviewer damusix/atomic-claude · Subagent Both about reviewer and diff 58★ 114≈28 in chat16d ago