skills/review/SKILL.md
Orchestrated REVIEW phase — analyze the diff, decide which audits apply, run them in order, consolidate findings. Use before merging a PR, before shipping a significant change, or when user asks to "review", "/hb:review", "do a full review". Don't use for single-file fixes (use `code-review` directly) or post-merge audits.
npx skillsauth add helderberto/skills reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Workflow orchestrator for the REVIEW phase of the SDLC. Decides which audits apply based on the diff and runs them through dedicated skills. Reports a single consolidated review categorized by severity.
This is a workflow-guided skill: it does not auto-invoke other skills silently. It announces which skill comes next, runs it, then moves to the next.
git branch --show-currentgit diff --stat $(git merge-base HEAD origin/main 2>/dev/null || git merge-base HEAD main) 2>/dev/null || git diff --stat HEAD~10git diff --name-only $(git merge-base HEAD origin/main 2>/dev/null || git merge-base HEAD main) 2>/dev/null || git diff --name-only HEAD~10From the diff, classify changed files:
| Category | Detection | Audit to invoke |
|----------|-----------|-----------------|
| Frontend (JSX/TSX/HTML/CSS) | \.(jsx?\|tsx?\|html\|css\|scss)$ matches | a11y-audit |
| User-facing strings | Strings added in components | i18n |
| Bundle / build output | package.json, vite.config.*, webpack.config.*, next.config.* | perf-audit |
| Dependencies | package.json / package-lock.json changed | deps-audit |
| Any code change | always | code-review |
| Any code change | always | safe-repo (diff-only mode) |
| Backend API / data handling | routes/, api/, controllers/, models/, *.sql | harden |
State the detected scope before running: "I detected frontend + dependency changes. Will run: code-review, a11y-audit, deps-audit, safe-repo."
For each applicable audit, in this order:
Announce each step before running ("Now running a11y-audit on 3 changed components..."). Capture findings per audit.
Merge all findings into a single report categorized by severity:
## Review Summary
**Scope**: <files/lines changed, audits run>
### Critical (blocks merge)
- <file:line> — <issue> — <which audit flagged it>
### Important (should fix before merge)
- <file:line> — <issue> — <audit>
### Suggestions (nice-to-have)
- <file:line> — <issue> — <audit>
### Audits run
- code-review ✓
- safe-repo ✓
- a11y-audit ✓
- ...
Critical = correctness, security, sensitive data, accessibility blockers (level A WCAG). Important = readability, architecture friction, missing tests, deps with known CVEs. Suggestions = style, naming, optional perf wins.
State explicitly: APPROVE, REQUEST CHANGES, or NEEDS DISCUSSION.
code-review and safe-repo — these are non-negotiablee2e or visual-validate — those belong to VERIFY phase, not REVIEWgit merge-base fails (no main remote) → fall back to HEAD~10, warn user that base may be wronggh pr view <num> fails → fall back to current branch diff, warn usertesting
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
documentation
Compact the current conversation into a handoff doc so a fresh agent can continue the work. Use when user asks to "handoff", "/handoff", "hand this off", or wants to end a session mid-task. Don't use for summarising completed work, writing PRDs/plans/ADRs, or committing changes.
development
Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill, or asks "make a skill for X".
development
Tell the agent to zoom out and give broader context or a higher-level perspective. Use when you're unfamiliar with a section of code or need to understand how it fits into the bigger picture.