DevelopmentAll versions
On this page

Terminal features

These capabilities belong to the shared terminal pipeline and are available to headless and Swing hosts. Host actions and replies remain subject to session policy.

Screen and text

Feature Support
Cursor movement Absolute/relative positioning, origin mode, DEC and ANSI/SCO save/restore, and configurable forward/backward tab stops.
Scrolling and margins Vertical and horizontal regions, forward/reverse scrolling, line insertion/deletion.
Cell editing Character and column insertion/deletion, erase, protected cells, and selective erase.
Writing modes Insert/replace, autowrap, and automatic newline modes.
Reverse wrap Modes 45/1045 apply to BS and CUB with autowrap enabled: soft-wrapped rows only (45), or hard breaks and top-to-bottom margin cycling (1045).
Rectangular operations Erase, selective erase, fill, copy, attribute changes/reversal, and base VT420 checksum. Copy/checksum use the active page only.
Alternate screen Modes 47/1047/1049, screen-local saved cursor state, and primary scrollback preservation.
Scrollback Bounded history, incremental storage allocation, and logical-line resize reflow.
Grid width Minimum two columns, with 80/132-column switching through DECCOLM.
Resets Hard reset, soft reset, screen/history erase, and DEC alignment test.
Synchronized output Mode 2026 delays frame publication until completion or timeout.
Character sets ASCII and DEC Special Graphics, G0–G3 designation, locking and single shifts.
Unicode UTF-8 decoding, Unicode 17 grapheme segmentation, combining marks, wide characters, and emoji sequences. Mode 2027 reports grapheme processing as permanently enabled; see mode status.
Stream handling Incremental decoding across byte chunks, malformed UTF-8 recovery, and bounded CSI/OSC/DCS collection with cancellation and overflow recovery.
Width policy Pinned Unicode width tables, configurable ambiguous width, and base-specific VS15/VS16 cell allocation; unsupported presentation bases retain their ordinary width. See the core contract.

Streaming graphemes retain up to 32 codepoints; direct core cluster writes reject longer prefixes before mutation. Later width changes update the published cell without undoing committed wraps, scrolling, or overwrites, so placement can depend on input chunk boundaries. See the streaming contract.

Appearance

Feature Support
Colors ANSI/bright colors, 256-color palette, 24-bit RGB, and underline colors.
Text attributes Bold, faint, italic, blink, inverse, conceal, strikethrough, and overline.
Reverse video Screen-wide reverse-video mode, independent of per-cell inverse attributes.
Underlines Single, double, curly, dotted, and dashed.
Cursor Block, underline, and bar shapes; visibility and blinking controls.
Dynamic colors OSC 4/10/11/12 palette and foreground/background/cursor changes and queries; OSC 104 and 110/111/112 restore configured theme colors.
Kitty colors OSC 21 ordered set/reset/query batches for indexed, foreground/background, cursor, and selection colors; dynamic cursor/selection colors. Protocol details.
Color stack Kitty OSC 30001/30101 save and restore effective colors and dynamic behavior in a bounded stack. Protocol details.
Hyperlinks OSC 8 links with bounded retention.
Mouse pointer OSC 22 set/reset for 14 portable CSS shapes; protocol details.

Keyboard, mouse, and paste

Feature Support
Keyboard Cursor/function/keypad keys, modifiers, application modes, Backarrow mode, and committed text.
xterm key resources modifyOtherKeys and independent modifier/format resources with status queries.
Kitty keyboard Progressive flag negotiation and encoding; available flags depend on host input metadata.
Paste Bracketed paste, control-character protection, and configurable newline handling.
Mouse tracking X10, normal, button-event, and any-event tracking.
Mouse behavior Mode 1007 controls alternate-screen wheel-to-cursor-key input; XTSHIFTESCAPE (CSI > Ps s) requests Shift mouse capture. Hosts retain control over reporting and wheel translation.
Mouse encoding Legacy, UTF-8, SGR, URXVT, and SGR pixel coordinates.
Focus Mode-controlled focus-in/focus-out reports.

Portable Swing hosts advertise conservative Kitty flags; native layout, IME, and complete key-lifecycle support remain open work. The input contract defines event and encoding behavior.

Host integration and queries

Feature Support
Titles Window/icon titles and title stack operations.
Shell metadata OSC 7 directories and OSC 133 prompt/command markers; see shell support.
Clipboard Selection-aware OSC 52 host callbacks. Built-in desktop providers write to the clipboard and read from the clipboard or available primary selection.
Notifications OSC 9 and OSC 777, including optional severity; protocol.
Bell BEL events and retained urgency/pop-on-bell modes for host handling.
Window actions Minimize, restore, move, raise/lower, resize, and maximize requests where the host permits them.
Status queries Operating status, cursor position, primary/secondary device attributes, and supported mode status.
Capability queries DECRQSS and XTGETTCAP through explicit allowlists.
Window reports Minimized state, text-area and character-cell pixel dimensions (CSI 14 t / CSI 16 t), grid dimensions, and screen-size reports. Pixel dimensions require host data; the current screen-size reply uses the terminal grid.
Color scheme One-shot light/dark query and mode 2031 subscriptions to host theme changes, including palette changes within the same light/dark preference.
In-band resize Mode 2048 reports text-area rows, columns, and pixel dimensions on enable and after size changes; unavailable pixel dimensions are zero.
Kitty graphics Inline RGB/RGBA and PNG, bounded zlib/chunked uploads, queries, ordinary cropped/scaled placements, deletion, screen lifecycle and Swing rendering. Session decoding preserves stream order while frame reads and ordinary input remain available; bounded raster reuse covers scrolling out of view and back. Real application verification. Windows backend caveats. Remaining extensions.
Custom OSC Ordered callbacks for unsupported numeric OSC commands.
Host policy Independent controls for clipboard, titles, links, notifications, window actions, colors, and terminal replies.

Clipboard access is denied by default in the library. Fresh product settings allow clipboard writes and ask before reads. Payload limits and permission checks apply to all output in a session, including remote programs.

See the protocol reference for collection limits and query allowlists, and the gap map for unsupported protocols.