Skip to content

KITTY_* env variables

Category: device · Baseline: rich · Tags: Kitty Extensions

$KITTY_PID, $KITTY_WINDOW_ID, $KITTY_INSTALLATION_DIR
The kitty terminal sets a family of KITTY_* environment variables to expose runtime information to child processes. KITTY_PID holds the kitty process ID, KITTY_WINDOW_ID identifies the OS window, and KITTY_INSTALLATION_DIR points at kitty's installation tree (used by kitty's shell integration to locate helper scripts). Applications can detect a kitty session by checking for any of these variables, and kitten utilities rely on them to communicate back to the parent terminal.
How this is testedmanual
Manual verification required — no automated probe available.

The same probe runs against headless backends (via Termless) and real terminal apps (via a daemon launched in each terminal). This lets us distinguish parser correctness from rendering correctness.

Supported by 0 of 14 backends (0%)

Terminal Applications

TerminalVersionSupportNotes
iTerm23.6.9? unknown
Ghostty1.3.1? unknown
Terminal.app2.15? unknown
Kitty0.46.2? unknown
VS Code1.113.0? unknown
Warp0.2026.03.18.08.24.03? unknown
Cursor2.6.21? unknown

Headless Backends

Parser correctness only — a means the parser accepts the sequence.

BackendVersionSupportNotes
Alacritty0.26.0? unknown
vt100.js0.2.1? unknown
vterm0.2.0? unknown
WezTerm0.1.0-fork.5? unknown
xterm.js5.5.0? unknown