dsh-whale-bili:让陪伴角色自己刷 B 站

前言

在 DSH 里给角色接 B 站,常见做法是:人触发一次搜索或拉稿件,模型当场总结。角色没有「昨晚看了什么」的连续感,也很难在没人说话时自己开一篇视频、读字幕、记一笔,再决定是否要跟主人说一句。

dsh-whale-bili(npm 包名 dsh-bili-fishman,README 副标题「鱼与人」)由 SenuMirai 维护,归类为联网工具。它把「打开 B 站 → 成候选 → 读文字稿 → 记决定」做成可长期运行的本地优先流程,并带有生物钟唤醒;没有新发现、今天不想写,在代码约定里是合法结果,而不是任务失败。仓库当前 GitHub 星标为 0。

下面按定位、能力、安装配置和典型用法说明,事实均来自仓库 README 与 package.json。

这是什么

一句话:给 DSH 智能体一套「自己在家里刷 B 站的手」——能登录态下浏览、捞候选、诚实读稿、写手账与记忆相关工具,七类账号写入能力已实现但默认关闭。

它是 DSH Whale 系的一员(dsh-whale- 前缀)。与同系的 dsh-whale-world、dsh-whale-qq 等可独立安装;README 说明多个插件靠 npm 包 id 互相认亲,包名仍沿用 dsh-bili-fishman 等旧 id。package.json 还写明:日记、写信、部分记忆能力已落在世界插件,本仓侧重「刷」与记录链路,观看记录可由世界的 biliBridge 读成记忆。

维护者与来源:

  • 目录页:https://www.skillhub.cn/plugins/SenuMirai/dsh-whale-bili
  • 源码:https://github.com/SenuMirai/dsh-whale-bili
  • 许可证:MIT(package.json)
  • 运行要求:Node >=24.0.0,DSH >=0.2.1-rc.2 <0.3.0

设计上的三条规矩

README 把「有骨架但不逼产出」写进实现,三条值得先记住:

  1. 没有新发现是合法结果:工具不因「今天没产出」报错;状态里带有 posture.noDiscoveryIsFine: true 一类约定。
  2. 读取不需要授权:只有对外写入才要授权与开关。
  3. 账本坏了就停:不悄悄重建空账本,避免把角色「日子」清空。

本插件合并了早期「养鱼」流程的自愈与记忆骨架,以及「人文」侧的诚实取稿与写入授权写法;唤醒文案明确没有九步清单,唤醒后可以不做事。

核心功能

看与记:工具面(README 列 26 个,其中 19 个读/记/倾听)

常用读路径包括:

工具 作用(摘自 README)
bili_fishman_guide 读人文指南,写手账前先读
bili_fishman_candidates 捞候选;捞不到是正常结果
bili_fishman_read 读单个 BV 文字稿(A2/A1),带覆盖说明
bili_fishman_journal 写信笺(每天至多 2 篇,零篇也行)
bili_fishman_letter / bili_fishman_letters 写给主人的信 / 读已写信
bili_fishman_memory 查看、修正、删除记忆
bili_fishman_status 状态、暂停、任务、写入开关

评论区侧:bili_fishman_comment_digest 扫评论,bili_fishman_reply_draft 写回复草稿(不直接发,等主人审)。另有导入本机 ASR/画面文字、读人格札记等工具。

安装并在设置里配置模型后,可用设置页的 测试 按钮跑一遍当前启用能力(只读检查为主;若开启评论写入与授权,可能发一条 @ 你的测试评论,且不计入当天额度)。

写入:七项全开实现,默认一律不发

评论、弹幕、动态、点赞、投币、收藏、历史上报——README 称七项均已实现,但是能力不是任务:工具常驻注册,执行时校验;配置里对应 enableXxxWrites: true 且本地 write-policy.json 授权有效,才允许考虑写入。

打开单项写入的步骤(README):

  1. 复制 docs/write-policy.example.json 为 write-policy.json,填写 accountId、expiresAt、targets(白名单)、maxWrites。
  2. 配置里把对应 enableCommentWrites 等改为 true。
  3. 重载插件。

约束包括:一次一条、同账号 60 秒间隔、maxWrites 额度、目标白名单、结果不明或风控码时持久暂停等。模型侧不能自行解除暂停;核对与确认在本地 CLI。

生物钟

插件每 60 秒 tick,到点通过 sessionController.prompt 唤醒会话。可配置醒来的时段,例如:

night:
  windows:
    - { start: "20:00", end: "23:00" }

唤醒提示允许「什么都不做」;没有「必须走完几步」的 KPI。

设置页与 Windows 工作目录

README:装好并重启 DSH 后,在 设置 → 鱼与人 可改角色名、模型、扫码登录、爱好/避雷、作息、全天监听、七项写入开关、待审回复、信与日记展示、活动账本等;保存后立刻生效。

package.json 描述中设置入口写为 设置 → 刷B站,若你升级后界面文案不一致,以当前 DSH 里实际菜单为准。

Windows 上需注意 DSH ACL 沙箱:工作区不能与系统临时目录互相嵌套。本插件用 pickSessionCwd() 选择不嵌套目录(默认 <DSH_HOME>/bili-fishman),并对已有会话用 ctx.workingDirectory.set(agent, path) 纠正 cwd。

安装与启用

README 给出的插件条目示例(写入你的 DSH 插件配置,路径按本机替换):

- id: bili-fishman
  name: dsh-bili-fishman
  config:
    dataDir: C:/Users/<你>/.dsh/bili-fishman
    credentialPath: C:/Users/<你>/.dsh/bili-fishman/credential.json
    maxSessionTokens: 600000
    enablePersonalityLearning: true
    # 授权文件:不存在 = 任何写入都开不了
    writePolicyPath: C:/Users/<你>/.dsh/bili-fishman/write-policy.json
    # 七项写入开关(默认全关;要开还要配合授权文件)
    enableCommentWrites: false
    enableDanmakuWrites: false
    enableDynamicWrites: false
    enableHistoryWrites: false
    enableFavoriteWrites: false
    enableLikeWrites: false
    enableCoinWrites: false
    persona:
      name: ""
      ownerTitle: 主人
    preferences:
      like: []
    night:
      windows:
        - { start: "20:00", end: "23:00" }

凭据文件 credential.json 至少包含无 BOM 的 UTF-8 sessdata;只读够用。若要写入,还需 bili_jct;弹幕、点赞、投币还需 buvid3:

{ "sessdata": "..." }

也可在设置页扫码登录,凭据写入插件自有路径且不回显。

典型用法

  1. 只读刷站:配置 sessdata(或扫码),保持七项 enableXxxWrites 为 false,不配 write-policy.json。在唤醒时段或手动会话中让模型先调 bili_fishman_guide,再 bili_fishman_candidates → bili_fishman_read;无候选时直接结束即可。
  2. 记一笔与跟主人说话:用 bili_fishman_journal、bili_fishman_day 等记录;bili_fishman_letter 非每日必写。若你已装 dsh-whale-world,长期信笺/日记以世界插件与 biliBridge 为准(见 package.json 说明)。
  3. 对外发言(可选):按需完成 write-policy.json 与开关,评论走 bili_fishman_comment 等;回复陌生人建议关「免审核」,用待审队列 + 安全词(命中则连草稿都不进)。
  4. 验收:设置页点 测试,在活动账本与「她的日记 / 她写给我的信」等分组核对产出。

适用场景与注意

适合:你希望角色在 B 站有连续「过日子」行为、读稿诚实标注覆盖率、写入与监听都带额度与白名单,且能接受本机保管登录态与授权文件。

注意:

  • 插件以当前 DSH 进程权限访问网络与本机路径;安装前请阅读源码与 MIT 许可证,自行评估凭据与 write-policy.json 的风险。
  • 社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系;DSH 生态是「一切皆插件」的独立组装方式。
  • 可与 README 推荐的 dsh-see-now、dsh-loadout、dsh-persona-distill 等搭配,但与 Whale 世界插件的联动需自行按仓库文档配置。

结尾

dsh-whale-bili 把 B 站从「人点一次、模型回一段」拉成「她会自己醒来、能看能记、想说再说」的本地流程,并把无产出与读-only 默认立场写进策略。若要查阅简介与安装入口,见 SkillHub 目录页 与 GitHub 仓库。

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

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

Xiaoye