用途:pty-bridge 通过完整 PTY 支持管理交互式终端会话,在标准 Bash 工具无法处理交互程序时使用,包括 SSH 远程服务器、交互式 REPL(python、node、irb、psql、mysql 等)、提示输入密码或确认的程序、TUI 应用(htop、vim、less 等),以及会挂起或行为异常的命令。
主要能力:可启动并管理多个 PTY 会话,读取增量或完整输出,写入输入,执行命令并等待返回,发送特殊按键,按模式阻塞等待,列出会话、终止会话、调整终端尺寸及查看守护进程状态。特殊键包括 enter、tab、escape、space、backspace、delete、方向键及 ctrl-a 至 ctrl-z 等。
使用方式:常用命令包括 pty-bridge start <command> [args...] 启动会话,pty-bridge read <id> [--full] 读取输出,pty-bridge exec <id> <command> [--wait <ms>] 执行命令,pty-bridge sendkey <id> <key> 发送按键,pty-bridge wait-for <id> <pattern> [--timeout <s>] 等待模式,pty-bridge list、kill、resize、status 管理会话。启动支持 --keepalive 与 --wait 选项。建议优先使用 exec 而非 write 加 sendkey enter,read 默认增量,长操作使用 wait-for,机密信息通过 stdin 管道传入。
适用场景:SSH 会话与密码输入、服务启动等待、交互式 REPL、安装程序提示处理。
限制:无存活会话时守护进程 5 分钟后自动退出;终端默认 120x40,TUI 应用可调整尺寸;客户端 socket 超时可通过 PTY_BRIDGE_TIMEOUT 环境变量配置(毫秒,默认 30000);完成操作后应终止会话以释放资源;卡住命令可用 sendkey 发送 ctrl-c 中断。