> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getmonocle.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Review Gating

> Block your agent until you approve its plan or current work.

Review gating lets you pause your agent's progress until you've had a chance to review. monocle provides three mechanisms: plan gating via hooks or skills, a per-turn review gate that blocks after file edits, and manual pause flow.

## Plan gating with `/review-plan-wait`

The `/review-plan-wait` skill submits a plan to your TUI and blocks the agent until you respond.

<Steps>
  <Step title="Agent submits a plan">
    Your agent runs `/review-plan-wait`, which calls `monocle review send-artifact --wait` under the hood. The plan appears in the monocle sidebar.
  </Step>

  <Step title="You review and respond">
    Read the plan, leave any line-level comments (issues, suggestions, notes), and press `S` to submit your review. An empty review with no comments counts as an approval.
  </Step>

  <Step title="Agent receives your feedback">
    If you approve, the agent unblocks and continues. If you request changes, the agent updates the plan and resubmits — the loop repeats until you're satisfied.
  </Step>
</Steps>

This is content-level gating: you're reviewing a specific piece of content (the plan) before the agent acts on it.

## Pause flow with `P`

Pause flow lets you stop the agent at any point during a session — not just at a plan submission.

Press `P` in the monocle TUI to send a pause notification. The agent receives it, runs `monocle review get-feedback --wait`, and blocks until you submit your review.

Use this when:

* The agent is mid-task and you want to catch up on its current diffs before it continues
* You want to redirect the agent before it moves to the next step
* You need the agent to stop while you review something it's already written

Once you've reviewed and pressed `S` to submit, the agent unblocks and receives your feedback.

<Warning>
  Pause flow requires MCP channel support and is currently only available with Claude Code. Other agents (OpenCode, Codex CLI, Gemini CLI, Pi) do not support the push notification needed to trigger the pause.
</Warning>

## Turn-end review gate (Claude Code hooks)

When you register Claude Code with the review-gate hooks enabled (the default), monocle automatically blocks the agent at the end of any turn that edited files. You don't need to press anything — the gate triggers whenever the agent's turn included write-tool calls (Edit, Write, NotebookEdit, MultiEdit).

<Steps>
  <Step title="Agent edits files during its turn">
    Each time a write-tool fires, the `PostToolUse` hook marks the session as having unreviewed changes.
  </Step>

  <Step title="Agent's turn ends">
    The `Stop` hook fires and checks for unreviewed activity. If write-tools fired during the turn, the hook blocks and waits for your review.
  </Step>

  <Step title="You review and respond">
    Open monocle and review the diffs. Press `S` to submit. If you approve, the agent's next turn starts. If you request changes, the feedback is sent back and the agent continues working to address it.
  </Step>
</Steps>

If no file edits happened during the turn (for example, a pure-chat response), the hook exits immediately and the turn ends normally.

To opt out of the turn-end review gate, pass `--no-review-gate` when registering or uncheck the option in the TUI wizard. See the [CLI reference](/reference/cli#monocle-register) for details.

<Note>
  Hooks don't fire when Claude is launched with `--dangerously-load-development-channels`. If you rely on MCP channels for push notifications, the hook toggles are no-ops at runtime.
</Note>

## Choosing the right mechanism

|                      | Plan gating                                                  | Turn-end gate                                                 | Pause flow                                      |
| -------------------- | ------------------------------------------------------------ | ------------------------------------------------------------- | ----------------------------------------------- |
| **What it gates**    | A specific plan or artifact                                  | Every turn that edits files                                   | The agent's entire session                      |
| **When it triggers** | Agent calls `/review-plan-wait` or `ExitPlanMode` hook fires | Automatically at turn-end                                     | You press `P` in the TUI                        |
| **Agent support**    | All agents (skills/prompts); Claude Code (hooks)             | Claude Code only                                              | Claude Code only                                |
| **Use when**         | You want to review the plan before the agent writes code     | You want automatic review checkpoints after every code change | You want to pause everything while you catch up |
