Codex 風格 Worktree 插件

前言

在 DSH 中新建會話時,如果需要在本地工作區與獨立 git worktree 之間切換,以往需要手動操作 git,容易遺漏或誤刪。這個插件通過在新建會話的 hero 行提供直觀選擇,在發送首條消息後自動創建或切換到獨立的 detached HEAD 檢出,同時提供清理保護與快照恢復能力。

這是什麼

這是一個爲 DSH 會話提供「Codex 風格」工作樹選擇的工作流插件。由維護者 wplct 維護,開源 MIT 許可證。它不會創建 Workspace,只在會話的 cwd 層面切換,分支命名由 Git 自己決定。

核心功能

  • 新建會話時在工作區旁選擇「本地」或「新建本地工作樹」(默認爲新建本地工作樹)。
  • 選擇後,發送首條消息時在會話第一次 turn 的 agent/pre-step 階段創建獨立的 detached HEAD 檢出。
  • 檢出路徑爲 <repo>/.agents/worktrees/wt-<timestamp>,會話的 cwd 切換到該檢出,而原 Workspace 不變。
  • 在輸入框上方顯示三步進度卡片(Prepare workspace → Check out files → Set up environment),完成後側邊欄出現只讀工作樹圖標(提示爲 checkout 路徑)。
  • 每個工作區路徑的記憶持久化在 sidecar 中,重啓後仍然有效。
  • 清理時,若檢出被其他會話使用,則拒絕刪除(worktree-in-use),需先切換回 Workspace 再清理;可選 force 強制刪除。
  • 刪除前會爲 detached 且 HEAD ≠ baseCommit 的檢出寫入快照到 refs/dsh-codex-style-worktree/<timestamp+session suffix>,並在設置頁顯示「可恢復快照」列表。
  • 提供 /wt-snapshots 列出快照、/wt-restore <ref> 恢復快照。
  • 可選 cleanupOnArchive,在歸檔後清理乾淨且未使用的檢出。
  • 設置頁提供可編輯表單,保存後立即生效(無需重啓)。

安裝與啓用

確保 DSH 版本爲 0.2.0-rc.2 或 0.2.1-rc.2,Node.js >=22.19.0,且 PATH 中有 git。執行以下命令安裝插件:

dsh plugin --profile desktop add github:wplct/dsh-codex-style-worktree

安裝後重新打開 DSH,在新建會話的 hero 行即可看到「本地」與「新建本地工作樹」選項。

典型用法

  1. 打開 DSH,新建一個會話,在 hero 行的工作區旁選擇「新建本地工作樹」。
  2. 輸入第一條消息,插件會在該工作區路徑下創建 detached HEAD 檢出並切換會話 cwd 到該檢出。
  3. 會話運行過程中,可在輸入框上方看到進度卡片,完成後側邊欄出現只讀工作樹圖標。
  4. 歸檔會話後,若不想保留檢出,可在設置頁開啓 cleanupOnArchive 並手動清理,或使用 /wt-snapshots 查看並恢復快照。

適用場景與注意

適合需要在多個會話之間隔離代碼上下文,又不想創建多個 Workspace 的開發者。使用前請檢查源碼與許可證,插件以當前 DSH 進程權限運行。

短結尾

該插件通過在新建會話時提供直觀選擇,在會話運行時自動創建與管理獨立檢出,並提供清理保護與快照恢復,適合需要隔離工作上下文的開發者。更多細節可查看插件目錄頁與 GitHub 倉庫。


  • 目錄頁:https://www.skillhub.cn/plugins/wplct/dsh-codex-style-worktree
  • GitHub:https://github.com/wplct/dsh-codex-style-worktree
  • 版本:0.5.1(2026-10-20)
  • 許可證:MIT
  • 維護者:wplct
  • 分類:工作流
  • API 命名空間:/api/dsh-codex-style-worktree
  • RPC 前綴:dsh-codex-style-worktree/
  • Sidecar:$DSH_HOME/dsh-codex-style-worktree/state.json
  • 禁用標記:.dsh-codex-style-worktree-off
  • 依賴:DSH 0.2.0-rc.2 / 0.2.1-rc.2,Node.js >=22.19.0,git
羽毛球分组比赛记分
小程序二维码

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

小夜