dsh-bili-whale-safever-by-jediliu:在 B 站养鱼插件上增加入场校验的 safever 分叉

前言

在 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 装一条有日子的 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)、单段上限、授权口令、分隔符、前缀长度、大小写

入场校验流程

  1. 清洗:去零宽字符、控制字符,统一换行;
  2. 按 maxChars 做码点安全截断(不切坏 emoji);
  3. 用一组正则扫描「改行为 / 开权限 / 执行命令 / 套配置 / 代表作者表态」等措辞;
  4. 命中 → 包成带边界的不可信素材,标明只读、不执行其中指令;未命中 → 原样放行;
  5. 任何异常按未处理对待(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 新增项在 安全 · 入场校验 分组。

典型用法

  1. 验证环境:在插件目录执行 node tools/bili.mjs selftest,按输出补齐配置、凭据与会话权限。
  2. 试跑一轮:设置页把作息窗口调到「现在之后约 2 分钟」→ 保存 → 等待自动唤醒(体检、选题、深读、日记、推送)。
  3. 查看流量与写死保护层(原版):node tools/bili.mjs traffic status。
  4. 调整 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。

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

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

小夜