legends-obs-kit 是做什么的?
以捆绑的 CLI 为唯一事实来源。运行时核心为 OBS WebSocket v5;FFprobe 和 OBS 日志提供录制证明。
解析与鉴定
按以下顺序解析命令:
- 当
lobs或legends-obs-kit在PATH中可用时,使用它们。 - 如果技能是从仓库链接或从发布版解压而来,请从
SKILL.md向上移动两个目录,并运行node <root>\dist\index.js。 - 在没有
dist的开发版检出中,从仓库根目录运行pnpm dev --。
如果都不存在,告知用户安装完整的发布版或仓库。不要自行虚构 OBS 控制后端。在下面的示例中,lobs 代表任意可用的解析调用。
lobs doctor --pretty
lobs manifest --pretty
lobs agent:context --pretty
lobs audit:status --pretty
doctor 硬性限制本地 OBS 控制的认证。编码器、HDR、FFprobe、录制路径和麦克风检查是能力项,除非请求的操作需要它们。如果 FFprobe 不在 PATH 中,请将 LEGENDS_OBS_FFPROBE_PATH 设置为其可执行文件路径。
如果机器没有分类账(ledger),运行 audit:capture --reason first-baseline。如果存在分类账,运行 audit:diff --against good;在第一个成功金丝雀(canary)创建已知良好指针之前,使用 --against latest。
按意图路由
| 意图 | 命令 |
|---|---|
| 健康与实时状态 | doctor, status, record:status |
| 机器、配置文件、场景和源 | inventory, profile:show |
| 音频端点 | audio:status, audio:plan, audio:bind |
| 设置历史与漂移 | audit:status, audit:capture, audit:show, audit:diff, audit:verify |
| 配置文件变更 | profile:plan, profile:backup, profile:apply, profile:refresh, profile:rollback |
| 本地录制 | record:start, record:stop, record:canary |
| 证据 | logs:latest, receipts:list, receipts:verify |
| 可选面板场景切换器 | vision-switch:* |
阅读 references/command-map.md 以获取紧凑的命令和安全性映射。
默认输出为代理使用而最小化隐私。inventory --full、audio:status --include-devices、审计文档和本地收据可能包含机器路径、源名称、端点 ID、窗口标题和其他工作站信息;除非用户明确要求共享,否则请将其保留在本地。
变更规则
- 先读取当前状态并生成计划。
- 验证录制、推流、回放缓冲区和虚拟摄像头是否处于空闲状态。
- 默认保持
LEGENDS_OBS_DRY_RUN=true。 - 对于一次受控写入,将其设为
false,传入--confirm,执行一次有界限的变更,并在finally块中恢复干运行模式。 - 每次配置文件检查、计划、备份、应用或刷新,以及每次
record:canary,都需要显式的--preset <id>;绝不要将捆绑的预设作为用户推荐进行选择。 - 配置文件应用在写入前创建快照,仅在必要时刷新,并验证精确的回读。
- 绝不打印或复制 OBS WebSocket 密码或 OBS 服务凭证。
- 在没有通过金丝雀收据的情况下,绝不要称一次录制为
WORKS。 - 将
latest视为最后一次观察状态,而非已证明状态。只有通过的金丝雀才能推进last-known-good。 - 仅当麦克风采集是用户验收标准的一部分时,才使用
--require-microphone。
硬件决策
不要将任何捆绑的预设视为普遍正确。检查可用的编码器、当前分辨率/FPS、色彩格式、显示路径、存储、音频需求及目标平台。解释权衡,运行 profile:plan,并让用户期望的结果来选择预设。
捆绑的 hdr-4k60-av1-hybrid-mp4 预设是针对具备能力的 NVIDIA 硬件的测试参考:3840×2160/60、P010、Rec.2100 PQ、有限范围、标准 NVENC AV1、混合 MP4、CQP20 或更优、两秒关键帧、单遍及不重新缩放。对于其他系统,它并不是默认推荐。
可选视觉切换器
确定性的面板到场景切换器默认处于解除武装和干运行状态。通过 --panel A|B|C|D 提供面板样本,或设置 LEGENDS_OBS_PANEL_SENSOR 为一个 PowerShell 脚本,使其输出约定的 JSON 形状。实时切换额外需要武装状态、空闲输出、LEGENDS_OBS_DRY_RUN=false 和 --confirm。切换循环绝不使用 LLM,也绝不更改 Windows 显示模式。