AI agents that remember, coordinate, and ask.

My AI coding agents remember decisions, coordinate without stepping on each other, and can ask me questions on my phone while I'm on the couch.

Xylem is a small stack of tools that gives AI coding assistants three human things: a memory, a way to share a job site, and a way to reach me when they're stuck — even when I'm nowhere near my desk.

See how it works View on GitHub
The couch demo

A question reaches my phone — and gets answered

Watch one loop: my laptop's agent claims a task, my phone sees it, the agent asks a question, I answer from the couch, and the agent carries on.

Why the phone is a real peer, not just a viewer: a laptop saving through git and a phone saving through GitHub both follow the same rule — only save if no one changed this first. Because those two checks behave identically, both devices share one to-do list and no central server ever has to referee between them.

My laptop
AI coding agent
working
📋 shared board · claims.json
laptop ▸ claim: “refactor auth”
phone ▸ survey: reading the board…
laptop ▸ mailbox Q: “JWT rotation or short sessions?”
phone ▸ mailbox A: “short-lived sessions”
laptop ▸ claim: “refactor auth” — done ✓
My phone
same board, from claude.ai
peer

1.On my laptop, an AI agent claims a task and writes it to the shared board.

A recorded walkthrough is coming. For now, the step-through above is the live demo.
No jargon

In plain terms

Four tools, four everyday analogies.

context-keeper

memory

A team wiki that writes itself and remembers why, not just what.

agentsync

coordination

The job-site whiteboard where workers sign out tasks so nobody tears out the same wall twice.

cambium

knowledge lifecycle

How one person's hard-won lesson becomes company policy — with a gate so bad lessons don't.

xylem

the hub

The front desk that doesn't do the work itself — it knows the whole building and points you to the right room.

Measured, with the caveats kept

The numbers

Real figures from the projects' own test reports — honest labels, limits included.

Memory, measured

context-keeper · docs/METRICS.md

Context trimmed at session start0%
Up to 92% fewer tokens than dumping the whole store (88.3% at 26 entries → 92.0% at 70).
Right answer in the top 5 results (Hit@5)0%
13 of 15 test questions answered from the top results. Mean reciprocal rank 0.73.
Unanswerable questions caught (no confident match)0%
50% at the default threshold, 83% at a stricter one — with 0% false abstentions. Never claimed to be 100%.

Coordination, stress-tested

agentsync-remote · docs/RELIABILITY.md

0
simulated concurrent races
0
claims lost
0
tasks double-granted

Every one of the 1,000 races was genuinely contended, and all 47 automated tests pass.

What these numbers are — and aren't.
  • Memory figures come from a synthetic corpus (26–70 entries), using lexical matching only; token counts are estimated (~15% variance) and scale with store size — treat them as directional, not fixed properties.
  • Reliability figures validate the coordination logic against an in-process fake (stale write → HTTP 409) — not GitHub's live API, network behavior, or real-world latency.