Code Review - alexherrero/crickets GitHub Wiki
Code Review gives your agent a skeptical second pair of eyes on any change. It does not confirm your code looks fine. It assumes there is a bug. It tries to prove the bug exists. It catches real problems that a rubber-stamp review misses.
You point it at a diff or a PR. It runs an adversarial review. A reviewer reads the change. It assumes the change contains a bug. When Gemini is available, a second reviewer does the same from a different model. The two reviewers do not share one model's blind spots. Each reviewer returns an actionable result. It returns a failing test, a DEFECT: file:line, or NO ISSUES FOUND. It never returns loose prose.
When you install development-lifecycle, these reviewers run automatically at the /review phase. An evidence-tracker hook stops a task from being ticked off. The agent must read the spec and test files first.
| Direction | Plugin | How |
|---|---|---|
| Enhances (soft) | Development Lifecycle | Runs the adversarial reviewers at /review and guards /work's checkbox flips — only when both are installed. |
| Enhanced by (soft) | — | None. |
| Requires (hard) | — | None. Code Review is fully standalone. |
| Required by (hard) | — | None. |
Code Review is opinionated. It does not fit every workflow. Choose something else if:
- You trust another review pass. This pass could be a human reviewer, a linter suite, or a different AI reviewer. You do not want a second opinion on every change.
- You want a reviewer that explains its reasoning. This reviewer deliberately answers only with a failing test, a
DEFECT: file:line, orNO ISSUES FOUND. - You want the reviewer to assume the code is fine. The assume-a-bug framing is adversarial. It feels like overkill on small or throwaway changes.
Each primitive links to the source that implements it.
| Primitive | Kind | What it does |
|---|---|---|
/code-review |
command | Adversarial review of a diff or PR. |
/doubt |
command | Fresh-context review of a decision before it stands. |
/simplify |
command | Cut accidental complexity from a change. |
security-review |
skill | Three-tier boundary security review. |
testing-strategy |
skill | Coverage audit — the Beyoncé Rule, DAMP, Prove-It. |
adversarial-reviewer |
sub-agent | Assume-bugs critic; returns a failing test or a DEFECT. |
adversarial-reviewer-cross |
sub-agent | The same, cross-model via Gemini; degrades visibly — a CROSS-REVIEW-DEGRADED: <reason> line, never a silent same-model swap, whenever cross-review.sh exits non-zero: agy missing or failing, its print timeout running out, material over the size ceiling, or a reply that breaks the output contract twice. |
security-auditor |
sub-agent | Finds the unvalidated boundary crossing. |
test-engineer |
sub-agent | Finds the behavior with no test. |
evidence-tracker |
hook | Blocks a [ ] → [x] flip until specs and tests are read (Claude-only). |
You do not need to configure anything. The plugin works out of the box.
- First code review — the tutorial.
- Review a change · Simplify a diff · In-flight decision review — the how-tos.
- Why adversarial review — why the assume-bugs framing works.
- Code-review design · Composition design — the deeper design.