Adding CLI Option to hide tool activity
What variant of Codex are you using?
CLI
What feature would you like to see?
Problem
The TUI transcript can become dominated by tool-call cells during long sessions. This makes the conversation hard to scan when the user mainly wants reasoning summaries and final answers.
Proposal
Add an opt-in TUI setting:
[tui]
hide_tool_activity = true
When enabled, Codex hides agent tool activity from the TUI transcript while preserving reasoning summaries, final assistant answers, approvals, and user shell commands.
Also add a live slash command:
/tool-activitytoggles the setting for the current session./tool-activity hide/tool-activity show/tool-activity toggle/tool-activity status
How it works
The setting only changes what the TUI adds to the visible transcript. Tool calls still run normally, approvals still appear when needed, and user shell commands remain visible. When hiding is enabled, Codex skips inserting agent tool-history cells for exec, MCP, web search, image, patch, and collaboration tool events, while continuing to render reasoning summaries and final assistant messages.
Prototype
I tested a local prototype on Windows against rust-v0.128.0.
Covered behavior:
- config TOML deserializes the new setting
- hidden tool activity does not insert transcript cells
- reasoning summaries and final answers remain visible
- slash command toggles the behavior without sending a core op
- slash-command parsing and recall behavior follow existing patterns
Tests
Focused tests used in the prototype:
cargo test -p codex-core config_toml_deserializes_tui_hide_tool_activity
cargo test -p codex-tui hide_tool_activity_keeps_reasoning_and_answer_visible
cargo test -p codex-tui slash_tool_activity
cargo test -p codex-tui slash_command
Additional information
I realised this implementation locally with codex itself and it showed significant visual clarity improvements.
<img width="1265" height="306" alt="Image" src="https://github.com/user-attachments/assets/d4fcc410-b585-4e82-8881-817c7e6c6472" />
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗