بنقرة واحدة
using-git-worktrees
仅在明确需要隔离时使用(并行工作、脏工作区风险,或用户要求)。创建 worktree 前先请求用户批准,并说明为什么需要它。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
仅在明确需要隔离时使用(并行工作、脏工作区风险,或用户要求)。创建 worktree 前先请求用户批准,并说明为什么需要它。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
使用本地 dida CLI 创建滴答清单任务。适用于用户提示词同时提到“滴答清单”和“创建任务”,或明确要求 Codex 基于当前项目和对话上下文创建滴答清单任务。
当用户提及“代码仓初始化”“初始化代码仓”“初始化目录”“初始化项目结构”“初始化项目文档路径”“初始化 Codex 持续开发工作流”“初始化 antarx-harness 文档体系”或明确要求执行 `/init` 命令时触发;若同时提及 simple、lightweight、轻量、极简、轻量 harness、初始化轻量 harness、轻量化 agent 流程等表达,则使用轻量分支。用于在当前项目目录创建缺失的 AGENTS.md、ARCHITECTURE.md 与 docs 工作流骨架,必要时初始化 Git 仓库,并提交本次新增文档;若已有 AGENTS.md 与模板不同,必须由 agent 比对并合成为一份。
用于在完成真实任务后,判断经验、坑、约束或流程应沉淀到 Codex 架构的哪一层。触发场景包括“这次学到的规则该写到哪”、“我刚踩了一个坑想沉淀”、“帮我判断该进 AGENTS.md 还是 skill”、“有个新流程不知道放哪”。
当本轮使用 skill-creator 创建或更新 skill 后使用;询问用户是否将该 skill 纳入 antarx-dev-skills 托管。用户确认前不得导入、同步、删除或修改任何 skill;用户只同意托管但未指定分类时,先判断合适分类并使用该分类继续导入。
当 Codex 需要从任意项目会话中捕获、改进或回填可复用工作流知识到 antarx-dev-skills 仓库时使用。触发场景包括“沉淀技能”“改良技能”“同步回技能仓库”“把这个流程做成 skill”,或更新现有 Codex skill,并更新本地链接安装、打开 GitHub PR。
在创建新技能、修改已有技能或发布前验证技能有效性时使用。
| name | using-git-worktrees |
| description | 仅在明确需要隔离时使用(并行工作、脏工作区风险,或用户要求)。创建 worktree 前先请求用户批准,并说明为什么需要它。 |
Git worktree 会创建共享同一个仓库的隔离工作区,让你可以同时在多个分支上工作,而不需要来回切换。
核心原则: 系统化选择目录 + 安全验证 = 可靠隔离。
开始时说明: “我正在使用 using-git-worktrees 技能来设置一个隔离工作区。”
仅当至少满足以下一个条件时使用此技能:
不要为每个实现计划自动触发。
在任何 git worktree add 之前,先说明必要性并请求确认。
使用这个格式:
我建议为这个任务创建 git worktree,因为<具体原因>。
这会增加设置成本(目录设置、可选依赖安装、可选基线检查)。
现在要创建吗?
如果用户没有明确批准,不要创建 worktree。
按以下优先级执行:
# 按优先级检查
ls -d .worktrees 2>/dev/null # 首选(隐藏目录)
ls -d worktrees 2>/dev/null # 备选
如果找到: 使用该目录。如果两者都存在,优先使用 .worktrees。
grep -i "worktree.*director" CLAUDE.md 2>/dev/null
如果指定了偏好: 直接使用,不需要再询问。
如果不存在目录,并且 CLAUDE.md 中也没有偏好:
没有找到 worktree 目录。应该在哪里创建 worktree?
1. .worktrees/(项目本地,隐藏目录)
2. ~/.config/superpowers/worktrees/<project-name>/(全局位置)
你倾向哪一个?
创建 worktree 前必须确认目录已被忽略:
# 检查目录是否已被忽略(遵循本地、全局和系统 gitignore)
git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null
如果没有被忽略:
遵循 Jesse 的规则“立即修复坏掉的东西”:
为什么重要: 防止意外把 worktree 内容提交到仓库。
不需要 .gitignore 验证,因为它完全位于项目之外。
project=$(basename "$(git rev-parse --show-toplevel)")
# 确定完整路径
case $LOCATION in
.worktrees|worktrees)
path="$LOCATION/$BRANCH_NAME"
;;
~/.config/superpowers/worktrees/*)
path="~/.config/superpowers/worktrees/$project/$BRANCH_NAME"
;;
esac
# 使用新分支创建 worktree
git worktree add "$path" -b "$BRANCH_NAME"
cd "$path"
默认采用最小设置。只有在用户要求时,或者下一个已确认任务马上需要时,才运行依赖安装。
需要时自动检测命令:
# 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
不要自动运行完整基线测试。先提议进行基线验证,并且只在用户确认后运行,除非上层工作流强制要求。
获得批准后,运行适合项目的命令:
# 示例:使用适合项目的命令
npm test
cargo test
pytest
go test ./...
如果测试失败: 报告失败内容,并询问是继续还是排查。
如果测试通过: 报告已准备好。
Worktree 已就绪:<full-path>
测试通过(<N> 个测试,0 个失败)
可以开始实现 <feature-name>
| 情况 | 动作 |
|---|---|
.worktrees/ 存在 | 使用它(验证已忽略) |
worktrees/ 存在 | 使用它(验证已忽略) |
| 两者都存在 | 使用 .worktrees/ |
| 两者都不存在 | 检查 CLAUDE.md → 询问用户 |
| 目录未被忽略 | 添加到 .gitignore + 提交 |
| Worktree 未被明确批准 | 不创建;继续在当前工作区工作 |
| 设置/测试成本看起来很高 | 说明成本并在运行前询问 |
| 基线测试失败 | 报告失败 + 询问 |
| 没有 package.json/Cargo.toml | 跳过依赖安装 |
git check-ignore你:我正在使用 using-git-worktrees 技能来设置隔离工作区。
[检查 .worktrees/ - 存在]
[验证已忽略 - git check-ignore 确认 .worktrees/ 已被忽略]
[创建 worktree:git worktree add .worktrees/auth -b feature/auth]
[运行 npm install]
[运行 npm test - 47 个测试通过]
Worktree 已就绪:/Users/jesse/myproject/.worktrees/auth
测试通过(47 个测试,0 个失败)
可以开始实现 auth 功能
绝不:
始终:
调用方:
配合: