用途:验证 TUI 应用渲染是否正确,适用于改动后的渲染检查、组件显示验证、终端应用的视觉回归测试、交互后状态确认,以及带校验的文档截图生成。
主要能力:使用 Charmbracelet 的 freeze 进行高保真终端截图,并以 LLM-as-judge 做语义校验,避免脆弱的字符串匹配,关注布局、内容存在性与视觉层级。支持四种目标:file:<path>(ANSI 输出文件)、command:<cmd>(执行并捕获)、tmux:<session>(实时会话)、buffer:<text>(原始文本/ANSI)。输出格式可选 svg、png、text。judge_mode 可选 semantic、strict、visual。内置标准包括 ralph-header、ralph-footer、ralph-full、tui-basic,也支持自定义标准字符串。
使用方式:需先安装 freeze(brew install charmbracelet/tap/freeze 或 go install github.com/charmbracelet/freeze@latest),交互捕获可选 tmux。用 freeze --version 与 tmux -V 验证。捕获命令示例:freeze {file_path} -o /tmp/tui-capture.{format};freeze --execute "{command}" -o /tmp/tui-capture.{format};tmux capture-pane -pet {session} | freeze -o /tmp/tui-capture.{format};echo "{buffer}" | freeze -o /tmp/tui-capture.{format}。随后提取文本或图像,按标准调用 LLM 判定 PASS/FAIL,并报告具体问题,可选保存截图。
限制:需预先安装 freeze,tmux 捕获需会话存在;visual 模式要求 PNG;文本模式最快。资料未提供收费、价格、平台支持范围与效果保证等信息。