OpenBBQ

与 Agent 协作

让 Claude Code、Codex 或脚本驱动 OpenBBQ——机器可读输出、随包 Skill 和操作守则。

OpenBBQ 天生适合被“驾驶”:你可以手动执行每条命令,也可以把烤夹交给 Claude CodeCodex 这样的 AI Agent,让它来烤。这一页讲清楚驾驶者与 CLI 之间的约定:输出如何保持机器可读、如何安装能教会 Agent 整个流程的随包 Skill,以及 Agent 需要遵守的规则。

默认路径:跟随 Agent facade

要从一句提示词得到字幕底稿,只初始化一次,然后让 agent next 决定每一步:

openbbq --json agent init '<source>' --workspace workspaces/demo --to zh
openbbq --json agent next --workspace workspaces/demo

收到 run_command 时原样运行返回的 argv;收到 review_sourcetranslate 时, 用 agent apply 提交完整响应;收到 finish 时运行它给出的收尾命令;收到 done 时 交付报告的产物。每个 action 成功后,再调用一次 agent next

不要猜测下一条命令,也不要再创建一个翻译批次。当前 lease 会固定 selected ID 与内容 hash,所以重复调用 next 是安全的,不完整或过期的 apply 会被拒绝。翻译 action 还会 带上生成规则、glossary 上下文,以及需要参考的本地证据。完整协议见 工作流模型

机器可读输出

JSON 是一种结构化文本格式,程序读起来很方便。把根级 --json 放在命令名之前,每条命令就只回答一个紧凑的 JSON 对象:

openbbq --json status --workspace workspaces/demo
openbbq --json export --workspace workspaces/demo --to zh --mode bilingual

当输出不是去往交互式终端(TTY——也就是你敲命令的那个窗口)时,比如在 Codex 或 CI 里,OpenBBQ 会自动改用紧凑 JSON。但 Agent 仍应显式传 --json,把这份约定声明出来,而不是依赖自动检测。

给人类看的进度和长任务提示会写到 stderr(一条专门传消息的旁路)或工作区的 manifest 里,所以机器读的那一路始终保持可解析。

退出与错误行为

  • 成功:输出一个结果对象,退出码为 0。
  • 领域错误——命令听懂了,但事情没办成:输出结构化错误,带 error 代码、上下文,通常还有一个 fix。照 fix 做,不要解析给人看的文字,也不要自己编造恢复命令。
  • CLI 用法错误(参数写错、缺参数)使用 usage 代码。
  • 未预期的错误使用 internal 代码。

轮询长任务

fetchtranscribeburn 可能要跑几分钟。它们会把阶段进度写进工作区的 manifest.json,所以另一个进程可以不打扰地旁观:

openbbq --json status --workspace workspaces/demo

如果 running 阶段超过 60 秒没有心跳更新,status 会把它标记为 stale——意思是“去看看”,而不是“做完了“。

一键教会 Agent 整个流程

OpenBBQ 随包附带 Skill——一份写好的说明文件,Agent 读完就懂得整个字幕流程。一条命令装进 Agent 的技能目录:

openbbq skill install

默认装进共享的 agents 目录 ~/.agents/skills/。也可以按产品选位置:

命令安装位置
openbbq skill install(或 --agent agents)~/.agents/skills/
openbbq skill install --agent claude~/.claude/skills/
openbbq skill install --agent codex~/.codex/skills/
openbbq skill install --agent all所有支持的目标

--target PATH 指定自定义父目录;已经装过时用 --force 覆盖。

随包有两个 Skill:

  • openbbq-subtitles(默认)——从生肉到熟肉的完整流程。
  • bilibili-cover-safe-area——把视频缩略图做成符合 B 站投稿版式的封面。

--name 选择:

openbbq skill install --name bilibili-cover-safe-area

只想看看内容、不安装,直接打印:

openbbq skill show
openbbq skill show --language zh-CN
openbbq skill show --name bilibili-cover-safe-area --language en

有边界的上下文

长视频意味着几百行字幕——Agent 一次记不住这么多。这些“审阅类“命令把内容分成小页(offset/limit)端上来,Agent 每次专注处理一小批:

  • openbbq asr batch——存疑的听写,一次几条;见听写与检查
  • openbbq translate batch——等待翻译的字幕行;见翻译与审校
  • openbbq glossary audit——术语审校;见术语表

Agent 操作守则

  • 安装系统依赖、下载大模型、写入浏览器登录态之前,先问人。
  • 保证 OPENBBQ_HOME 和工作区路径可写。
  • 翻译保持有界;手动分批时,每批之间跑 openbbq translate check
  • 除非确实要丢弃已有成果,否则不要用 translate init --force
  • 发布或烧录之前,先预览导出的字幕。

接下来

本页目录