Airlock
Run concurrent sessions without stepping on each other.
The Problem
Multiple teammates - or multiple agent sessions - working the same repo at once used to share everything: the same checkout, the same branch, the same state files. Two sessions running in parallel could silently overwrite each other’s active-story state, or get blocked by a gate that was actually counting another session’s commits. No crash, no error - just wrong answers and false-positive blocks.What It Does
Isolates every concurrent session in its own git worktree, then merges finished work back intodev automatically:
- Each session gets a dedicated worktree on a story-scoped branch, with its own state - no shared active-story pointer, no cross-session interference
- Commit-atomicity gates only count that session’s own commits since it branched from
dev- never commits landed by other concurrent sessions - Finished stories merge back as a single squash commit on
dev, gated on the story’s own closure checks passing - Worktree and branch are cleaned up automatically on a clean merge
- Optional PR mode pushes the branch and opens a PR instead of merging locally, for teams that want human review at this step too
Try It
Expected Output
- A dedicated worktree per active story, isolated from other concurrent sessions
- A single squash commit on
devper merged story, regardless of how many WIP commits it took to get there - Automatic worktree and branch cleanup after a clean merge
- Conflicting-file list and a clean abort (never a stuck mid-conflict checkout) if the merge can’t proceed
Who This Is For
- Teams running multiple engineers or multiple agent sessions against the same repo at once
- Engineering leads who’ve hit silent state collisions or false-positive gate blocks under concurrent AI-assisted development
- Teams wanting PR-gated review even for agent-driven merges
Recommended ceiling is 3-5 concurrent sessions per repo. Past that, nablr logs a soft warning but does not block - very high concurrency increases the odds of two sessions racing to clean up the same worktree at once.