Working state needs live task visibility (stage + latest action)

Resolved 💬 2 comments Opened Mar 12, 2026 by Taeu Closed Mar 12, 2026

Problem

When Codex shows only Working (Xm Ys • esc to interrupt) for a long time, it's hard to tell whether it is:

  • actively coding,
  • reading files,
  • running commands,
  • searching web,
  • or stalled.

This creates user anxiety and frequent manual interrupts, even when progress is happening.

What I implemented locally (tmux workaround)

I built a small background monitor that polls every 10s and shows a single-line live status:

codex voice:1.1 running commands 242s | Ran python3 - <<'PY'

How it works

  • Detects Working/Thinking from pane output.
  • Extracts elapsed time from Working (...).
  • Infers stage from recent actions:
  • writing code if patch/edit markers appear,
  • web research for search markers,
  • running commands for Ran/Running ...,
  • reading code for Explored/Read ...,
  • fallback thinking.
  • Updates one line continuously (no log spam):
  • tmux status-right note,
  • pane title (top border) for near-chat visibility.
  • Preserves existing status-right content (I also have Codex/Claude usage monitor there), and appends this note.

Why this helps

Even a coarse stage hint dramatically improves trust:

  • "Ah, it is still doing command work"
  • "Now it is reading code"
  • "Now it is writing code"

Users interrupt less and can decide faster whether to wait or stop.

Feature request

Please add native progress visibility in Codex TUI, ideally right next to Working (...), e.g.:

Working (4m 58s) · running commands · python3 script ...

Minimum useful shape:

  1. stage (thinking/reading/writing/running/searching)
  2. latest action summary (single line)
  3. periodic refresh (e.g., every ~5-10s)

This would remove a major UX gap versus tools that show explicit intermediate progress.

Repro context

  • Date: 2026-03-13
  • Environment: macOS + tmux multi-pane Codex workflow
  • Long-running turns with web/tool calls were the main pain point.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗