بنقرة واحدة
using-git-worktrees
当需要开始与当前工作区隔离的功能开发或执行实现计划之前使用——创建具有智能目录选择和安全验证的隔离 git 工作树
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
当需要开始与当前工作区隔离的功能开发或执行实现计划之前使用——创建具有智能目录选择和安全验证的隔离 git 工作树
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | using-git-worktrees |
| description | 当需要开始与当前工作区隔离的功能开发或执行实现计划之前使用——创建具有智能目录选择和安全验证的隔离 git 工作树 |
Git 工作树创建共享同一仓库的隔离工作区,允许同时在多个分支上工作而无需切换。
核心原则: 系统化的目录选择 + 安全验证 = 可靠的隔离。
开始时宣布: "我正在使用 using-git-worktrees 技能来建立一个隔离的工作区。"
按以下优先顺序执行:
run_command(command="ls -d .worktrees 2>/dev/null") # 首选(隐藏目录)
run_command(command="ls -d worktrees 2>/dev/null") # 备选
如果找到: 使用该目录。如果两者都存在,.worktrees 优先。
run_command(command="grep -i \"worktree.*director\" AGENTS.md 2>/dev/null")
如果指定了偏好: 直接使用,无需询问。
如果无现有目录且 AGENTS.md 中无偏好:
未找到工作树目录。我应该在哪里创建工作树?
1. .worktrees/(项目本地,隐藏目录)
2. ~/.config/reasonix/worktrees/<project-name>/(全局位置)
你倾向哪个?
创建工作树前必须验证目录已被忽略:
run_command(command="git check-ignore -q .worktrees 2>/dev/null || git check-ignore -q worktrees 2>/dev/null")
如果未被忽略: 根据"立即修复坏掉的东西"原则,在 .gitignore 中添加相应条目并提交,然后继续。
无需 .gitignore 验证——完全在项目之外。
run_command(command="git rev-parse --show-toplevel") # 获取仓库根目录,提取项目名
# 根据目录类型构造路径,然后创建工作树
run_command(command="git worktree add <path> -b <branch-name>")
# 注意:cd 在 run_command 中不持久,后续命令使用完整路径或 cwd 参数
自动检测并运行相应的设置命令(耗时较长,使用后台运行):
# 检测项目类型并后台运行对应设置命令
run_command(command="ls package.json Cargo.toml requirements.txt pyproject.toml go.mod 2>/dev/null")
# 根据存在的文件选择对应的设置命令:
# run_background(command="npm install") # Node.js
# run_background(command="cargo build") # Rust
# run_background(command="pip install -r requirements.txt") # Python
# run_background(command="poetry install") # Python (poetry)
# run_background(command="go mod download") # Go
运行测试确保工作树初始状态干净(耗时较长,使用后台运行):
run_background(command="npm test") # 或 cargo test / pytest / go test ./...
如果测试失败: 报告失败情况,询问是否继续或排查。 如果测试通过: 报告就绪。
工作树已就绪:<full-path>
测试通过(<N> 个测试,0 个失败)
准备实现 <feature-name>
| 情况 | 操作 |
|---|---|
.worktrees/ 存在 | 使用它(验证已忽略) |
worktrees/ 存在 | 使用它(验证已忽略) |
| 两者都存在 | 使用 .worktrees/ |
| 都不存在 | 检查 AGENTS.md → 询问用户 |
| 目录未被忽略 | 添加到 .gitignore + 提交 |
| 基线测试失败 | 报告失败 + 询问 |
| 无 package.json/Cargo.toml | 跳过依赖安装 |
run_command(command="git check-ignore -q <dir>")。你:我正在使用 using-git-worktrees 技能来建立一个隔离的工作区。
[检查 .worktrees/ - run_command(command="ls -d .worktrees 2>/dev/null") 存在]
[验证已忽略 - run_command(command="git check-ignore -q .worktrees 2>/dev/null") 确认 .worktrees/ 已被忽略]
[创建工作树:run_command(command="git worktree add .worktrees/auth -b feature/auth")]
[运行项目设置:run_background(command="npm install")]
[运行测试:run_background(command="npm test") - 47 个通过]
工作树已就绪:/Users/jesse/myproject/.worktrees/auth
测试通过(47 个测试,0 个失败)
准备实现 auth 功能
绝不:
始终:
被以下技能调用: brainstorming(阶段 4)、subagent-driven-development、executing-plans,以及任何需要隔离工作区的技能。
配合使用: finishing-a-development-branch - 工作完成后清理时必需。
在开始任何对话时使用——确立如何查找和使用技能,要求在任何响应(包括澄清性问题)之前调用 Skill 工具
在任何创造性工作之前必须使用此技能——创建功能、构建组件、添加功能或修改行为。在实现之前先探索用户意图、需求和设计。
中文 review 沟通参考——话术模板、分级标注(必须修复/建议修改/仅供参考)、国内团队常见反模式应对。
中文 commit 与 changelog 配置参考——Conventional Commits 中文适配、commitlint/husky/commitizen 中文模板、conventional-changelog 中文配置。仅在用户显式 /chinese-commit-conventions 时调用,不要根据上下文自动触发。
中文文档排版参考——中英文空格、全半角标点、术语保留、链接格式、中文文案排版指北约定。仅在用户显式 /chinese-documentation 时调用,不要根据上下文自动触发。
国内 Git 平台配置参考——Gitee、Coding.net、极狐 GitLab、CNB 的 SSH/HTTPS/凭据/CI 接入差异与镜像同步配置。仅在用户显式 /chinese-git-workflow 时调用,不要根据上下文自动触发。