dsh-edit-resend:編輯已發送用戶消息並重新生成回覆

前言

在 DSH web 會話裏,一條用戶消息發出並形成已完成回合後,如果輸入內容有筆誤、補充不充分,或希望基於修正後的文本重新得到回覆,通常只能新開一輪對話。dsh-edit-resend 爲已完成回合提供「✎ 編輯本輪消息並重發」入口:它從該消息所在回合 fork 一個新分支,用編輯後的文本重新生成回覆,並把原會話歸檔。它不刪除日誌與數據,也不改寫歷史,只在新分支上重新生成。

這是什麼

dsh-edit-resend 是一個 DeepSeek Harness(DSH)插件,適用於 DSH 版本不低於 0.1.0-rc.6 的環境。它的核心目標是讓已發送的用戶消息可以被編輯並重新發送,同時在會話管理上提供原會話歸檔、新分支切換、歸檔恢復的支持。

GitHub 倉庫:https://github.com/caoTbenren0/dsh-edit-resend

核心功能

  • 在已完成回合尾部注入按鈕,文案爲「✎ 編輯本輪消息並重發」。
  • 從 Host 的全量事件日誌讀取該輪用戶原文。
  • 以目標回合前綴爲 seed,fork 子會話併發送編輯後文本。
  • 重發成功後自動歸檔原會話;歸檔僅視圖隱藏,日誌與數據絕不刪除。
  • 在設置頁「編輯重發」分區列出歸檔會話,並支持一鍵恢復。
  • Host 端通過 EditResendService 暴露以下 Remote 端點:
edit
getText
archive
unarchive
listArchived

已覈實資料還說明:官方 0.1.0-rc.6 沒有 unarchive API/UI,設置頁中的歸檔恢復由本插件實現;歷史不可改寫,只 fork 新分支。

安裝與啓用

該插件要求 DSH 不低於 0.1.0-rc.6。已覈實的安裝示例使用 web profile:

dsh plugin --profile web add dsh-edit-resend

這條命令用於向 web profile 添加插件。安裝或改動 Host 端後,需要重啓 dsh web;如果只是客戶端改動,刷新頁面即可。其他 profile 是否使用完全相同命令,已覈實資料未逐條展示,安裝前應按實際 profile 說明確認。

典型用法

  1. 打開任意有已完成回合的會話,在回合尾部點擊「✎ 編輯本輪消息並重發」。
  2. 編輯器會預填該輪的用戶原文,修改後點擊「保存並重發」。
  3. 界面自動切換到新 fork 分支並開始重新生成;原會話從側邊欄消失,狀態爲已歸檔。
  4. 需要找回原會話時,進入「設置 → 編輯重發 → 找到對應會話 → 恢復」。

歸檔不會刪除數據:恢復後原會話回到側邊欄,日誌仍完整保留。

適用場景與注意

適合的場景是:已經在 DSH web 中有一個已完成回合,想修正該回合的用戶消息並重新生成回覆,同時保留原會話記錄。

使用注意:

  • 該能力是“編輯並重發”,不是改寫歷史;新回覆生成在新的 fork 分支上。
  • 原會話歸檔只是視圖隱藏,不刪除日誌與數據。
  • 插件會在 Host 端暴露服務並參與 DSH 運行,安裝前應檢查源碼與許可證。
  • 許可證爲 MIT,並需同時參考 DeepSeek Harness 的許可條款。
  • 要求 DSH 不低於 0.1.0-rc.6;Host 端改動必須重啓 dsh web,客戶端改動只需刷新頁面。
  • 官方 0.1.0-rc.6 沒有 unarchive API/UI,設置頁恢復功能由本插件提供。

小結

dsh-edit-resend 把“重新發送一條已編輯的用戶消息”變成一條清晰路徑:點擊回合尾部入口,修改文本,進入新分支重新生成,必要時再從設置頁恢復原會話。

GitHub 倉庫:https://github.com/caoTbenren0/dsh-edit-resend

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

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

小夜