dsh-tree-view:會話分支的樹形視圖

DSH 的使用場景中,編輯一條已發出的消息,或使用 DSH 自帶的「在新對話中分支」按鈕,都會產生新的會話版本。如果任由這些版本散落在側欄,會話列表會迅速膨脹。dsh-tree-view 插件通過樹形視圖,將同一家族的對話版本組織起來,保持側欄整潔。

插件定位爲樹形會話分支視圖。由 Rice00 維護,基於 MIT 許可證。它允許用戶在側欄的單一入口中切換不同的對話版本、重命名分支,並將分支提升爲正式會話。

安裝與啓用

在終端執行以下命令安裝:

dsh plugin --profile web add dsh-tree-view

安裝後,需重啓 profile 或刷新瀏覽器以使插件生效。

核心功能

  1. 樹形分支展示
    插件會自動捕獲編輯消息或使用分支按鈕產生的會話。在會話面板切換到 Tree 標籤頁,可以看到以“主幹”起始的分支圖。每個節點代表一個會話版本。

  2. 視圖導航與定位

    • 點擊跳轉:點擊樹上的節點,會話會切換到該版本,並定位到對應的消息輪次。
    • “你在這裏”標記:當前閱讀的節點旁有一個小三角,指示當前所在位置。刷新頁面或重新進入 Tree 視圖,位置記憶依然保留。
    • 路徑高亮:當前正在閱讀的整條路徑(包括共用的開頭)會在樹上高亮顯示。
    • 多線並行:右鍵點擊節點選擇「放到主對話」,可以將多個版本同時打開到側欄,互不干擾。
  3. 視圖管理

    • 一鍵收起:工具欄的「收起其它分支」會將側欄中該家族的其他版本全部收進樹中。
    • 長段摺疊:連續且沒有分叉的輪次達到設定長度(默認 8 輪)會自動摺疊,保持視圖整潔。
    • 記住位置:離開 Tree 視圖再回來時,會保持上次的平移與縮放狀態。
    • 隱藏空副本:只複製了對話但沒有產生新回覆的 Fork 不會在樹中顯示。
  4. 分支管理

    • 重命名:右鍵節點可重命名分支。
    • 版本環切換:在氣泡下方通過 ‹ n/m › 切換版本。
    • 歸檔處理:被歸檔的分支不會從樹上消失,只是變暗並標記爲“已歸檔”。歸檔操作僅改變側欄的顯示,不刪除數據。

使用示例

  • 編輯分支:編輯一條已經發出的消息,新的版本會自動出現在樹中。
  • 切換版本:在 Tree 標籤頁中,點擊不同的節點即可切換到該版本繼續對話。
  • 重命名與提升:右鍵節點,可以重命名該分支,或將其“放到主對話”使其成爲獨立的側欄會話。

數據安全與原理

  • 數據安全:插件是 dsh-plugin-message-edit 的 fork。插件唯一觸碰數據的地方是“歸檔”開關。它不會刪除、複製或改寫會話內容。
  • 卸載影響:卸載插件後,所有會話數據依然保留在 DSH 中,側欄的會話條目不會丟失。
  • 依賴關係:插件依賴 DSH 的會話日誌結構,與上游插件可以並存,但不依賴上游插件運行。

設置

在 DSH 設置中,TreeView 提供以下配置項:

  • 消息操作樣式:選擇 DeepSeek / ChatGPT / Claude 三種按鈕佈局。
  • 接着上次閱讀:默認關閉。開啓後,從別的會話回到這個家族時,會自動跳轉到上次閱讀的版本。
  • 摺疊閾值:設置長段摺疊的輪次上限(如 5、8、12、20 輪)。
  • 不畫空副本:控制是否顯示沒有新內容的分支副本。

該插件適合需要頻繁編輯對話、進行版本對比或多線並行開發的用戶。

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

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

小夜