Skip to content

tmux

A terminal multiplexer. Toward the programs it runs, tmux is an emulator with its own screen model; toward the terminal it runs in, tmux is an application. Features must be supported on both sides to work end to end.

Identity

  • TERM inside: tmux-256color when that terminfo entry exists, otherwise screen-256color; set by default-terminal.
  • TMUX and TMUX_PANE are set inside sessions.
  • DA1: CSI ? 1 ; 2 c ?.
  • DA2: CSI > 84 ; 0 ; 0 c (84 is ASCII T).
  • XTVERSION: DCS > | tmux <version> ST.

Documentation

Configuration that changes wire behavior

  • terminal-features and terminal-overrides: declare what the outer terminal can do (RGB, hyperlinks, sixel, sync, usstyle, extkeys, focus, clipboard, mouse, title). tmux only forwards a feature to the outer terminal when it believes the terminal supports it.
  • allow-passthrough: permits DCS tmux ; … ST wrapped payloads to reach the outer terminal unmodified (see DCS).
  • set-clipboard: whether OSC 52 from inner programs is forwarded (on) or only used to fill tmux's own buffers (external/off).
  • extended-keys and extended-keys-format: whether tmux requests and forwards modifyOtherKeys/CSI u style key encodings.
  • focus-events: whether mode 1004 reports are forwarded.
  • allow-rename, set-titles: title handling.

Notable behavior

  • Supports truecolor, underline styles, OSC 8 (3.4), OSC 52, mouse modes including SGR, bracketed paste, and synchronized output toward the outer terminal.
  • Sixel is supported when built with --enable-sixel (3.4).
  • Does not implement the Kitty graphics or keyboard protocols; passthrough can carry graphics payloads but tmux cannot track placements.
  • Reports its own DA/XTVERSION identity, so inner programs cannot see the outer terminal without passthrough tricks.

Version notes

3.x; CHANGES lists feature additions per release.

Probe

tmux -V
tmux display -p '#{client_termfeatures}'
tools/query '\033[>0q'

Feature support

Records are maintained independently in tdn/terminals/tmux.yaml. Unlisted features are unknown. See the comparison for all features.

FeatureSupportAs ofNotes and evidence
Kitty
apc-kitty-graphics
PartialImported · unverifiedUnversionedPassthrough only | Also recorded: Partial ([tmux manual, `allow-passthrough`](https://man.openbsd.org/tmux#allow-passthrough).); Passthrough with `allow-passthrough`; placeholders render as cells

import import

BEL urgency/visual
c0-bel-attention
SupportedImported · unverifiedUnversionedYes

import

14/16 pixel sizes
csi-14-16-t-pixel-sizes
SupportedImported · unverifiedUnversionedYes (3.4+ relays)

import

18 size in cells
csi-18-t-text-size
SupportedImported · unverifiedUnversionedYes

import

ED 3 (scrollback)
csi-3-j-erase-scrollback
SupportedImported · unverifiedUnversionedYes (`E3`)

import

DECRQM
csi-decrqm
PartialImported · unverifiedUnversionedPartial

import

DECSTBM
csi-decstbm
SupportedImported · unverifiedUnversionedYes

import

ED/EL/ECH/ICH/DCH/IL/DL
csi-editing-operations
SupportedImported · unverifiedUnversionedYes

import

modifyOtherKeys
csi-modify-other-keys
SupportedImported · unverifiedUnversionedYes; `extended-keys` option ([tmux(1), `extended-keys`](https://man.openbsd.org/tmux.1#extended-keys).)

import

REP
csi-rep
SupportedImported · unverifiedUnversionedYes

import

SU/SD
csi-su-sd-scroll
SupportedImported · unverifiedUnversionedYes

import

Kitty keyboard protocol
csi-u-kitty-keyboard
PartialImported · unverifiedUnversionedPartial; Forwards with `extended-keys`; does not implement the stack itself ([tmux(1), `extended-keys`](https://man.openbsd.org/tmux.1#extended-keys).)

import

DECRQSS
dcs-decrqss
SupportedImported · unverifiedUnversionedYes; answers for the pane's state `?`

import

Sixel
dcs-sixel
SupportedImported · unverifiedUnversionedYes, 3.4 build option ([tmux CHANGES](https://github.com/tmux/tmux/blob/master/CHANGES), 3.4.) | Also recorded: Yes, 3.4 ([tmux CHANGES](https://github.com/tmux/tmux/blob/master/CHANGES).); `--enable-sixel` build option

import import

1000 mouse
dec-mode-1000-mouse
SupportedImported · unverifiedUnversionedYes

import

1002 button motion
dec-mode-1002-button-motion
SupportedImported · unverifiedUnversionedYes

import

1003 all motion
dec-mode-1003-all-motion
SupportedImported · unverifiedUnversionedYes

import

1004 focus
dec-mode-1004-focus
SupportedImported · unverifiedUnversionedYes ([tmux(1), `mouse` and `terminal-features`](https://man.openbsd.org/tmux.1).)

import

1006 sgr mouse
dec-mode-1006-sgr-mouse
SupportedImported · unverifiedUnversionedYes

import

1015 urxvt mouse
dec-mode-1015-urxvt-mouse
SupportedImported · unverifiedUnversionedYes

import

1049 alternate screen
dec-mode-1049-alternate-screen
SupportedImported · unverifiedUnversionedYes

import

2004 bracketed paste
dec-mode-2004-bracketed-paste
SupportedImported · unverifiedUnversionedYes | Also recorded: Yes; Requests it from the outer terminal, forwards markers to the pane ([tmux(1)](https://man.openbsd.org/tmux.1).)

import import

2026 synchronized output
dec-mode-2026-synchronized-output
SupportedImported · unverifiedUnversionedYes (3.4+)

import

Grapheme cluster mode (2027)
dec-mode-2027-grapheme-clusters
UnknownImported · unverifiedUnversioned?; Does not pass through; own width tables

import

win32-input-mode
dec-mode-9001-win32-input
UnknownImported · unverifiedUnversioned?; Not a Unix protocol; not documented by any of them

import

OSC 0/2 set
osc-0-2-title
SupportedImported · unverifiedUnversionedYes (Applied to the outer terminal only with `set-titles on`; otherwise stored as the pane title visible in the status line.)

import

OSC 10/11 query
osc-10-11-default-colors-query
PartialImported · unverifiedUnversionedPartial (tmux forwards sets to the outer terminal and answers queries itself; the answer may not match the outer terminal until it has been refreshed.)

import

OSC 10/11 set
osc-10-11-default-colors-set
PartialImported · unverifiedUnversionedPartial (tmux forwards sets to the outer terminal and answers queries itself; the answer may not match the outer terminal until it has been refreshed.)

import

OSC 4 query
osc-4-palette-query
PartialImported · unverifiedUnversionedPartial (tmux forwards sets to the outer terminal and answers queries itself; the answer may not match the outer terminal until it has been refreshed.)

import

OSC 4 set
osc-4-palette-set
PartialImported · unverifiedUnversionedPartial (tmux forwards sets to the outer terminal and answers queries itself; the answer may not match the outer terminal until it has been refreshed.)

import

OSC 52 read
osc-52-read
PartialImported · unverifiedUnversionedPartial; `set-clipboard` (`on`, `external`, `off`); default `external`

import

OSC 52 write
osc-52-write
SupportedImported · unverifiedUnversionedYes; `set-clipboard` (`on`, `external`, `off`); default `external`

import

OSC 8 hyperlinks
osc-8-hyperlinks
SupportedImported · unverifiedUnversionedYes (3.4) (Requires the outer terminal to support hyperlinks; tmux forwards the attribute rather than rendering it.)

import

id= grouping
osc-8-link-id
SupportedImported · unverifiedUnversionedYes

import

256 colors
sgr-256-colors
SupportedImported · unverifiedUnversionedYes

import

Italic 3
sgr-3-italic
PartialImported · unverifiedUnversionedpass

import

Colon form 38:2
sgr-38-2-colon-form
SupportedImported · unverifiedUnversionedYes

import

Truecolor 38;2
sgr-38-2-truecolor
SupportedImported · unverifiedUnversionedYes (`Tc`/`RGB` feature)

import

Underline styles 4:n
sgr-4-underline-styles
SupportedImported · unverifiedUnversionedYes (`Smulx`)

import

Blink 5
sgr-5-blink
PartialImported · unverifiedUnversionedpass

import

Overline 53
sgr-53-overline
PartialImported · unverifiedUnversionedpass

import

Underline color 58
sgr-58-underline-color
SupportedImported · unverifiedUnversionedYes (`Setulc`)

import

Strikethrough 9
sgr-9-strikethrough
PartialImported · unverifiedUnversionedpass

import

bce
terminfo-bce
SupportedImported · unverifiedUnversionedYes

import