agent-inbox 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/CLAUDE.md +1 -92
  2. package/README.md +6 -73
  3. package/dist/federation/connection-manager.d.ts +0 -8
  4. package/dist/federation/connection-manager.d.ts.map +1 -1
  5. package/dist/federation/connection-manager.js +0 -12
  6. package/dist/federation/connection-manager.js.map +1 -1
  7. package/dist/federation/delivery-queue.d.ts +3 -11
  8. package/dist/federation/delivery-queue.d.ts.map +1 -1
  9. package/dist/federation/delivery-queue.js +8 -38
  10. package/dist/federation/delivery-queue.js.map +1 -1
  11. package/dist/index.d.ts +0 -17
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +0 -98
  14. package/dist/index.js.map +1 -1
  15. package/dist/jsonrpc/mail-push-types.d.ts +22 -2
  16. package/dist/jsonrpc/mail-push-types.d.ts.map +1 -1
  17. package/dist/jsonrpc/mail-push-types.js +18 -1
  18. package/dist/jsonrpc/mail-push-types.js.map +1 -1
  19. package/dist/jsonrpc/mail-push.d.ts +12 -1
  20. package/dist/jsonrpc/mail-push.d.ts.map +1 -1
  21. package/dist/jsonrpc/mail-push.js +13 -2
  22. package/dist/jsonrpc/mail-push.js.map +1 -1
  23. package/dist/jsonrpc/mail-server.d.ts.map +1 -1
  24. package/dist/jsonrpc/mail-server.js +42 -18
  25. package/dist/jsonrpc/mail-server.js.map +1 -1
  26. package/dist/router/message-router.d.ts +0 -15
  27. package/dist/router/message-router.d.ts.map +1 -1
  28. package/dist/router/message-router.js +3 -25
  29. package/dist/router/message-router.js.map +1 -1
  30. package/dist/storage/interface.d.ts +2 -9
  31. package/dist/storage/interface.d.ts.map +1 -1
  32. package/dist/storage/memory.d.ts +1 -4
  33. package/dist/storage/memory.d.ts.map +1 -1
  34. package/dist/storage/memory.js +6 -12
  35. package/dist/storage/memory.js.map +1 -1
  36. package/dist/storage/sqlite.d.ts +1 -6
  37. package/dist/storage/sqlite.d.ts.map +1 -1
  38. package/dist/storage/sqlite.js +6 -28
  39. package/dist/storage/sqlite.js.map +1 -1
  40. package/dist/types.d.ts +0 -79
  41. package/dist/types.d.ts.map +1 -1
  42. package/docs/DESIGN.md +0 -15
  43. package/package.json +3 -28
  44. package/rules/agent-inbox.md +0 -1
  45. package/src/federation/connection-manager.ts +0 -12
  46. package/src/federation/delivery-queue.ts +8 -38
  47. package/src/index.ts +0 -148
  48. package/src/jsonrpc/mail-push-types.ts +43 -2
  49. package/src/jsonrpc/mail-push.ts +34 -3
  50. package/src/jsonrpc/mail-server.ts +45 -26
  51. package/src/router/message-router.ts +4 -41
  52. package/src/storage/interface.ts +2 -11
  53. package/src/storage/memory.ts +8 -15
  54. package/src/storage/sqlite.ts +9 -36
  55. package/src/types.ts +0 -73
  56. package/test/load.test.ts +1 -1
  57. package/test/mail-push.test.ts +101 -1
  58. package/test/mail-server.test.ts +108 -0
  59. package/AGENTS.md +0 -18
  60. package/dist/federation/queue-store.d.ts +0 -42
  61. package/dist/federation/queue-store.d.ts.map +0 -1
  62. package/dist/federation/queue-store.js +0 -87
  63. package/dist/federation/queue-store.js.map +0 -1
  64. package/dist/index.d.mts +0 -2
  65. package/dist/index.mjs +0 -1
  66. package/dist/index.mjs.map +0 -1
  67. package/dist/mail/address-book.d.ts +0 -43
  68. package/dist/mail/address-book.d.ts.map +0 -1
  69. package/dist/mail/address-book.js +0 -95
  70. package/dist/mail/address-book.js.map +0 -1
  71. package/dist/mail/attachment-store.d.ts +0 -31
  72. package/dist/mail/attachment-store.d.ts.map +0 -1
  73. package/dist/mail/attachment-store.js +0 -74
  74. package/dist/mail/attachment-store.js.map +0 -1
  75. package/dist/mail/email-mapper.d.ts +0 -41
  76. package/dist/mail/email-mapper.d.ts.map +0 -1
  77. package/dist/mail/email-mapper.js +0 -216
  78. package/dist/mail/email-mapper.js.map +0 -1
  79. package/dist/mail/fs-attachment-store.d.ts +0 -38
  80. package/dist/mail/fs-attachment-store.d.ts.map +0 -1
  81. package/dist/mail/fs-attachment-store.js +0 -165
  82. package/dist/mail/fs-attachment-store.js.map +0 -1
  83. package/dist/mail/mail-gateway.d.ts +0 -114
  84. package/dist/mail/mail-gateway.d.ts.map +0 -1
  85. package/dist/mail/mail-gateway.js +0 -402
  86. package/dist/mail/mail-gateway.js.map +0 -1
  87. package/dist/mail/provider-transport.d.ts +0 -138
  88. package/dist/mail/provider-transport.d.ts.map +0 -1
  89. package/dist/mail/provider-transport.js +0 -434
  90. package/dist/mail/provider-transport.js.map +0 -1
  91. package/dist/mail/rate-limiter.d.ts +0 -20
  92. package/dist/mail/rate-limiter.d.ts.map +0 -1
  93. package/dist/mail/rate-limiter.js +0 -56
  94. package/dist/mail/rate-limiter.js.map +0 -1
  95. package/dist/mail/smtp-transport.d.ts +0 -141
  96. package/dist/mail/smtp-transport.d.ts.map +0 -1
  97. package/dist/mail/smtp-transport.js +0 -415
  98. package/dist/mail/smtp-transport.js.map +0 -1
  99. package/dist/mail/types.d.ts +0 -177
  100. package/dist/mail/types.d.ts.map +0 -1
  101. package/dist/mail/types.js +0 -11
  102. package/dist/mail/types.js.map +0 -1
  103. package/dist/router/destination.d.ts +0 -69
  104. package/dist/router/destination.d.ts.map +0 -1
  105. package/dist/router/destination.js +0 -106
  106. package/dist/router/destination.js.map +0 -1
  107. package/docs/MAIL-INTEROP-PLAN.md +0 -660
  108. package/renovate.json5 +0 -6
  109. package/src/federation/queue-store.ts +0 -124
  110. package/src/mail/address-book.ts +0 -111
  111. package/src/mail/attachment-store.ts +0 -90
  112. package/src/mail/email-mapper.ts +0 -288
  113. package/src/mail/fs-attachment-store.ts +0 -163
  114. package/src/mail/mail-gateway.ts +0 -505
  115. package/src/mail/provider-transport.ts +0 -577
  116. package/src/mail/rate-limiter.ts +0 -51
  117. package/src/mail/smtp-transport.ts +0 -589
  118. package/src/mail/types.ts +0 -221
  119. package/src/router/destination.ts +0 -140
  120. package/test/federation/delivery-queue-sqlite.test.ts +0 -158
  121. package/test/mail/address-book.test.ts +0 -111
  122. package/test/mail/attachment-store-contract.test.ts +0 -92
  123. package/test/mail/attachment-store.test.ts +0 -69
  124. package/test/mail/destination.test.ts +0 -115
  125. package/test/mail/dsn-parse.test.ts +0 -239
  126. package/test/mail/email-mapper.test.ts +0 -341
  127. package/test/mail/external-id.test.ts +0 -43
  128. package/test/mail/fs-attachment-store.test.ts +0 -134
  129. package/test/mail/full-flow-e2e.test.ts +0 -200
  130. package/test/mail/mail-gateway.test.ts +0 -419
  131. package/test/mail/mail-transport-contract.test.ts +0 -134
  132. package/test/mail/mock-mail.ts +0 -161
  133. package/test/mail/mock-postmark.ts +0 -66
  134. package/test/mail/provider-transport.test.ts +0 -381
  135. package/test/mail/rate-limiter.test.ts +0 -48
  136. package/test/mail/router-mail-integration.test.ts +0 -138
  137. package/test/mail/smtp-e2e.test.ts +0 -98
  138. package/test/mail/smtp-transport.test.ts +0 -138
package/CLAUDE.md CHANGED
@@ -13,7 +13,7 @@ npm test # Run all tests (vitest)
13
13
  npm run test:watch # Watch mode
14
14
  ```
15
15
 
16
- All tests use vitest. Run the full suite before committing — there are 612 tests across 49 files. Most run fast; the SQLite load tests take ~10s.
16
+ All tests use vitest. Run the full suite before committing — there are 356 tests across 27 files. Tests run fast (<6s total).
17
17
 
18
18
  ## Project layout
19
19
 
@@ -43,22 +43,10 @@ src/
43
43
  mesh-connector.ts Factory for creating MeshTransport connections (MapAgentConnectionClass)
44
44
  delivery-bridge.ts DeliveryHandler bridge — intercepts MAP delivery → inbox storage
45
45
  type-mapper.ts MAP Message ↔ Inbox Message bidirectional translation
46
- mail/ Email interop (inbound + outbound) — see docs/MAIL-INTEROP-PLAN.md
47
- types.ts MailTransport interface + envelope types (OutboundMail, InboundMail, etc.)
48
- mail-gateway.ts Ingress/egress, dedup, abuse controls, durable retry, bounce handling
49
- smtp-transport.ts Self-hosted SMTP backend (smtp-server/nodemailer/mailparser/mailauth) + DSN parsing
50
- provider-transport.ts Managed Postmark backend (REST API + webhooks)
51
- email-mapper.ts RFC 5322 email ↔ Inbox Message bidirectional translation
52
- address-book.ts agent_id ↔ email-address mapping, owned domains, plus-addressing
53
- attachment-store.ts SqliteAttachmentStore — content-addressed attachment bytes (default)
54
- fs-attachment-store.ts FsAttachmentStore — filesystem attachment bytes (opt-in, large/high-volume)
55
- rate-limiter.ts Sliding-window limiter for inbound abuse control
56
- router/destination.ts classifyDestination — local / federation / mail recipient classification
57
46
 
58
47
  test/
59
48
  federation/ Federation tests (connection-manager, routing, queue, address, trust, integration, sdk-integration)
60
49
  mesh/ Mesh transport tests (mesh-transport, mesh-connector, federation-mesh, delivery-bridge, type-mapper, meshpeer-integration, e2e)
61
- mail/ Mail tests (destination, address-book, email-mapper, attachment-store, contract suite, gateway, smtp/provider transports, dsn-parse, rate-limiter, smtp-e2e)
62
50
  registry/ Warm registry tests
63
51
  *.test.ts Core tests (storage, router, traceability, IPC, mail-server, push)
64
52
 
@@ -123,53 +111,6 @@ Key mesh components:
123
111
  - `DeliveryBridge` (`src/mesh/delivery-bridge.ts`) — intercepts MAP delivery for inbox storage
124
112
  - `TypeMapper` (`src/mesh/type-mapper.ts`) — bidirectional MAP ↔ Inbox message translation
125
113
 
126
- ### Mail interop (email) is optional
127
-
128
- Agent Inbox can send and receive external email through a pluggable
129
- `MailTransport` interface (`src/mail/types.ts`). Enabled via `InboxConfig.mail`.
130
- Full design: `docs/MAIL-INTEROP-PLAN.md`.
131
-
132
- **Two backends, one interface** (mirrors the WebSocket/mesh transport split):
133
- - **Self-hosted SMTP** (`smtp-transport.ts`, default) — `smtp-server` inbound +
134
- `nodemailer` outbound + `mailparser`/`mailauth`. Lightweight; TLS terminated
135
- upstream. All four libs are optional peer deps (dynamic import).
136
- - **Managed Postmark** (`provider-transport.ts`) — REST API outbound + webhook
137
- inbound. The `postmark` SDK is an optional peer dep; the client is injectable.
138
-
139
- **Recipient classification** (`src/router/destination.ts`): `classifyDestination`
140
- splits recipients into `local` / `federation` / `mail` using explicit lists —
141
- email addresses (`bob@example.com`) and federation addresses (`bob@system-2`)
142
- are syntactically identical, so this disambiguation is required. Federation
143
- peers may declare domains (win over mail); unknown `@x` is an error, never a
144
- guess. `MessageRouter.setMail()` adds the mail egress branch;
145
- `ConnectionManager.setMailRecipientFilter()` stops federation from grabbing mail
146
- addresses.
147
-
148
- **Mail flow:**
149
- 1. Inbound: transport receives → `MailGateway` applies policy (size, allow-list,
150
- DMARC, attachment cap) + rate limiting + dedup (on RFC Message-ID) → maps via
151
- `email-mapper` → commits via `router.routeMessage` (single ingestion path).
152
- The transport ACKs only after the handler resolves (commit-before-ACK); a
153
- throw NACKs.
154
- 2. Outbound: router routes `mail`-class recipients to `MailGateway.send()` →
155
- `email-mapper` renders → `transport.send()`. `delivered`/`transient`/
156
- `permanent` disposition drives done / durable-retry-queue / bounce.
157
- 3. Bounces: outbound `permanent` results and inbound DSNs (RFC 3464, parsed by
158
- SMTP `parseDsnFromParsed` or Postmark bounce webhooks) converge on one
159
- config-gated handler — emits `mail.bounced` and synthesizes an inbox notice.
160
-
161
- **Durability:** outbound retries use the `DeliveryQueue` with the SQLite
162
- `QueueStore` (survives restart); inbound dedup uses `storage.recordExternalId`/
163
- `hasSeenExternalId`. Attachments live behind `AttachmentStore`, content-addressed
164
- by sha256 — `SqliteAttachmentStore` (default, atomic with the message) or
165
- `FsAttachmentStore` (opt-in via `config.mail.attachments.backend = "fs"`, keeps
166
- bytes on disk; write-then-rename so a crash leaves only GC-able orphans). Both
167
- pass the shared `test/mail/attachment-store-contract.test.ts`.
168
-
169
- **Contract suite:** `test/mail/mail-transport-contract.test.ts` runs the same
170
- suite against every backend via a `MailTransportHarness` (mock + Postmark fake
171
- client). Any new backend must pass it unchanged.
172
-
173
114
  ### Event-driven internals
174
115
 
175
116
  Components communicate via `EventEmitter`. Key events:
@@ -179,7 +120,6 @@ Components communicate via `EventEmitter`. Key events:
179
120
  - `federation.message.received` — incoming federation message
180
121
  - `federation.broadcast` — broadcast strategy fired
181
122
  - `routing.updated` — routing table changed
182
- - `mail.received` / `mail.sent` / `mail.queued` / `mail.bounced` / `mail.rejected` / `mail.rate_limited` — mail gateway lifecycle
183
123
 
184
124
  ## Conventions
185
125
 
@@ -190,7 +130,6 @@ Components communicate via `EventEmitter`. Key events:
190
130
  - Content normalization: string payloads auto-wrapped to `{ type: "text", text: "..." }`
191
131
  - Federation tests use `MockMapServer` (in-process broker) in `test/federation/sdk-integration.test.ts`
192
132
  - Mesh tests use `MockMeshContext` (linked pair) in `test/mesh/mock-mesh.ts`
193
- - Mail tests use `MockMailTransport` (`test/mail/mock-mail.ts`) and a fake Postmark client (`test/mail/mock-postmark.ts`); both expose a `MailTransportHarness` for the shared contract suite
194
133
  - Mesh channel name convention: protocol channels use `"proto:"` prefix (e.g., `"proto:agent-inbox"`)
195
134
 
196
135
  ## Common tasks
@@ -210,33 +149,3 @@ Components communicate via `EventEmitter`. Key events:
210
149
  1. Add to interface in `src/storage/interface.ts`
211
150
  2. Implement in both `memory.ts` and `sqlite.ts`
212
151
  3. Test in `test/storage.test.ts` and `test/sqlite-storage.test.ts`
213
-
214
- ### Adding a new mail backend
215
- 1. Implement the `MailTransport` interface (`src/mail/types.ts`) in
216
- `src/mail/<name>-transport.ts`. Load any SDK as an optional peer dep via
217
- dynamic import; keep send/parse logic in exported pure functions.
218
- 2. Map the backend's failures to `delivered`/`transient`/`permanent`
219
- dispositions — never throw from `send()` for delivery failures. ACK inbound
220
- only after the awaited handler resolves.
221
- 3. Provide a `MailTransportHarness` (inject inbound + program next send) and add
222
- `runMailTransportContract("<Name>", makeHarness)` to
223
- `test/mail/mail-transport-contract.test.ts`. It must pass unchanged.
224
- 4. Wire it in `src/index.ts` under the `config.mail.backend` switch and declare
225
- the SDK in `package.json` peerDependencies (optional).
226
-
227
- <!-- SWARMKIT-WIKI:START -->
228
- ## SwarmKit Ecosystem Knowledge Base
229
-
230
- This repository participates in the SwarmKit ecosystem. Before changing architecture, package boundaries, cross-repo integrations, protocols, task/dispatch behavior, memory/learning flows, workspace/git behavior, or agent orchestration semantics, query the shared knowledge base:
231
-
232
- ```sh
233
- node /Users/alexngai/GitHub/swarmkit-wiki/scripts/query-knowledge.mjs context --cwd "$PWD"
234
- node /Users/alexngai/GitHub/swarmkit-wiki/scripts/query-knowledge.mjs repo agent-inbox
235
- node /Users/alexngai/GitHub/swarmkit-wiki/scripts/query-knowledge.mjs interactions agent-inbox
236
- node /Users/alexngai/GitHub/swarmkit-wiki/scripts/query-knowledge.mjs search "<concept>"
237
- ```
238
-
239
- Canonical ecosystem memory lives at `/Users/alexngai/GitHub/swarmkit-wiki`.
240
-
241
- When this repo changes knowledge that should persist across agents, update the relevant wiki article, semantic model, raw snapshot, graph artifact, or cross-repo interaction data in `swarmkit-wiki`. Do not treat this repo's local `.understand-anything/` cache as canonical; graph artifacts are centralized in `swarmkit-wiki/.understand-anything/graphs/`.
242
- <!-- SWARMKIT-WIKI:END -->
package/README.md CHANGED
@@ -10,7 +10,6 @@ Built to work with [claude-code-swarm](https://github.com/alexngai/claude-code-s
10
10
  - **Threading** — Messages can be grouped by `thread_tag` and linked via `in_reply_to` for conversation threading.
11
11
  - **Traceability** — Auto-creates conversations, turns, and threads from messaging events following MAP's mail conventions.
12
12
  - **Federation** — Route messages across independent systems. Supports WebSocket (MAP SDK) and encrypted P2P mesh (agentic-mesh) transports, configurable per-peer. Routing strategies: table, broadcast, hierarchical.
13
- - **Email interop** — Send and receive real email through a pluggable `MailTransport`. Self-hosted SMTP (default) or managed Postmark, behind one interface. Inbound is mapped into agent inboxes; outbound, durable retry, dedup, bounces, and abuse controls are built in.
14
13
  - **Multiple interfaces** — IPC (UNIX socket), MCP tools (stdio), MAP JSON-RPC, and event-based push via `inbox.message` events.
15
14
 
16
15
  ## Architecture
@@ -24,20 +23,12 @@ Agent Runtime (Claude Code, OpenAI, etc.)
24
23
 
25
24
  ├── Local delivery (same system)
26
25
  ├── Federation via MAP SDK (WebSocket)
27
- ├── Federation via agentic-mesh (encrypted P2P)
28
- │ │
29
- │ MeshPeer (MAP server, FederationGateway,
30
- │ agent discovery, hop/loop detection)
31
- └── Email via MailTransport (self-hosted SMTP / Postmark)
26
+ └── Federation via agentic-mesh (encrypted P2P)
32
27
 
33
- MailGateway (ingress policy + dedup, durable retry,
34
- bounces, attachments)
28
+ MeshPeer (MAP server, FederationGateway,
29
+ agent discovery, hop/loop detection)
35
30
  ```
36
31
 
37
- Recipients are classified once into `local` / `federation` / `mail`, so an
38
- external email address (`bob@example.com`) and a federation address
39
- (`bob@system-2`) — which look identical — are routed unambiguously.
40
-
41
32
  Agent Inbox can run standalone (IPC + MCP only), with a MAP server (WebSocket federation), or with an embedded agentic-mesh `MeshPeer` (encrypted P2P federation with full MAP protocol support).
42
33
 
43
34
  ## Quick start
@@ -158,57 +149,12 @@ Federation connections are gated by an allow-list. Only systems in `allowedServe
158
149
 
159
150
  Messages to offline peers are queued with configurable TTL, overflow policy, and retry strategy. Queues flush automatically on reconnect.
160
151
 
161
- ## Email interop
162
-
163
- Agents can send and receive real email. Email moves through a pluggable
164
- `MailTransport` interface with two interchangeable backends (the same
165
- WebSocket/mesh split applied to mail):
166
-
167
- - **Self-hosted SMTP** (default) — `smtp-server` inbound + `nodemailer` outbound,
168
- with `mailparser`/`mailauth`. Lightweight; TLS terminated upstream.
169
- - **Managed Postmark** — REST API outbound + webhook inbound.
170
-
171
- All four SMTP libs and the `postmark` SDK are **optional peer dependencies**,
172
- loaded only when mail is enabled.
173
-
174
- ```typescript
175
- await createAgentInbox({
176
- sqlitePath: "/var/lib/agent-inbox/inbox.db", // durable queue + attachments
177
- config: {
178
- mail: {
179
- enabled: true,
180
- backend: "smtp", // or "provider"
181
- identity: {
182
- localDomains: ["agents.example.com"],
183
- mappings: [{ agentId: "alice", address: "alice@agents.example.com" }],
184
- },
185
- routableDomains: ["example.com"], // domains we'll send to
186
- smtp: { listenPort: 25, relay: { host: "smarthost", port: 587 } },
187
- rateLimit: { perSenderDomain: 60, global: 600 },
188
- },
189
- },
190
- });
191
- ```
192
-
193
- Once enabled, sending to an email address just works: `send_message({ to: "user@example.com", ... })` routes via the mail gateway.
194
-
195
- **What's handled for you:**
196
-
197
- - **Recipient classification** — `local` / `federation` / `mail`, explicit-list driven, so `bob@example.com` (mail) and `bob@system-2` (federation) never collide. Unknown domains are an error, never a guess.
198
- - **Threading** — RFC `Message-ID`/`In-Reply-To`/`References` map onto inbox `thread_tag`/`in_reply_to` in both directions.
199
- - **Durability** — outbound retries use the persistent delivery queue (survives restart); inbound is deduped on `Message-ID` and committed before the transport ACKs.
200
- - **Bounces** — outbound permanent failures and inbound DSNs (RFC 3464 / Postmark webhooks) converge on one handler that emits `mail.bounced` and drops a notice into the sender's inbox.
201
- - **Attachments** — content-addressed behind an `AttachmentStore`: SQLite BLOBs (default) or filesystem (`attachments.backend: "fs"`).
202
- - **Abuse controls** — per-sender/global rate limiting, sender allow-lists, optional DMARC-fail rejection, attachment caps, and webhook Basic Auth.
203
-
204
- Full design and rationale: [docs/MAIL-INTEROP-PLAN.md](docs/MAIL-INTEROP-PLAN.md).
205
-
206
152
  ## Storage
207
153
 
208
154
  Two storage backends:
209
155
 
210
156
  - **InMemoryStorage** — Default. Fast, no dependencies. Data lost on restart.
211
- - **SQLiteStorage** — Persistent storage with FTS5 full-text search. Requires `better-sqlite3`. Also backs the durable mail retry queue, inbound dedup, and (by default) attachment bytes — so enabling mail with SQLite gives restart-safe delivery.
157
+ - **SQLiteStorage** — Persistent storage with FTS5 full-text search. Requires `better-sqlite3`.
212
158
 
213
159
  ## Project structure
214
160
 
@@ -221,8 +167,7 @@ src/
221
167
  memory.ts In-memory implementation
222
168
  sqlite.ts SQLite implementation (persistent + FTS5)
223
169
  router/
224
- message-router.ts Message routing: resolve recipients, local vs remote vs mail
225
- destination.ts classifyDestination — local / federation / mail
170
+ message-router.ts Message routing: resolve recipients, local vs remote
226
171
  federation/
227
172
  connection-manager.ts MAP connections + federation peer management
228
173
  routing-engine.ts Configurable routing (table/broadcast/hierarchical)
@@ -248,16 +193,6 @@ src/
248
193
  mesh-connector.ts Factory for MeshTransport connections
249
194
  delivery-bridge.ts DeliveryHandler bridge (MAP delivery → inbox storage)
250
195
  type-mapper.ts Bidirectional MAP ↔ Inbox message translation
251
- mail/
252
- types.ts MailTransport interface + envelope types
253
- mail-gateway.ts Ingress/egress, dedup, abuse controls, retry, bounces
254
- smtp-transport.ts Self-hosted SMTP backend + DSN parsing
255
- provider-transport.ts Managed Postmark backend (REST + webhooks)
256
- email-mapper.ts RFC 5322 email ↔ Inbox message translation
257
- address-book.ts agent_id ↔ email, owned domains, plus-addressing
258
- attachment-store.ts SqliteAttachmentStore (default)
259
- fs-attachment-store.ts FsAttachmentStore (opt-in, filesystem)
260
- rate-limiter.ts Sliding-window limiter for inbound abuse control
261
196
  ```
262
197
 
263
198
  ## Testing
@@ -267,7 +202,7 @@ npm test # Run all tests
267
202
  npm run test:watch # Watch mode
268
203
  ```
269
204
 
270
- 612 tests across 49 test files covering:
205
+ 357 tests across 27 test files covering:
271
206
 
272
207
  - Storage (in-memory + SQLite)
273
208
  - Message routing and content normalization
@@ -282,7 +217,6 @@ npm run test:watch # Watch mode
282
217
  - Mesh transport (MeshTransport, MeshConnector, federation-mesh integration)
283
218
  - Mesh Phase 2 (DeliveryBridge, TypeMapper, MeshPeer integration)
284
219
  - E2E with real agentic-mesh MeshPeer instances (bidirectional messaging, reply chains, concurrent load)
285
- - Email interop: destination classification, RFC mapping, address book, attachment stores (SQLite + filesystem), durable queue persistence, DSN/bounce parsing (incl. real-`mailparser` fixtures), rate limiting, a shared `MailTransport` contract run against both backends, and a full-flow e2e over real SMTP sockets between two nodes
286
220
 
287
221
  ## Development
288
222
 
@@ -297,7 +231,6 @@ Requires Node.js >= 18.
297
231
  ## Further reading
298
232
 
299
233
  - [docs/DESIGN.md](docs/DESIGN.md) — Detailed architecture and design decisions
300
- - [docs/MAIL-INTEROP-PLAN.md](docs/MAIL-INTEROP-PLAN.md) — Email interop design: the `MailTransport` interface, recipient classification, durability, bounces, and the SMTP/Postmark backends
301
234
  - [docs/CLAUDE-CODE-SWARM-PROPOSAL.md](docs/CLAUDE-CODE-SWARM-PROPOSAL.md) — Proposal: replace claude-code-swarm's sidecar with embedded MeshPeer + agent-inbox
302
235
 
303
236
  ## License
@@ -39,8 +39,6 @@ export declare class ConnectionManager {
39
39
  private meshConnector;
40
40
  private meshPeer;
41
41
  private onIncoming;
42
- /** Optional predicate marking recipients owned by the mail gateway (skipped). */
43
- private mailFilter;
44
42
  readonly routing: RoutingEngine;
45
43
  readonly queue: DeliveryQueue;
46
44
  readonly trust: TrustManager;
@@ -55,12 +53,6 @@ export declare class ConnectionManager {
55
53
  * Get the resolved system ID for this Agent Inbox instance.
56
54
  */
57
55
  getSystemId(): SystemId;
58
- /**
59
- * Register a predicate identifying recipients handled by the mail gateway.
60
- * Those recipients are skipped by route() so a `bob@example.com` address is
61
- * not mistaken for a federation peer.
62
- */
63
- setMailRecipientFilter(fn: (agentId: string) => boolean): void;
64
56
  /**
65
57
  * Establish federation with a peer. Uses MAP federation/connect protocol.
66
58
  * If an SDK class was injected, opens a real MAP connection to the peer.
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/federation/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/federation/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -25,8 +25,6 @@ export class ConnectionManager {
25
25
  meshConnector;
26
26
  meshPeer;
27
27
  onIncoming;
28
- /** Optional predicate marking recipients owned by the mail gateway (skipped). */
29
- mailFilter = null;
30
28
  routing;
31
29
  queue;
32
30
  trust;
@@ -66,14 +64,6 @@ export class ConnectionManager {
66
64
  getSystemId() {
67
65
  return this.systemId;
68
66
  }
69
- /**
70
- * Register a predicate identifying recipients handled by the mail gateway.
71
- * Those recipients are skipped by route() so a `bob@example.com` address is
72
- * not mistaken for a federation peer.
73
- */
74
- setMailRecipientFilter(fn) {
75
- this.mailFilter = fn;
76
- }
77
67
  /**
78
68
  * Establish federation with a peer. Uses MAP federation/connect protocol.
79
69
  * If an SDK class was injected, opens a real MAP connection to the peer.
@@ -209,8 +199,6 @@ export class ConnectionManager {
209
199
  async route(message) {
210
200
  // Determine target for each recipient
211
201
  for (const recipient of message.recipients) {
212
- if (this.mailFilter?.(recipient.agent_id))
213
- continue; // handled by mail gateway
214
202
  const addr = parseAddress(recipient.agent_id);
215
203
  if (!isRemoteAddress(addr))
216
204
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/federation/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/federation/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,17 @@
1
1
  import { EventEmitter } from "node:events";
2
2
  import type { Message, DeliveryQueueConfig, QueuedMessage } from "../types.js";
3
- import type { QueueStore } from "./queue-store.js";
4
3
  /**
5
4
  * Delivery queue for messages to offline or unreachable federation peers.
6
5
  *
7
- * Supports configurable TTL, overflow policy, and retry strategy. Keeps an
8
- * in-memory index for fast reads; when a durable QueueStore is supplied, every
9
- * mutation is write-through journaled and the index is hydrated from the store
10
- * on construction so queued messages survive a restart.
6
+ * Supports configurable TTL, overflow policy, and retry strategy.
7
+ * Currently memory-only; SQLite persistence is a future enhancement.
11
8
  */
12
9
  export declare class DeliveryQueue {
13
10
  private events;
14
11
  private queues;
15
12
  private config;
16
13
  private tickTimer?;
17
- private store;
18
- constructor(events: EventEmitter, config?: Partial<DeliveryQueueConfig>, opts?: {
19
- store?: QueueStore;
20
- });
21
- /** Load persisted entries into the in-memory index (durable mode). */
22
- private hydrate;
14
+ constructor(events: EventEmitter, config?: Partial<DeliveryQueueConfig>);
23
15
  /**
24
16
  * Enqueue a message for a peer. Returns the queued message ID, or null if rejected.
25
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-queue.d.ts","sourceRoot":"","sources":["../../src/federation/delivery-queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAanD;;;;;;;GAOG;AACH,qBAAa,aAAa;IAOtB,OAAO,CAAC,MAAM;IANhB,OAAO,CAAC,MAAM,CAAsC;IACpD,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,SAAS,CAAC,CAAiC;IACnD,OAAO,CAAC,KAAK,CAAoB;gBAGvB,MAAM,EAAE,YAAY,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACrC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,UAAU,CAAA;KAAE;IAO/B,sEAAsE;IACtE,OAAO,CAAC,OAAO;IAWf;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAsCxD;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAWtC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAW7C;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IA0BzD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAavD;;OAEG;IACH,IAAI,IAAI,MAAM;IA8Bd;;OAEG;IACH,YAAY,CAAC,UAAU,GAAE,MAAe,GAAG,IAAI;IAK/C;;OAEG;IACH,WAAW,IAAI,IAAI;IAOnB;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI5B;;OAEG;IACH,SAAS,IAAI,MAAM;IAQnB;;OAEG;IACH,KAAK,IAAI,MAAM,EAAE;IAIjB;;OAEG;IACH,OAAO,IAAI,IAAI;CAIhB"}
1
+ {"version":3,"file":"delivery-queue.d.ts","sourceRoot":"","sources":["../../src/federation/delivery-queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAa/E;;;;;GAKG;AACH,qBAAa,aAAa;IAMtB,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,MAAM,CAAsC;IACpD,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,SAAS,CAAC,CAAiC;gBAGzC,MAAM,EAAE,YAAY,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC;IAKvC;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAmCxD;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAUtC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE;IAW7C;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAyBzD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAYvD;;OAEG;IACH,IAAI,IAAI,MAAM;IAyBd;;OAEG;IACH,YAAY,CAAC,UAAU,GAAE,MAAe,GAAG,IAAI;IAK/C;;OAEG;IACH,WAAW,IAAI,IAAI;IAOnB;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI5B;;OAEG;IACH,SAAS,IAAI,MAAM;IAQnB;;OAEG;IACH,KAAK,IAAI,MAAM,EAAE;IAIjB;;OAEG;IACH,OAAO,IAAI,IAAI;CAIhB"}
@@ -12,34 +12,17 @@ const DEFAULT_CONFIG = {
12
12
  /**
13
13
  * Delivery queue for messages to offline or unreachable federation peers.
14
14
  *
15
- * Supports configurable TTL, overflow policy, and retry strategy. Keeps an
16
- * in-memory index for fast reads; when a durable QueueStore is supplied, every
17
- * mutation is write-through journaled and the index is hydrated from the store
18
- * on construction so queued messages survive a restart.
15
+ * Supports configurable TTL, overflow policy, and retry strategy.
16
+ * Currently memory-only; SQLite persistence is a future enhancement.
19
17
  */
20
18
  export class DeliveryQueue {
21
19
  events;
22
20
  queues = new Map();
23
21
  config;
24
22
  tickTimer;
25
- store;
26
- constructor(events, config, opts) {
23
+ constructor(events, config) {
27
24
  this.events = events;
28
25
  this.config = { ...DEFAULT_CONFIG, ...config };
29
- this.store = opts?.store ?? null;
30
- if (this.store)
31
- this.hydrate(this.store);
32
- }
33
- /** Load persisted entries into the in-memory index (durable mode). */
34
- hydrate(store) {
35
- for (const entry of store.loadAll()) {
36
- let queue = this.queues.get(entry.peerId);
37
- if (!queue) {
38
- queue = [];
39
- this.queues.set(entry.peerId, queue);
40
- }
41
- queue.push(entry);
42
- }
43
26
  }
44
27
  /**
45
28
  * Enqueue a message for a peer. Returns the queued message ID, or null if rejected.
@@ -53,12 +36,9 @@ export class DeliveryQueue {
53
36
  // Check queue size limit
54
37
  if (queue.length >= this.config.maxQueueSize) {
55
38
  switch (this.config.overflow) {
56
- case "drop-oldest": {
57
- const dropped = queue.shift();
58
- if (dropped)
59
- this.store?.remove(peerId, dropped.id);
39
+ case "drop-oldest":
40
+ queue.shift();
60
41
  break;
61
- }
62
42
  case "drop-newest":
63
43
  return null; // Don't enqueue
64
44
  case "reject-new":
@@ -75,7 +55,6 @@ export class DeliveryQueue {
75
55
  nextRetry: now, // Ready to send immediately
76
56
  };
77
57
  queue.push(entry);
78
- this.store?.upsert(entry);
79
58
  this.events.emit("queue.enqueued", { peerId, messageId: entry.id });
80
59
  return entry.id;
81
60
  }
@@ -89,7 +68,6 @@ export class DeliveryQueue {
89
68
  return [];
90
69
  const messages = [...queue];
91
70
  this.queues.delete(peerId);
92
- this.store?.removePeer(peerId);
93
71
  this.events.emit("queue.flushed", { peerId, count: messages.length });
94
72
  return messages;
95
73
  }
@@ -130,7 +108,6 @@ export class DeliveryQueue {
130
108
  ? this.config.retryBaseInterval * Math.pow(2, entry.attempts - 1)
131
109
  : this.config.retryBaseInterval;
132
110
  entry.nextRetry = new Date(Date.now() + delay).toISOString();
133
- this.store?.upsert(entry);
134
111
  return true;
135
112
  }
136
113
  /**
@@ -144,7 +121,6 @@ export class DeliveryQueue {
144
121
  if (idx === -1)
145
122
  return false;
146
123
  queue.splice(idx, 1);
147
- this.store?.remove(peerId, messageId);
148
124
  if (queue.length === 0)
149
125
  this.queues.delete(peerId);
150
126
  return true;
@@ -157,16 +133,10 @@ export class DeliveryQueue {
157
133
  let expired = 0;
158
134
  for (const [peerId, queue] of this.queues.entries()) {
159
135
  const before = queue.length;
160
- const remaining = [];
161
- for (const entry of queue) {
136
+ const remaining = queue.filter((entry) => {
162
137
  const age = now - new Date(entry.enqueuedAt).getTime();
163
- if (age < this.config.maxTTL) {
164
- remaining.push(entry);
165
- }
166
- else {
167
- this.store?.remove(peerId, entry.id);
168
- }
169
- }
138
+ return age < this.config.maxTTL;
139
+ });
170
140
  expired += before - remaining.length;
171
141
  if (remaining.length === 0) {
172
142
  this.queues.delete(peerId);
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-queue.js","sourceRoot":"","sources":["../../src/federation/delivery-queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-queue.js","sourceRoot":"","sources":["../../src/federation/delivery-queue.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,7 +9,6 @@ import { ConnectionManager } from "./federation/connection-manager.js";
9
9
  import type { MeshContextLike } from "./mesh/mesh-transport.js";
10
10
  import type { MeshPeerLike } from "./map/map-client.js";
11
11
  import { WarmRegistry } from "./registry/warm-registry.js";
12
- import { MailGateway } from "./mail/mail-gateway.js";
13
12
  import type { InboxConfig } from "./types.js";
14
13
  import type { Storage } from "./storage/interface.js";
15
14
  export { InMemoryStorage } from "./storage/memory.js";
@@ -41,21 +40,6 @@ export type { MeshDeliveryHandler } from "./mesh/delivery-bridge.js";
41
40
  export { mapMessageToInbox, inboxMessageToMap } from "./mesh/type-mapper.js";
42
41
  export type { MapMessage as MeshMapMessage, MapAddress as MeshMapAddress } from "./mesh/type-mapper.js";
43
42
  export type { MeshPeerLike, MeshAgentConnection, MeshMapServer } from "./map/map-client.js";
44
- export { MailGateway, RateLimitedError } from "./mail/mail-gateway.js";
45
- export type { MailGatewayConfig } from "./mail/mail-gateway.js";
46
- export { RateLimiter } from "./mail/rate-limiter.js";
47
- export { SmtpTransport, parseDsnFromParsed } from "./mail/smtp-transport.js";
48
- export type { SmtpTransportOptions } from "./mail/smtp-transport.js";
49
- export { PostmarkTransport, outboundToPostmark, postmarkInboundToMail, postmarkBounceToInbound, postmarkResponseToResult, postmarkErrorToResult, } from "./mail/provider-transport.js";
50
- export type { PostmarkTransportOptions, PostmarkClient, PostmarkInbound, PostmarkBounce, } from "./mail/provider-transport.js";
51
- export { AddressBook } from "./mail/address-book.js";
52
- export { SqliteAttachmentStore } from "./mail/attachment-store.js";
53
- export { FsAttachmentStore } from "./mail/fs-attachment-store.js";
54
- export { inboundMailToMessage, messageToOutboundMail, UnknownRecipientError, } from "./mail/email-mapper.js";
55
- export { classifyDestination, UnknownDestinationError, domainMatches, findDomainConflicts, } from "./router/destination.js";
56
- export type { Destination, DestinationContext } from "./router/destination.js";
57
- export type { MailTransport, MailCapabilities, OutboundMail, InboundMail, MailSendResult, InboundBounce, InboundAuthResults, AttachmentStore, } from "./mail/types.js";
58
- export type { MailEgress } from "./router/message-router.js";
59
43
  export type * from "./types.js";
60
44
  export type { Storage, InboxQuery, ThreadQuery } from "./storage/interface.js";
61
45
  export interface AgentInbox {
@@ -68,7 +52,6 @@ export interface AgentInbox {
68
52
  notifier: PushNotifier;
69
53
  federation: ConnectionManager | null;
70
54
  registry: WarmRegistry | null;
71
- mail: MailGateway | null;
72
55
  events: EventEmitter;
73
56
  stop(): Promise<void>;
74
57
  }