dsh-plugin-session-rollback:會話與工作區代碼同步回退

在使用 DeepSeek Harness(DSH)開發或調試智能體時,經常遇到需要撤銷上一步操作的場景:例如代碼改錯了,或者對話邏輯走偏了。手動刪減消息並還原代碼不僅繁瑣,還容易遺漏。下面介紹一款能夠解決這一痛點的插件。

這是什麼

dsh-plugin-session-rollback 是由 antlordGit 維護的插件,爲 DSH 提供會話與工作區代碼同步回退能力。它的核心價值在於將對話記錄的刪除與代碼狀態的還原綁定在一起,確保兩者保持一致。

核心功能

  • 自動爲每條真人提問創建工作區代碼檢查點。
  • 在用戶消息的複製按鈕旁提供「撤銷」操作。
  • 同步回退當前頁面的聊天記錄和工作區代碼。
  • 移除目標問題及之後的全部問題和回答。
  • 回退前自動備份當前工作區。
  • 支持使用 /rollback-undo 撤銷最近一次代碼回退。
  • 快照採用 SHA-256 內容尋址存儲。
  • 自動適配 DSH 的明暗主題。

安裝與啓用

安裝方式如下:

dsh plugin --profile web add github:antlordGit/dsh-plugin-session-rollback

安裝完成後需要重啓 DSH Web:

dsh web

典型用法

插件安裝並重啓後,正常與助手對話。在聊天界面中,點擊某條用戶消息下方、複製按鈕旁邊的「撤銷」按鈕,確認回退範圍。頁面會移除該問題及之後的所有問題和回答,同時將工作區代碼恢復到該問題提交前的狀態。

回退前的代碼會自動備份。如果需要撤銷最近一次代碼回退,在輸入框執行以下命令:

/rollback-undo

適用場景與注意

  • 適用場景:適合需要在對話中反覆調試代碼、驗證邏輯,且需要隨時回退到特定提問節點的開發者。
  • 注意事項:
    • 插件安裝或啓用之前產生的消息通常沒有代碼檢查點,無法安全回退代碼。
    • 僅 source.kind === 'user' 的真人消息會創建檢查點;插件、模型或工具生成的消息不會創建。
    • 正在運行的會話不能回退,請先停止或等待當前回答結束。
    • 被排除的目錄、超限文件(16MB)、符號鏈接和特殊文件不會隨代碼一起回退。
    • /rollback-undo 恢復的是最近一次自動備份,作用於代碼,不會重新顯示已從當前 Surface 隱藏的聊天記錄。

短結尾

該插件通過自動快照和內容尋址存儲,實現了對話與代碼的原子級回退。詳細文檔與源碼可查看 GitHub。

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

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

小夜