← ClaudeAtlas

move-to-worktreelisted

After /start-task: park the current clean, pushed feature branch in its own issue-numbered nested worktree (.worktrees/<issue#>) and return the primary checkout to current main, so the next parallel lane can start. Use when the user says to move the branch or task to a worktree or open a parallel lane.
foyzulkarim/skills · ★ 42 · Data & Documents · score 73
Install: claude install-skill foyzulkarim/skills
# Move-to-Worktree Companion to `/start-task` for parallel Phase 4 lanes. `/start-task` leaves the primary checkout *on* the new feature branch; this skill moves that branch into its own worktree and puts the primary back on the default branch — one worktree + one branch + one agent session per in-flight issue. ## Run (1 bash call) ```bash bash {base_directory}/move-to-worktree.sh ``` No arguments — it operates on the branch currently checked out. The script: 1. Hard-stops unless run in the **primary checkout**, on a **task branch** (`{type}/{issue#}/{slug}`), with a **clean tree** and its upstream set to **`origin/<branch>`** literally (not a fork-style `upstream` remote) — i.e. exactly the state `/start-task` leaves behind. Also hard-stops unless `.worktrees/` is **gitignored**: the worktree is nested inside the repo, so an unignored one gets staged by any `git add -A` as an embedded gitlink, committing this lane's HEAD onto another branch. Remedy is one line in `.gitignore`; the script never edits it for you. 2. Fetches `origin/<branch>` so the behind-check reflects reality, then pushes any local-only commits and checks out the default branch (this must happen *before* the worktree is created — git refuses to check out a branch in two places). 3. `git worktree add .worktrees/<issue#> <branch>` — nested inside the repo root, never a `../` sibling. The context file `specs/context/<issue#>.md` travels with the branch (it's committed). If