用途:在规划或编码前为任务创建隔离的 git worktree,分支自最新的 origin/main,避免在过时代码基础上开工。
主要能力:从 reflog 检测父分支(默认 main);若当前已在链接的 worktree 中,则改为拉取并合并 origin/父分支来刷新,冲突时停止并交由用户处理,不自动解决;选择 .worktrees/ 或 worktrees/ 目录(前者优先,其次遵循 CLAUDE.md,均无则询问用户);校验目录已被 gitignore;先 fetch 再基于 origin/父分支创建 worktree;立即 lock 防止 prune 清理;按清单文件自动安装依赖;运行项目测试套件作为基线,失败则报告并询问是否继续。
使用方式:先执行 git fetch origin "$PARENT_BRANCH",再 git worktree add "$WORKTREE_DIR" -b <prefix>/<name> "origin/$PARENT_BRANCH",随后在主仓库执行 git -C "$REPO_ROOT" worktree lock --reason "Agent session in progress" "$WORKTREE_DIR"。依赖安装按 pnpm-lock.yaml、yarn.lock、package-lock.json、Cargo.toml、requirements.txt、pyproject.toml、go.mod 等文件自动识别对应命令。Claude Code 可选调用 EnterWorktree({path}) 切换会话目录。
适用场景:任务(/task 第 2 步)、头脑风暴、构建流程中需要隔离分支的工作;与 /ship 配合,任务结束由 /ship 解锁并移除 worktree。
限制:reflog 为空(分离 HEAD 或网页会话)时回退 main;目录未被忽略时需先修正;路径在不同 Bash 调用间不持久,须用绝对路径和 git -C;未提供锁定原因以外的平台或收费信息。