Your AI tools are coworkers who never talk. aisync is their standup.

Claude Code, Codex and Cursor share one set of rules, one journal and one list of who is editing what, and hear what the others did while they work.

InstallSee the demo boardSource on GitHub

Two tools reach for the same file

A real terminal: aisync demo prints a hub's status, claude-code claims app/api/refunds.py, codex claims the same file and is refused with OVERLAP and exit 3, codex logs a blocker, claude-code hears it, releases the file, and codex's claim succeeds

A real terminal run. aisync demo builds a throwaway hub with a synthetic two-week journal; nothing on your machine is touched.

What a rules file cannot do

Rules sync toolsaisync
ClaimsNone: two agents can edit the same file at onceaisync claim first; an overlap exits with code 3 and says who holds the files
JournalNo shared record of who did whatOne append-only, hash-chained log of commits, decisions and blockers
Mid-session newsRules load when a session starts, then go quietHooks inject what the other tools just did into the running session

aisync also syncs the rules: one block copied into every tool's own rule file, 3-way, conflicts never overwritten.

How it works

Six steps: tool A claims a file, tool B is refused with exit 3, B logs a blocker, a hook tells A mid-session, A releases, B proceeds

Step through it at your own pace (play, pause, arrow keys).

File claimsBefore editing, an agent runs aisync claim. An overlapping claim exits with code 3, so the agent stops and coordinates instead of colliding.
Hash-chained journalEvery decision, blocker and commit in one append-only log. Each event links to the one before it; aisync verify catches any edit.
Mid-session newsClaude Code, Codex and Cursor hooks tell a running session what the other tools just did. Silent when nothing changed, so a quiet hub costs no tokens.
Shared rulesAny agent can add a rule with aisync rule add; every tool's own rule file gets it on the next sync.

Install

Give this sentence to your AI agent. It reads the install page, does a dry run first and asks before it changes anything:

Read https://maxont.github.io/aisync/install and install aisync for me.

Or in a terminal: curl -fsSL https://maxont.github.io/aisync/install.sh | bash. Python 3.11+ and git, macOS or Linux, standard library only.

Dogfooded: 1,600+ journal events from 5 AI tools over 9 days.