Skip to main content

dev-local-review

Run a local code review using the CodeRabbit agent before pushing to catch issues early

Jump to install

Source facts

Repository
Nebulavenus/forge-gpu
Last source activity
March 17, 2026 at 04:10
Detected SKILL.md language
English
Stars
38
Forks
7

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
dev-local-review
description
Run a local code review using the CodeRabbit agent before pushing to catch issues early
argument-hint
[--base branch]
disable-model-invocation
false
Run a local code review before pushing to catch issues before they hit the PR and burn a review round. Uses the built-in CodeRabbit code-reviewer agent (`subagent_type: "coderabbit:code-reviewer"`) which runs entirely locally at zero cost. **This is not a substitute for the GitHub PR review.** The local review cannot access CodeRabbit's learnings from past PRs or perform repo-wide architectural analysis. It is a fast, free pre-push gate that catches the obvious issues. ## How it works The skill uses Claude Code's built-in `coderabbit:code-reviewer` agent type. This agent reads the diff locally and performs a thorough code review covering correctness, style, documentation accuracy, and common issues. No external service, CLI tool, or API key required. ## Usage Invoke the skill before pushing: ```text /dev-local-review ``` Or with a specific base branch: ```text /dev-local-review --base develop ``` ## When to use - Before pushing fixes during `/dev-review-pr` — catch new issues locally instead of waiting for the GitHub bot - Before creating a PR with `/dev-create-pr` — clean up obvious issues before the first review - Any time you want a quick code quality check without pushing - After `/dev-final-pass` for a second opinion from a different reviewer ## Workflow ### 1. Determine what to review Check `git status` and `git diff --stat` to understand the scope of changes. Use the base branch from the argument (default: `main`). ### 2. Run the CodeRabbit code-reviewer agent Launch a single agent with `subagent_type: "coderabbit:code-reviewer"`. The prompt must include: - The list of modified and new files (from `git diff --stat` and `git status`) - A summary of what the changes are about (infer from file paths and recent context) - Instructions to be thorough and report specific file paths and line numbers - The project's code quality requirements (C99, SDL3 GPU, CLAUDE.md conventions) ```text Agent( subagent_type="coderabbit:code-reviewer", prompt="Review all changes compared to <base-branch>. [file list, context, instructions]" ) ``` ### 3. Triage findings When the agent returns, present findings sorted by severity (Major, Medium, Low, Informational). For each finding, determine: - **Actionable:** A real issue that should be fixed before pushing - **Intentional:** Code that is correct as-is (e.g., strict `0.0f` epsilon for determinism tests) - **Out of scope:** Suggestions about code not changed in this PR ### 4. Fix actionable findings Implement all actionable fixes. Do not ask about each one individually — fix them all, then report what was changed. ### 5. Re-run review (MANDATORY — cannot skip) After fixing, run the agent again to verify no new issues were introduced. The re-run prompt should note which issues were already addressed so the agent focuses on finding new problems. ### 6. Repeat until zero feedback (MANDATORY — strict rule) **This is an absolute rule with no exceptions.** The review loop MUST continue until the CodeRabbit agent returns with **zero findings**. The agent executing this skill is **not allowed** to decide on its own that remaining feedback is "just a nitpick" or "informational" and stop the loop early. **The only two valid exit conditions are:** 1. **The review agent reports zero findings.** The loop ends. Proceed to "After a clean local review." 2. **The agent explicitly asks the user** whether to stop (presenting the remaining findings), **and the user agrees** to stop. Without user confirmation, the loop continues. **Prohibited behaviors:** - Deciding that remaining findings are "low severity" and stopping - Classifying all remaining findings as "intentional" without user input - Stopping after a fixed number of rounds (e.g., "typically 2-3 rounds") - Summarizing remaining findings and moving on without fixing or asking - Treating nitpicks, style suggestions, or informational comments as automatic reasons to exit the loop **Each round of the loop:** 1. Run the CodeRabbit review agent 2. If zero findings → exit loop (clean) 3. If findings exist → fix actionable ones, ask user about ambiguous ones 4. Go to step 1 If the same finding keeps reappearing after being fixed, investigate the root cause rather than stopping the loop. If genuinely stuck, ask the user for guidance — do not silently exit. ## What it catches Based on project experience, this review reliably catches: - Missing bounds checks and safety guards - Stale comments (e.g., `<math.h>` comment listing `fabsf, sqrtf` but code also uses `fminf`) - Documentation/code mismatches (README describes N phases but code has M) - Missing inline comments on struct fields - Resource cleanup gaps on error paths - Magic numbers that should be named constants - Naming convention violations - Bare C stdlib calls without `SDL_` prefix (fabsf, sinf, memset, strcmp, malloc, etc.) — use SDL equivalents or approved project wrappers (`forge_isfinite`, `forge_fmaxf`, `forge_fminf`) for cross-platform portability ## What it cannot do - Access CodeRabbit's learnings from past PR interactions - Perform repo-wide architectural analysis beyond the changed files - Interact with PR feedback threads or resolve conversations - Update GitHub approval state - Guarantee a clean PR review (the GitHub bot may find additional issues) ## After a clean local review A clean local review means the obvious issues are handled. Push and request a full PR review: 1. **Push** the commits (single push, never piecemeal) 2. **Wait for CodeRabbit's PR review** — it may find additional issues the local review missed 3. If the PR review finds issues, use `/dev-review-pr` to handle them
View on GitHub