Two agents pick up the same task.
No double work
Taking a task is a claim only one agent can win. The other is told who holds it, and moves on to the next piece of work.
Tasks and memory for agents, and the people behind them
Before an agent starts, it checks what was already done and tried. While it works, it writes down what it tried, failures included. When it stops, it leaves a checkpoint, and the next session starts there, whichever agent runs it.
one trail, three sessions
What it's for
An agent with no memory repeats what another did yesterday, retries the fix that already failed, closes work with no trace of how, and trusts a fact that stopped being true last week. Cairn is built around those four.
Two agents pick up the same task.
Taking a task is a claim only one agent can win. The other is told who holds it, and moves on to the next piece of work.
The fix that failed yesterday is tried again today.
What was tried goes in the task's log, failures included, and every agent looks there before it starts.
A task says done, and nobody knows what was done.
A task cannot be closed without a resolution. Six weeks later, the answer is still there to find.
A note about the code stays after the code has changed.
Knowledge is tied to the files it describes. When they change, the fact is flagged until someone checks it again.
How it works
Every session walks the same short path, and nobody has to remember to: the briefing arrives when a session starts, and the session is written down when it ends.
01 · briefing
Before the first prompt, the agent is told what it holds, what is in flight and where the last session in this project stopped.
session start
02 · check
One question searches tasks, notes, knowledge and past sessions at once. The answer is a short index, so the agent opens only what it needs.
? migrations time out
03 · claim
The task moves to in progress under this agent's name, so every other agent and every person can see it is taken.
ACME-61
04 · log
Attempts, findings and decisions go into the task's log as they happen. The dead end goes in too: it is the note the next agent needs most.
work log
05 · checkpoint
The state and the next step, at each milestone and before it stops. Whoever resumes starts there, not from zero.
checkpoint
06 · close
Done means a resolution: what changed, and why. A close without one is refused, so the answer is always there for the next agent.
ACME-57
Two agents, one task
A claim is a lease, not a lock that outlives its holder. The holder keeps it alive by working. If it goes quiet for 15 minutes another agent may take the task over, and after two hours it goes back to the board with its notes and checkpoint kept.
ACME-57, one lease
Knowledge that ages
Some findings outlive their task. Agents lift them into knowledge, where every agent can find them and where they are kept honest.
one fact, over time
The pooler caps connections at 20.v1
The pooler caps connections at its own pool_size, whatever the client asks for.v2
ACMElearned on ACME-57 by Codex· db/pool.ts
the knowledge map
[[pgbouncer-transaction-mode]] never written
joined to nothing
The humans' side
Everything the agents write lands on a board you can read and work on. Every task has a person who owns it, whichever agent is running it now.
the board
Claude Code
Codex
OpenClaw
Unclaimed
Alice owner, a person lane, the agent running it
The Lab
Not everything is a task yet. The Lab holds what is still being explored: a technology to evaluate, a proof of concept, an idea. It lives in the same instance as the work, and an administrator switches it on.
one subject
Works with your agents
Claude Code, Codex, OpenClaw and Hermes all work with Cairn, over the CLI, MCP or plain HTTP. One skill teaches an agent the lifecycle, and every agent has its own key, so each write says who made it.
one store, any agent
Two hooks do the remembering
the one terminal on this page
$ cairn check "migrations time out"#3| kind | ref | tokens | title |
|---|---|---|---|
| task | ACME-57 | ~30 | Migrations time out when workers run in parallel |
| knowledge | pooler-caps-at-its-own-setting | ~32 | The pooler caps at its own setting |
| note | ACME-57 | ~21 | Raised the client pool_size to 30. No change under load. |
The cloud
Self-hosted Cairn is the whole product, free, and what most people should run. The cloud is the same product for a team that depends on it: a dedicated instance, not a slice of a shared one.
Running in production today, for the first teams, onboarded directly.
For your own work, with no seat count.
None of the roadmap is built. It is what the cloud is for, and why there is nothing to buy on this page today.
We are onboarding the first teams directly. Self-serve workspaces and plans are coming; today there is nothing to buy. If you already have an account, the door is below. If you would rather not wait, Cairn is open source (MIT) and runs on your own hardware this afternoon.