dsh-session-namer:DSH 新建會話命名插件

在 DeepSeek Harness (DSH) 中,新建會話通常由第一條消息自動生成標題。如果第一條消息不完整或噪音較多,生成的標題可能不符合預期。dsh-session-namer 修改了這一流程,在創建會話前增加一步手動命名,確保標題由用戶直接定義。

這是一個 DSH 客戶端插件,由 CHIP-PHILO-GH 維護。它攔截了新建會話的操作,通過對話框讓用戶輸入名稱,從而替代默認的自動標題邏輯。項目採用 MIT 許可證。

核心功能

  1. 新建會話時先彈命名對話框:點擊側欄的「新會話」時,不再直接創建會話,而是先彈出對話框。
  2. 填入名字後永久釘住會話名:確認後,會話建立即使用該名字,不會被後續消息的自動標題覆蓋。
  3. 留空則按第一條消息自動命名:在對話框中留空或直接回車,保持 DSH 原有的自動命名行爲。
  4. 取消操作不創建會話:按 Esc 或點擊取消按鈕,不會創建任何會話。
  5. 實時預覽與會話名:在對話框中輸入時,實時顯示會話列表中的顯示效果。
  6. 按宿主上限截斷提醒:自動檢測並按宿主 80 字節上限進行截斷提示。
  7. 自動適配主題:自動跟隨 DSH 的亮/暗主題與皮膚。

安裝與啓用

這是一個純客戶端插件,未發佈到 npm,需使用本地 link: 方式安裝。

  1. 克隆或解壓到本地目錄,即 <包所在目錄>。
  2. 編輯 profile 的 package.json(路徑爲 $env:DSH_HOME\profiles\<profile>\package.json):
    • 在 dsh.profile.bundles 中添加一行 "dsh-session-namer"。
    • 在 dependencies 中添加一行 "dsh-session-namer": "link:<包所在目錄>"。
  3. 建立符號鏈接:
    New-Item -ItemType Junction `
      -Path "$env:DSH_HOME\profiles\<profile>\node_modules\dsh-session-namer" `
      -Target "<包所在目錄>"
  1. 重啓 dsh web 生效。客戶端插件代碼在頁面里加載,刷新頁面無法生效。

典型用法

  • 點擊側欄的「新會話」按鈕。
  • 在彈出的對話框中填入名字並確認,會話將以該名字建立。
  • 留空或直接回車,則按第一條消息自動命名。
  • 按 Esc 或點擊取消按鈕,不創建會話。

注意事項

  • 依賴聲明:插件需聲明注入服務 locale, slots, sessions, uiWorkspace。如果缺少聲明,插件可能因服務缺失而靜默失效。
  • 權限:插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • 平臺:純客戶端插件,運行在 web 平臺。
  • 截斷限制:會話名按宿主 80 字節上限截斷。

結語

通過這一插件,開發者可以更精確地控制會話的初始命名,提升會話管理的效率。更多技術細節與源碼,可參考 GitHub 倉庫。

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

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

小夜