agent-comms 1.0.0 → 1.0.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 (51) hide show
  1. package/README.md +115 -0
  2. package/bin.js +29 -0
  3. package/dist/bridges/claude-code/channel.d.ts +17 -0
  4. package/dist/bridges/claude-code/channel.d.ts.map +1 -0
  5. package/dist/bridges/claude-code/channel.js +143 -0
  6. package/dist/bridges/claude-code/channel.js.map +1 -0
  7. package/dist/bridges/codex/stop_hook.d.ts +13 -0
  8. package/dist/bridges/codex/stop_hook.d.ts.map +1 -0
  9. package/dist/bridges/codex/stop_hook.js +99 -0
  10. package/dist/bridges/codex/stop_hook.js.map +1 -0
  11. package/dist/bridges/codex/tool.d.ts +14 -0
  12. package/dist/bridges/codex/tool.d.ts.map +1 -0
  13. package/dist/bridges/codex/tool.js +71 -0
  14. package/dist/bridges/codex/tool.js.map +1 -0
  15. package/dist/bridges/opencode/plugin.d.ts +23 -0
  16. package/dist/bridges/opencode/plugin.d.ts.map +1 -0
  17. package/dist/bridges/opencode/plugin.js +73 -0
  18. package/dist/bridges/opencode/plugin.js.map +1 -0
  19. package/dist/bridges/pi/index.d.ts +11 -0
  20. package/dist/bridges/pi/index.d.ts.map +1 -0
  21. package/dist/bridges/pi/index.js +140 -0
  22. package/dist/bridges/pi/index.js.map +1 -0
  23. package/dist/cli.d.ts +16 -0
  24. package/dist/cli.d.ts.map +1 -0
  25. package/dist/cli.js +505 -0
  26. package/dist/cli.js.map +1 -0
  27. package/dist/core/bridge.d.ts +77 -0
  28. package/dist/core/bridge.d.ts.map +1 -0
  29. package/dist/core/bridge.js +224 -0
  30. package/dist/core/bridge.js.map +1 -0
  31. package/dist/core/index.d.ts +13 -0
  32. package/dist/core/index.d.ts.map +1 -0
  33. package/dist/core/index.js +11 -0
  34. package/dist/core/index.js.map +1 -0
  35. package/dist/core/nanoid.d.ts +6 -0
  36. package/dist/core/nanoid.d.ts.map +1 -0
  37. package/dist/core/nanoid.js +19 -0
  38. package/dist/core/nanoid.js.map +1 -0
  39. package/dist/core/store.d.ts +60 -0
  40. package/dist/core/store.d.ts.map +1 -0
  41. package/dist/core/store.js +431 -0
  42. package/dist/core/store.js.map +1 -0
  43. package/dist/core/tool.d.ts +40 -0
  44. package/dist/core/tool.d.ts.map +1 -0
  45. package/dist/core/tool.js +210 -0
  46. package/dist/core/tool.js.map +1 -0
  47. package/dist/core/types.d.ts +308 -0
  48. package/dist/core/types.d.ts.map +1 -0
  49. package/dist/core/types.js +168 -0
  50. package/dist/core/types.js.map +1 -0
  51. package/package.json +73 -8
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Agent Comms — shared protocol types and Zod schemas.
3
+ *
4
+ * Every type is derived from its Zod schema (single source of truth).
5
+ * Use `Schema.parse(raw)` at JSON boundaries instead of `JSON.parse(raw) as T`.
6
+ * Use `Schema.is(value)` for type narrowing.
7
+ */
8
+ import { z } from "zod";
9
+ // ---------------------------------------------------------------------------
10
+ // Schema-attached type guard helper
11
+ // ---------------------------------------------------------------------------
12
+ function defineSchema(schema) {
13
+ return Object.assign(schema, {
14
+ is(value) {
15
+ return schema.safeParse(value).success;
16
+ },
17
+ });
18
+ }
19
+ // ---------------------------------------------------------------------------
20
+ // Enums
21
+ // ---------------------------------------------------------------------------
22
+ export const Visibility = defineSchema(z.union([z.literal("visible"), z.literal("hidden"), z.literal("ghost")]));
23
+ export const AgentStatus = defineSchema(z.union([
24
+ z.literal("active"),
25
+ z.literal("idle"),
26
+ z.literal("busy"),
27
+ z.literal("offline"),
28
+ ]));
29
+ export const RoomType = defineSchema(z.union([z.literal("public"), z.literal("private"), z.literal("secret")]));
30
+ // ---------------------------------------------------------------------------
31
+ // AgentIdentity
32
+ // ---------------------------------------------------------------------------
33
+ export const AgentIdentitySchema = defineSchema(z.object({
34
+ id: z.string(),
35
+ name: z.string(),
36
+ harness: z.string(),
37
+ pid: z.number(),
38
+ startedAt: z.string(),
39
+ visibility: Visibility,
40
+ status: AgentStatus,
41
+ tags: z.array(z.string()),
42
+ subscribedRooms: z.array(z.string()),
43
+ }));
44
+ // ---------------------------------------------------------------------------
45
+ // Room
46
+ // ---------------------------------------------------------------------------
47
+ export const RoomSchema = defineSchema(z.object({
48
+ id: z.string(),
49
+ name: z.string(),
50
+ type: RoomType,
51
+ owner: z.string(),
52
+ createdAt: z.string(),
53
+ description: z.string(),
54
+ members: z.array(z.string()),
55
+ invited: z.array(z.string()),
56
+ }));
57
+ // ---------------------------------------------------------------------------
58
+ // Messages
59
+ // ---------------------------------------------------------------------------
60
+ export const RoomMessageSchema = defineSchema(z.object({
61
+ id: z.string(),
62
+ from: z.string(),
63
+ room: z.string(),
64
+ content: z.string(),
65
+ timestamp: z.string(),
66
+ replyTo: z.string().optional(),
67
+ }));
68
+ export const DmMessageSchema = defineSchema(z.object({
69
+ id: z.string(),
70
+ from: z.string(),
71
+ to: z.string(),
72
+ content: z.string(),
73
+ timestamp: z.string(),
74
+ }));
75
+ // ---------------------------------------------------------------------------
76
+ // Delivery events
77
+ // ---------------------------------------------------------------------------
78
+ export const DeliveryEventSchema = defineSchema(z.discriminatedUnion("type", [
79
+ z.object({
80
+ type: z.literal("room_message"),
81
+ message: RoomMessageSchema,
82
+ }),
83
+ z.object({
84
+ type: z.literal("dm"),
85
+ message: DmMessageSchema,
86
+ }),
87
+ z.object({
88
+ type: z.literal("room_invite"),
89
+ room: z.string(),
90
+ from: z.string(),
91
+ }),
92
+ z.object({
93
+ type: z.literal("member_joined"),
94
+ room: z.string(),
95
+ agent: z.string(),
96
+ }),
97
+ z.object({
98
+ type: z.literal("member_left"),
99
+ room: z.string(),
100
+ agent: z.string(),
101
+ }),
102
+ ]));
103
+ // ---------------------------------------------------------------------------
104
+ // BusAction
105
+ // ---------------------------------------------------------------------------
106
+ export const BusActionSchema = defineSchema(z.discriminatedUnion("action", [
107
+ z.object({
108
+ action: z.literal("register"),
109
+ name: z.string(),
110
+ visibility: Visibility,
111
+ tags: z.array(z.string()),
112
+ }),
113
+ z.object({
114
+ action: z.literal("update"),
115
+ visibility: Visibility.optional(),
116
+ status: AgentStatus.optional(),
117
+ name: z.string().optional(),
118
+ tags: z.array(z.string()).optional(),
119
+ }),
120
+ z.object({ action: z.literal("whoami") }),
121
+ z.object({
122
+ action: z.literal("create_room"),
123
+ name: z.string(),
124
+ type: RoomType,
125
+ description: z.string(),
126
+ }),
127
+ z.object({ action: z.literal("list_rooms") }),
128
+ z.object({
129
+ action: z.literal("join_room"),
130
+ room: z.string(),
131
+ }),
132
+ z.object({
133
+ action: z.literal("leave_room"),
134
+ room: z.string(),
135
+ }),
136
+ z.object({
137
+ action: z.literal("send"),
138
+ target: z.string(),
139
+ content: z.string(),
140
+ replyTo: z.string().optional(),
141
+ }),
142
+ z.object({
143
+ action: z.literal("dm"),
144
+ target: z.string(),
145
+ content: z.string(),
146
+ }),
147
+ z.object({ action: z.literal("list_agents") }),
148
+ z.object({
149
+ action: z.literal("read_room"),
150
+ room: z.string(),
151
+ since: z.string().optional(),
152
+ }),
153
+ z.object({
154
+ action: z.literal("invite"),
155
+ room: z.string(),
156
+ agent: z.string(),
157
+ }),
158
+ z.object({
159
+ action: z.literal("kick"),
160
+ room: z.string(),
161
+ agent: z.string(),
162
+ }),
163
+ z.object({
164
+ action: z.literal("destroy_room"),
165
+ room: z.string(),
166
+ }),
167
+ ]));
168
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,78 @@
1
1
  {
2
2
  "name": "agent-comms",
3
- "version": "1.0.0",
4
- "description": "",
5
- "main": "index.js",
3
+ "version": "1.0.5",
4
+ "description": "Cross-harness agent communication bus — filesystem-based rooms, DMs, and presence for LLM agents",
5
+ "type": "module",
6
+ "packageManager": "pnpm@10.33.0",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/ExaDev/agent-comms.git"
10
+ },
11
+ "homepage": "https://github.com/ExaDev/agent-comms#readme",
12
+ "bugs": "https://github.com/ExaDev/agent-comms/issues",
13
+ "license": "MIT",
14
+ "keywords": [
15
+ "agent",
16
+ "llm",
17
+ "communication",
18
+ "bus",
19
+ "mcp",
20
+ "rooms",
21
+ "dm",
22
+ "presence",
23
+ "cross-harness"
24
+ ],
25
+ "main": "./dist/core/index.js",
26
+ "types": "./dist/core/index.d.ts",
27
+ "exports": {
28
+ ".": {
29
+ "types": "./dist/core/index.d.ts",
30
+ "import": "./dist/core/index.js"
31
+ }
32
+ },
33
+ "files": [
34
+ "dist"
35
+ ],
36
+ "bin": {
37
+ "agent-comms": "bin.js"
38
+ },
39
+ "publishConfig": {
40
+ "provenance": true,
41
+ "access": "public"
42
+ },
6
43
  "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
44
+ "prepare": "husky",
45
+ "build": "tsc",
46
+ "lint": "eslint .",
47
+ "test": "node --test dist/test/**/*.test.js",
48
+ "typecheck": "tsc --noEmit"
49
+ },
50
+ "devDependencies": {
51
+ "@eslint/json": "1.2.0",
52
+ "@eslint/markdown": "8.0.1",
53
+ "@mariozechner/pi-ai": "0.70.2",
54
+ "@mariozechner/pi-coding-agent": "0.70.2",
55
+ "@modelcontextprotocol/sdk": "1.29.0",
56
+ "@semantic-release/commit-analyzer": "13.0.1",
57
+ "@semantic-release/git": "10.0.1",
58
+ "@semantic-release/github": "12.0.6",
59
+ "@semantic-release/release-notes-generator": "14.1.0",
60
+ "@types/bun": "1.3.12",
61
+ "@types/node": "^25.6.0",
62
+ "conventional-changelog-conventionalcommits": "9.3.1",
63
+ "eslint": "10.2.1",
64
+ "eslint-config-prettier": "10.1.8",
65
+ "eslint-plugin-prettier": "5.5.5",
66
+ "husky": "9.1.7",
67
+ "jiti": "2.6.1",
68
+ "prettier": "3.8.3",
69
+ "semantic-release": "25.0.3",
70
+ "tsx": "^4.21.0",
71
+ "typescript": "^6.0.3",
72
+ "typescript-eslint": "8.58.2"
8
73
  },
9
- "keywords": [],
10
- "author": "",
11
- "license": "ISC",
12
- "type": "commonjs"
74
+ "dependencies": {
75
+ "typebox": "1.1.28",
76
+ "zod": "4.3.6"
77
+ }
13
78
  }