Appearance
Push title/icon stack (CSI 22 ; 0 t)
ESC [ 22 ; 0 tXTWINOPS subcode 22 pushes the current window title and icon label onto an internal stack. The sequence is
CSI 22 ; 0 t (push both), CSI 22 ; 1 t (push icon only), or CSI 22 ; 2 t (push title only). XTWINOPS 23 pops the matching stack.
The title stack solves a longstanding ergonomics problem: applications that change the terminal title (vim, ssh, tmux) want to restore it on exit, but the only way to do that previously was to query the current title with CSI 21 t — which many terminals refuse for security reasons. Push/pop avoids exposing the title to the application: the terminal saves it internally and the application can restore it without ever seeing the value. Adopted by xterm, Ghostty, Kitty, WezTerm, foot, and others.How this is testedpartial
Send
Send
\x1b[22;0t, verify the sequence is consumed without crashing. Headless emulators verify the stack push happened internally where possible.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.
Analysis2026-04-06
Supported by 9 of 14 backends (64%)
Terminal Applications
| Terminal | Version | Support | Notes |
|---|---|---|---|
| iTerm2 | 3.6.9 | ✓ yes | Sequence consumed; terminal responsive |
| Ghostty | 1.3.1 | ✓ yes | Sequence consumed; terminal responsive |
| Terminal.app | 2.15 | ✓ yes | Sequence consumed; terminal responsive |
| Kitty | 0.46.2 | ✓ yes | Title stack not exposed via Python batch bridge |
| VS Code | 1.113.0 | ? unknown | |
| Warp | 0.2026.03.18.08.24.03 | ? unknown | |
| Cursor | 2.6.21 | ? unknown |
Headless Backends
Parser correctness only — a ✓ means the parser accepts the sequence.
| Backend | Version | Support | Notes |
|---|---|---|---|
| vt100.js | 0.2.1 | ✓ yes | |
| vterm | 0.2.0 | ✓ yes | |
| xterm.js | 5.5.0 | ✓ yes | |
| WezTerm | 0.1.0-fork.5 | ~ partial | Title stack push not exposed in headless mode |
| Alacritty | 0.26.0 | ✗ no | Title stack not implemented by alacritty |