dsh-bili-watch:把 B 站视频变成模型能读的内容

前言

在 DSH 里让智能体「看过」一条 B 站视频,常见做法是用户自己复制简介、贴几条评论,或把字幕导出再塞进对话。模型拿不到弹幕分布、画面里的字,也没有统一的元数据与评论结构。dsh-bili-watch 把一条视频(以及部分通用 URL)整理成元数据、评论、弹幕、字幕或转写、抽帧与 OCR 等文本或图像摘要,供 agent 通过工具或命令调用。下面介绍它的定位、能力与安装用法。

这是什么

dsh-bili-watch 由维护者 Sacredbluedragon 发布,分类为联网工具,在 SkillHub 插件目录 与 GitHub 均可找到。一句话:将 B 站视频(及通过 yt-dlp 可访问的 URL)变成模型能读的内容,可作为 DSH 插件运行,也可单独当命令行 bili-watch 使用。

取内容的策略是先用文字(AI 字幕或本地转写),文字不够再抽帧看画面;只读元数据、评论、弹幕、搜索、热榜不需要额外依赖。当前包版本为 0.2.15,许可证 MIT,运行环境要求 Node.js ≥ 22。

核心功能

文字与画面

  • 元数据与互动:view 输出元数据、简介与热评;comments 拉评论区;danmaku 按时间桶统计弹幕热区。
  • 字幕与全文:sub 获取 AI 字幕(需登录),支持 SRT、JSON、Markdown;asr 为本地 faster-whisper 转写;text 走四级链——字幕 → 转写 → 抽帧 OCR → 否则由模型读帧,降级时会说明原因。
  • 画面:peek 为元数据、热评加 5 张均匀帧(成本较低);frames / ocr 抽帧并可 OCR;sheet 拼九宫格等;substrip 把底部字幕竖拼成图,便于省 token。
  • 发现:search 搜视频;hot 看综合热门榜。

DSH 集成

  • 工具名 bili_watch(参数 command + bv),或对话里的 /bili 命令。
  • 插件面板可查看 ffmpeg、yt-dlp、ASR/OCR 环境、转写模型、登录凭证状态,支持一键下载依赖、扫码登录、批量清理与抽帧缓存管理。
  • 用户消息里仅有一条 B 站链接时,插件会软提示 agent 可读该链接、peek 最便宜;不会自动调用工具。可在 deps/ui-config.json 设 "autoHint": false 关闭。

通用 URL

view、text、asr、frames 可接受非 B 站 URL(YouTube、X、直链 mp4 等),依赖 yt-dlp。peek、sub、comments、danmaku、sheet、substrip、ocr 仅支持 B 站。

安装与启用

DSH 采用「一切皆插件」的装配方式;社区目录在 SkillHub,与 DeepSeek / 幻方无官方从属关系。

装进 DSH

dsh plugin --profile web add dsh-bili-watch

装完后重启 DSH;插件只在启动时加载,面板也要重启后才出现。DSH 0.2.0-rc.2 起,dsh plugin add 会把包写入 profile 的 dsh.profile.bundles;更早内核需在 profile 的 package.json 里手动补 "dsh-bili-watch"。

验证是否进装配:

dsh --profile web --dump-config

输出里能搜到 dsh-bili-watch 即成功。插件市场已收录(2026-10-21),也可在市场搜 dsh-bili-watch 安装;新装默认不自动启用,需在「插件」页打开开关后再重启。

升级与卸载:

dsh plugin --profile web add dsh-bili-watch@latest
dsh plugin --profile web remove dsh-bili-watch

@deepseek-ai/dsh-tools 为可选 peer:profile 里缺该包时 bili_watch 工具不注册,/bili 与插件面板仍可用。

可选依赖

抽帧类命令(frames、ocr、sheet、substrip、text 的兜底档)需要 ffmpeg,未安装会明确报错并提示装法。AI 字幕需扫码登录;本地转写与画面 OCR 分别需要 Python 3.10+ 与 deps/.venv-asr / deps/.venv-ocr,未装则自动跳过对应档位。

macOS / Linux 可用仓库脚本一键拉依赖:

bash scripts/fetch-deps.sh all
BILI_WATCH_MIRROR=cn bash scripts/fetch-deps.sh all

也可在插件面板里对缺失项点「一键下载」。登录凭证保存在本机 deps/credential.json,等同账号登录态,勿分享或提交。

典型用法

命令行(可不装 DSH)

npm i -g dsh-bili-watch
bili-watch view BV1EPnG6DEJC

常用子命令

场景 命令示例
快速了解视频 bili-watch peek <BV或链接>
字幕导出 bili-watch sub <BV> --format md
给模型用的全文链 bili-watch text <BV> --format json
扫码登录(AI 字幕) bili-watch login

完整参数见 bili-watch help(如 --out、--fresh、--ffmpeg、--cred、--step 等)。

适用场景与注意

适合:需要在 DSH 对话里让 agent 读 B 站稿件、对比评论与弹幕、在字幕缺失时用转写或 OCR 补全,或偶尔用 yt-dlp 处理外站链接的开发者。

权限与安全:插件以当前 DSH 进程权限运行,安装前请自行查看 源码 与 MIT 许可证。不支持点赞、评论、发弹幕;任意 http(s) URL 经 yt-dlp 时无内网过滤,勿用于探测内网。批量调用请自行加间隔;抽帧会下载 360p 并占用缓存(默认保留 7 天、总量上限 2048 MB,可在面板或 deps/cache-config.json 调整)。

结尾

dsh-bili-watch 把 B 站视频的多模态信息收敛成 agent 可调用的命令与工具,并用手动降级链保证「能读多少说多少」。目录页:SkillHub - dsh-bili-watch;仓库:github.com/Sacredbluedragon/dsh-bili-watch。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye