AI Agent Coordination GitHub

Your agents are stepping on each other. Airlock fixes that.

A native daemon for macOS and Linux with an MCP server. AI agents lock files, serialize installs, and share state — without conflicts.

brew install adamorad/tap/airlock

Works with Claude · Cursor · Copilot · Cline · Windsurf · any MCP-compatible agent

Built by Adam Morad
How does it compare?
The Landscape

Other tools store memory.
Airlock prevents conflicts.

Whole categories of tools touch this space — session-scoped MCP servers, memory layers, DIY locks. They answer "what happened." Airlock answers "what's happening right now."

Capability Session-Scoped MCP Node · per-session Memory Layers mem0 · graphs DIY Redis · lockfiles Airlock this one
Always-on daemon ~
Cross-session locks ~
TTL auto-expiry
Real-time arbitration ~ ~
MCP-native ~
Zero dependencies

built in  ·  ~ possible with effort  ·   not really

Session-scoped servers die with the session that spawned them. Airlock is a daemon — it outlives every session and arbitrates between all of them.

vs. other approaches
Why Airlock

Three approaches.
One that actually works.

How do your agents coordinate shared resources when they all run at once?

Shell Workarounds
lockfiles · flock · manual scripts
  • Resource lockingNo atomic, named locks
  • Shared stateNo key-value notes
  • Persists across restartsNo
  • Multi-agent safeNo — race conditions
  • Runs as daemonNo
  • Works across toolsNo
Session-Scoped Skills
claude code skills · one session
  • Resource lockingNo cross-session locking
  • Shared stateNo shared state
  • Persists across restartsNo
  • Multi-agent safeNo — one session only
  • Runs as daemonNo
  • Works across toolsSession only

Shell scripts and skills give one agent visibility for one moment. Airlock gives every agent a shared coordination layer — Agent A locks npm-install, Agent B sees it's held and backs off. No conflicts. No manual work.

See the 22 MCP tools
22 MCP Tools

Everything agents need to coordinate.

Five groups — Locks, Notes & atomic state, Presence, Events, and Tasks — all on 127.0.0.1:27183. Any MCP-compatible agent, one shared daemon.

Locks
lock_resource unlock_resource renew_lock list_locks lock_resources
Notes & State
set_note get_note list_notes delete_note set_note_if increment_counter
Presence
register_agent unregister_agent list_agents
Events
signal_event wait_for_event clear_event
Tasks
push_task claim_next_task complete_task fail_task list_tasks

Install

Homebrew on macOS or Linux. Or build from source with go install github.com/adamorad/airlock/v2@latest.

brew install adamorad/tap/airlock

Start the daemon

Registers the service so Airlock starts at login — launchd on macOS, systemd on Linux.

airlock install-service

Configure your agent

Point any MCP-compatible agent at the daemon. On Linux, add a bearer token from ~/.airlock/token.

claude mcp add --transport http airlock http://localhost:27183
v2.0 shipped: blocking waits · atomic counters · cross-platform — see the changelog →
← Back to top