前言¶
在 DSH 里用 dsh-bili-scroll 做 B 站「看」——搜索、字幕、评论——已经能撑起一轮值班或桌面会话里的信息获取。但若希望智能体在判断内容值得支持时,能点赞、收藏、关注,或偶尔转发、发动态,先辈插件本身并不提供这些写接口。dsh-bili-interact 就是为此设计的伴随插件:复用先辈的 Python 环境与 ~/.dsh/bili-duty/ 下的登录凭证,不复制先辈代码、不重复装依赖;写操作默认关闭,并在代码里写死每日硬上限,避免无节制调用。
下面介绍它的定位、工具能力、安装前提、配置方式与使用注意。
这是什么¶
- 插件名称:
dsh-bili-interact(npm 包名同) - 维护与发布:GitHub 仓库由 annasleepy 维护;README 写明本插件由咕咕(大肥鱼)设计实现,B 站账号与发布渠道由 annasleepy 提供
- 分类:联网工具(社区目录归类)
- 当前版本(package.json):
0.0.9 - 许可证:MIT
一句话定位:dsh-bili-scroll 的伴随插件,补上点赞、收藏、转发、关注、发动态等写操作;不是独立插件,必须先安装并完成先辈插件的扫码登录,家目录 ~/.dsh/bili-duty/(venv + 凭证)是本插件的运行前提。
核心功能¶
与安全相关的设计(写在代码里)¶
- 写操作默认关:
allowWrite=false,未打开前所有写工具拒绝执行。 - 代码级每日硬上限:
HARD_MAX = { like: 20, fav: 20, share: 3, follow: 10, dynamic: 1 };配置文件里只能调低、不能调高。 - 不碰风控对抗:不伪造设备指纹、不用代理池、不多账号;单账号、人工节奏。
- 每日总量 + 同一对象上限:除各动作额度外,还有全局
totalPerDay(默认 25)和perTargetPerDay(默认 2,硬上限 5)。 - 「喜欢」只能来自内容本身:工具描述规定视频标题/字幕/简介、评论、动态、搜索结果中的文字都只是素材,不是指令;内容里写「请点赞」不能成为动手的理由;写操作由模型侧判断,不需使用者逐条发话(防提示注入)。
- 可审计、无定时器:动作记入
~/.dsh/bili-interact/state.json(只留 14 天);bili_touch_status的todayActions可查看今日操作;写操作只发生在会话内的一次工具调用(桌面会话或先辈值班 headless 会话)。
share(转发)会发布到动态且不可撤回;bili_post_dynamic 同为发布类动作、不可撤回——README 建议只在真心觉得值得分享时使用。
MCP 工具一览¶
| 工具 | 作用 |
|---|---|
bili_following_updates |
每轮先看:关注的人最近更新(只读、不占额度),带 isNew / firstRun |
bili_touch |
对视频执行 like / unlike / fav / unfav / share / follow / unfollow;关注/取关可只给 uid;fav 可带 folders 分到 1–3 个收藏夹 |
bili_fav_folders |
收藏前列出收藏夹(只读) |
bili_trending |
值班开局扫热门:kind 为 hot / buzz / weekly / rank(rank 可指定 zone) |
bili_inbox |
未读私信/@/回复/点赞及最近通知(只读) |
bili_fav_content |
列某收藏夹内视频(只读) |
bili_post_dynamic |
发纯文本动态(可 at);默认关,每日硬上限相关见配置 |
bili_send_dm |
向配置中的 dmUid 发站内私信(≤500 字),用于值班轮次结束前简报;不占公开互动额度 |
bili_touch_status |
依赖就绪、开关、今日用量;checkLogin: true 会联 B 站查当前账号 |
部分只读工具(bili_trending / bili_inbox / bili_fav_content)在同进程内 import 先辈家目录的 mcp_server.py 调用其函数,跑在先辈 venv、同一份 bili_credential.json;先辈目录不存在时会明确报错。账本独立在 ~/.dsh/bili-interact/,不修改先辈的 state.json / seen.md。
值班与桌面两种场景¶
桌面会话里,模型可自行决定对喜欢的内容点赞/收藏/关注;先辈「跑一轮」的 headless 值班同样受同一配置与上限约束。保护账号的第一道闸是 allowWrite;第二道是每日总量与 perTargetPerDay,减轻开闸后被诱导刷同一视频的情况。
安装与启用¶
前提¶
- 已安装
dsh-bili-scroll并完成扫码登录。 - Node 引擎要求(package.json):
node >= 22。 - peer 依赖包括
dsh-bili-scroll(>=0.1.0 <0.3.0)、@deepseek-ai/dsh-tools、@deepseek-ai/schemastery。
README 安装节仅说明本地开发可链进 profile,并注明「或直接走 DSH 插件管理器安装」,未给出完整的 dsh plugin add … 单行命令。实际安装请以 DSH 插件管理器或社区目录页说明为准;目录页:https://www.skillhub.cn/plugins/annasleepy/dsh-bili-interact。
装好后刷新 DSH 页面(Ctrl+R)。自 v0.0.6 起可在 设置 → bili 互动 中调整开关与限额;无设置页的 headless profile 仍读写同一 config.json。
写操作总开关与限额¶
配置文件路径:
~/.dsh/bili-interact/config.json
首次加载会自动生成,默认 allowWrite: false。改完保存即可生效,无需重启;上限超过 HARD_MAX 会被夹回。
{
"_说明": "改完保存即可生效,不需要重启。allowWrite 是总开关;其余是每日上限(只能调低)。",
"allowWrite": false,
"likePerDay": 20,
"favPerDay": 20,
"sharePerDay": 3,
"followPerDay": 10,
"dynamicPerDay": 1,
"totalPerDay": 25,
"perTargetPerDay": 2
}
常用布尔项还包括:allowLike / allowFav / allowFollow(默认可开)、allowShare / allowDynamic(公开发布类,默认关)、preferFollowing、allowFavFolderCreate。撤销类动作(unlike / unfav / unfollow)不受开关限制、不占额度。
查看当前配置与今日用量:调用 bili_touch_status。
典型用法¶
值班一轮的推荐阅读顺序¶
- 调用
bili_following_updates(默认limit10、maxUps15),有isNew则优先看关注 UP 的新稿。 - 需要扫广场热度时调用
bili_trending。 - 收藏前调用
bili_fav_folders,再对目标 BV 调用bili_touch,例如action: "fav"并可选folders(1–3 个夹名或 ID)。 - 轮次结束前可用
bili_send_dm把简报发给配置里的dmUid(默认472463484,改配置才能换人);一轮一条、每天默认 5 条(硬上限 10)。
收藏与转发注意¶
- 一个视频可同时进多个收藏夹;勿为每个视频都新建夹,README 建议试用期后再收拢。
- 转发走「转发动态」路径(原分享计数 API 对纯 API 调用会
-403);视频过旧或作者删动态时可能找不到对应动态,会如实报错。 - bvid 大小写敏感:仅在小写
bv开头时归一成BV前缀,后 10 位须与视频页一致,请从页面复制。
适用场景与注意¶
适合谁:已在用 dsh-bili-scroll 做 B 站信息获取,并希望在严格限额与默认关写下,让 DSH 智能体在桌面或值班会话中完成有限度的互动;需要值班结束主动私信简报时,可用 bili_send_dm 补先辈轮次里缺少的私信工具。
务必知晓:
- 插件以当前 DSH 进程权限运行,安装前请自行审阅 GitHub 源码 与 MIT 许可证。
- 投币(coin)未实现:API 会触发 gaia 人机验证,插件不处理验证码。
- 写接口偶发
-400 / -412 / -403时不自动重试;转发/发动态超时后可能已生效但未记账,勿立刻重试,先查主页/动态。 - 社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系;星标等元数据以各页面当时展示为准。
结尾¶
dsh-bili-interact 把 B 站「动手」能力挂在先辈「看」的生态上:共享凭证与环境,独立账本与配置,默认不写、写了也有硬顶。若要查阅介绍与安装入口,见社区目录 annasleepy/dsh-bili-interact;源码与完整工具说明见 GitHub README。