The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Inspectrum listing page.
Claude plans it. GPT reviews it. You approve it.
A plausible plan can commit an agent to a migration, authentication change, payment flow, compatibility break, or deployment that is expensive to undo.
Inspectrum is an independent pre-flight check before that decision. Its first automatic integration runs when Claude Code exits plan mode: Codex (GPT) reviews the plan before the approval dialog reaches you, findings can send the plan back for revision, and you keep final approval. If the reviewer cannot run, the plan passes through with a visible warning instead of being silently reported as reviewed.
Here, independent means a reviewer distinct from the author model, invoked separately. It does not mean their errors are statistically independent. Inspectrum makes the checkpoint repeatable and its failures visible; a net reliability gain and a defensible moat are not yet proven. The post-0.2.2 strategy defines the evidence gates and keeps code review, pull-request review, and pair programming out of scope.
For an occasional second opinion, a rule can tell one agent to call another and compare the replies. That is a reasonable lightweight option.
Inspectrum is for the repeatable checkpoint. In Claude Code, the plugin runs at the plan-to-execution boundary without relying on a remembered prompt, caps revision loops, and fails open on operational errors. Other local MCP hosts can call the same review_plan contract on demand. Both paths keep findings attributed, return a common verdict shape, preserve human control, and write local evidence for successful reviews.
Recreating those guarantees with a skill means maintaining the orchestration, output validation, health checks, failure policy, and session record yourself.
Public availability as of 1 August 2026: npm 0.2.3, the GitHub release, and the repository's Claude and Codex plugins are aligned on 0.2.3. Glama is public. The MCP Registry may still show 0.2.2; it was not republished in this pass. Inspectrum was not in the public Claude Community catalog, while PulseMCP blocked the one-time recheck with HTTP 403, so no current PulseMCP listing claim is made.
The public 0.2.3 activation evidence records exact commands, timings, one useful finding, one null result, one visible fail-open case, and the limits of the measurement.
You need Node 20+, Claude Code, and Codex CLI >= 0.99.0 authenticated with a ChatGPT subscription (no API key):
That's the whole install. Next time you finish a plan in plan mode:
No prompt to remember, no button, zero tokens spent on triggering. The gate is a deterministic hook — it fires on every plan, whether your session runs Fable, Sonnet, or Haiku. Two commands give you the automatic gate; the on-demand /inspectrum:review command needs one extra line (registering the MCP server — shown in the assisted setup below).
Built to be boring and safe:
codex exec -s read-only --ephemeral), and sandbox-weakening flags in your config are stripped. The reviewer reads; it doesn't write.[plan_gate] enabled = false in ~/.inspectrum/config.toml, or disable the plugin per project.| 🚦 Plan gate | Every Claude Code plan reviewed by Codex before it reaches you — automatic, max 2 revision rounds |
| 🔍 On-demand review | /inspectrum:review or "Review this plan with Inspectrum" from any MCP host |
| 🧑⚖️ Multi-reviewer + judge | Run codex + gemini + claude in parallel; a judge consolidates into one verdict |
| 📋 One verdict | approve / revise / reject + findings by severity, with reviewer attribution |
| 🗂️ Session logs | Markdown record of every review — verdict, findings, revised plan — under ~/.inspectrum/sessions/ (0700 perms) |
🩺 inspectrum doctor | One command to check your reviewer is installed, authenticated, and resolving the right model — fails loudly if Codex is logged out |
| Your agent | Your reviewer | Setup |
|---|---|---|
| Claude Code | Codex (GPT) | Plugin — 2 commands above |
| Codex app / CLI | Claude | codex mcp add inspectrum -- npx -y inspectrum@latest + config below |
| Claude Desktop (macOS) | Codex (GPT) | Download inspectrum-0.2.3.mcpb, open, confirm. The earlier v0.2.0 bundle was incomplete — use the v0.2.3 asset, not npm/stdio. |
| Cursor | Codex (GPT) | ![]() |
Paste this into the Codex app or CLI:
Needs a Claude Pro/Max subscription — no API key.
Which model reviews, at which effort? On the Codex side, precedence is:
| Setting | 1st (wins) | 2nd | 3rd |
|---|---|---|---|
| model | [reviewers.codex] model in ~/.inspectrum/config.toml | model in ~/.codex/config.toml | codex built-in default |
| reasoning effort | [reviewers.codex] effort | model_reasoning_effort in ~/.codex/config.toml | codex built-in default |
inspectrum doctor prints the resolved values. High effort gives the deepest reviews but can take minutes per plan — drop to effort = "medium" in [reviewers.codex] if the gate feels slow.
Without a config file, reviewers = ["codex"] is used. Free-tier-friendly: the Gemini CLI works with a personal Google account, no API key. Experimental backends: kimi, qwen, openrouter, ollama (local, zero egress).
Headless or CI host that can't run an interactive login? Pass the peer API key through the MCP host's env block instead — OPENAI_API_KEY (codex), ANTHROPIC_API_KEY (claude), GEMINI_API_KEY (gemini). Manual JSON/TOML examples live under examples/.
~/.inspectrum/sessions/<timestamp>__<id>/ and contain your full plan plus a Markdown record of each reviewer's verdict and findings. Directory perms are 0700 on POSIX. Logs written by pre-0.1.0 versions keep their original perms — retrofit with chmod -R 700 ~/.inspectrum/sessions/.ANTHROPIC_API_KEY); codex → OpenAI (ChatGPT login or OPENAI_API_KEY); gemini → Google (personal-account CLI login or GEMINI_API_KEY); openrouter → openrouter.ai; kimi → Moonshot AI; qwen → Alibaba Cloud; ollama → localhost only, zero egress unless you change endpoint.codex exec --ephemeral --skip-git-repo-check -s read-only … in a throwaway temp directory — the sandbox is pinned read-only, sandbox-weakening and cwd-override args from your config are stripped, and codex persists no session files.Does this slow me down? Only when it should. An approve verdict adds one review pass (seconds to a couple of minutes depending on effort); a bounced plan was a plan you wanted bounced. Within a session, an unchanged plan is cached and not re-reviewed.
What if Codex is down / logged out / not installed? The gate fails open with a visible warning and your plan proceeds untouched. An operational error never blocks your work — that's an architecture invariant, not a best effort.
Can it approve a plan behind my back? No. The gate can only delay the approval dialog (while Claude revises) — it can never click it. You see and approve every plan that ships.
Do I need API keys? Not for subscription-backed Codex or Claude CLI logins. Reviews consume the allowance of the existing subscription. API keys are supported for headless/CI setups and are billed by their provider.
My prompt/plan is sensitive — where does it go?
To the reviewer(s) you configured, and to a local session log under ~/.inspectrum/sessions/ (0700). Nothing else. Use ollama for a fully local, zero-egress reviewer.
sh: inspectrum: command not found / claude mcp list shows ✗ Failed to connect — but only when your current directory is the Inspectrum repo itself. npx inspectrum@<version> resolves the spec against the local package when cwd is inside a package named inspectrum whose version matches, and a package's own bin is never self-linked into its node_modules/.bin. The published package is fine. Fixes: run from any other directory, or install the real binary once and register that instead:
Gate feels slow? Set effort = "medium" in [reviewers.codex] (see Tuning). Something else? npx -y inspectrum@latest doctor diagnoses install, login, and model resolution in one shot — open an issue with its output.
If Inspectrum caught a bad plan for you, star the repo ⭐ — it's how other agent-wranglers find it.
MIT — Yann Menec. Contributions welcome: CONTRIBUTING.md.