前言¶
DeepSeek Harness(DSH)桌面端會把登錄相關的 cookie 持久化在 %APPDATA% 下的 Electron 網絡目錄裏。這些文件在多次啓動後只增不減,請求頭可能被撐過常見的 16KB 上限,服務端返回 HTTP 431,界面長期停在 “Web authentication failed”。手動做法是徹底退出 DSH、刪除 Cookies 與 Cookies-journal 後再打開;下面介紹社區插件 dsh-cookie-sweep(維護者 ALingStudio,分類 admin-security),把這一步做成可配置的自動化流程,並附帶設置頁查看每次清理結果。
這是什麼¶
dsh-cookie-sweep 是 DSH 的 desktop 插件:在每次啓動(或手動觸發)時,清理 DSH 桌面端網絡目錄裏殘留的登錄 cookie 文件,避免堆積超過 16KB 請求頭限制。登錄態本身在 .dsh 目錄,不受此插件影響。
- 維護者:ALingStudio
- 社區目錄:https://www.skillhub.cn/plugins/ALingStudio/dsh-cookie-sweep
- 源碼與說明:https://github.com/ALingStudio/dsh-cookie-sweep
- 許可證:MIT(README 標明)
- 版本:package.json 中爲
1.0.0
爲什麼需要它¶
桌面端 cookie 持久化位置包括:
%APPDATA%\@deepseek-ai\dsh-desktop\Network\
%APPDATA%\@deepseek-ai\dsh-desktop\Partitions\<分區>\Network\
啓動次數增多後,相關文件持續累積。達到一定程度時,每次請求頭超過 16KB 上限,服務端回 431,Web 界面無法完成登錄。README 中的症狀對照:啓動大約 72 次之後徹底打不開、報 Web authentication failed;瀏覽器網絡面板裏請求頭超過 16KB、服務端回 431。若清理後仍打不開,需先確認是否同一原因。
核心功能¶
啓動時清理¶
插件被加載時(DSH 啓動時)清理 Cookies / Cookies-journal;可選是否同時清理 Trust Tokens(由配置 keepTrustTokens 控制)。刪除失敗會重試約 6 秒,以便等待正在退出的進程釋放文件句柄。
狀態頁¶
路徑:設置 → Cookie 清理。逐文件展示 已刪除 / 不存在 / 被佔用 / 已跳過 / 已重建、大小與原因,並提供「立即清理」按鈕。
安全邊界¶
刪除不可逆,插件行爲刻意保守:
- 僅在
%APPDATA%\@deepseek-ai\<app>\Network與Partitions\<p>\Network內操作,路徑由插件自行拼接。 - 只刪除固定文件名名單,不使用通配。
- 非空文件必須在開頭識別爲 SQLite 或 LevelDB 的 cookie 庫簽名纔會刪除,否則跳過並在狀態中說明。
Partitions\temp-*(一次性會話)不處理,避免干擾進行中的登錄。- 任何失敗只寫入狀態,不阻塞 DSH 啓動。
實現上,index.js 負責 Host 側清理、重試、複覈及 /dsh-cookie-sweep 路由;client.js 爲設置頁客戶端模塊。無額外運行時依賴,僅使用 Node 內置模塊。
配置¶
在 cordis.patch.yml 的 config 中:
| 鍵 | 默認 | 含義 |
|---|---|---|
enabled |
true |
總開關;關閉後啓動不清理,手動清理也不可用 |
onStartup |
true |
每次啓動自動清理一次 |
keepTrustTokens |
true |
只清 Cookies,保留 Trust Tokens |
extraPaths |
[] |
額外的 Electron 網絡目錄(絕對路徑) |
安裝與啓用¶
官方 README 提供兩種方式,任選其一。
方式一:在 profile 的 cordis.patch.yml 中插入 bundle 項:
- insert:
- id: cookie-sweep
name: 'dsh-cookie-sweep'
config:
enabled: true
onStartup: true
方式二:讓插件管理器指向插件目錄:
plugin_manager install_bundle <本目錄的絕對路徑>
安裝前請自行閱讀倉庫源碼與 MIT 許可證。插件以當前 DSH 進程權限運行,只會按上述規則刪除指定路徑下的固定文件名。
典型用法¶
- 按上一節完成安裝,保持
enabled: true、onStartup: true(默認即如此)。 - 徹底退出 DSH(含托盤)後重新啓動,以便在文件未被當前進程佔用時完成啓動清理。
- 打開 設置 → Cookie 清理,確認各文件狀態;需要時可點「立即清理」。
- 若需保留 Trust Tokens,保持
keepTrustTokens: true;若有額外 Electron 網絡目錄,在extraPaths填入絕對路徑。
適用場景與注意¶
適合: 長期使用 DSH 桌面端、反覆遇到請求頭過大、431 或 “Web authentication failed” 的用戶;希望用 admin-security 類插件做啓動期 cookie hygiene 的場景。
已知限制(README):
- 運行中的應用會獨佔主
Network\Cookies,因此本次運行期間啓動清理常顯示「被佔用」。徹底退出後再開,下一次啓動會在文件釋放前嘗試清理。 - 主庫被佔用且應用隨後重建時,狀態可能爲「已重建」而非「已刪除」,不代表清理邏輯失敗。
- 清理 cookie 庫後,可能需在下次啓動時重新授權一次;
.dsh裏的會話記錄不受影響。
DSH 生態強調「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。本文事實均來自上述 GitHub README 與 package.json。
結尾¶
dsh-cookie-sweep 把「刪 Cookies / Cookies-journal」從手工維護變成啓動可配、可觀測的固定步驟,降低 16KB 請求頭與 431 導致 Web 界面鎖死的概率。進一步瞭解可訪問社區目錄頁與 GitHub 倉庫: