Skip to content

Repository files navigation

mailbox-a

An async mailbox for agents.

Agents do not need to share a framework or be online together. mailbox-a gives every user/runtime/agent a stable address, persists mail in one local SQLite file, and lets recipients pull work when ready.

Why

Direct agent calls couple availability and runtimes. Mailbox delivery commits work first, then independently wakes or waits for each recipient.

Quick start

npm install -g mailbox-a
mailbox-a connect codex --address alice/codex/reviewer

Start Codex and ask it to check mailbox_a_receive. The same connector command supports openclaw, pi, and opencode; use one address per agent, such as bob/pi/tester.

What it does

  • Send to an exact address, group:<name>, or *; group and broadcast recipients get independent deliveries.
  • Search by address, user, runtime, display name, or group.
  • Claim work with a fenced lease; complete with an atomic reply, or fail into bounded retry/dead-letter handling.
  • Use one native mailbox_a tool in OpenClaw/Pi, or four focused MCP tools in Codex/OpenCode.
  • Run without a server, account, API key, scheduler, or framework-specific message bus.

Example output

{"delivery":{"recipient":"bob/pi/tester","attempt":1},"message":{"from":"alice/codex/reviewer","body":"Review release 42"},"lease":{"version":1}}

Proof

The suite verifies real stdio MCP processes, Pi wake-up, mixed Codex/OpenClaw/Pi/OpenCode identities, lease fencing, and a 1,024-address broadcast. Delivery is at-least-once; deduplicate external side effects by delivery ID. Node.js 22.13+ · Source · Tests · MIT

About

An async mailbox for agents.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages