mcpField
P
platform-compatibility

platform-compatibility

github.com/josiahsiegel开发5958 次安装19 周前更新
代码仓库

关于 platform-compatibility

一项兼容性技能,帮助 TUI 适配不同操作系统、终端模拟器、复用器、远程会话和受限环境。重点包括能力测试、支持矩阵文档及文本回退方案。

主要功能

  1. 01终端与操作系统支持矩阵
  2. 02终端复用器兼容性指南
  3. 03SSH 与低带宽环境考量
  4. 04可选协议的回退方案
  5. 05区域设置与终端能力检查

适用场景

  1. 01规划 TUI 的跨操作系统支持
  2. 02测试 tmux 或 Zellij 中的表现
  3. 03适配 SSH 与 CI 环境中的界面

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/platform-compatibility确认已加载。

附带文件references/emulator-platform-matrix.mdreferences/multiplexer-remote.md

详细介绍

平台、模拟器、多路复用器和远程兼容性

当 TUI 必须在不同操作系统、终端模拟器、多路复用器、SSH 会话、容器、CI 或嵌入式伪终端宿主环境中运行时,请使用此技能。

兼容性思维

终端功能依赖一整条链路:应用库、操作系统控制台或 PTY、Shell、多路复用器、SSH 传输、终端模拟器、字体、主题和用户设置。只有链路上的每一环都能保留某项功能,该功能才可靠。除非应用完全控制整个环境,否则应将所有高级协议视为可选项。

需要定义的支持矩阵

对于生产级 TUI,请记录并测试:

  • 操作系统:Linux、macOS、Windows Terminal;如支持,还包括经典 conhost、WSL 和容器。
  • 终端模拟器:Terminal.app、iTerm2、Kitty、Alacritty、WezTerm、foot、GNOME Terminal/VTE、Konsole、Windows Terminal。
  • 多路复用器:tmux、GNU screen、Zellij。
  • 远程环境:SSH、类似 mosh 的连接、串行/低速连接、跳板主机、Agent 转发策略。
  • Shell 和区域设置:UTF-8 区域设置、Windows 上的代码页、TERM 和 terminfo 的可用性。
  • 限制:最小尺寸、色彩级别、Unicode/ASCII 模式、鼠标/粘贴支持。

平台规则

  • 在 Windows 上,应区分 Windows Terminal/ConPTY 与旧版控制台宿主。使用低级控制台 API 时,应启用虚拟终端处理;优先使用 UTF-8,并在相关情况下测试通过 ConPTY 托管子进程。
  • 在类 Unix 系统上,应处理 PTY 语义、SIGWINCH、termios 原始/半原始模式的恢复、进程信号,以及依赖区域设置的编码。
  • 在 macOS 上,Terminal.app 和 iTerm2 在专有协议、Option 键行为、剪贴板/图像功能以及默认色彩/主题设置方面各不相同。

多路复用器规则

  • tmux/screen/Zellij 可能会改写 TERM、过滤 OSC/DCS、转换鼠标事件、管理备用屏幕,并要求通过封装器传递剪贴板、图像、真彩色或键盘协议。
  • 务必在所声明支持的多路复用器版本内外都进行测试。
  • 优先提供文本回退方案,而不要硬性依赖 OSC 52、OSC 8、Kitty 图形、iTerm2 图像、焦点事件或扩展键盘协议。

远程规则

  • 通过 SSH 时,应尽量减少写入量和光标移动。
  • 合并连续的窗口大小变化和高频指标更新。
  • 不要假定剪贴板、本地文件路径、图像协议或 Agent 转发始终可用或获准使用。
  • 提供低带宽、无鼠标、无动画、纯文本和批处理模式。

参考文件

  • references/emulator-platform-matrix.md - 操作系统、模拟器、PTY 和功能兼容性指南。
  • references/multiplexer-remote.md - tmux/screen/Zellij、SSH、延迟、透传和窗口大小调整实践。

评论

支持 Markdown