Skip to content

Terminal Version (XTVERSION) โ€‹

Category: device ยท Tags: Xterm Extensions ยท Specification โ†—

XTVERSION (CSI > 0 q) requests the terminal's name and version string. The response is DCS > | name(version) ST. This allows applications to identify the exact terminal and version at runtime, enabling precise feature detection beyond what TERM or DA responses provide. Originally an xterm extension, now supported by many modern terminals including Ghostty, WezTerm, foot, and kitty.
How this is tested: Send CSI > 0 q, verify the terminal responds with a DCS > | version string.
Analysis2026-03-26

Supported by 4 of 8 terminals (50%). Not supported by: Kitty, Terminal.app, Cursor, Cursor. Part of the Rich TUI baseline. Notes: Kitty: Headless mode has no output stream for XTVERSION responses.

Supported by 6 of 13 backends (46%)

Terminal Applications โ€‹

TerminalVersionSupportNotes
iTerm23.6.9โœ“ yes
Ghostty1.3.1โœ“ yes
VS Code1.112.0โœ“ yesxterm.js(6.1.0-beta.191)
Warp0.2026.03.18.08.24.03โœ“ yesWarp(v0.2026.03.18.08.24.stable_03)
tmux3.6aโœ“ yes
Cursor2.6.21โœ— noNo XTVERSION response
Kitty0.46.2โœ— noHeadless mode has no output stream for XTVERSION responses
Terminal.app2.15โœ— noNo XTVERSION response
GNU Screen5.0.1โœ— noScreen does not support XTVERSION query

Headless Backends โ€‹

Parser correctness only โ€” a โœ“ means the parser accepts the sequence.

BackendVersionSupportNotes
vterm0.2.0โœ“ yes
Alacritty0.26.0~ partialHeadless mode has no output stream for XTVERSION responses
WezTerm0.1.0-fork.5~ partialHeadless mode has no output stream for XTVERSION responses
vt1000.2.1โœ— noNo output stream โ€” pure TypeScript emulator

Powered by Termless
Playwright for Terminals