# Codex CLI Has Responsive Tables in the Terminal

> Source: <https://www.vincentschmalbach.com/codex-cli-responsive-terminal-tables/>
> Published: 2026-08-03 12:55:00+00:00

### Google Lighthouse Adds Agentic Browsing Checks and Cloudflare Adds AI Traffic Controls

Google Lighthouse and Cloudflare are adding different controls for the same emerging class of automated web visitors. Lighthouse added an experimental Agentic…

LLMs use Markdown tables all the time. A few months ago, Codex CLI displayed them as ordinary wrapped text. In a narrow terminal, the pipes and dashes were hard to read. Codex CLI now has responsive Markdown tables. They make those tables readable for terminal users.

I noticed the new rendering today while resizing a Codex window. The table changed shape as I dragged the window narrower. I kept doing it because it looked great.

In a wide terminal, Codex shows a normal table. The headers are bold and use the active theme colour. There is a heavy line below the headers and lighter lines between the rows.

When the terminal gets narrower, Codex turns each row into a small record. The column headers become labels beside the values. In a very narrow window, each label moves above its value. The table uses more lines, but it is still easy to follow.

This is deterministic. Codex starts with the natural width of every column and works out how much room each one gets. It then checks for damaged cells: a compact identifier split across lines, a token-heavy value pushed below its minimum width, or prose with too little room to be useful.

For a table with several body rows, Codex switches to records when two rows are affected, or when one third of the rows are affected. A one-row table switches as soon as that row is affected. If the grid cannot give every column at least three terminal cells, Codex uses records straight away.

The layout depends on the actual data in the table. A table full of short values stays a grid longer than one with long paths and descriptions. Resize the terminal wider and Codex renders the grid again.

Most terminal apps write physical lines and then leave them there. Codex keeps the original Markdown and table data for recent transcript cells. After a resize, it renders the table again for the new width.

Links needed similar work. Codex uses OSC 8, the terminal hyperlink protocol, to keep a link destination attached to every visible part of a wrapped link. The [first responsive-table implementation](https://github.com/openai/codex/pull/22052) landed on May 10, 2026 and shipped in 0.131.0. The [key/value follow-up](https://github.com/openai/codex/pull/24636) shipped in 0.136.0. On July 22, a [wrapped-link fix](https://github.com/openai/codex/pull/34778) joined adjacent OSC 8 fragments with the same destination. Its regression test uses a long authentication URL in a 44-column terminal.

I did not notice this when the first code shipped. I just ran into it today, after several releases had made the terminal UI better.

Claude Code also has a stacked layout for narrow tables. Its [changelog](https://github.com/anthropics/claude-code/blob/7ef6eec9d9ba84ea6f233f26c45f1df5c5991843/CHANGELOG.md) includes fixes for table rendering and wrapped links.

I prefer the Codex version. It looks better to me. Its public repository also exposes the renderer, snapshots, tests, and commits behind it.

Give Vroni a GitHub issue, bug report, spec, or rough idea. It reads the repo, plans the change, writes code, runs checks, and works toward a review-ready pull request.

Take a look at vroni.com
