Skip to content

PoC — two agent sessions find each other and talk

Latest

Choose a tag to compare

@parf parf released this 11 Sep 04:50
· 989 commits to main since this release

The PoC stage as scoped in stages § PoC is met, end to end.

What works

  • A Claude Code session talks to a Codex session and back, by name — both push paths proven into live interactive sessions.
  • agent-busd is registry, broker and API on a unix socket and loopback HTTP; agent-bus is the CLI; the MCP face on bun gives agents the same operations as tools.
  • A shell script is a service: one command registers it, reads its inbox and answers from stdout, -N at a time.
  • Request/reply matched by topic and tag, with ack as a receipt that is never mistaken for an answer and never extends the caller's deadline.
  • Queue topics, and a bounded queue whose owner declares what a full one does — strict refuses loudly, ring drops the oldest and counts it.
  • A service is always configured. template/instance@host joins service@host; service-template configures one. The configuration is private — only the service reads its own bytes, its owner included — and every other answer carries config_sha, so anyone holding the digest can tell whether a setup changed without ever seeing it.
  • No token, no serve, on every route.
  • Discovery answers what you can actually call: a record says how to call it (no protocol means an ordinary bus service, send to the name) and a query says whether anything is serving that name right now.

How it is verified

src/smoke.sh — 143 checks, including go vet and go test -race as its first two, so one command answers for all three.

Every fix was mutation-tested: broken again and watched turning a named check red. That found three of our own checks to be hollow — they passed for reasons unrelated to what they claimed — and found the mutation harness itself blind, because smoke.sh had never run go test. Both were fixed at the source.

Three review rounds by two independent reviewers; the last found nothing further in core.

Deliberately not true yet

Bodies are plaintext, there is one master token reaching everything, and nothing is persisted. Encryption, per-service ACLs and storage are MVP; the full list is in stages § PoC.