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。

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

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

小夜