dsh-client-deep-sneak:agent 幹活時,在 DSH Web 右下角小窗摸魚看 B 站

前言

用 DeepSeek Harness(DSH)跑一個長任務,常見的狀態是:agent 在後臺幹活,你不知道它什麼時候會停下來要權限、要答案,於是只能盯着會話頁面乾等。想切走乾點別的,又怕錯過提醒,回來還得翻上下文。

dsh-client-deep-sneak 把這個問題換了一種解法:它在 DSH Web 頁面右下角放一個 B 站小窗,你看視頻等結果;agent 一旦需要你,視頻自動暫停並彈出提醒,處理完回來從原位置精確續播。下面介紹這個插件的功能、安裝和典型用法。

這是什麼

dsh-client-deep-sneak(項目名 DeepSneak)是一個 DSH Web 平臺的 client 插件,由 Rain-Shuoyu 維護,當前版本 v0.12.0,許可證爲 MIT。它解決的問題很具體:讓「等 agent 幹活」的時間可以拿來看 B 站,同時不丟 agent 的狀態感知。

環境要求:

  • DeepSeek Harness (DSH) Web 平臺
  • Node.js ≥ 18

核心功能

播放與內容

  • 首頁推薦流:B 站真實推薦流,免登錄,點任意卡片進入播放
  • 原生播放器:拖動進度、倍速、進度可控
  • 滾動彈幕與播放同步,彈幕層爲插件自繪的輕量實現,支持滾動、頂部、底部三種樣式,可調顏色與字號
  • 評論區瀏覽:位於播放頁下方,支持加載更多
  • 相關推薦:橫滑換片,播放不中斷
  • 關鍵詞視頻搜索:結果帶時長、播放量、彈幕數,支持分頁
  • 觀看歷史:本地記錄最多 50 條,未看完的從上次進度續播,看完的下次從頭播

agent 聯動

這是插件區別於普通網頁播放器的部分。它通過會話快照(useSessions)即時感知 agent 狀態,覆蓋四類事件:完成、阻塞、權限請求、提問。觸發時視頻自動暫停,疊加半透明蒙版並彈出 Toast 提醒;看板上還有狀態徽標,顯示工作中、空閒或需要你。

暫停的實現方式是:提醒時對 <video> 執行 pause(),元素保持掛載、進度不丟;點「繼續看視頻」後執行 play(),從原位置恢復播放。

摸魚輔助

  • 摸魚統計:今日、本週、累計、近 7 天四個維度,只統計播放中的時間
  • 白天 / 黑夜雙主題一鍵切換
  • 主題、彈幕開關、評論開關等偏好自動保存到 localStorage

安裝與啓用

一鍵安裝:在 DSH 部署目錄(含 cordis.yml 的 profile,例如 ~/.dsh/profiles/web)執行:

dsh plugin --profile web add dsh-client-deep-sneak

如果裝了 dsh-market,也可以在設置 → 插件市場裏搜索 DeepSneak 一鍵安裝。

手動安裝分三步。第一步,在部署目錄安裝依賴:

cd ~/.dsh/profiles/web
npm install dsh-client-deep-sneak

第二步,編輯該目錄下的 cordis.patch.yml,追加 insert 條目:

- insert:
    - id: deep-sneak
      name: dsh-client-deep-sneak

第三步,重啓 DSH Web:

npx @deepseek-ai/dsh web

刷新頁面,右下角即出現 DeepSneak 小窗。插件無需任何配置,安裝即用。

典型用法

1、打開首頁推薦流,點任意卡片,原生播放器自動播放,彈幕同步滾動。

2、想看指定內容時,在看板頂部搜索框輸入關鍵詞,結果卡片帶時長、播放量、彈幕數,可翻頁。

3、讓 agent 開始幹活,一邊看視頻一邊等。

4、agent 需要你時,視頻自動暫停並出現半透明蒙版提醒。點「回到對話」去處理。

5、處理完點「繼續看視頻」,從原位置精確續播。

6、標題欄可切換晝夜主題,查看今日、本週、累計摸魚時長。

7、點觀看歷史入口查看最近 50 條記錄,未看完的從上次進度繼續。

工作原理

插件分兩半工作。Client 半區跑在 DSH Web 頁面裏,負責右下角小窗、推薦流、播放器和自繪彈幕層;Host 半區提供三條同源代理路由,僅用於拉取 B 站公開內容:

/dsh-bili/api     JSON(推薦 / 播放 / 評論)
/dsh-bili/dm      彈幕 XML(gzip 解壓)
/dsh-bili/media   視頻流(Range 支持拖動續播)

摸魚統計累計的是真實播放時長,本地持久化。觀看歷史進度只存在當前瀏覽器的 localStorage,暫停、切視頻和每 30 秒各落盤一次;播完後進度歸零但記錄保留,下次從頭播放。所有數據都在本地,不上傳任何數據。

適用場景與注意

適合的場景:你經常在 DSH 裏跑需要等待的長任務,想要一個不打斷工作流的摸魚窗口,同時不丟 agent 的狀態感知。

使用前有幾點需要知道:

  • 畫質最高只有 720p,這是 B 站對未登錄 API 的限制。需要高清畫質或完整彈幕功能,建議同時使用 B 站網頁版。
  • 彈幕是插件自繪的輕量彈幕層,不是 B 站 iframe,樣式偏極簡。這樣做是爲了保證「精確續播」——不依賴 iframe 才能在暫停後無損恢復播放進度。
  • 不支持抖音:www.douyin.com 返回 X-Frame-Options: DENY 加 CSP 白名單,無法 iframe 嵌入,其 API 也需要簽名鑑權。
  • 路線圖上還有未完成項,比如摸魚目標提醒、彈幕密度與字號速度調節。

安全提醒:插件以當前 dsh 進程的權限運行,安裝前建議檢查源碼與許可證。該項目源碼和 MIT 許可證在 GitHub 上公開可查,客戶端 bundle 爲純手寫 JavaScript,無需構建步驟,閱讀成本不高。

結尾

dsh-client-deep-sneak 做的事情不復雜,但把兩件事咬合得很緊:B 站小窗負責填等待時間,會話快照負責在你被需要時把你拉回來。如果你日常工作流里長任務佔比高,可以試一試。

  • 插件目錄頁:https://www.skillhub.cn/plugins/Rain-Shuoyu/dsh-client-deep-sneak
  • GitHub 倉庫:https://github.com/Rain-Shuoyu/dsh-client-deep-sneak
羽毛球分组比赛记分
小程序二维码

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

小夜