Demo 技能用于为本地 Web 应用的功能或用户流程录制演示视频。录制在真实桌面环境中完成,包含 XFCE 面板、Chromium 窗口和系统光标,输出为 1440x900、30fps 的 video.mp4,并附带记录悬停、点击、输入、滚动等事件的 events.json。
用途:将一段 Web 应用操作流程(如以客户身份用银行卡结账)录制成可复用的演示视频,适合产品演示、文档配图、流程说明等场景。
主要能力:支持通过自然语言流程描述自动编写演示脚本并录制;支持复用已有演示脚本重新录制;失败时保留上一次成功视频,并生成 failed.png 和 failed.json 便于排查;每次录制生成带时间戳的事件遥测。
使用方式:技能以命令形式调用,第一个词决定输入形式:init 为初始化命令;其他内容视为演示名称、路径或流程描述。例如输入流程描述后,技能会选取名称、编写 .demos/<name>/script.mjs 并录制。已有演示可通过名称或路径直接重新录制。演示脚本使用提供的 lib.mjs API(launch、record、hover、humanClick、type、wheel、sleep、finish 等),录制前需确保应用可访问。可通过 .demos/demo.config.mjs 配置应用地址、节奏、主题、浏览器语言与窗口、超时和视频参数等。
适用场景:需要展示 Web 应用具体操作流程的录制任务,尤其是希望视频包含真实桌面环境与光标交互的场景。
限制:依赖 Docker、Xvfb、XFCE 等桌面环境;需要本地应用可访问;测试账号须从项目文档或种子数据获取;录制脚本需遵循特定框架规则(如用 wheel 滚动、以 finish 结束);失败运行不会产出新视频。