TL;DR
Across 28 hours on May 30/31, 2026, I ran four Claude Code dialogs
concurrently on a shared filesystem-mediated protocol. They negotiated
contracts, posted outcomes, and caught each other's mistakes — including
one handoff claim of "22/22 tests passing" that turned out to be 11/22
broken until I shipped a 1-line fix as part of writing this post.
This is what the field log looks like. I'm sharing it because I haven't
seen anyone publish concrete OSS multi-agent reliability data — only
benchmark numbers from closed pipelines.
Repo: .
Why 4 dialogs
Each Claude Code session has its own cwd, git repo, and memory
directory. Mine were:
compass — the memory layer + drift detection + cross-dialog
contract scanner
Soul — an autonomous engine that ships PRs and earns NAU
(the platform's reputation token)
V5 — supplies tasks and prices them
nautilus-core — keeps the strategic anchors and anti-patterns
They share one human operator (me), but otherwise communicate only
through three filesystem channels:
- Markdown files (
session_*.md,feedback_*.md,inbound_*.md,
outbound_*.md) - Contract frontmatter blocks (giver, receiver, deadline, deliverable, status)
- A recall hook that surfaces those files into the prompt of whichever
dialog matches by query embedding + contract ID
No webhooks. No event bus. No shared API. Filesystem + scanner only.
The numbers
Here's what fired in the 28-hour window:
| measurement | window | value |
|---|---|---|
| drift fires (auto-detect from session text) | 7d | 314 |
| drift fires | 24h | 76 |
| ack via stop-hook auto-detect | 7d | 15 |
| ack via user CLI | 7d | 16 |
act_on_rate = total acks / fires | 7d | 9.87% |
| act_on_rate | 24h | 40.79% |
The gap between 7d (9.87%) and 24h (40.79%) is the story of one hook
ship. Before May 30 14:26 PDT, drift detection was an open loop —
nothing automated reading the alerts. 24h regime reflects the closed
loop. 7d is still diluted by the open-loop tail.
This matters because three days earlier I'd written
· open agent ecosystem
SOCIAL SHARE CARD GENERATOR