dsh-smart-namer:用會話與工作區內容一鍵生成短名

前言

在 DeepSeek Harness(DSH)裏開很多會話、掛多個工作區時,側欄標題往往是默認名或隨手起的詞,事後很難從列表裏認出「哪一條在改哪個問題」。手動改名可以,但要自己概括內容,重複勞動多。社區插件 dsh-smart-namer(維護者 Blueteemo)走另一條路:只讀會話或工作區已有的標題、項目信息、少量用戶發言等文本,讓模型給出最多 3 個候選短名,選中其一即可改名;另提供 /rename 命令和 Agent 工具 rename_target。插件只使用 DSH 公開接口,不修改宿主安裝目錄,屬於客戶端類插件。

這是什麼

dsh-smart-namer 在 DSH 側欄增加「智能命名」入口:模型根據對象自身內容生成候選名,用戶點選或走命令完成重命名。npm 包當前版本爲 1.1.0(MIT),可通過 npm、GitHub、本地路徑或 release 包安裝。目錄頁:skillhub.cn/plugins/Blueteemo/dsh-smart-namer;源碼:github.com/Blueteemo/dsh-smart-namer。

核心功能

側欄:會話與工作區

  • 會話:在側欄會話行「…」菜單中選「智能重命名」。彈窗先顯示「正在想…」,隨後最多 3 個名字;選中即改名並 toast「已改爲 X」。Esc 或點遮罩關閉,不改名。
  • 工作區:在側欄面板列表「更多」中選「智能重命名工作區」。彈窗頂部有工作區下拉(默認當前會話所在工作區,其餘按最近活動排序);切換下拉會重新拉候選,後續與會話相同。

/rename 命令

在輸入框輸入 /rename,從命令菜單選擇 rename:

  • 無參數:調用模型,取第一個候選改名,並回復「已改爲「X」。備選:A、B」;失敗時按原因說明(響應太慢 / 模型服務異常 / 沒想出更好的),不改名。
  • 帶偏好,例如 /rename 突出工具鏈:後面文字作爲偏好提示傳給模型,仍生成 3 個候選。

命令執行沿用 20 秒超時,不啓動 Agent 輪次。

命名素材與模型

插件不讀工具輸出、文件內容和完整日誌。發給模型的素材如下:

對象 素材
會話 現有標題、所屬項目、項目代號、按階段均勻採樣的 5 條用戶發言
工作區 解碼後的文件夾名、代號、最近 5 個會話的標題、最近一條用戶發言

會話命名默認跟隨該會話最近一次實際運行的模型;工作區沒有獨立模型,用 profile 默認。兩者均可在插件配置頁修改。一次調用超時 20 秒,不向用戶流式輸出。

自定義提示詞

設置 → 插件 → dsh-smart-namer → Configure 中有「會話命名提示詞」「工作區命名提示詞」。留空則用內置模板(佔位符即模板本身);保存後立即生效,寫入當前 profile 目錄的 dsh-smart-namer.prompts.json。

佔位符:

對象 佔位符
會話 {project} {codes} {title} {user_samples} {last_assistant_text}
工作區 {folder} {codes} {workspace_path} {titles} {first_user_message}

Agent 工具 rename_target

直接改名,不調用模型:

{ "kind": "session", "id": "session-...", "title": "新名字" }

kind 爲 session 或 workspace。會話走 sessionController.rename(必要時先恢復會話);工作區走 workspaceController.rename(校驗非空和重名)。

安裝與啓用

推薦從 npm 安裝(預構建,免構建授權):

dsh plugin --profile desktop add dsh-smart-namer

也可從 GitHub 最新源碼:

dsh plugin --profile desktop add github:Blueteemo/dsh-smart-namer

本地開發:

dsh plugin --profile desktop add file:/absolute/path/to/dsh-smart-namer

或使用 release 預構建包:

dsh plugin --profile desktop add https://github.com/Blueteemo/dsh-smart-namer/releases/latest/download/dsh-smart-namer.tgz

安裝後若側欄沒有入口,需完全退出 App(Cmd+Q)再打開。客戶端 bundle 有 immutable 緩存和宿主內存 memoize,僅刷新頁面(含硬刷新)不會重新加載客戶端代碼。

典型用法小結

  1. 日常整理側欄:對單個會話用菜單「智能重命名」,對工作區用「智能重命名工作區」並在下拉里切換目標。
  2. 在對話裏快速改名:輸入 /rename 或 /rename + 偏好說明,由命令直接取第一個候選。
  3. 在 Agent 流程裏確定性改名:調用 rename_target,傳入 kind、id、title。

調試命名效果時,可只改 Configure 裏的提示詞,對同一會話反覆試,無需改插件代碼。

適用場景與注意

適合長期在 DSH 中維護多會話、多工作區、希望標題能反映內容摘要的開發者。命名質量取決於所選模型與提示詞;超時或上游異常時會明確失敗原因,不會 silent 改掉原名。

DSH 生態理念是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。插件以當前 dsh 進程權限運行,安裝前建議自行查看 GitHub 倉庫 源碼與 MIT 許可證。

結尾

dsh-smart-namer 把「讀已有元數據 → 模型出 3 個短名 → 一點或一條命令改名」接到 DSH 側欄與命令體系裏,並留出提示詞與 rename_target 供定製和自動化。需要安裝說明與截圖時可查閱倉庫 README;插件索引見 SkillHub 目錄頁,源碼與 issue 見 GitHub。

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

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

小夜