dsh-yunpa:本地憑據與登錄態抓取

前言

在 DeepSeek Harness(DSH)裏讓 agent 訪問貼吧、NGA、Pixiv、愛麗絲書屋等站點時,常見障礙是登錄牆:要麼每次手工貼 cookie,要麼把賬號密碼寫進對話。後者既不符合憑據管理習慣,也不利於複用登錄態做結構化抓取。dsh-yunpa 是 binskyz 維護的 DSH 聯網類插件,把「本機加密憑據庫」「無頭瀏覽器登錄態」和「帶登錄態的抓取工具」收在一套流程裏,一次登錄後由 agent 通過工具複用。下文按定位、能力、安裝與典型用法說明,事實以 GitHub 倉庫 README 與 package 信息爲準。

這是什麼

dsh-yunpa(npm 包名 dsh-yunpa,當前版本 0.10.3,MIT 許可證)面向「登錄牆後面的內容」:憑據只存本機(DPAPI 包裹主密鑰 + AES-256-GCM,明文不落盤、不進對話);瀏覽器默認走 headless-shell 無窗口模式,並攔掉 11 個 Google 後臺域名的外部連接。動作層經 Chrome DevTools Protocol(CDP)完成,README 寫明共 31 個 auth_* 與 browser_* 工具,無第三方依賴。設置入口在 DSH 設置中的「雲爬」,含概覽、憑據庫、密碼庫、站點、診斷五個頁籤。

社區目錄頁:https://www.skillhub.cn/plugins/binskyz/dsh-yunpa。DSH 生態強調「一切皆插件」;SkillHub 爲獨立社區目錄,與 DeepSeek / 幻方無官方從屬關係。

核心功能

憑據與登錄

  • 本地加密憑據庫:auth_vault 用於記住或遺忘賬號密碼;也可通過 auth_cookie 導入 cookie。
  • 瀏覽器登錄:auth_login 的 mode=browser 是 README 中唯一會彈窗的路徑(例如對話裏說「登錄貼吧」「幫我登 NGA」)。
  • 表單登錄:auth_login 的 mode=form;需要驗證碼時給碼後再調一次。
  • 登錄態維護:auth_capture 抓取登錄態(可選 wipeProfile 抓完清 profile);auth_status 查看當前登錄態。

帶登錄態抓取

  • 單鏈抓取:auth_fetch,kind:"posts" 爲樓層,kind:"threads" 爲吧列表等。
  • 多頁:auth_fetch {pages:20},貼吧按 pn、NGA 按 page,合併去重、樓層連號。

README 歸納的一條鏈路示例如下:

貼吧:吧列表(kind=threads) → 帖內樓層(kind=posts, pages=20) → 結構化 JSON 落盤
NGA :帖內樓層(pages=N)   → 作者+正文
Pixiv:作品/系列頁 → 正文
書屋:書目 → 章節 → 正文

Edge 密碼遷移

Edge 密碼庫 v20(App-Bound)離線無法解密;插件通過「瀏覽器自己填 → 讀 DOM」完成遷移:auth_edge_list 查看 Edge 中條目,auth_pw_open → 自動填充一次 → auth_pw_grab 抓取。

設置頁與自檢

  • 裝好後在 DSH 設置中出現「雲爬」,左側欄多雲圖標。
  • 首次使用建議先跑環境自檢與瀏覽器版本檢查(見下一節命令)。
  • 開發向自檢:node check-all.mjs(13 項)、node smoke.mjs(加載期冒煙,不需瀏覽器)。

安裝與啓用

推薦從 npm 安裝,命令須與官方 README 一致:

dsh plugin add dsh-yunpa

安裝完成後重啓 DSH。成功時「設置」裏出現「雲爬」,工具隨 bundle 掛載出現。

運行環境:package.json 要求 Node >=22.19。README 明確 Windows-only(DPAPI、icacls、PowerShell 等依賴)。

改插件源碼或排查掛載問題時,倉庫提供 node install.mjs、node install.mjs --check、node recover.mjs 等腳本;安裝四條件(profile dependencies、bundles、目錄聯接、cordis 條目)缺一項時症狀不同,詳見 README 表格。正文不按「git clone」展開源碼安裝步驟;需要時請直接閱讀倉庫文檔。

典型用法

工具側(在對話中觸發)

你說 動作
登錄貼吧 / 幫我登 NGA auth_login mode=browser
用賬號密碼登 auth_login mode=form
抓登錄態 auth_capture(可 wipeProfile)
看登錄態 auth_status
抓這個鏈接 auth_fetch(kind:"posts" / kind:"threads")
翻頁抓 auth_fetch {pages:20}
記住賬號密碼 / 忘了它 auth_vault set / forget
我把 cookie 給你 auth_cookie
Edge 裏有什麼密碼 auth_edge_list
把密碼遷移出來 auth_pw_open → 自動填充 → auth_pw_grab

首次使用前的命令行自檢

在插件目錄或按 README 說明執行:

node check-all.mjs          # 13 項自檢,全綠再動手
node upgrade.mjs            # 查看瀏覽器版本(--apply 更新,含 sha256 與版本校驗)

不用瀏覽器調試口時,可調用 auth_browser_close 關閉;CDP 默認綁定 127.0.0.1:9333–9336,本機任意進程可連,README 要求知悉該限制。

適用場景與注意

適合誰:在 Windows 上跑 DSH、需要 agent 穩定訪問上述中文社區或 Pixiv、書屋,且希望憑據留在本機、登錄態可重複用於抓帖與翻頁的開發者。

使用前請自行覈對:

  1. 插件以當前 DSH 進程的用戶權限運行,無 OS 級隔離;安裝前建議瀏覽源碼與 MIT 許可證,確認符合你的安全策略。
  2. profile 內 cookie 爲 v10 格式,同用戶進程可解;敏感站點建議使用 auth_capture {wipeProfile:true}。
  3. 僅限 Windows;Linux / macOS 不在 README 支持範圍內。
  4. 僅供在你自己的賬號與設備上使用;憑據安全依賴本機 DPAPI 與系統賬戶邊界。

結尾

dsh-yunpa 把加密憑據庫、無頭瀏覽器登錄態和 CDP 抓取合成一套 DSH 工具,減少把密碼和 cookie 寫進對話的次數,同時覆蓋貼吧、NGA、Pixiv、書屋等常見登錄牆場景。安裝用 dsh plugin add dsh-yunpa,啓用後以「雲爬」設置頁和 auth_* 工具爲主路徑。

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

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

小夜