前言¶
在 DeepSeek Harness(DSH)里做「个人运营号」,常见做法是 agent 写文案、人再剪片、人再上传。脚本可以拼 plan → render → publish,但调度、失败重试、真发开关和合规红线往往要另写一层。dsh-bili-faship(目录名常写作鲸鱼娘视频工坊)把这段能力收成 DSH 工作流插件:设置页「视频工坊」、生物钟按节奏建工单、以及一组 faship_* 工具,让 agent 从日记选题到 storyboard、配音与逐帧渲染、代码自审,再到生成投稿包;真投稿默认关闭,并写明不自动重试 B 站风控。下面按定位、能力、安装与典型用法说明。
这是什么¶
- 名称:
dsh-bili-faship(npm 包名同此) - 维护者:Faust-sudo
- 分类:工作流(社区目录 SkillHub 插件页)
- 源码:GitHub — Faust-sudo/dsh-bili-faship
- 当前版本(
package.json):0.2.1,许可 MIT - 宿主要求:DSH
>=0.2.0,Node>=20.12
插件面向「鲸鱼娘 / 大肥鱼」这类人设:生物钟每隔几天触发一轮,agent 从日记和偏好里选题,写成 storyboard v4,用 Edge TTS 配音、Python(Pillow + numpy)逐帧出图,混 BGM/音效,产出 video.mp4、cover.jpg、subtitles.srt;再用代码跑 7 项硬闸门自审,通过后才生成 dry 投稿包。与同为 Faust-sudo 体系的 dsh-bili-whale 代码零依赖:whale 偏「看和说」,本插件偏「做和发」,日记路径可共用约定。
v0.2 起每次「做一条」都是带 id、目录、会话与阶段的工单;准入原因、看门狗与自动重试、需人工处理的项会集中在设置页顶部「待你处理」。
核心功能¶
创作管线(plan → render → review → publish)¶
| 阶段 | 作用 |
|---|---|
plan |
生成或校验 <dir>/storyboard.json |
render |
TTS → 字幕与时间轴 → 逐帧渲染 → 混音,输出成片与元数据 |
review |
7 项硬闸门,写 review.json,exit 0 表示通过 |
publish |
默认 --dry 只出 publish.json、不联网;--go --confirm 才真发(多重闸) |
CLI 入口为仓库内 node tools/bili-faship.mjs <子命令>;另有 deps 做依赖体检、status 看发布节奏与待发片单。
Agent 工具(faship_*)¶
注册给 DSH agent 的工具包括状态与工单(faship_status、faship_tickets、faship_report、faship_ticket_action)、依赖与列表(faship_deps、faship_videos)、创作步骤(faship_plan、faship_render、faship_review、faship_publish)、后台任务(faship_job)、手动叫醒(faship_wake)与只读配置(faship_config)。工具注册失败只记日志,不阻断插件激活。
设置页与调度¶
装好后进入 设置 → 视频工坊。页面覆盖节奏(总开关、生物钟、cadenceDays、叫醒窗口)、发布与红线(分区 tid 默认 138、自审分数线、红线词表;「允许真发」为 danger 开关且需二次确认)、声音(Edge TTS 默认 zh-CN-XiaoyiNeural)、路径与人物素材、凭据与视频列表等。配置合并写入 <DSH_HOME>/bili-faship.config.json(默认 DSH_HOME 为 ~/.dsh),形状 { "version": 1, "video": { ... } }。
调度器约每 60 秒 tick:看门狗、失败工单自动重试、再按确定性准入规则决定是否建新工单并投递叫醒词(不调 LLM 做准入判断)。
明确不做的事(README 能力边界)¶
- 不做账号安全设置,不关注/三连/投币/花钱,不群发私信
- 不刷量、不搬运、不冒充真人
- 遇 B 站风控(如 412 / 429 / 601)停止,不自动重试、不绕过验证码
- 未显式打开「允许真发」时不投稿
投稿需 AI 标注等红线由代码侧强制;材质(表情包、角色形象)不随插件分发,使用权需自行确认。
安装与启用¶
安装前建议对照 README「装之前」表:除 DSH 与 Node 外,硬依赖包括 ffmpeg、Python 3 + Pillow + numpy、可写的 <DSH_HOME>/bili-faship 数据目录;BGM/SFX 已随包(CC0 合成)。表情包、中文字体、日记、投稿 cookie 缺失多为 warn,不挡 dry 链路。
推荐:DSH 插件管理器
- 设置 → 插件 → 添加插件 → 从本地目录安装,选择插件源码目录;或 从 Git 安装,填写
git+https://github.com/<你的账号>/dsh-bili-faship.git - 桌面版开 HMR 时一般立即生效;未开 HMR 则重启一次 DSH。
- 打开 设置 → 视频工坊(若无入口可刷新或重启)。
亦可对 agent 说明把插件目录交给 plugin_manager 的 install_bundle。
手动 / CLI(等价)
# 1) 把 bundle link 进 profile(路径含空格请加引号)
dsh plugin --profile desktop add "link:<你本地的插件目录>"
# 2) 编辑 profile 的 package.json(如 ~/.dsh/profiles/desktop/package.json),
# 将 "dsh-bili-faship" 加入 dsh.profile.bundles(建议放末尾)
# 3) 重启 DSH
dsh 来自 DSH 安装目录自带 CLI(Windows 示例:<DSH 安装目录>\resources\runtime\cli\bin\dsh.cmd)。
注意:cordis.patch.yml 的 name: 须与安装包名 dsh-bili-faship 一致,否则可能出现设置页 404 或 entry 未激活。配置示例见仓库 bili-faship.config.example.json。
典型用法¶
设置页四步(首次)¶
- 依赖体检:设置页点「依赖体检」,或执行
node tools/bili-faship.mjs deps --json - 粘贴 cookie(仅真发):浏览器登录 B 站后从存储中抄
SESSDATA、bili_jct、buvid3,写入设置页「凭据」并保存(只写不读回)。 - 确认素材路径:渲染与路径、人物与素材分区中确认表情包、Python、ffmpeg、日记列表等。
- 先做 dry:设置页「现在做一条」(二次确认),或走 CLI 分步验证。
CLI 分步示例(README)¶
node tools/bili-faship.mjs plan --dir D:\videos\demo --topic "第一天,站在中间"
# 按需修改 storyboard.json 的 scenes 后:
node tools/bili-faship.mjs render --dir D:\videos\demo
node tools/bili-faship.mjs review --dir D:\videos\demo
node tools/bili-faship.mjs publish --dir D:\videos\demo --dry
publish --dry 仅在本地生成投稿包,不联网。真发需设置页打开「允许真发」且调用方显式 confirm,并满足自审与频率闸。小尺寸(如 320×180)适合快速验链路,正式成片宜 1920×1080。
ffmpeg 解析顺序(资料记载):FFMPEG 环境变量 → PATH → 插件 bin/ → ~/.dsh/bili-whale/bin → 剪映自带路径。Python 可用 WHALE_PYTHON 或设置页指定。
适用场景与注意¶
适合谁:已在 DSH 跑 agent、有人设日记或选题素材,希望把 B 站短视频做成可审计工单(而非一次性脚本)的开发者;可与 dsh-bili-whale 并行,共享 cookie/表情包目录约定,但无代码耦合。
安装与运行注意:
- 插件以当前 DSH 进程权限读写本机目录与调用 ffmpeg、Python;安装前请自行审阅 仓库源码 与 MIT 许可证。
- 社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系,属社区插件生态。
- 星标、版本以仓库与目录页为准;勿在未核对凭证的情况下开启真发。
- 原独立项目
bili-faship在资料中标注为只读参考,新能力以本 DSH 插件为准。
结尾¶
dsh-bili-faship 把「构思 → storyboard → 渲染 → 代码自审 → 投稿包」固化为 DSH 工作流:设置页可运维,生物钟与工单可追踪,真发与风控策略在文档与代码里写死边界。要从 dry 跑通再考虑投稿,可从依赖体检与一条 --dry 开始。