xiaohongshu
xiaohongshu
dev_manage_git-worktrees
Use when starting feature work that needs isolation from current workspace or before executing implementation plans - creates isolated git worktrees with smart directory selection and safety verification. Triggers: "worktree", "isolated workspace", "feature branch isolation", "multiple branches"...
Full skill instructions
Git worktrees create isolated workspaces sharing the same repository, allowing work on multiple branches simultaneously without switching.
Core principle: Systematic directory selection + safety verification = reliable isolation.
Announce at start: "I'm using the dev_manage_git-worktrees skill to set up an isolated workspace."
Git Documentation:
git worktree --help - Complete git worktree referencegit worktree list - Show all worktreesgit worktree remove - Cleanup worktreesIntegration:
.claude/agents/git-operations/ - Delegates worktree setup to this skillfinishing-a-development-branch skill - REQUIRED for cleanup after work completeFollow this priority order:
# Check in priority order
ls -d .worktrees 2>/dev/null # Preferred (hidden)
ls -d worktrees 2>/dev/null # Alternative
If found: Use that directory. If both exist, .worktrees wins.
grep -i "worktree.*director" CLAUDE.md 2>/dev/null
If preference specified: Use it without asking.
If no directory exists and no CLAUDE.md preference:
No worktree directory found. Where should I create worktrees?
1. .worktrees/ (project-local, hidden)
2. ~/.config/superpowers/worktrees/<project-name>/ (global location)
Which would you prefer?
MUST verify .gitignore before creating worktree:
# Check if directory pattern in .gitignore
grep -q "^\.worktrees/$" .gitignore || grep -q "^worktrees/$" .gitignore
If NOT in .gitignore:
Per "Fix broken things immediately" principle:
Why critical: Prevents accidentally committing worktree contents to repository.
No .gitignore verification needed - outside project entirely.
project=$(basename "$(git rev-parse --show-toplevel)")
# Determine full path
case $LOCATION in
.worktrees|worktrees)
path="$LOCATION/$BRANCH_NAME"
;;
~/.config/superpowers/worktrees/*)
path="~/.config/superpowers/worktrees/$project/$BRANCH_NAME"
;;
esac
# Create worktree with new branch
git worktree add "$path" -b "$BRANCH_NAME"
cd "$path"
Auto-detect and run appropriate setup:
# Node.js
if [ -f package.json ]; then npm install; fi
# Rust
if [ -f Cargo.toml ]; then cargo build; fi
# Python
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
if [ -f pyproject.toml ]; then poetry install; fi
# Go
if [ -f go.mod ]; then go mod download; fi
Run tests to ensure worktree starts clean:
# Examples - use project-appropriate command
npm test
cargo test
pytest
go test ./...
If tests fail: Report failures, ask whether to proceed or investigate.
If tests pass: Report ready.
Worktree ready at <full-path>
Tests passing (<N> tests, 0 failures)
Ready to implement <feature-name>
# 1. Announce
echo "I'm using the dev_manage_git-worktrees skill to set up an isolated workspace."
# 2. Check existing directories
if [ -d .worktrees ]; then
DIR=".worktrees"
elif [ -d worktrees ]; then
DIR="worktrees"
else
# Check CLAUDE.md for preference
PREF=$(grep -i "worktree.*directory" CLAUDE.md 2>/dev/null)
# If no preference, ask user
# ... (use AskUserQuestion tool)
fi
# 3. Verify .gitignore (project-local only)
if [[ $DIR == ".worktrees" ]] || [[ $DIR == "worktrees" ]]; then
if ! grep -q "^$DIR/$" .gitignore; then
echo "$DIR/" >> .gitignore
git add .gitignore
git commit -m "Add $DIR/ to .gitignore"
fi
fi
# 4. Create worktree
git worktree add "$DIR/feature-auth" -b "feature/auth"
cd "$DIR/feature-auth"
# 5. Run setup
if [ -f package.json ]; then
npm install
fi
# 6. Verify baseline
npm test
# 7. Report
echo "Worktree ready at $(pwd)"
echo "Tests passing (47 tests, 0 failures)"
echo "Ready to implement auth feature"
| Situation | Action |
|---|---|
.worktrees/ exists | Use it (verify .gitignore) |
worktrees/ exists | Use it (verify .gitignore) |
| Both exist | Use .worktrees/ |
| Neither exists | Check CLAUDE.md → Ask user |
| Directory not in .gitignore | Add it immediately + commit |
| Tests fail during baseline | Report failures + ask |
| No package.json/Cargo.toml | Skip dependency install |
Problem: Worktree contents get tracked, pollute git status
Fix: Always grep .gitignore before creating project-local worktree
Problem: Creates inconsistency, violates project conventions
Fix: Follow priority: existing > CLAUDE.md > ask
Problem: Can't distinguish new bugs from pre-existing issues
Fix: Report failures, get explicit permission to proceed
Problem: Breaks on projects using different tools
Fix: Auto-detect from project files (package.json, Cargo.toml, etc.)
After work complete, use finishing-a-development-branch skill or manual cleanup:
# 1. Return to main worktree
cd /path/to/main/worktree
# 2. Remove branch worktree
git worktree remove .worktrees/feature-auth
# 3. Delete branch if merged
git branch -d feature/auth
# 4. Verify cleanup
git worktree list
Never:
Always:
For git operations:
.claude/agents/git-operations/.claude/agents/git-operations/git --helpFor worktree management:
git worktree remove or finishing-a-development-branch skillgit worktree listFor project setup:
pip install -r requirements.txt or poetry installnpm install or yarn installcargo buildgo mod downloadxiaohongshu
technical spec
product ux expert
database patterns
Conduct multi-agent task orchestration and workflow coordination.
Initialize project with Conductor artifacts (product definition,
Expert in web animations, transitions, and motion design using Framer Motion and CSS
Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...
PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.
Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...
Display project status, active tracks, and next actions
Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.
Generate, edit, and beat-sync AI video with leading models in one workspace.
The world's fastest calendar for remote work
Transform Your Design with AI Designer by ImgCreator.ai
Revolutionizing Video Production with AI-Powered Creativity
Extend an image past the frame and let AI fill the new aspect ratio.
Discover your celebrity doppelgänger with StarByFace!
ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.
Opus.ai: Revolutionize Your Web Experience