kdcokenny/opencode-worktree
Zero-friction git worktrees for OpenCode. Auto-spawns terminals, syncs files, cleans up on exit.
解決的問題
本專案提供一種讓 AI 代理使用 git worktree 建立並管理隔離開發環境的方法。它消除了手動建立工作樹、開啟終端機,以及在特定目錄中啟動 AI 編碼工具(OpenCode)的繁瑣步驟,讓代理能在不干擾主程式碼庫的情況下,於隔離環境中進行實驗。
工作原理
此外掛與 OpenCode 整合,提供兩個主要工具:worktree_create 與 worktree_delete。
- 建立:當 AI 呼叫
worktree_create時,外掛會在專用的本地目錄中建立 git worktree,同步必要檔案(例如.env檔案),並根據設定檔對目錄(例如node_modules)建立符號連結,執行建立後的鉤子(例如pnpm install),然後自動啟動一個內建 OpenCode 的新終端機視窗。 - 刪除:當 AI 呼叫
worktree_delete時,外掛會執行刪除前的鉤子,自動將 worktree 中的變更提交至分支,然後從系統中移除 worktree。
支援 macOS、Linux 與 Windows 上的多種終端機模擬器,以及 tmux 與 cmux 等多路複用器,以實現更程式化的控制。
適用對象
使用 OpenCode 並希望 AI 代理能自主管理隔離開發會話的開發者,特別是偏好 CLI 優先工作流程,而非 GUI 工具的使用者。
主要特色
- 自動終端啟動:為每個新 worktree 自動開啟新的終端機視窗或 tmux/cmux 工作區。
- 生命週期鉤子:支援
postCreate與postDelete鉤子,用於自動化設定與清理(例如啟動/停止 Docker 容器)。 - 檔案同步:可設定的檔案與目錄同步,確保隔離環境隨時可用。
- 廣泛的終端支援:原生支援所有主要作業系統上的多種現代終端機模擬器。
相關
- 專案
- 專案
- 專案
- 專案
- 專案