review_plan
Review an implementation plan before writing code to catch issues early. Returns an approve/revise/reject verdict and findings, with a session_id to carry context into the code review.
Instructions
Get an independent code review of your implementation plan before writing code. Call this after drafting a plan and before implementing it. Returns a verdict (approve/revise/reject), findings, session_id, responding models, and persistence provenance. Pass the returned session_id to review_code later so the reviewer has full context.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Absolute path to the directory this review runs in — the repository or git worktree whose code is being reviewed. Auto-capture, repository instruction files, and the reviewer subprocess all use it. Always pass it: an auto-capturing review without it is refused unless the server is configured with "require_cwd": false, in which case the server's launch directory is used. Must be absolute; "~" is not expanded. Applies to this call only — pass it again on resume. | |
| plan | Yes | The implementation plan to review | |
| depth | No | Review depth | |
| focus | No | Review focus areas | |
| model | No | Override the configured default model for this call (e.g., "gpt-5.6-sol"), or "latest". Or pick a tier instead of a model id: "max" (hardest problems — architecture, concurrency, security, subtle bugs), "balanced" (everyday review), or "fast" (small diffs, precommit sanity, quick iteration). Tiers map per provider (Codex: gpt-6-astra / gpt-5.6-sol / gpt-5.6-luna; Gemini: 3.1 Pro (High) / 3.8 Flash (High) / 3.8 Flash (Medium)) and survive failover. May be combined with session_id to change model mid-session; without it a resumed session keeps the model it was recorded with. Compare returned resolved and observed labels for runtime changes. | |
| context | No | Project context and constraints | |
| deliberate | No | Per-call override of the configured review mode: true = both providers review (deliberation); false = single provider with failover. Omit to use the configured mode. Requires a two-provider setup; requesting deliberation under a single-provider config returns an error. Under deliberate-deep, the returned verdict reflects both providers' independent reviews and is NOT recomputed from cross-review adjudications — treat deliberation.divergent[].adjudication as advisory input for your own synthesis. | |
| session_id | No | Continue from a previous review session |