Allow hiding or collapsing successful Auto-review approval items

Open 💬 1 comment Opened Aug 12, 2026 by jkristoffer

What variant of Codex are you using?

Codex App on macOS, with Codex CLI 0.147.0.

What feature would you like to see?

When approvals_reviewer is set to auto_review, also shown as Approve for me, Codex inserts an automatic-review item for every sandbox-boundary approval. During tool-heavy tasks, successful approval messages accumulate and create substantial conversation noise.

Please add a display preference for Auto-review items, for example:

auto_review_display = "all" | "collapsed" | "denied-only" | "hidden"

Suggested behavior:

  • Always surface denials, errors, and aborted reviews.
  • Allow successful approvals to be collapsed, summarized, or hidden.
  • Preserve the complete approval record in session logs or audit data.
  • Do not change sandbox boundaries, approval policy, or reviewer behavior.

The goal is presentation control, not bypassing or weakening Auto-review.

Additional information

There is currently no supported configuration option to suppress only successful automatic approval messages while retaining Auto-review. Using approval_policy = "never" removes the review flow entirely and causes sandbox-boundary actions to fail instead, so it is not an equivalent workaround.

Related issues:

  • #32981 requests restoring more rationale within Auto-review items; this request instead asks for optional presentation control over successful items.
  • #28833 concerns suppressing false-positive external approval notifications and is adjacent, but does not cover conversation items.

View original on GitHub ↗

1 Comment

jdcodes1 · 9 days ago

Pointer for implementation: every auto-review outcome flows through one place — new_approval_decision_cell in tui/src/history_cell/approvals.rs, where the guardian actor is already distinguished from the human (ApprovalDecisionActor::Guardian, rendered as "Auto-reviewer …", https://github.com/openai/codex/blob/1f41cc5d92/codex-rs/tui/src/history_cell/approvals.rs#L45-L60 and #L269-L276). Since actor and decision are both known at cell-construction time, a auto_review_display preference is a small filter at that call site: denied-only = drop cells where actor is Guardian and decision is an approval; collapsed = fold consecutive guardian approvals into one counter cell ("Auto-approved 12 actions"), the way exec output already truncates. Denials should stay visible unconditionally — they're the actionable ones (/approve retry depends on seeing them). No protocol change needed; the events can keep flowing to the transcript/rollout while only the TUI presentation filters.