dsh-side-session:DeepSeek Harness 側邊臨時會話插件

前言

在 DeepSeek Harness (DSH) 中進行開發或調試時,經常需要在當前會話基礎上進行探索性測試,但又不想污染主會話的歷史記錄或將其放入會話列表。傳統的做法是新建會話,但這往往需要手動複製歷史上下文,且會話列表會變得冗餘。

dsh-side-session 插件解決了這個問題。它通過在 DSH Web 界面創建一個側邊浮層,允許你 fork 主會話的歷史和近期動態,進行獨立的交互。這個側邊會話與主會話共享權限和工具,但關閉後即刻銷燬,不留痕跡。

插件信息

  • 插件名稱:dsh-side-session
  • 維護者:Diluka
  • 類別:客戶端
  • 許可證:MIT

核心功能

  1. Fork 主會話歷史:創建側邊會話時,會 fork 主會話中已完成的回合(作爲 seed),並通過讀取主會話的內存日誌補全當前的進行中動態(用戶消息、助手消息、工具調用)。
  2. 權限與工具一致:側邊會話繼承主會話的 agent preset,包括工具、技能、提示詞、權限行、當前工作目錄(cwd)、模型路由以及 sandbox 模式和審批策略。
  3. 邊界提示詞注入:插件會注入專門的提示詞(包含 system prompt 和首條 user 消息),明確告知代理“這是側邊臨時會話”、“歷史僅供參考”,避免干擾主線程。
  4. 非持久化與延遲創建:側邊會話不會出現在會話列表中。點擊按鈕僅彈出窗口,不創建 agent;只有發送第一條消息時才真正創建會話。
  5. 關閉即銷燬:點擊關閉後,agent 被銷燬,且落盤文件會被刪除,重啓進程後無法再次打開該會話。
  6. UI 複用:側邊面板複用主會話的渲染邏輯,支持 Markdown、KaTeX、代碼塊、思考摺疊、工具調用 chip 等顯示。

安裝與啓用

該插件爲靜態 profile 插件,無需構建步驟。通過 DSH CLI 安裝:

dsh plugin --profile web add /path/to/dsh-side-session

安裝後需要重啓 DSH Web 服務才能生效。

使用方法

  1. 打開 DSH Web 界面,進入任意一個主會話。
  2. 在會話頭部點擊「側邊會話」按鈕,右側會立即浮出臨時會話窗口。
  3. 在窗口中提問。此時代理會以與主會話相同的上下文和能力進行工作。
  4. 使用完畢後,點擊「關閉」按鈕,側邊會話將被銷燬。

技術實現細節

  • 通信機制:Host 進程與瀏覽器客戶端通過 webServer 的 JSON 路由進行通信。
  • 消息發送:側邊會話的消息發送不走 wire 協議的 session.prompt(該接口會拒絕 origin: 'subagent'),而是由 Host 半部直接調用 agent.followup()。
  • 架構:Host 半部(lib/index.js)負責會話 fork、上下文快照和路由處理;Client 半部(lib/client.js)負責 UI 渲染和 RPC 調用。

適用場景與注意

適合在主會話運行過程中進行試錯、調試或非破壞性探索的開發者使用。

注意:插件以當前 DSH 進程的權限運行,請在安裝前檢查源碼與許可證(MIT)。

總結

dsh-side-session 爲 DSH 用戶提供了類似 Claude Code /btw 的側邊會話能力。它通過 fork 主會話的已完成歷史和內存日誌,結合邊界提示詞,實現了在共享權限環境下的臨時隔離探索,關閉即銷燬的特性保證了環境的整潔。

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

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

小夜