terminal-standards

v2026.09.24

This skill should be used when the user asks about ANSI, VT100, VT220, ECMA-48, ISO 6429, xterm control sequences, terminal capability detection, terminfo, environment variables, alternate screen protocols, SGR colors, OSC, CSI, DCS, terminal graphics, Windows virtual terminal processing, ConPTY, tmux/screen, SSH, or escape-sequence compatibility. PROACTIVELY activate for: escape sequences, terminal standards, capability negotiation, raw ANSI output, xterm protocols, alternate screen, color support, OSC 8 links, OSC 52 clipboard, Kitty/iTerm2 protocols, sixel, and cross-terminal fallback design. Provides: safe protocol rules, negotiation checklists, compatibility warnings, and reference tables.

GitHub
Install command
npx skhub add josiahsiegel/terminal-standards
Markdown
SKILL.md

Terminal Standards, Escape Sequences, and Capability Negotiation

Use this skill when code emits or parses terminal control sequences, depends on terminal features, or must behave across emulators, multiplexers, and Windows console hosts.

Standards hierarchy

Think in layers:

  1. Baseline: printable text, carriage return, newline, backspace, tab.
  2. ECMA-48 / ANSI / ISO 6429: CSI controls and SGR attributes.
  3. DEC VT lineage: cursor movement, alternate keypad modes, device status patterns, private modes.
  4. xterm conventions: alternate screen, mouse modes, focus events, bracketed paste, OSC extensions.
  5. Modern emulator extensions: Kitty keyboard/graphics, iTerm2 images, sixel, OSC 8 hyperlinks, OSC 52 clipboard, theme queries.
  6. Platform host behavior: Windows virtual terminal processing, ConPTY, tmux/screen filtering, SSH latency.

The further down this stack you go, the more you need detection, fallbacks, and cleanup.

Safer defaults

  • Prefer framework abstractions and terminfo/capability libraries over hard-coded control sequences.
  • Reset styles deliberately; do not rely on terminal defaults after complex SGR output.
  • Treat unknown responses, missing responses, and blocked queries as normal.
  • Never require clipboard, images, focus events, or extended keyboard protocols for core functionality.
  • When enabling a mode, register a cleanup path before continuing.

Common sequences and caveats

FeatureTypical sequenceCaveat
Alternate screenCSI ? 1049 h / CSI ? 1049 lMay be disabled or mediated by multiplexers. Cleanup is mandatory.
SGR resetCSI 0 mReset before exit and after errors.
TruecolorCSI 38;2;R;G;B m / CSI 48;2;R;G;B mDownsample to 256/16/no-color when needed.
Bracketed pasteCSI ? 2004 h / CSI ? 2004 lParse paste boundaries; disable on exit.
SGR mouseCSI ? 1006 h plus tracking modesRequires parser and coordinate validation.
Focus eventsCSI ? 1004 hTreat as advisory; may not arrive.
OSC 8 linksOSC 8 ; ; URI STProvide visible URL fallback.
OSC 52 clipboardOSC 52Often blocked by terminals, multiplexers, SSH policies, or security settings.
DCS passthroughDCS ... STUsed by multiplexers and some protocols; highly environment-dependent.
Terminal titleOSC 0/2Restore or avoid changing titles unexpectedly.
Palette queries/changesOSC 4/10/11 variantsUseful but fragmented; restore changes and time out queries.

See references/escape-sequence-field-guide.md for detailed tables.

Capability negotiation checklist

  • Is stdout a TTY? If not, avoid cursor controls and interactive modes by default.
  • Is TERM meaningful? Handle dumb, empty, and unknown values.
  • Is the app inside tmux/screen? Assume some protocols are filtered or need passthrough.
  • Is Windows VT processing enabled for classic console APIs?
  • Does the library expose color level detection? Prefer it over ad hoc environment parsing.
  • Are user overrides available: --color, --no-color, --plain, --ascii, --no-mouse?
  • Are query timeouts bounded so the app does not hang waiting for terminal replies?

Cleanup contract

If enabling raw mode, alternate screen, mouse tracking, bracketed paste, focus events, cursor hiding, or keyboard protocols, verify cleanup on normal quit, Ctrl-C, panic, exception, fatal error, failed partial initialization, and test assertion failures.

Reference files

  • references/escape-sequence-field-guide.md - ANSI/VT/xterm controls and cautions.
  • references/capability-negotiation.md - Detection and fallback patterns across terminals.
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

plugins/tui-master/skills/terminal-standards

Default branch

main

Latest commit

5a1b112

Tree SHA

376c8e0