Parallel AI coding sessions on the same git repo, via worktrees
SaferSkills independently audited parallel-worktree-dev (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
把同一个 repo 的多个 feature 拆到独立 git worktree 里同时开发。这个 skill 解决两层冲突:
.env、容器名、node_modules 冲突。通过自动分配端口 + 明确的 setup 步骤避免。不解决:语义层(一个 AI 改了接口另一个 AI 还在调旧的)。这个只能靠人或共享 plan 文档。
直接用(并行场景):
主动建议(单 feature 但有隔离价值)—— AI 看到这些信号时主动提议起 worktree:
建议方式:一句话即可,"要不要我用 worktree 起一个隔离工作区?跑 /feat <name> 就行。" 然后照用户回答执行。不要默认强制,单个简单 bugfix / 改个常量 / 单文件小修无需 worktree。
不用:已经在 worktree 里 / 单文件 trivial 改动 / 用户明确说要直接改当前分支。
~/.claude/skills/parallel-worktree-dev/worktree-helper.sh start <feature-name> [base-branch]效果:
<repo>-wt-<feature-name> 建 worktreefeat/<feature-name>(base 默认是当前分支,可显式指定 main/prod/pre 等)export PORT=<n> 提示~/.claude/worktree-registry/<repo-hash>.jsoncd <repo>-wt-<feature-name>
# 装依赖(脚本会提示具体命令)
claude # 起独立 AI 会话每个 worktree 的 node_modules / .venv / .env.local 都是独立的,互不影响。
worktree-helper.sh list # 各 worktree 改了多少文件
worktree-helper.sh check # 跨 worktree 文件重叠扫描check 会列出每两个 worktree 之间共同碰过的文件,含已 commit 和未 commit 改动。出现 OVERLAP 警告时:
go.mod, package.json)→ 串行合并,后者 rebaseworktree-helper.sh finish <feature-name>跑 git merge-tree 探测 rebase 是否会冲突。不会自动合,只告诉你能不能干净合 + 给出实际命令。
worktree-helper.sh remove <feature-name> # 已合好的
worktree-helper.sh prune # 清理外部已删的条目| 命令 | 干啥 |
|---|---|
start <name> [base] | 建 worktree + 分支 + 端口 + 注册 |
list | 看所有 active + 改动文件数 |
check | 跨 worktree 文件重叠扫描 |
finish <name> | dry-run rebase 看冲突 |
remove <name> | 删 worktree 出 registry |
prune | 清孤立 registry 条目 |
Registry 文件:~/.claude/worktree-registry/<repo-hash>.json,每个 repo 一份,所有 worktree 共享。
PORT env,否则各自起 3000 还是会撞。cp ../<main>/.env.local .,或在脚本里加 hook。worktree-helper.sh list 看看其他在改什么;commit 前 check 一遍。~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.