diff --git a/packages/coding-agent/src/modes/interactive/theme/theme.ts b/packages/coding-agent/src/modes/interactive/theme/theme.ts index b00e7566..e5b86f0c 100644 --- a/packages/coding-agent/src/modes/interactive/theme/theme.ts +++ b/packages/coding-agent/src/modes/interactive/theme/theme.ts @@ -174,6 +174,11 @@ function detectColorMode(): ColorMode { if (process.env.TERM_PROGRAM === "Apple_Terminal") { return "256color"; } + // GNU screen doesn't support truecolor unless explicitly opted in via COLORTERM=truecolor. + // TERM under screen is typically "screen", "screen-256color", or "screen.xterm-256color". + if (term === "screen" || term.startsWith("screen-") || term.startsWith("screen.")) { + return "256color"; + } // Assume truecolor for everything else - virtually all modern terminals support it return "truecolor"; }