openai / openai/codex

Feature request: progress-first TUI with collapsible tool output and first-class cross-project history

Open
#41,601 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

CLI enhancement session TUI
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 complete rather 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 projects view.
  • 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 /resume performance/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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.