بنقرة واحدة
using-git-worktrees
当你开始需要与当前工作区隔离的功能开发,或在执行实施计划前使用;它会创建隔离的 git worktree,并进行目录选择与安全校验
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
当你开始需要与当前工作区隔离的功能开发,或在执行实施计划前使用;它会创建隔离的 git worktree,并进行目录选择与安全校验
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
当用户需要制作或编辑固定分页 HTML、InDesign 演示文稿、建筑汇报或排版文档,转换 HTML 与 InDesign,修改现有 INDD,或填充既有 InDesign 模板时使用。
在任何创造性工作前使用:创建功能、构建组件、增加能力或修改行为。用于在实现前澄清用户意图、需求和设计。
当用户要求在 SA-AIAPP 项目中询问 ChatGPT/GPT Pro、让外部模型审核当前 GitHub 分支、做画布/前端/后端/架构二次审查时使用。
遇到 2 个及以上彼此独立、无需共享状态或串行依赖的任务时使用
当你已有书面实施计划,并准备在单独会话中按评审检查点执行时使用
当实现完成、测试全部通过且需要决定如何集成成果时使用;它会引导你在合并、提 PR 或清理分支之间做结构化选择
| name | using-git-worktrees |
| description | 当你开始需要与当前工作区隔离的功能开发,或在执行实施计划前使用;它会创建隔离的 git worktree,并进行目录选择与安全校验 |
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 using-git-worktrees skill to set up an isolated workspace."
Follow 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" AGENTS.md 2>/dev/null
If preference specified: Use it without asking.
grep -i "worktree" CLAUDE.md 2>/dev/null
Use only if AGENTS.md is absent or has no worktree convention.
If no directory exists and no AGENTS.md / 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?
If AGENTS.md defines a worktree convention, follow it exactly.
Examples:
SA-AIAPP-<task-slug>codex/<task-slug>Do not override a repository-local convention with this skill's generic .worktrees/ preference.
MUST verify directory is ignored before creating worktree:
# Check if directory is ignored (respects local, global, and system gitignore)
git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null
If NOT ignored:
Per Jesse's rule "Fix broken things immediately":
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"
If AGENTS.md specifies a sibling-directory convention, build the path from the repo parent instead. Example:
repo_root="$(git rev-parse --show-toplevel)"
repo_parent="$(dirname "$repo_root")"
repo_name="$(basename "$repo_root")"
task_slug="local-asset-gateway"
branch_name="codex/$task_slug"
path="$repo_parent/${repo_name}-${task_slug}"
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>
| Situation | Action |
|---|---|
.worktrees/ exists | Use it (verify ignored) |
worktrees/ exists | Use it (verify ignored) |
| Both exist | Use .worktrees/ |
| Neither exists | Check AGENTS.md → check CLAUDE.md (compat only) → ask user |
| Directory not ignored | Add to .gitignore + commit |
| Tests fail during baseline | Report failures + ask |
| No package.json/Cargo.toml | Skip dependency install |
git check-ignore before creating project-local worktreeAGENTS.md > CLAUDE.md (compat only) > askYou: I'm using the using-git-worktrees skill to set up an isolated workspace.
[Check existing worktree directories - none]
[Read AGENTS.md - specifies sibling directory pattern SA-AIAPP-<task-slug>]
[Create worktree: git worktree add ../SA-AIAPP-local-asset-gateway -b codex/local-asset-gateway]
[Run project setup and baseline verification]
Worktree ready at /parent/SA-AIAPP-local-asset-gateway
Tests passing (47 tests, 0 failures)
Ready to implement local asset gateway
Never:
AGENTS.md check when repository conventions may existAlways:
AGENTS.md > CLAUDE.md (compat only) > askCalled by:
Pairs with: