| name | deep-review |
| description | Public cross-runtime entrypoint for independent review, initialization, and evidence-based review response. |
| user-invocable | true |
| argument-hint | [init] [--contract [SLICE-NNN]] [--entropy] [--ultracode] [--codex|--no-codex] [--no-opus] [--no-agy] [--codex-only] [--reviewer-strategy adaptive|static] [--readiness-receipt PATH] [--dry-run] [--explain-routing] [--routing auto|fast|balanced|quality] [--model PROVIDER=MODEL] [--effort PROVIDER=EFFORT] [--reviewer-model REVIEWER=MODEL] [--reviewer-effort REVIEWER=EFFORT] [--allow-fallback] [--allow-classifier] [--respond (REPORT_PATH | --source=pr [--pr=NNN])] |
deep-review — public route
Use this skill through $deep-review:deep-review on Codex or through the
/deep-review Claude adapter. Both entrypoints pass the same argument tokens
to this file; this file is the single owner of argument validation and routing.
Runtime root
Resolve plugin_root once with the shared runtime contract: PLUGIN_ROOT, then
the Claude compatibility alias, then the installed skill location. Every file
below is read by joining its relative path to that absolute plugin_root.
Never infer reviewer availability from the selected root or from a host label.
Argument validation
Serialize the original argument tokens as a private JSON array and invoke:
node {plugin_root}/hooks/scripts/public-route.mjs --entry review --host HOST --cwd PROJECT_ROOT --args-file ARGS_FILE
The returned JSON is the executable route authority. Stop on ok=false; use
its expanded argv and terminal route without independently reparsing them.
The runtime enforces this grammar:
- Expand
--codex-only to --codex --no-opus --no-agy before validation.
- Reject
--ultracode with --no-opus, and reject --codex with
--no-codex.
--contract consumes the next token only when it matches SLICE-[0-9]+.
--respond consumes a following report path only when it names an existing
file; --source=pr and --pr=NNN stay respond options.
- Reviewer flags combined with
--respond are ignored with one visible note.
- Any unknown flag or extra positional token is a terminal validation error.
Terminal routes
init — terminal. Read
{plugin_root}/skills/deep-review-workflow/references/init-setup.md, execute
it, report completion, and 종료. Do not load the review pipeline.
--respond — terminal. Read
{plugin_root}/skills/receiving-review/references/respond-execution.md,
execute the response protocol using returned reportPath when non-null or
the validated PR-source options in returned argv otherwise, and 종료.
That reference uses respond-runtime.mjs for report/PR/report-file I/O and
phase6-protocol.mjs for snapshot/test/verify/recover/commit on both hosts.
Claude named-agent fallback and Codex generic-subagent dispatch consume one
shared Accepted Items prompt; neither route uses a hook or MCP server.
--qa — terminal. Explain that App QA is reserved for a later release and
종료 without creating state.
review — terminal for --contract, --entropy, reviewer flags, or no
arguments.
- Artifact-aware classification and routing (Phase 2): when the returned route sets
dryRun or explainRouting, do not run any reviewer. Instead run
node {plugin_root}/hooks/scripts/classify-artifacts.mjs --repo PROJECT_ROOT
(append --explain-routing when the route set explainRouting), print its
listing. When returned JSON has route.overrides, append
--overrides-json and JSON.stringify(route.overrides) as a single argv
value so model IDs and paths are never reparsed by a shell. Then 종료
without running a reviewer. That helper classifies the change scope, renders
the capability-aware routing plan, and writes provenance under
.deep-review/tmp/. Semantic classification remains deferred unless
route.overrides.allow_classifier is true.
- Otherwise read the internal workflow skill and then
{plugin_root}/skills/deep-review-workflow/references/review-execution.md;
execute its routing preflight immediately before reviewer dispatch, then run
it once and 종료 with the resulting report path and verdict or document
readiness gate. Policy and explicit-constraint failures are terminal;
routing_shadow_mode: true records a non-applied observation plan.
The internal workflow and receiving skills are implementation details and are
not public marketplace prompts.
Artifact-aware routing Phase 2
Routing overrides are review-only. --routing selects auto, fast,
balanced, or quality; repeated --model PROVIDER=MODEL and
--effort PROVIDER=EFFORT set provider defaults; repeated
--reviewer-model REVIEWER=MODEL and --reviewer-effort REVIEWER=EFFORT set
canonical reviewer overrides. --allow-fallback permits a visible downgrade
when an explicit request cannot be applied. Model values are opaque and split
only at the first =.
Adaptive reviewer routing and automatic model routing are enabled by default.
--reviewer-strategy adaptive selects only the role-fit reviewer floor and may
expand once within the same round. --reviewer-strategy static fixes the
eligible reviewer set for compatibility. routing_shadow_mode: true computes
and records the adaptive plan but does not apply it. Use static strategy and
shadow mode together when exact pre-2.0 dispatch behavior is required.
The --no-*, --codex, --codex-only, and --ultracode flags are hard
eligibility or required-assignment constraints. A reviewer-level model or
effort override requires that canonical reviewer to be selected; a provider
override applies only to selected reviewers from that provider and never adds a
reviewer.
--allow-classifier opts --dry-run or --explain-routing into semantic
classification for ambiguous artifacts. Artifact content is untrusted data;
the classifier receives bounded text through stdin, and secret-like content
fails closed to deterministic classification without being sent externally.
--readiness-receipt PATH is implementation-review-only linkage to an earlier
document gate. The runtime verifies repository and path containment, rejects
symlinks, and rehashes every document and reviewer report before dispatch.
Stale or tampered input terminates with ERROR_READINESS_RECEIPT_STALE;
unverified deferred acceptance items prevent APPROVE.
A team may commit .deep-review/review-policy.yaml; because Git cannot
re-include a file below an ignored directory, replace a .deep-review/ ignore
with both rules below:
.deep-review/*
!.deep-review/review-policy.yaml