dsh-session-nexus:DSH 會話生命週期與跨會話消息插件

前言

DSH 的插件生態強調“一切皆插件”。在多會話工作流中,開發者常遇到的問題不只是單次對話效果,還包括會話本身不好操作:冷會話需要重新掛載、歸檔狀態需要臨時恢復、刪除需要顯式確認、一個會話需要把任務或上下文交給另一個會話。

dsh-session-nexus 是一個非官方 DeepSeek Harness 社區插件,由 qiushi-dev 維護,許可證爲 MIT。它一次安裝提供會話生命週期控制與跨會話消息能力,面向 DSH 智能體開發者。它是社區插件,未經 DeepSeek 審查或背書;社區目錄是獨立站點,不等同於 DeepSeek / 幻方官方應用商店。

這是什麼

dsh-session-nexus 的定位是把 DSH 會話變成可操作、可尋址的對象:

  • 通過斜槓命令管理會話生命週期。
  • 通過命令和模型工具向其他會話投遞消息。
  • 通過模型工具獲取其他會話的標題、時間線和最近消息摘要。
  • 在 Web UI 中提供 session id 與 /address 結果的展示增強。

下面介紹它的核心能力、安裝命令、典型用法和限制。

核心功能

會話生命週期控制

  • /resume <id>:按 id 顯式掛載冷會話,不發消息;從日誌解析 preset。
  • /unarchive <id>:best-effort 取消歸檔。
  • /rm-session <id> --yes:降級兩步刪除,默認關閉,需要 lifecycle.allowDelete: true 開啓。

跨會話消息

  • /send-to <地址> <消息>:wakeup 投遞,成爲目標的下一個 turn;冷會話自動 resume。
  • /notify <地址> <消息>:quiet 投遞,進入目標下一步模型上下文,不喚醒。
  • /address [地址]:輸出會話的規範地址,包括 URI 與 mention,供複製;無參數時表示當前會話。
  • session_send_message:模型工具,用於向其他會話投遞消息。
  • session_overview:模型工具,可獲取會話標題、時間線和最近消息摘要。

地址格式

會話地址支持以下形式:

  • composer mention
  • dsh-session: URI
  • session id
  • 標題等

投遞呈現

投遞呈現支持兩種模式:

  • bubble
  • context

Web UI 增強

  • 會話頭部顯示 session id 芯片。
  • /address 結果以卡片形式展示,方便查看和複製。

安全限制

插件在跨會話消息中加入了以下限制:

  • 發送者歸屬。
  • 不可信內容提示。
  • 拒絕自投遞。
  • 消息長度上限:maxMessageChars 爲 16384。
  • 循環限制:默認 10 條 / 300 秒。

安裝與啓用

使用下面的命令安裝插件:

dsh plugin --profile web add dsh-session-nexus

安裝後,插件提供上文列出的斜槓命令和模型工具。默認情況下 mailbox.enableTool: true,模型會獲得 session_send_message 工具。

如果後續需要啓用刪除會話能力,需要顯式開啓:

lifecycle:
  allowDelete: true

下面的配置示例展示了常用配置項:

- id: session-nexus
  name: dsh-session-nexus
  config:
    lifecycle:
      allowDelete: false
    mailbox:
      enableTool: true
      maxMessageChars: 16384
      presentation: bubble
      rateLimitCount: 10
      rateLimitWindowSeconds: 300

其中 presentation 可設置爲 bubble 或 context。

典型用法

  1. 重新掛載一個冷會話:
/resume <id>
  1. 嘗試取消歸檔:
/unarchive <id>
  1. 向另一個會話發送喚醒消息:
/send-to dsh-session:... 繼續處理失敗用例
  1. 只把上下文注入目標會話,不觸發立即響應:
/notify dsh-session:... 這裏的決策原因是 A,後續不要重複排查 B
  1. 複製當前會話的規範地址:
/address
  1. 讓模型查看另一個會話的標題、時間線和最近消息摘要:

使用 session_overview 模型工具。

適用場景

適合以下工作:

  • 多會話並行,需要統一掛載、取消歸檔或刪除會話。
  • 一個會話作爲協調者,向其他會話發送任務或上下文。
  • 模型需要獲取其他會話的標題、時間線和最近消息摘要。
  • Web UI 中需要快速查看 session id 或複製會話地址。

注意

  • 這是非官方社區插件,未經 DeepSeek 審查或背書。
  • 插件以當前 dsh 進程權限運行。安裝前應檢查源碼、許可證和配置項,確認命令、刪除與消息能力符合你的風險邊界。
  • /rm-session 默認關閉。它只移除 JSONL session 目錄;派生索引、緩存和統計需懶加載對賬,正確刪除依賴上游 delete 操作。
  • /unarchive 受 workspace registry 私有內存緩存限制,後續 workspace 寫入可能在重啓前回滾。
  • 從插件向冷會話 quiet 投遞不可行,需要上游 mailbox seam 支持。
  • 側邊欄會話行沒有複製地址菜單項,需要使用 /address 或 composer mention picker 替代。
  • 許可證爲 MIT。

鏈接

  • GitHub:https://github.com/qiushi-dev/dsh-session-nexus
  • 目錄頁:https://www.skillhub.cn/plugins/qiushi-dev/dsh-session-nexus
羽毛球分组比赛记分
小程序二维码

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

小夜