mcpField
P
platform-compatibility

platform-compatibility

github.com/josiahsiegelDevelopment5958 installsUpdated 19w ago
Repository

About platform-compatibility

A compatibility skill for designing TUIs across operating systems, terminal emulators, multiplexers, remote sessions, and constrained environments. It focuses on capability testing, documented support matrices, and text fallbacks.

Key features

  1. 01Terminal and OS support matrices
  2. 02Multiplexer compatibility guidance
  3. 03SSH and low-bandwidth considerations
  4. 04Fallbacks for optional protocols
  5. 05Locale and terminal capability checks

Use cases

  1. 01Planning TUI support across operating systems
  2. 02Testing behavior inside tmux or Zellij
  3. 03Adapting interfaces for SSH and CI

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/josiahsiegel/claude-plugin-marketplace --skill platform-compatibility

After installing, type/platform-compatibilityin Claude Code to confirm it loaded.

Bundled filesreferences/emulator-platform-matrix.mdreferences/multiplexer-remote.md

Details

From the project README

Platform, Emulator, Multiplexer, and Remote Compatibility

Use this skill when a TUI must behave across operating systems, terminal emulators, multiplexers, SSH sessions, containers, CI, or embedded pseudo-terminal hosts.

Compatibility mindset

Terminal capability is a chain: application library, OS console or PTY, shell, multiplexer, SSH transport, terminal emulator, font, theme, and user settings. A feature is reliable only if each link preserves it. Treat every advanced protocol as optional unless the app owns the whole environment.

Support matrix to define

For production TUIs, document and test:

  • OS: Linux, macOS, Windows Terminal, classic conhost if supported, WSL, containers.
  • Terminal emulators: Terminal.app, iTerm2, Kitty, Alacritty, WezTerm, foot, GNOME Terminal/VTE, Konsole, Windows Terminal.
  • Multiplexers: tmux, GNU screen, Zellij.
  • Remote: SSH, mosh-like links, serial/slow links, jump hosts, agent forwarding policy.
  • Shell and locale: UTF-8 locale, code page on Windows, TERM and terminfo availability.
  • Constraints: minimum size, color level, Unicode/ASCII mode, mouse/paste support.

Platform rules

  • On Windows, distinguish Windows Terminal/ConPTY from legacy console hosts. Enable virtual terminal processing when using low-level console APIs, prefer UTF-8, and test child-process hosting through ConPTY when relevant.
  • On Unix-like systems, handle PTY semantics, SIGWINCH, termios raw/cbreak restoration, process signals, and locale-dependent encoding.
  • On macOS, Terminal.app and iTerm2 differ in proprietary protocols, option-key behavior, clipboard/image features, and default color/theme settings.

Multiplexer rules

  • tmux/screen/Zellij can rewrite TERM, filter OSC/DCS, transform mouse events, mediate alternate screen, and require passthrough wrappers for clipboard, images, truecolor, or keyboard protocols.
  • Always test inside and outside the multiplexer versions you claim.
  • Prefer text fallbacks over hard dependencies on OSC 52, OSC 8, Kitty graphics, iTerm2 images, focus events, or extended keyboard protocols.

Remote rules

  • Minimize write volume and cursor churn over SSH.
  • Coalesce resize storms and high-frequency metrics.
  • Do not assume clipboard, local file paths, image protocols, or agent forwarding are present or allowed.
  • Provide low-bandwidth, no-mouse, no-animation, plain, and batch modes.

Reference files

  • references/emulator-platform-matrix.md - OS, emulator, PTY, and feature compatibility guidance.
  • references/multiplexer-remote.md - tmux/screen/Zellij, SSH, latency, passthrough, and resize practices.

Comments

Markdown supported