agent-comms 8.13.5 → 8.13.7

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.
@@ -15,7 +15,7 @@
15
15
  "source": "url",
16
16
  "url": "https://github.com/ExaDev/agent-comms.git"
17
17
  },
18
- "version": "8.13.5"
18
+ "version": "8.13.7"
19
19
  }
20
20
  ]
21
21
  }
@@ -18,5 +18,5 @@
18
18
  },
19
19
  "name": "agent-comms",
20
20
  "repository": "https://github.com/ExaDev/agent-comms",
21
- "version": "8.13.5"
21
+ "version": "8.13.7"
22
22
  }
package/README.md CHANGED
@@ -2,15 +2,14 @@
2
2
 
3
3
  [![GitHub](https://img.shields.io/badge/GitHub-181717?logo=github&logoColor=white)](https://github.com/ExaDev/agent-comms)
4
4
  [![npm](https://img.shields.io/badge/npm-CB3837?logo=npm&logoColor=white)](https://www.npmjs.com/package/agent-comms)
5
- [![version](https://img.shields.io/badge/version-8.13.5-blue)](https://github.com/ExaDev/agent-comms/releases/tag/v8.13.5)
5
+ [![version](https://img.shields.io/badge/version-8.13.7-blue)](https://github.com/ExaDev/agent-comms/releases/tag/v8.13.7)
6
6
  [![CI](https://img.shields.io/github/actions/workflow/status/ExaDev/agent-comms/ci.yml?branch=main)](https://github.com/ExaDev/agent-comms/actions)
7
7
 
8
+ Cross-harness communication mesh for LLM agents: rooms, DMs, presence, and visibility over TCP with zero filesystem dependencies.
8
9
 
9
10
  [![npm downloads chart, log scale](https://shieldcn.dev/chart/npm/agent-comms.svg?bg=transparent&logo=false&yScale=log)](https://www.npmjs.com/package/agent-comms)
10
11
  [![GitHub stars chart, log scale](https://shieldcn.dev/chart/stars/ExaDev/agent-comms.svg?bg=transparent&logo=false&yScale=log)](https://github.com/ExaDev/agent-comms/stargazers)
11
12
 
12
- Cross-harness communication mesh for LLM agents: rooms, DMs, presence, and visibility over TCP with zero filesystem dependencies.
13
-
14
13
  ## Why
15
14
 
16
15
  LLM agents on the same machine are isolated silos. A Claude Code session cannot see a pi session running in the next terminal. A Codex agent cannot ask a Claude agent to review its work. Each harness manages its own context, tools, and state, with no shared communication layer between them.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-details.d.ts","sourceRoot":"","sources":["../../src/core/agent-details.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-details.d.ts","sourceRoot":"","sources":["../../src/core/agent-details.ts"],"names":[],"mappings":"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"}
@@ -136,9 +136,10 @@ export class AgentDetailsExchange {
136
136
  for (;;) {
137
137
  let outcome;
138
138
  try {
139
- outcome = await this.deps
140
- .requireTransport()
141
- .sendRoomRequest(agentId, { verb: AGENT_DETAILS_VERB, params: { verb: AGENT_DETAILS_VERB } }, { kind: "node" });
139
+ outcome = await this.deps.requireTransport().sendRoomRequest(agentId, {
140
+ verb: AGENT_DETAILS_CAPABILITY_VERB,
141
+ params: { verb: AGENT_DETAILS_VERB },
142
+ }, { kind: "node" });
142
143
  }
143
144
  catch {
144
145
  // An unreachable peer is routine (it is listed from its last advert); its details stay not shared.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-details.js","sourceRoot":"","sources":["../../src/core/agent-details.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-details.js","sourceRoot":"","sources":["../../src/core/agent-details.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAIhE,4IAA4I;AAC5I,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAElD,gMAAgM;AAChM,MAAM,CAAC,MAAM,6BAA6B,GAAG,eAAe,CAAC;AAsB7D,8fAA8f;AAC9f,MAAM,UAAU,uBAAuB,CACrC,IAAgC;IAEhC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAC/B,MAAM,YAAY,GAChB,OAAO,CAAC,UAAU,KAAK,SAAS;YAC9B,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;QAC1D,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,4DAA4D;AAC5D,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvE,IAAI,CAAC,CAAC,aAAa,IAAI,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,wMAAwM;AACxM,MAAM,UAAU,iBAAiB,CAC/B,OAAgC;IAEhC,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9C,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACnD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACpD,MAAM,KAAK,GAAuB,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;AACzD,CAAC;AAED,6NAA6N;AAC7N,MAAM,OAAO,iBAAiB;IACX,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAE3D,+DAA+D;IAC/D,GAAG,CAAC,OAAe,EAAE,OAA+B;QAClD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,kEAAkE;IAClE,GAAG,CAAC,OAAe;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,sEAAsE;IACtE,MAAM,CAAC,QAA6B;QAClC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF;AAED,mGAAmG;AACnG,MAAM,UAAU,iBAAiB,CAC/B,KAAoD,EACpD,WAAkD;IAElD,OAAO;QACL,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAUD,2LAA2L;AAC3L,MAAM,OAAO,oBAAoB;IAMF;IALZ,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAEjD,0FAA0F;IACjF,OAAO,CAAkB;IAElC,YAA6B,IAAwC;QAAxC,SAAI,GAAJ,IAAI,CAAoC;QACnE,IAAI,CAAC,OAAO,GAAG,uBAAuB,CAAC;YACrC,OAAO,EAAE,GAAG,EAAE;gBACZ,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC/B,OAAO,KAAK,KAAK,SAAS;oBACxB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,kSAAkS;IAClS,OAAO,CACL,MAA0C,EAC1C,UAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpB,IAAI,KAAK,CAAC,EAAE,KAAK,UAAU;gBAAE,SAAS;YACtC,IAAI,aAAa,CAAC,KAAK,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,SAAS;YAC7C,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,mFAAmF;IACnF,MAAM,CAAC,OAAe;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED,8JAA8J;IACtJ,KAAK,CAAC,KAAK,CAAC,OAAe;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;QACjD,SAAS,CAAC;YACR,IAAI,OAAO,CAAC;YACZ,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,eAAe,CAC1D,OAAO,EACP;oBACE,IAAI,EAAE,6BAA6B;oBACnC,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE;iBACrC,EACD,EAAE,IAAI,EAAE,MAAM,EAAE,CACjB,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,mGAAmG;gBACnG,OAAO;YACT,CAAC;YACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACjC,OAAO;YACT,CAAC;YACD,sNAAsN;YACtN,MAAM,SAAS,GACb,OAAO,CAAC,MAAM,KAAK,OAAO;gBAC1B,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ;gBAAE,OAAO;YACjD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,UAAU,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=agent-details-hub.integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-details-hub.integration.test.d.ts","sourceRoot":"","sources":["../../src/test/agent-details-hub.integration.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,64 @@
1
+ import { afterEach, expect, it } from "vitest";
2
+ import { realHubOverWs, TeardownStack, waitForCondition, } from "./hub-helpers.js";
3
+ import { waitFor, wireTestTransportWithHub } from "./test-transport.js";
4
+ import { MeshStore } from "../core/mesh-store.js";
5
+ /** Covers the hub handshake and the first end-to-end secure channel setup on a loaded machine. */
6
+ const HUB_CONNECT_TIMEOUT_MS = 15_000;
7
+ /** Covers the same setup plus one request round trip each way. */
8
+ const DETAILS_EXCHANGE_TIMEOUT_MS = 25_000;
9
+ const cleanups = new TeardownStack();
10
+ afterEach(async () => {
11
+ await cleanups.run();
12
+ });
13
+ it("two stores exchange agent details through a real relay hub", async () => {
14
+ const hub = await realHubOverWs();
15
+ cleanups.push(hub.close);
16
+ const answerer = new MeshStore();
17
+ const { transport: answererTransport } = await wireTestTransportWithHub(answerer);
18
+ await answerer.registerAgent({
19
+ name: "answerer",
20
+ harness: "test",
21
+ cwd: "/t/a",
22
+ pid: process.pid,
23
+ visibility: "visible",
24
+ tags: [],
25
+ });
26
+ const asker = new MeshStore();
27
+ const { transport: askerTransport } = await wireTestTransportWithHub(asker);
28
+ await asker.registerAgent({
29
+ name: "asker",
30
+ harness: "test",
31
+ cwd: "/t/b",
32
+ pid: process.pid,
33
+ visibility: "visible",
34
+ tags: [],
35
+ });
36
+ asker.gatewayTrust.add(answerer.peerId);
37
+ answerer.gatewayTrust.add(asker.peerId);
38
+ cleanups.push(async () => answerer.shutdown());
39
+ cleanups.push(async () => asker.shutdown());
40
+ await answererTransport.hub.connect(hub.url);
41
+ await askerTransport.hub.connect(hub.url);
42
+ await waitForCondition(() => askerTransport.hub.isConnected &&
43
+ askerTransport.hub.peers().includes(answerer.peerId), HUB_CONNECT_TIMEOUT_MS);
44
+ const stub = (id, name) => ({
45
+ id,
46
+ version: 1,
47
+ name,
48
+ harness: "test",
49
+ cwd: "",
50
+ pid: process.pid,
51
+ startedAt: new Date().toISOString(),
52
+ visibility: "visible",
53
+ status: "active",
54
+ tags: [],
55
+ subscribedRooms: [],
56
+ });
57
+ asker.agentDetailsExchange.refresh([stub(answerer.peerId, "answerer")], asker.peerId);
58
+ answerer.agentDetailsExchange.refresh([stub(asker.peerId, "asker")], answerer.peerId);
59
+ await waitFor(() => asker.agentDetailsExchange.cached(answerer.peerId) !== undefined &&
60
+ answerer.agentDetailsExchange.cached(asker.peerId) !== undefined, "both stores cached the other's agent details", DETAILS_EXCHANGE_TIMEOUT_MS);
61
+ expect(asker.agentDetailsExchange.cached(answerer.peerId)?.cwd).toBe("/t/a");
62
+ expect(answerer.agentDetailsExchange.cached(asker.peerId)?.cwd).toBe("/t/b");
63
+ });
64
+ //# sourceMappingURL=agent-details-hub.integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-details-hub.integration.test.js","sourceRoot":"","sources":["../../src/test/agent-details-hub.integration.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "agent-comms",
3
3
  "description": "Cross-harness communication mesh for LLM agents — rooms, DMs, presence, and real-time push delivery over TCP",
4
- "version": "8.13.5",
4
+ "version": "8.13.7",
5
5
  "bin": {
6
6
  "agent-comms": "dist/cli.js"
7
7
  },