OpenAI Codex CLI status line

Codex HUD

The brandonwie/codex-hud repo adds a compact footer for terminal Codex sessions: model, effort, git state, context budget, rolling usage, and pace without leaving the prompt.

curl -fsSL https://raw.githubusercontent.com/brandonwie/codex-hud/main/install.sh | bash

Codex HUD compact single-line footer shown in a terminal

Native Rust renderer

Rendered by a small native Rust binary.

The default status line is rendered by codex-hud, a single self-contained Rust binary (edition 2021, MIT): minimal dependencies, no unsafe code, and a size-optimized build of about 574 KB. No Node runtime sits on the rendering path.

  • Rust
  • MIT
  • ~574 KB
  • 1 binary
  • 0 runtime deps
  • no unsafe
Per-paint latency ยท lower is better
Rust ~56 ms
Node ~75 ms

~19 ms saved per paint, about 1.34× faster. The win is Node's ~20 ms interpreter cold-start, which the native binary skips. The rest is identical git and log work, so end to end the gap stays modest and honest.

Median of 40 runs (npm run measure:rust 40), Apple M4 Pro, 2026-06-18. Indicative, single machine.

Config playground

Tune the footer before install.

Changing these controls updates the status line preview and generated codex-hud.toml configuration.

Session
Layout
Colors
Usage
32%
6%
4%
Pace
20%
13%
Format
Identity labels
status line normal pace

codex-hud.toml

Install path

Install or update with one command.

Install

curl -fsSL https://raw.githubusercontent.com/brandonwie/codex-hud/main/install.sh | bash

Update

curl -fsSL https://raw.githubusercontent.com/brandonwie/codex-hud/main/install.sh | bash

Preview

codex-hud --line --color

Configure

codex-hud --init-config

Search-ready by default

Built for the exact query surface developers use.

Codex CLI footer

Targets the practical phrase set around OpenAI Codex CLI, status line, context usage, and terminal HUD workflows.

Rust Codex status line

The status line is rendered by codex-hud, a native Rust binary: a single self-contained executable with no Node runtime on the rendering path.

Fast static page

No framework payload, no remote fonts, no client dependency chain, and only one small local script for the live preview.

FAQ

What developers usually need to know.

Does Codex HUD modify the stock Codex install?

No. The project stages its patched launcher under user-local paths and keeps stock Codex install paths untouched.

Where does configuration live?

Codex HUD reads optional codex-hud.toml files from user, project, and explicit config paths, then falls back to defaults.

What does the footer show?

Model, reasoning effort, project, branch, context usage, rolling usage windows, token totals, and pace formatting.

What is the codex-hud status line built with?

The default renderer is codex-hud, a small native Rust binary: minimal dependencies, no unsafe code, and a size-optimized build of about 574 KB. The Rust binary's own startup and render is effectively instant; end-to-end status-line latency is bounded mainly by the git commands it runs.

Does each patched Codex session keep its own HUD data?

Yes. Patched mode binds model, reasoning effort, service tier, context, and token totals to each session. A fresh session can briefly show no effort plus Ctx:? and Tkn:? until its rollout opens. The 5h and 7d limits remain account-wide, so shared movement is expected and is not session bleed.

How can I use a model and effort for one session only?

Launch Codex with codex -m <model> -c 'model_reasoning_effort="<effort>"'. Codex's /model flow can persist the selected model and effort to global ~/.codex/config.toml.