Feature request: progress-first TUI with collapsible tool output and first-class cross-project history
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What variant of Codex are you using?
Codex CLI / TUI on macOS. Observed on codex-cli 0.149.1 during long-running, multi-repository coding workflows.
What feature would you like to see?
I would like Codex to provide an operator-focused, progress-first TUI together with a first-class history browser across projects.
The underlying session data appears to be persisted, but the current terminal experience makes long-running work harder to follow and older conversations harder to rediscover than they need to be.
There are two related UX problems.
1. Main TUI is too noisy for long-running tasks
During a large task, Codex can print many pages of intermediate tool output, raw JSON, statistics, command output, file contents, analysis artifacts, and other low-level details into the main terminal transcript.
Those details can be useful for debugging, but most of the time I do not need to watch them continuously. What I do need is the task-level progress:
- what step is currently running;
- which planned steps are complete;
- how many steps remain;
- whether tests/builds passed or failed;
- whether the agent is blocked;
- the final result and important warnings.
For example, a long-running data-analysis/coding turn may dump a large JSON object containing counts, rates, thresholds, and intermediate results. That information is useful to the model and should remain available in the full transcript, but it can consume most of the visible terminal scrollback even though the user only needs a concise summary such as:
Plan: 6/9 steps complete
Current: validate control-group statistics
Last check: 299 tests passed
Remaining: integration check, cleanup, final review
Suggested TUI behavior
Please consider a configurable display mode such as:
[tui]
verbosity = "compact" # compact | balanced | verbose
tool_output = "auto-collapse" # auto-collapse | always | never
progress = "persistent"
In compact/balanced mode:
- Collapse large command/tool/MCP result bodies by default.
- Keep a one-line summary such as
Ran analysis.py · 2,318 lines · exit 0. - Show a short preview only when there is an error or important result.
- Preserve the complete output for the model and for explicit transcript inspection (
Ctrl+T, expand, or a dedicated transcript view). - Do not truncate model context merely to make the UI cleaner; this is a presentation-layer request.
- Keep high-level progress updates visible and easy to scan.
- When a task has an implementation plan/checklist, show durable progress such as
Step 4/8 completerather than letting progress messages disappear among tool logs.
A small persistent task-status area would be especially useful for multi-hour tasks:
Task: Add exchange adapter
Progress: 5/8
Current: integration tests
Last result: unit tests passed
Blocked: no
Elapsed: 2h 14m
2. Historical conversations are persisted but not easy enough to rediscover
For users working across many repositories, conversation history is part of the engineering record: architecture decisions, debugging conclusions, implementation plans, and previous answers are often needed weeks later.
codex resume, codex resume --all, thread names, and the full transcript view help, but the experience is still much weaker than a first-class project history browser. In practice, users can feel as if older conversations are gone even when the rollout data still exists locally.
I would like a supported history UI rather than requiring users to build their own ~/.codex/sessions/SQLite browser.
Useful capabilities would include:
- Group sessions by repository / working directory.
- Global
All projectsview. - Search across user prompts and assistant answers, not only titles/recent loaded sessions.
- Filter by repo, date, title, model, and status.
- Show a concise preview containing the last meaningful user/assistant exchange, not pages of tool output.
- Resume directly from a search result.
- Make older sessions discoverable even when they are outside a recent-history window.
- Keep session history available across normal CLI restarts and project switches.
A possible interaction:
/history
exchange/
2026-08-29 Symbol mapping implementation
2026-08-27 Aster/BingX SPOT adapters
hisorders/
2026-08-28 Family-account panel filtering
/ search: "checkpoint compatibility"
Selecting an item could show a compact Q/A preview, with Ctrl+T or another action opening the full transcript.
Why these two requests belong together
The main TUI and the history UI should optimize for different purposes:
- Main working view: concise operational progress.
- Full transcript: complete low-level details when explicitly requested.
- History browser: searchable project memory focused on meaningful user/assistant exchanges.
Today the main transcript often shows too much low-level information, while the history/resume experience still makes the important high-level conversation difficult to rediscover later.
The ideal behavior is: store everything, show progress by default, reveal details on demand, and make the important conversation easy to find later.
Related issues
This request overlaps with, but is broader than:
- #26279 — folding verbose MCP tool result bodies;
- #23047 — unified/search-everywhere support including sessions;
- #22037 — project-scoped
/resumeperformance/history behavior; - #25084 / #27159 — first-class discovery of persisted local threads;
- #34724 — progress feedback while resuming long threads.
Those issues cover individual parts. This request is specifically about a coherent progress-first operator UX + durable first-party engineering history UX.
Comparison / motivation
Claude Code currently feels easier to use for this workflow because older project conversations remain easier to revisit and the visible terminal experience is generally less dominated by intermediate data. Codex already has strong persistence and transcript machinery; exposing it through a more concise working view and a stronger history browser would materially improve long-running professional coding workflows.
Privacy
No private repository names, account identifiers, credentials, or transcript contents are included in this report.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the existing codex resume and codex resume --all behavior, the TUI transcript view, and the persisted ~/.codex/sessions data described in the issue. Review related issues #26279, #23047, #22037, #25084, #27159, and #34724 before defining the scope. Done should include concise progress-first display, expandable tool output, and searchable cross-project history without removing full transcript access.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli, developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100