用途:管理 Git worktree,实现并行分支开发。worktree 存放在 ~/.worktrees/<repo>/<branch>,分支名中的斜杠会生成嵌套目录(如 feature/foo 变为 ~/.worktrees/<repo>/feature/foo)。
主要能力:从用户消息中提取操作与分支名,第一个参数为操作,第二个为分支名(create、merge、rebase、remove 必填);未指定操作时默认 list。路径均通过 git 推导,而非目录名运算:PRIMARY=$(git worktree list --porcelain | awk '/^worktree / { print $2; exit }'),REPO_NAME=$(basename "$PRIMARY"),WORKTREE_DIR="$HOME/.worktrees/$REPO_NAME/<branch>"。
操作:create 创建新 worktree 与新分支,若存在 .llmtmp/ 则从主克隆复制,在 tmux 中打开名为 wt:<branch> 的新窗口但不切换焦点;list 执行 git worktree list;merge 从功能 worktree 运行,先校验当前分支不是 main,再在主克隆中 fetch、pull、merge 并 push origin main,冲突时协助解决;rebase 需在对应分支的 worktree 内运行,先校验分支匹配,再 git fetch origin 与 git rebase origin/main,冲突时协助解决,若分支此前已推送则需显式许可后才可强制推送;remove 需在主 worktree 运行,校验当前目录为主 worktree 且分支已合并(git branch --merged),否则拒绝,随后 git worktree remove 与 git branch -d,并用 rmdir 循环清理空父目录。
安全规则:仅本地合并,不创建 PR;remove 时若有未暂存或未提交内容需询问用户;不得手动删除 worktree 分支或目录,只能使用 git worktree remove;未经明确许可不得强制推送;路径必须由 git worktree list --porcelain 推导,不得硬编码。
限制:merge 与 rebase 有前置分支校验,remove 要求分支已合并且从主 worktree 执行;git branch -d 报 not fully merged 时须停止并提示先合并,绝不使用 git branch -D。其余细节暂未提供。