dsh-fold-delete:長對話摺疊與徹底刪除會話

前言

用 DeepSeek Harness(DSH)做智能體或長任務調試時,單個會話裏往往會堆很多輪消息:工具調用、思考塊、用戶來回確認。列表和視窗被拉得很長,定位「最近一輪在說什麼」要反覆滾動;不要的試驗會話如果只從界面關掉,磁盤和 workspace 索引裏可能還留着痕跡。社區插件 dsh-fold-delete(維護者 KunKun24)針對兩件事:把較早消息折起來只看最近 N 條,以及從菜單裏走二次確認後把會話從磁盤和索引裏刪掉。下面按功能、安裝和用法說明。

這是什麼

dsh-fold-delete 是 DSH 的 Web 端插件(dsh.client.platform: web),通過 Cordis patch 注入客戶端 UI。MIT 許可;package.json 中版本爲 1.1.0,要求 Node >= 22.13.0。在 SkillHub 社區目錄中歸類爲「記憶」,目錄頁:dsh-fold-delete;源碼與說明:GitHub - KunKun24/dsh-fold-delete。

摺疊較早消息

打開長對話時,默認只展示最近 20 條可見消息(可在 5–200 範圍內改配置);更早的內容收起,對話頂部會出現浮動按鈕,點一次多展開一批,也可「全部展開」。

實現上有幾點值得注意:

  1. 思考過程和工具調用不計入條數,計數更貼近「對話輪次」而不是 DOM 節點總數。
  2. 只隱藏、不刪除:摺疊通過給消息 DOM 加上插件自定義屬性 data-dsh-fold-delete 完成,節點仍在,隨時可展開。
  3. 切換會話或新消息到達後會自動重新計算,不需要手動刷新摺疊狀態。

徹底刪除會話

在會話列表中:右鍵 →「刪除會話」→ 勾選確認 → 永久刪除。操作不可恢復,因此強制二次確認。

刪除流程會做四步(按 README 描述):

  1. 停掉可能仍在運行的會話(flush + dispose)
  2. 刪除會話目錄(兼容 session-<uuid> 與裸 <uuid> 兩種目錄命名)
  3. 從 workspace 索引中移除
  4. 通知前端刷新列表

主題與彈窗

確認彈窗會按頁面真實背景亮度選擇亮/暗配色(淺色爲白卡片、深色爲深卡片)。作者說明:dsh 沒有 --dsw-alias-bg-primary 變量,硬寫該變量會永遠落到深色兜底,插件側據此做了適配。

安裝與啓用

插件以當前 dsh 進程權限 讀寫會話目錄與 workspace,安裝前建議瀏覽源碼並確認 MIT 許可與行爲是否符合預期。官方 README 給出三種方式:

方式一:插件市場(推薦)

在 dsh 的「插件市場」裏搜索包名 dsh-fold-delete 直接安裝。

方式二:Release 壓縮包

dsh plugin --profile web add ./dsh-fold-delete-1.0.0.tgz

方式三:手動裝到 profile

# 1. 複製到 profile 的 vendor 目錄
cp -r dsh-fold-delete ~/.dsh/profiles/web/vendor/dsh-fold-delete

# 2. 在 profile 的 package.json 里加一條依賴(file: 指向 vendor)
#    "dependencies": { "dsh-fold-delete": "file:./vendor/dsh-fold-delete" }

# 3. 裝依賴並重啓
cd ~/.dsh/profiles/web && pnpm install && dsh web

社區目錄 SkillHub 與 DeepSeek / 幻方無官方從屬關係,屬於 DSH「一切皆插件」生態裏的第三方收錄,不是官方應用商店。

卸載

從 profile 的 package.json 的 dependencies 和 dsh.profile.bundles 中移除 dsh-fold-delete,執行 pnpm install 後重啓 dsh web 即可。README 寫明插件不寫業務數據,卸載不留額外狀態文件。

典型用法小結

  1. 日常長對話:保持默認或調小/調大「最近 N 條」,用頂部按鈕按需展開歷史。
  2. 清理試驗會話:列表右鍵刪除,勾選確認;刪除前確認沒有仍需保留的上下文或未導出內容。
  3. 開發環境:若不用市場,用 .tgz 或 vendor + file: 依賴裝入 web profile,改代碼後按 DSH 插件慣例重啓 web 端驗證。

適用場景與注意

適合經常單會話多輪、需要快速掃視最近內容的 DSH Web 用戶,以及需要把廢棄會話從磁盤和索引一併清掉的維護場景。摺疊不替代「記憶/摘要」類插件的分類含義只是目錄標籤,本插件做的是 UI 摺疊與物理刪除,不做跨會話記憶抽取。

務必把「刪除會話」當作不可逆操作;插件會在刪除前要求確認。若你並行多個 profile,安裝命令中的 --profile web 與路徑 ~/.dsh/profiles/web 需與當前使用 profile 一致。

結尾

dsh-fold-delete 用較小改動解決「長對話可讀性」和「會話真刪除」兩個實際問題:摺疊靠 DOM 屬性、可展開;刪除覆蓋進程、目錄、索引與列表刷新。查閱說明與 issue 見 GitHub 倉庫;在社區站可打開 SkillHub 目錄頁 查看收錄信息。

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

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

小夜