From 396ecd7b8f3a146b8af98206d18df1bcc2c08f4e Mon Sep 17 00:00:00 2001 From: Nihaal Sangha Date: Mon, 19 Oct 2026 21:46:31 +0100 Subject: [PATCH] feat(tui): enable Kitty images for Rex --- packages/tui/src/terminal-image.ts | 6 +++--- packages/tui/test/terminal-image.test.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/tui/src/terminal-image.ts b/packages/tui/src/terminal-image.ts index fd7001fdd..143123f91 100644 --- a/packages/tui/src/terminal-image.ts +++ b/packages/tui/src/terminal-image.ts @@ -92,10 +92,10 @@ function detectCapabilitiesFromEnvironment(tmuxForwardsHyperlink: () => boolean) return { images: "kitty", trueColor: hasTrueColorHint, hyperlinks: true }; } - // Rex supports OSC 8 hyperlinks but only partially implements the Kitty graphics protocol - // (no Unicode placeholders), so leave images off. Check it before outer-terminal detection. + // Rex supports OSC 8 hyperlinks and only partially implements the Kitty graphics protocol + // (no Unicode placeholders), but enough to support Pi. if (termProgram === "rex") { - return { images: null, trueColor: true, hyperlinks: true }; + return { images: "kitty", trueColor: true, hyperlinks: true }; } if (process.env.KITTY_WINDOW_ID || termProgram === "kitty") { diff --git a/packages/tui/test/terminal-image.test.ts b/packages/tui/test/terminal-image.test.ts index 063ab0862..6fd05f43d 100644 --- a/packages/tui/test/terminal-image.test.ts +++ b/packages/tui/test/terminal-image.test.ts @@ -335,7 +335,7 @@ describe("detectCapabilities", () => { withEnv({ TERM_PROGRAM: "rex", TERM: "xterm-256color", KITTY_WINDOW_ID: "1" }, () => { const caps = detectCapabilities(); assert.strictEqual(caps.hyperlinks, true); - assert.strictEqual(caps.images, null); + assert.strictEqual(caps.images, "kitty"); assert.strictEqual(caps.trueColor, true); }); withEnv({ TERM_PROGRAM: "rex", PI_HYPERLINKS: "0" }, () => {