DSH Message Branch:原位編輯提問並分支重發

前言

在 DeepSeek Harness(DSH)里長對話跑下來,常會想改某條較早的用戶提問再試一版,而不是從當前末尾另開話題。手動複製、新建會話、補上下文,步驟多且容易和原會話混在一起。社區插件 dsh-message-branch(維護者 yoinchen23-oss)針對的是純文本用戶消息:在消息旁就地改字,從該消息之前 fork 出新分支併發送,原會話與歷史日誌不改寫。倉庫標註爲預覽版,界面與模擬生命週期測試已通過,真實模型的 fork 與發送端到端尚未完全驗收。

這是什麼

dsh-message-branch 屬於 DSH 社區目錄中的「工作流」類插件。一句話定位:在用戶消息複製按鈕旁增加鉛筆入口,原位編輯 plain-text 提問,並通過宿主 sessions.fork 在精確事件前綴邊界上創建新會話分支,再發送修改後的文字。它不刪除歷史、不直接改會話文件,也不撤銷已發生的文件修改、命令或網絡請求等外部副作用。

核心功能

下面介紹 README 中已寫明、且實現方式在資料裏可對上的能力。

原位編輯與分支

  1. 點擊用戶消息複製按鈕旁的鉛筆。普通消息、運行期間追加的消息、已進入歷史的消息均提供入口。
  2. 在原消息位置修改文字;按 Esc 或點擊「取消」恢復顯示。
  3. 等原會話停止、待處理隊列清空後,點擊「保存並重新生成」,或按 Ctrl/⌘ + Enter。
  4. 插件創建新會話分支併發送修改後的文字,隨後打開該分支。新分支可能產生模型調用費用,發送使用 DSH 當前配置的模型,無需額外 API Key。

消息類型與安全邊界

  • 目前只支持純文本。帶圖片、文件或其他非文本塊的消息會顯示限制,禁止保存,不會悄悄丟棄附件。
  • 運行中、待處理隊列非空、會話未就緒時禁止提交。
  • 缺失前序事件時需先加載歷史;替換事件暫不支持。
  • 分支或發送結果不明確時不自動重試;已創建的分支會保留入口供檢查,防止重複發送。
  • 無遙測、無憑據收集、無第三方請求;複製按鈕僅在用戶點擊時寫入剪貼板。

實現要點(供排查衝突用)

通過正式 conversation.chat.node Slot 覆蓋 user / steering 的外圍渲染,並複用官方 conversation.chat.user.content 內容工廠。沒有 DOM 掃描、MutationObserver 或 CSS 哈希選擇器,不改皮膚或壁紙。尚未進入歷史的 pending 消息仍由宿主管理。Host 入口 lib/index.js 爲空 ESM 插件;瀏覽器入口 lib/client.js 使用 __ModuleLoader__,並聲明 dsh.bundle.patch 與 dsh.client.platform 以支持標準插件安裝。不建議與其他覆蓋用戶消息渲染的插件同時啓用;禁用本插件後恢復宿主原生渲染。

安裝與啓用

倉庫內含可直接加載的客戶端 bundle,無安裝期腳本,也無需編譯。

已驗證界面環境:DSH 0.2.1-rc.5,Windows 桌面版;文檔不聲明對其他版本的兼容保證。Node.js 要求 >=22.19.0,使用宿主 React 18.3.x(package 中 peerDependencies 爲 react ^18.3.1)。當前 package 版本爲 0.1.0,許可證 MIT。

本地從源碼目錄安裝:

dsh plugin add /absolute/path/to/this/repository

若 GitHub Release 提供 .tgz,可下載後安裝:

dsh plugin add /absolute/path/to/package.tgz

安裝前應閱讀倉庫源碼與 LICENSE,確認插件以當前 DSH 進程權限運行;社區目錄 SkillHub 插件頁 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係,並非官方應用商店。

典型用法

按 README 的可復現步驟操作即可:

  1. 在目標用戶消息旁點鉛筆,在原位改好純文本提問。
  2. 確認原會話已停止且隊列爲空,再保存並重新生成。
  3. 等待插件打開新分支;先在不含敏感信息的測試會話中試用,再用於正式內容。

維護者在桌面 GUI 已驗證鉛筆入口、原位編輯、取消、禁用狀態、圖片與氣泡對齊;倉庫內 npm test / npm run check 對應 16 項模擬接口測試(分支邊界、取消/保存、防重複提交、附件保護等)。上述測試不等於真實模型 fork/prompt 端到端驗收。遇到問題請提供 DSH 版本、操作步驟和脫敏截圖,不要提交令牌或私人會話日誌。

適用場景與注意

適合需要在保留原會話的前提下,對歷史某條純文本提問做小幅改寫並 fork 重試的 DSH 用戶。不適合依賴圖片/附件提問、或必須與「覆蓋用戶消息渲染」的其他插件疊用的環境。

務必記住:插件不能撤銷已執行的外部副作用;不提供歷史刪除或恢復;與其他消息渲染插件衝突時只能二選一或禁用本插件。

結尾

dsh-message-branch 把「改舊問、開新枝」收進複製按鈕旁的鉛筆與 fork 流程裏,原會話繼續保留,適合工作流式試錯。詳情與安裝包見 GitHub 倉庫,目錄索引見 SkillHub。

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

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

小夜