codex - 💡(How to fix) Fix Allow configuring semantic TUI colors beyond syntax highlighting [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openai/codex#21130Fetched 2026-05-06 06:26:18
View on GitHub
Comments
0
Participants
1
Timeline
8
Reactions
0
Author
Participants
Timeline (top)
labeled ×5unlabeled ×3

Error Message

error = "#F85149"

Root Cause

Changing tui.theme or using /theme does not address the main TUI foreground/contrast issue, because the setting is focused on syntax highlighting.

Fix Action

Fix / Workaround

  • Primary TUI text mostly uses the terminal default foreground.
  • tui.theme / /theme changes syntax highlighting, but not the broader TUI color system.
  • Users cannot configure semantic colors for the main TUI.
  • Users who want a higher-contrast, more colorful UI similar to Claude Code or Gemini CLI have to either patch Codex source locally or change global terminal defaults, which is too coarse.

Code Example

[tui]
theme = "github"

---

[tui.colors]
foreground = "#E6EDF3"
muted = "#8B949E"
accent = "#58A6FF"
assistant = "#C084FC"
user = "#39D353"
success = "#3FB950"
warning = "#D29922"
error = "#F85149"
border = "#30363D"
status = "#79C0FF"
selection_fg = "#FFFFFF"
selection_bg = "#264F78"
RAW_BUFFERClick to expand / collapse

What problem does this solve?

The current Codex CLI theme support appears to affect syntax highlighting, but it does not let users configure the main TUI text and semantic UI colors.

In my setup, Codex CLI's primary chat text is rendered using the terminal default foreground. That makes large parts of the TUI appear as plain black text in my PowerShell 7 / Windows environment, even when my terminal profile uses a colorful palette. In contrast, Claude Code uses more semantic colors across its terminal UI, so the interface has much better contrast and is easier to scan.

This is not primarily about code syntax highlighting. It is about the main terminal UI: chat text, assistant/user sections, secondary/dim text, borders, status line, input/composer area, selections, and other non-code UI elements.

Environment

  • Codex CLI: 0.128.0
  • OS: Windows
  • Shell: PowerShell 7.6.1
  • Installation: npm global package @openai/codex
  • Config currently contains:
[tui]
theme = "github"

Changing tui.theme or using /theme does not address the main TUI foreground/contrast issue, because the setting is focused on syntax highlighting.

Current behavior

  • Primary TUI text mostly uses the terminal default foreground.
  • tui.theme / /theme changes syntax highlighting, but not the broader TUI color system.
  • Users cannot configure semantic colors for the main TUI.
  • Users who want a higher-contrast, more colorful UI similar to Claude Code or Gemini CLI have to either patch Codex source locally or change global terminal defaults, which is too coarse.

Requested behavior

Please add first-class configuration for semantic TUI colors beyond syntax highlighting.

A minimal version could be something like:

[tui.colors]
foreground = "#E6EDF3"
muted = "#8B949E"
accent = "#58A6FF"
assistant = "#C084FC"
user = "#39D353"
success = "#3FB950"
warning = "#D29922"
error = "#F85149"
border = "#30363D"
status = "#79C0FF"
selection_fg = "#FFFFFF"
selection_bg = "#264F78"

Or, if a larger design is preferred:

  • Add built-in UI themes such as dark, light, high-contrast, ansi, etc.
  • Let users select them through /theme or config.
  • Support custom theme files with semantic slots for the non-code TUI.
  • Keep syntax highlighting themes separate from UI themes, or expose both clearly.

Why terminal colors alone are not enough

Terminal color schemes are still useful, but they cannot solve this fully because Codex currently chooses where to use default, dim, cyan, green, red, magenta, etc. A user can change the terminal palette, but cannot tell Codex that primary text, muted text, borders, composer text, and role labels should use different semantic colors.

This is especially noticeable when comparing Codex CLI to Claude Code: Claude Code's terminal UI uses more intentional semantic coloring, which gives better contrast and scanability without requiring global terminal changes.

Related context

  • #1618 added/covered theme support, but comments indicate the current theming is focused on syntax highlighting.
  • #2020 covers light-background support. This request is broader: user-configurable semantic colors for the whole TUI, including dark/high-contrast setups.

extent analysis

TL;DR

The issue can be addressed by adding first-class configuration for semantic TUI colors beyond syntax highlighting in the Codex CLI.

Guidance

  • The current tui.theme configuration only affects syntax highlighting and does not address the main TUI foreground/contrast issue.
  • To achieve the desired behavior, users can propose a new configuration option, such as [tui.colors], to define semantic colors for the main TUI.
  • The proposed configuration could include options for foreground, muted, accent, assistant, user, and other relevant colors.
  • Alternatively, built-in UI themes such as dark, light, high-contrast, ansi, etc. could be added, allowing users to select them through /theme or config.

Example

A potential configuration example could be:

[tui.colors]
foreground = "#E6EDF3"
muted = "#8B949E"
accent = "#58A6FF"
assistant = "#C084FC"
user = "#39D353"

Notes

The current implementation of theme support in Codex CLI is limited to syntax highlighting, and the proposed solution aims to expand this to include semantic colors for the main TUI.

Recommendation

Apply a workaround by proposing a new configuration option, such as [tui.colors], to define semantic colors for the main TUI, as this would provide a more flexible and user-friendly solution.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING