前言¶
在 DeepSeek Harness Web 裏調試提示詞時,發錯一條消息往往意味着整段對話要重來,或者手動複製粘貼、開新會話再補上下文。社區裏也有撤回類插件,但不少實現會在確認階段就改動 context,中途退出還可能留下緩存或會話狀態不一致的問題。
DSH-EasyRewrite(dsh-easyrewrite)面向 DSH Web 客戶端,用官方擴展點實現消息撤回與氣泡原位重編輯。維護者爲 Renzic-Stone,當前版本 2.3.0,MIT 許可證,GitHub 約 51 stars。下面介紹它的定位、能力與安裝用法。
這是什麼¶
DSH-EasyRewrite 是 DSH Web 的客戶端插件,解決兩類問題:
- 撤回(Recall):從某條用戶消息起,截斷該消息及其後的提問。
- 重編輯(Rewrite):單擊自己的消息氣泡,原位修改 Markdown 原文後重發。
插件聲明兼容 DeepSeek Harness Web(rc.6+),通過 keyed 槽覆蓋、官方 fork RPC 等擴展點工作,不修改 DSH 源碼;卸載後不改動官方文件。
核心功能¶
撤回(Recall)¶
每條用戶消息的官方複製鍵旁會出現撤回鍵。點擊後彈出 DSH 風格確認膠囊(例如「撤回這條消息及其後 x 條提問?」),確認後文本回填到輸入框,真正截斷髮生在按「發送」時——在此之前關閉 DSH,對話與模型 context 不變。
發送後執行「無痕替換」:原會話歸檔,同名新會話頂替到目標消息之前,修改後的文本自動發出。輸入框內會顯示「正在修改」條,可用 × 取消並恢復原草稿。覆蓋 / 合併兩種回填模式可選;單會話同時只允許一個待定撤回,草稿按會話持久化。
內聯編輯(Rewrite)¶
單擊自己的消息氣泡進入原位編輯,保留原始 Markdown;Esc 取消,Ctrl+Enter 確定。編輯寬度有三檔(緊湊 / 標準 / 擴展),也可自定義。確定後走與撤回相同的截斷 → 歸檔 → 同名新會話 → 自動發送流程。
帶圖片的消息支持撤回鍵與氣泡框編輯兩條路徑:確認後圖片隨修改文本一併發出;編輯中可刪除、粘貼或拖入新圖,也可切換模型與推理等級,刷新後編輯進度可恢復。
設置¶
在 設置 → 插件 → 插件配置 中,以官方同款可摺疊卡片呈現,界面語言隨 DSH 切換(中文 / English / 日本語)。選項即時生效,包括:氣泡框編輯開關、關閉編輯時顯示撤回鍵、撤回確認膠囊、撤回視覺模式、統計口徑、回填衝突模式、編輯寬度等。
草稿自動備份¶
待定草稿超過 10 秒未處理時,自動備份到本地文件(之後每 5 秒刷新);確定或發送完成後刪除備份。備份路徑:
$DSH_HOME/dsh-easyrewrite/backups/<會話ID>.json
僅當本地沒有待定狀態時才從備份恢復,不會覆蓋正在編輯的草稿。
版本翻頁器¶
每次撤回或編輯重發後,該次問詢最後回答的操作區會出現 ‹ X/N › 控件。點擊或按鍵盤 ←/→ 可切換版本,後續上下文隨版本變動;切換時視口錨定不跳位。全部歸檔後,仍可在設置 → 插件配置 → 「版本」組逐版本「恢復並打開」。
撤回快捷鍵(Beta)¶
設置內總開關默認關閉。開啓後可錄製組合鍵(至少一個修飾鍵)。觸發條件:輸入框未聚焦,且當前會話最近一條爲用戶消息——等效點擊該消息的撤回鍵。
安裝與啓用¶
通過 npm 發佈包安裝(推薦):
dsh plugin --profile web add dsh-easyrewrite
也可從 GitHub 安裝:
dsh plugin --profile web add github:Renzic-Stone/DSH-EasyRewrite
安裝後重啓 dsh web,在頁面按 Ctrl+Shift+R 硬刷新。
撤回時機說明:DSH 的 fork 只能在閉合回合邊界截斷。若消息所在回合尚未結束,界面會提示「該消息所在回合尚未結束…」,需等回覆完成後再撤回。
典型用法¶
撤回一條消息及其後的提問¶
- 找到要撤回的用戶消息,點擊複製鍵旁的撤回鍵。
- 在確認膠囊中點「確定」,檢查輸入框中的回填內容。
- 按「發送」完成截斷;若改變主意,點輸入框內「正在修改」條的 × 取消。
原位重編輯¶
- 單擊自己的消息氣泡,在氣泡內直接改 Markdown。
- Ctrl+Enter 確定,或 Esc 取消。
- 確定後會自動截斷並重發編輯後的文本。
查看調試日誌¶
client 關鍵步驟會寫入統一日誌,便於排查問題:
$DSH_HOME/dsh-easyrewrite.log
格式爲 JSON 行:{ t, level, tag, message, data }。日誌僅記錄本地行爲,不上傳數據。
適用場景與注意¶
適合誰
- 經常在 DSH Web 裏迭代提示詞、需要撤回或改發某條消息的開發者。
- 希望編輯帶圖片的用戶消息,且需要版本切換回看不同改法的場景。
- 偏好「確認後再改 context」、不想中途誤操作污染會話的用戶。
使用前注意
- 插件以當前 DSH 進程權限運行;安裝前建議查看 GitHub 倉庫 源碼與 MIT 許可證。
- 僅支持 DSH Web 客戶端(
--profile web),不適用於其他 profile。 - 撤回快捷鍵默認關閉,避免與其他插件快捷鍵衝突;需要時在插件配置中開啓並錄製。
- SkillHub 目錄頁(DSH-EasyRewrite)是社區獨立站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
DSH-EasyRewrite 把撤回與氣泡重編輯嵌進 DSH Web 原有交互:複製鍵旁撤回、單擊氣泡編輯、惰性提交與無痕替換,儘量貼近「原生就該有」的體驗。功能可按需開關,三語界面,純擴展點實現,DSH 升級時維護者聲明會主動適配。