Create isolated git worktree for parallel development in monorepos.
Create an isolated git worktree for parallel feature development.
node .claude/skills/worktree/scripts/worktree.cjs info --json
Parse JSON response for: repoType, baseBranch, projects, worktreeRoot, worktreeRootSource.
Check for exact branch name first:
If caller provides a pre-formed branch name (contains uppercase letters, issue tracker keys like ABC-1234, or explicitly says "use this exact branch name"):
→ Use --no-prefix flag — skip Step 3, pass name directly as slug.
Example: "ND-1377-cleanup-docs" → --no-prefix → branch
ND-1377-cleanup-docsOtherwise, detect prefix from description:
fixrefactordocstestchoreperffeatSkip if --no-prefix was chosen in Step 2.
"add authentication system" → add-auth
"fix login bug" → login-bug
Max 50 chars, kebab-case.
If repoType === "monorepo" and project not specified, use AskUserQuestion:
AskUserQuestion({
questions: [{
header: "Project",
question: "Which project for the worktree?",
options: projects.map(p => ({ label: p.name, description: p.path })),
multiSelect: false
}]
})
Monorepo:
node .claude/skills/worktree/scripts/worktree.cjs create "<PROJECT>" "<SLUG>" --prefix <TYPE>
Standalone:
node .claude/skills/worktree/scripts/worktree.cjs create "<SLUG>" --prefix <TYPE>
Options:
--prefix - Branch type: feat|fix|refactor|docs|test|chore|perf--no-prefix - Skip branch prefix and preserve original case (for Jira keys, etc.)--worktree-root <path> - Override default location (only if needed)--json - JSON output--dry-run - PreviewBased on project context, run in background:
bun.lock → bun installpnpm-lock.yaml → pnpm installyarn.lock → yarn installpackage-lock.json → npm installpoetry.lock → poetry installrequirements.txt → pip install -r requirements.txtCargo.toml → cargo buildgo.mod → go mod download| Command | Usage | Description |
|---|---|---|
create | create [project] <feature> | Create worktree |
remove | remove <name-or-path> | Remove worktree |
info | info | Repo info with worktree location |
list | list | List worktrees |
--worktree-root only to override defaults.env*.example) auto-copied with .example suffix removed