前言¶
DSH 的擴展方式偏插件化,社區插件目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,也不應理解爲官方應用商店。對於運行中的 DeepSeek Harness web runtime,常見痛點是:會話已經從界面上不可用,但 live store、workspace 記錄和磁盤 artifacts 仍然留在運行實例裏。dsh-session-cleaner 針對這個問題,提供一個 Web UI 入口和一個 API 路由,用於刪除運行中的會話,而刪除本身無需重啓 dsh web。
這是什麼¶
dsh-session-cleaner 是一個面向 dsh web 運行環境的 DeepSeek Harness 插件,由 fountunt 維護,License 爲 MIT。
它的一句話定位是:爲運行中的 DeepSeek Harness web runtime 刪除會話,移除 live store、workspace 記錄和磁盤 artifacts,無需重啓 dsh web。
已覈實的基礎信息如下:
- 插件名:
dsh-session-cleaner - 維護者:
fountunt - 許可證:
MIT package.json版本:1.0.2peerDependencies要求:@deepseek-ai/cordis ^4.0.1- GitHub 倉庫:
https://github.com/fountunt/dsh-session-cleaner
核心功能¶
下面介紹已覈實的能力。
1、刪除 DeepSeek Harness 會話,覆蓋三類數據:
fileslive storeworkspace records
2、在運行中的 dsh web runtime 內刪除會話,刪除動作本身不需要重啓 dsh web。
3、在側邊欄會話行的 ⋮ 菜單底部添加 Delete session 入口。
4、註冊一個 Web API 路由:
POST /api-ext/session.delete
該路由支持 JSON 請求體,字段爲 sessionId。
5、刪除時執行三類清理:
- 移除 live store 條目
- 移除 workspace 記錄
- 刪除磁盤 artifact 目錄
安裝與啓用¶
安裝命令如下:
dsh plugin --profile web add github:fountunt/dsh-session-cleaner
安裝完成後需要重啓 dsh web。運行中的實例不會熱加載新 bundle,所以這裏區分兩件事:
- 安裝或更新插件後,需要重啓
dsh web以加載插件。 - 插件啓用後,刪除運行中會話本身不需要重啓
dsh web。
如果環境已安裝 @deepseek-ai/cordis,請確認版本滿足:
@deepseek-ai/cordis ^4.0.1
典型用法¶
Web UI¶
啓用插件後,在側邊欄會話行的 ⋮ 菜單底部可以看到 Delete session 入口。
使用步驟:
1、在側邊欄找到目標會話行。
2、打開該行右側或底部的 ⋮ 菜單。
3、點擊 Delete session。
4、確認刪除。
5、側邊欄會刷新。
已覈實的界面行爲如下:
- 會話運行時,該入口會被禁用並顯示爲灰色。
- 已打開在 UI 中的 idle agents 會先停止,再執行刪除。
- 重複標題等歧義行會跳過該入口。
- 當前對話不能通過該端點刪除。
API¶
插件註冊的接口爲:
POST /api-ext/session.delete
Content-Type: application/json
請求體示例:
{ "sessionId": "..." }
在同源的 harness 頁面中,也可以從瀏覽器控制檯調用:
await fetch('/api-ext/session.delete', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({ sessionId: '...' })
});
適用場景與注意¶
適合使用場景:
- 需要清理運行中
dsh web裏的 DeepSeek Harness 會話。 - 需要同時移除 live store 條目、workspace 記錄和磁盤 artifact 目錄。
- 希望通過 Web UI 或同源 API 批量、重複地執行會話刪除操作。
使用前務必注意:
1、該插件會在當前 dsh 進程權限下運行,並可能修改 live store、workspace 記錄和磁盤 artifacts。安裝前應檢查源碼,並確認接受 MIT 許可證。
2、刪除不可逆。artifacts、workspace membership 和 live entry 都會被移除。
3、帶 attached agent 的會話會被拒絕。running 或 idle 狀態下的 attached agent 都會導致該端點拒絕刪除;當前對話不能通過該端點刪除。
4、側邊欄入口對運行中會話禁用;idle agents 會先停止再刪除。
5、session-projection cache 可能在下次重啓前保留無害的 stale row。
結尾¶
dsh-session-cleaner 的價值比較具體:它把運行中 DeepSeek Harness web runtime 的會話刪除拆成 live store、workspace records 和磁盤 artifacts 三類清理,並提供 Web UI 與 API 兩種入口。對於需要維護 dsh web 會話生命週期的開發者來說,這是一個可以直接落到清理流程裏的客戶端插件。
倉庫地址:
https://github.com/fountunt/dsh-session-cleaner