forge-code-review
Skill2 starsChanged 33 days agoMITView on GitHub
Forge code-review method — order, severity levels, Codex handoff. Use before any commit or when asked to review code — code review, check my code, PR review, before I commit.
2 other projects use a version of this, 1 of them edited.
Adopted by
Most recently taken up by
- ForgeyClap/Forge-Coreedited, first seen Oct 11, 2026
- brightstack/forgetheir own version, first seen Sep 29, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 1
- ForgeyClap/Forge-Core★ 230% same
Wrote their own version · 1
- brightstack/forge★ 13same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository74 other files it gives its agents.
- docs/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- brainstormingSkill
- claude-md-improverSkill
- dispatching-parallel-agentsSkill
- executing-plansSkill
- finishing-a-development-branchSkill
- forge-agent-reportSkill
- forge-agentSkill
- forge-apiSkill
- forge-botsSkill
- forge-brainstormSkill
- forge-cliSkill
- forge-cmsSkill
- forge-councilSkill
- forge-dataSkill
- forge-debugSkill
- forge-deeplearnSkill
- forge-docdriftSkill
- forge-doctorSkill
- forge-ecommerceSkill
- forge-electronSkill
- forge-extensionSkill
- forge-figmaSkill
- forge-fullstackSkill
- forge-gameSkill
- forge-graded-verifySkill
- forge-guardianSkill
- forge-heartbeatSkill
- forge-intakeSkill
- forge-integrationSkill
- forge-mcp-clientsSkill
- forge-migrationSkill
- forge-mindmapSkill
- forge-mlopsSkill
- forge-mobileSkill
- forge-n8nSkill
- forge-nightshiftSkill
- forge-paymentsSkill
- forge-prdSkill
- forge-predictionSkill
- forge-projectbrainSkill
- forge-prompt-coachSkill
- forge-qualitySkill
- forge-ragSkill
- forge-registrySkill
- forge-reportSkill
- forge-routerSkill
- forge-scoutSkill
- forge-scrapingSkill
- forge-scribeSkill
- forge-skill-testingSkill
- forge-snapshotSkill
- forge-verifySkill
- forge-voiceSkill
- forge-websiteSkill
- forge-worktreesSkill
- frontend-designSkill
- grillingSkill
- grill-meSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Self-improvement substrate (wp-skill-evals): before applying this skill, read learnings.md in this skill's own folder and honor its …
- Distinctive: line 21
Every finding is specific and actionable (file + line/symbol + what's wrong + the fix), never a vague "looks off."
- Very specific: line 94
Before the shipped config existed at all the model was pinned nowhere, so /codex:review silently used whatever default the plugin happened …
- Distinctive: line 106
Never attribute a review to a model that did not run it: If the pinned model is refused (400 / CLI too old / not authenticated), say which …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Forge playbook — Code review method
Self-improvement substrate (wp-skill-evals): before applying this skill, read
learnings.md in this skill's own folder and honor its corrections. After a run that produced a
genuine correction (an owner fix, a false assumption caught, a preference stated), append it to
learnings.md with a date and real evidence — never invent a lesson that didn't happen.
Do not duplicate ECC skills — defer to: code-review-excellence (the deep per-language review
reference: React/Vue/Angular/Svelte/Rust/TypeScript/Java/PHP/Python/Django/Go/C#/Kotlin/NestJS/C/C++).
This file is the Forge-specific orchestration wrapper: the fixed review order, the severity scale, and
how a finding becomes a rework item in the Forge pipeline.
Hard rules
- Review the real diff/files directly — never review a self-report of the diff, and never approve on the strength of "tests pass" alone without reading the actual change.
- Every finding is specific and actionable (file + line/symbol + what's wrong + the fix), never a vague "looks off."
- CRITICAL/HIGH findings block completion; they are not "nice to have later."
- Feedback targets the code, not the person; explain the reasoning, don't just assert a preference.
- A review is not a rewrite-to-taste pass — flag genuine correctness/security/maintainability issues, not personal style preferences that don't match a real project convention.
Review order (fixed sequence — don't skip ahead to style)
- Correctness — does the logic actually do what it claims; are edge cases the happy path hides named, not assumed away.
- Security — secrets, injected input, auth/authz boundaries, unsafe deserialization, path traversal,
anything on the mandatory security checklist (
~/.claude/rules/ecc/common/security.md) for security-sensitive changes. - Tests — does new behavior have a real test; do existing tests still pass; is coverage of the changed logic genuine (not just line-count coverage).
- Simplicity — is this the simplest correct solution, or is there unnecessary abstraction/complexity for what the task needed (YAGNI).
- Performance — any obvious N+1 queries, unbounded loops/queries, or missing pagination/caching on a hot path.
- Style — naming, formatting, project convention consistency — reviewed last, and never blocking on its own unless it actively harms readability.
Severity levels
| Level | Meaning | Action |
| CRITICAL | Security vulnerability, data loss, or broken correctness in a real path | BLOCK — must fix before done |
| HIGH | Real bug or significant quality/maintainability issue | BLOCK or WARN — fix before done unless owner explicitly accepts the risk |
| MEDIUM | Maintainability concern, not currently harmful | INFO — should fix, doesn't have to block |
| LOW | Style or minor suggestion | NOTE — optional |
Codex handoff (optional, never a blocker)
For security-sensitive, auth, payments, database-migration, or other high-risk changes, this review MAY
be followed by an independent codex-reviewer pass (/codex:review read-only, or
/codex:adversarial-review for the required-review areas in CODEX_GLOBAL_POLICY.md (an owner-level policy in ~/.claude when present; on an install without it, the defaults stated in this skill apply — read-only, never a blocker)). If Codex is
unavailable, report that honestly — the review above still stands on its own.
The model comes from the EFFECTIVE config, and it is NOT a detail you restate from memory. Read
.claude/config/orchestration/codex-review.json — the SHIPPED, template-owned default (engine, model,
reasoning effort, sandbox) — merged with the optional, NEVER-shipped
.claude/config/orchestration/codex-review.user.json (one account's own override, same shape, only
review.model/review.reasoning_effort can ever win from that file; every other field always comes from
the shipped file). .claude/forge-bin/forge-codexreview-config.cjs::effectiveConfig() does that
merge; its buildCommand() derives the real command as an argv ARRAY — never a hardcoded or
hand-concatenated shell string.
** finding 3.1 (2026-09-26 independent review):** the user-override file is gitignored and never
reviewed, so it may weaken nothing beyond the model/effort pin. Both are validated — an invalid value is
ignored, with a warning, and the shipped value is kept, never passed through. The review sandbox is
hard-coded read-only in buildCommand() — it is never read from either config file, so no override can
loosen it.
Validation rule (2026-09-26 independent review): review.model is usable only when it matches
^[A-Za-z0-9][A-Za-z0-9._:-]{0,63}$ — it must START with a letter or digit, never - (a leading dash
would make the "model" look like a CLI flag once it lands after -m, e.g.
--dangerously-bypass-approvals-and-sandbox). review.reasoning_effort must be one of (case-insensitive):
minimal, low, medium, high, xhigh, max. Anything else is invalid and the shipped value is kept.
The runnable, no-shell route: node .claude/forge-bin/forge-codexreview-config.cjs run [--adversarial]
--prompt "<review prompt or focus text>" — this reads the effective config, validates it, derives the
argv, and spawns the real codex binary directly with spawnSync(codexBin, argv, { shell: false }); no
shell ever parses the model/effort/prompt values. A real run needs --prompt, a prompt starting with - is
refused, and on Windows the npm install's codex.js behind codex.cmd is found on PATH automatically
(FORGE_CODEX_BIN overrides). run --dry-run --json inspects the exact argv without spawning anything. commandToDisplayString(argv) (used internally for the subcommand's non-JSON display
line) is for a report/log line only and must never be re-parsed or re-executed.
Portable default (no user file, or one that leaves review.model unset): no model/effort pin at
all — the review runs on the codex CLI's own current default, and is reported honestly as
"Codex default model", never a fabricated name. Pinned: an account's codex-review.user.json sets
review.model/review.reasoning_effort, and the command passes exactly those as -m <model> /
-c model_reasoning_effort=<effort>. This repo's own maintainer account currently pins gpt-6-astra at
model_reasoning_effort=xhigh in its own user file (long thinking = xhigh;
history: gpt-5.6-sol 2026-08-04 → HTTP 400 on that account 2026-09-24) — that pin lives in the
never-shipped user file, never in this shipped skill text, so a different account never inherits it.
Before the shipped config existed at all the model was pinned nowhere, so /codex:review silently used
whatever default the plugin happened to carry; reaching a specific pinned model can still need a newer
Codex CLI (gpt-5.6-sol needed ≥ 0.146.0 — 0.142.3 got an HTTP 400 telling it to upgrade, measured
2026-08-03).
Name the step for what it is. The planned work package is the Codex code-review, not an "ECC
code-review". ECC code-reviewer/security-reviewer is the fallback you use when Codex genuinely
could not run, and it is always labelled
FALLBACK (non-independent) review — Codex did not run because: <reason>. Planning the fallback as
the step quietly downgrades an independent review into a second opinion from the same model family
that wrote the code.
Never attribute a review to a model that did not run it. If the pinned model is refused (400 / CLI too old / not authenticated), say which model actually ran, or that the review was blocked — a verdict stamped with the wrong provenance is a fabricated review.
Relationship to Review Boss
forge-code-review is the method — the checklist and severity scale anyone applies when reviewing
code, including Build Boss self-reviewing before handoff. Review Boss (.claude/agents/review-boss.md)
is the agent identity that runs this method (plus verification-before-completion, design-is,
requesting-code-review — the first and last ship with Forge as pinned vendored skills) as the final QA gate before a task is ever reported done. Use this skill
directly for an in-flight self-review; dispatch Review Boss for the end-of-task gate.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

