用途:用可重复的本地测试装置(harness)驱动交互式 CLI/TUI,替代手工反复操作。适用于复现 CLI/TUI 缺陷、验证键盘流程与提示、中断、窗口缩放和终端布局,采集修复前后终端记录,剖析启动耗时、慢操作、卡死或内存增长,以及录制简短终端演示。
主要能力:优先复用仓库自带的测试或演示装置(package scripts、e2e 测试、演示录制器、expect 脚本、PTY 辅助工具);若没有,则用标准本地工具临时搭建。装置循环为:确定被测命令与最小可复现工作区,发现已有装置,在隔离终端会话中以确定性环境变量启动 CLI,先截取当前屏幕,再逐条发送动作(文本、Enter、方向键、Escape、Ctrl-C、缩放),等待具体屏幕模式或提示后再发下一步,保存记录与剖析产物,最后干净地结束会话。
使用方式:可用 tmux 管理会话,示例:SESSION="cli-harness-$(date +%s)";tmux new-session -d -s "$SESSION" -- <command-under-test>;tmux capture-pane -pt "$SESSION";tmux send-keys -t "$SESSION" "help" Enter;tmux capture-pane -pt "$SESSION";tmux kill-session -t "$SESSION"。Node CLI 可加 NODE_OPTIONS="--inspect=127.0.0.1:0" 启动,从终端输出读取 inspector URL 后用 Chrome DevTools 兼容工具剖析。无 tmux 时可用 Python pty、Node 或 Expect 编写临时 PTY 脚本,按就绪文本确定性等待。
限制与注意:优先确定性等待而非 sleep,必须 sleep 时需说明原因;不要向受控会话发送凭据或破坏性命令;除非仓库已有测试/演示装置,否则装置放在 /tmp;不要硬编码其他仓库的路径,应适配当前仓库脚本与运行时;用完清理 tmux 会话、临时目录、inspector 进程和演示产物,除非用户要求保留。资料未提供具体收费、平台支持范围与官方安装命令。