← ClaudeAtlas

parallel-session-lanelisted

Operating protocol for working as one of several agent sessions against the same repository at once — take your own worktree and test database, announce the FILE PATHS you are about to touch, query git for claimed decision numbers and migration timestamps rather than asking a peer, and copy the gitignored files a fresh worktree lacks before trusting any test result. Use when a prompt says you are one of N parallel sessions, when another session is live in the same repository, when you are handed a list of issues others are splitting, or when you are about to write into a shared checkout.
fmanimashaun/claude-skills · ★ 0 · AI & Automation · score 66
Install: claude install-skill fmanimashaun/claude-skills
<!-- GENERATED from skills/parallel-session-lane/SKILL.md by scripts/build_maintainer_skills.py — do not edit. The shipped skill is the source of truth; this copy exists because this repository's own sessions do not load `rails-stack`, so the doctrine would otherwise reach every consumer except its maintainers. Edit the source and re-run the script. --> # Parallel session lane Several agent sessions may run against one repository at the same time. Every step below exists to keep their HEADs, indexes, and diffs from colliding. Each rule was written after the collision it prevents actually happened. ## 0. Getting into this mode Until #661 a human opened N terminals and assigned lanes by hand — this skill described a mode nothing could put you in. `rails-flow` now ships an assigner: ```bash python3 "${CLAUDE_PLUGIN_ROOT}/scripts/assign_lanes.py" app/models app/controllers --budget-usd 6 ``` It prints the `git worktree add` per lane and the session command with `RAILS_FLOW_LANE` set. It **refuses** overlapping lanes, a single lane, a dirty tree, and a missing lane guard. **It prepares; it does not spawn.** Creating a worktree is mechanical and deciding when an agent starts is not, so it prints the commands rather than running them. **No tmux and no daemon** — but "no message passing" was too strong, and four sessions disproved it in a day. Git is the right medium for a **handoff of work**: a work order is a committed file, `compose_state.py` derives the dri