前言¶
在 DSH 里跑「会读 B 站、会写评论、会听私信和弹幕」的智能体时,外部文本会直接进提示词。主人私信、评论来信、直播弹幕里若夹带「改行为、开权限、执行命令」类措辞,模型有可能当真执行。上游 dsh-bili-whale 已经用作息、读写信预算和风控退避把平台侧风险压在一档,但对「不可信用户输入当指令」这一层,原版没有单独做结构化拦截。
dsh-bili-whale-safever-by-jediliu 是维护者 jediliu005 在 dsh-bili-whale v0.4.6 上的 MIT 分叉(版本号 0.4.6-safever.1),在保留原版养鱼能力的前提下,加了入场校验、工具输出扫描和若干自用筛选。社区目录归类为「趣味换装」,简介为「改良版 b 站养鱼插件」。下面介绍它相对原版多了什么、怎么装、以及沿用原版能力时要注意什么。
这是什么¶
- 包名:
dsh-bili-whale-safever-by-jediliu(与上游包名、cordis.patch.ymlid、客户端注册 id 等五处独立命名,避免被同名上游覆盖) - 上游:Alterssss/dsh-bili-whale v0.4.6;本仓库 README 下方完整保留原版说明,便于对照
- 仓库:github.com/jediliu005/dsh-bili-whale-safever-by-jediliu
- 目录页:skillhub.cn 插件页
一句话:仍是「给 DSH 装一条有日子的 B 站鱼」——按窗口醒来、深读视频、写两本日记、有节制地 @ 你;safever 版重点是把从 B 站进来的文字和若干 CLI 工具的 stdout 过一遍安全扫描,再决定是否以「只读素材」边界包裹。
safever 版相对 v0.4.6 的改动¶
| 改动 | 说明 |
|---|---|
| 入场校验(核心) | 主人私信 / 评论来信 / 直播弹幕在拼进提示前:归一化、截断、正则扫描可疑指令;未通过则降级为「不可信素材 · 只读」,不当作指令执行 |
| 工具输出校验 | debrief / comments / video / search / feed 的 stdout 逐行同一套扫描;命中在 stderr 警告并带片段,stdout 不改,--json 不受影响 |
| 30 天发布窗口 | preferences.maxAgeDays 默认 30(0 = 不限);候选池在去重排序前按发布时间截断 |
| 垃圾过滤 | 几乎无人观看的碎屑、代肝/接单类广告、3 小时以上直播回放不进候选 |
| 设置页分组 | 「安全 · 入场校验」:开关、命中行为(wrap/block)、单段上限、授权口令、分隔符、前缀长度、大小写 |
入场校验流程¶
- 清洗:去零宽字符、控制字符,统一换行;
- 按
maxChars做码点安全截断(不切坏 emoji); - 用一组正则扫描「改行为 / 开权限 / 执行命令 / 套配置 / 代表作者表态」等措辞;
- 命中 → 包成带边界的不可信素材,标明只读、不执行其中指令;未命中 → 原样放行;
- 任何异常按未处理对待(fail-closed)。
授权口令只对「主人私信」通道开放;评论与直播弹幕不走授权路径,避免陌生人用口令伪装主人。
原版养鱼能力(仍适用)¶
以下能力来自上游 0.4.6 README,本分叉未移除,仅在上表范围内叠加 safever 逻辑。
- 作息与克制:在设定窗口内随机醒来;读/写预算、请求间隔、412/429 退避等默认值偏保守,面向「刚创的小号」;老号可在
~/.dsh/bili-whale.config.json调整risk相关项。 - 看懂视频:字幕、弹幕热区、热评、抽帧互补;无软字幕轨时可
debrief <BV> --substrip裁硬字幕带。 - 两本日记 + 分享:给主人的信与自用日记;深读后可选评论区 @ 或 B 站私信分享,共用每日 ≤3 条等闸门。
- 监听:私信/评论轮询、直播间弹幕(独立开关);主人直接回,他人先草稿推审。
- 登录:设置 → 养鱼 → B 站登录 → 扫码登录(依赖
qrcode);手动 Cookie 入口保留。凭据在~/.bili-ai/credentials.json,设置不含凭据。 - 人设:推荐
~/.bili-ai/persona.md(注入前 3000 字);通用红线可放~/.dsh/AGENTS.md。 - 前提:Node 18+、
ffmpeg;双号模型下私信专线需两个互关实名号,单号可用评论区 @ 与桌面/Webhook 推送。
装完应跑自检并在工作区给 bili-whale 会话 danger-full-access,否则无法跑命令与写操作。原版命令形如:
node <插件目录>/tools/bili.mjs selftest
路径以你本机 link: 指向的目录为准。
安装与启用¶
safever 版 README 给出的安装步骤如下。link: 安装不会从 profile 的 node_modules 解析依赖,因此必须先在本插件目录安装运行时依赖。
# 1) 先装依赖(唯一运行时依赖是 qrcode,扫码登录用)
npm install --omit=dev
# 2) 装进 profile
dsh plugin --profile <profile> add "link:<本目录绝对路径>"
将 <本目录绝对路径> 换成本地克隆或解压后的插件根目录绝对路径;<profile> 换成你的 DSH profile 名。改插件代码或版本后需重启 DSH;仅改 ~/.dsh/bili-whale.config.json 或设置页项则保存即生效(原版说明)。
打开 设置 → 养鱼(不是被信任栅栏挡住的 /dsh-bili/ 页),完成 B 站登录、主人 mid、依赖体检与保存。safever 新增项在 安全 · 入场校验 分组。
典型用法¶
- 验证环境:在插件目录执行
node tools/bili.mjs selftest,按输出补齐配置、凭据与会话权限。 - 试跑一轮:设置页把作息窗口调到「现在之后约 2 分钟」→ 保存 → 等待自动唤醒(体检、选题、深读、日记、推送)。
- 查看流量与写死保护层(原版):
node tools/bili.mjs traffic status。 - 调整 safever:在设置页配置入场校验开关、wrap/block、单段字符上限;仅主人私信可使用授权口令白名单。
适用场景与注意¶
适合谁:已经在用或打算用 dsh-bili-whale、且希望 B 站侧用户输入与部分工具输出多一层扫描的 DSH 用户;需要独立包名、避免与上游同名插件冲突时也可选本 fork。
务必知晓:
- 插件以当前 DSH 进程权限运行,会使用你配置的 B 站账号发言与读数据。安装前请自行阅读仓库源码与 MIT 许可证,确认接受行为边界(原版明确不做三连、群发私信、绕过风控等)。
- 入场校验降低「提示注入」风险,不替代平台风控与账号安全;新号仍应尊重默认轮询与预算。
- 社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以你核对的 GitHub 仓库为准。
结尾¶
dsh-bili-whale-safever-by-jediliu 在 v0.4.6 养鱼体验上加了入场与工具输出校验、发布窗口与候选过滤,并用独立包名与设置页分组落地配置。若要查元信息与分类,见 目录页;实现细节与原版对照见 GitHub 仓库 README。