agent-relay 2.1.5 → 2.1.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.
Files changed (140) hide show
  1. package/README.md +91 -234
  2. package/dist/index.cjs +153 -25
  3. package/dist/src/cli/commands/doctor.d.ts.map +1 -1
  4. package/dist/src/cli/commands/doctor.js +32 -7
  5. package/dist/src/cli/commands/doctor.js.map +1 -1
  6. package/dist/src/cli/index.d.ts.map +1 -1
  7. package/dist/src/cli/index.js +260 -27
  8. package/dist/src/cli/index.js.map +1 -1
  9. package/install.sh +545 -34
  10. package/package.json +18 -18
  11. package/packages/api-types/package.json +1 -1
  12. package/packages/benchmark/package.json +4 -4
  13. package/packages/bridge/package.json +8 -8
  14. package/packages/cli-tester/package.json +1 -1
  15. package/packages/config/package.json +2 -2
  16. package/packages/continuity/package.json +2 -2
  17. package/packages/daemon/dist/server.d.ts +5 -0
  18. package/packages/daemon/dist/server.d.ts.map +1 -1
  19. package/packages/daemon/dist/server.js +76 -4
  20. package/packages/daemon/dist/server.js.map +1 -1
  21. package/packages/daemon/package.json +12 -12
  22. package/packages/daemon/src/server.ts +79 -4
  23. package/packages/hooks/package.json +4 -4
  24. package/packages/mcp/dist/bin.js +34 -3
  25. package/packages/mcp/dist/bin.js.map +1 -1
  26. package/packages/mcp/dist/cloud.d.ts +7 -114
  27. package/packages/mcp/dist/cloud.d.ts.map +1 -1
  28. package/packages/mcp/dist/cloud.js +21 -431
  29. package/packages/mcp/dist/cloud.js.map +1 -1
  30. package/packages/mcp/dist/errors.d.ts +4 -22
  31. package/packages/mcp/dist/errors.d.ts.map +1 -1
  32. package/packages/mcp/dist/errors.js +4 -43
  33. package/packages/mcp/dist/errors.js.map +1 -1
  34. package/packages/mcp/dist/hybrid-client.d.ts.map +1 -1
  35. package/packages/mcp/dist/hybrid-client.js +7 -1
  36. package/packages/mcp/dist/hybrid-client.js.map +1 -1
  37. package/packages/mcp/dist/install.d.ts.map +1 -1
  38. package/packages/mcp/dist/install.js +7 -8
  39. package/packages/mcp/dist/install.js.map +1 -1
  40. package/packages/mcp/package.json +4 -3
  41. package/packages/mcp/src/bin.ts +39 -3
  42. package/packages/mcp/src/cloud.ts +29 -511
  43. package/packages/mcp/src/errors.ts +12 -49
  44. package/packages/mcp/src/hybrid-client.ts +8 -1
  45. package/packages/mcp/src/install.ts +7 -8
  46. package/packages/mcp/tests/discover.test.ts +72 -11
  47. package/packages/memory/package.json +2 -2
  48. package/packages/policy/package.json +2 -2
  49. package/packages/protocol/dist/types.d.ts +17 -1
  50. package/packages/protocol/dist/types.d.ts.map +1 -1
  51. package/packages/protocol/package.json +1 -1
  52. package/packages/protocol/src/types.ts +23 -0
  53. package/packages/resiliency/package.json +1 -1
  54. package/packages/sdk/dist/browser-client.d.ts +212 -0
  55. package/packages/sdk/dist/browser-client.d.ts.map +1 -0
  56. package/packages/sdk/dist/browser-client.js +750 -0
  57. package/packages/sdk/dist/browser-client.js.map +1 -0
  58. package/packages/sdk/dist/browser-framing.d.ts +46 -0
  59. package/packages/sdk/dist/browser-framing.d.ts.map +1 -0
  60. package/packages/sdk/dist/browser-framing.js +122 -0
  61. package/packages/sdk/dist/browser-framing.js.map +1 -0
  62. package/packages/sdk/dist/client.d.ts +129 -2
  63. package/packages/sdk/dist/client.d.ts.map +1 -1
  64. package/packages/sdk/dist/client.js +312 -2
  65. package/packages/sdk/dist/client.js.map +1 -1
  66. package/packages/sdk/dist/discovery.d.ts +10 -0
  67. package/packages/sdk/dist/discovery.d.ts.map +1 -0
  68. package/packages/sdk/dist/discovery.js +22 -0
  69. package/packages/sdk/dist/discovery.js.map +1 -0
  70. package/packages/sdk/dist/errors.d.ts +9 -0
  71. package/packages/sdk/dist/errors.d.ts.map +1 -0
  72. package/packages/sdk/dist/errors.js +9 -0
  73. package/packages/sdk/dist/errors.js.map +1 -0
  74. package/packages/sdk/dist/index.d.ts +18 -2
  75. package/packages/sdk/dist/index.d.ts.map +1 -1
  76. package/packages/sdk/dist/index.js +27 -1
  77. package/packages/sdk/dist/index.js.map +1 -1
  78. package/packages/sdk/dist/transports/index.d.ts +92 -0
  79. package/packages/sdk/dist/transports/index.d.ts.map +1 -0
  80. package/packages/sdk/dist/transports/index.js +129 -0
  81. package/packages/sdk/dist/transports/index.js.map +1 -0
  82. package/packages/sdk/dist/transports/socket-transport.d.ts +30 -0
  83. package/packages/sdk/dist/transports/socket-transport.d.ts.map +1 -0
  84. package/packages/sdk/dist/transports/socket-transport.js +94 -0
  85. package/packages/sdk/dist/transports/socket-transport.js.map +1 -0
  86. package/packages/sdk/dist/transports/types.d.ts +69 -0
  87. package/packages/sdk/dist/transports/types.d.ts.map +1 -0
  88. package/packages/sdk/dist/transports/types.js +10 -0
  89. package/packages/sdk/dist/transports/types.js.map +1 -0
  90. package/packages/sdk/dist/transports/websocket-transport.d.ts +55 -0
  91. package/packages/sdk/dist/transports/websocket-transport.d.ts.map +1 -0
  92. package/packages/sdk/dist/transports/websocket-transport.js +180 -0
  93. package/packages/sdk/dist/transports/websocket-transport.js.map +1 -0
  94. package/packages/sdk/package.json +28 -4
  95. package/packages/sdk/src/browser-client.ts +985 -0
  96. package/packages/sdk/src/browser-framing.test.ts +115 -0
  97. package/packages/sdk/src/browser-framing.ts +150 -0
  98. package/packages/sdk/src/client.test.ts +425 -0
  99. package/packages/sdk/src/client.ts +397 -3
  100. package/packages/sdk/src/discovery.ts +38 -0
  101. package/packages/sdk/src/errors.ts +17 -0
  102. package/packages/sdk/src/index.ts +82 -1
  103. package/packages/sdk/src/transports/index.ts +197 -0
  104. package/packages/sdk/src/transports/socket-transport.ts +115 -0
  105. package/packages/sdk/src/transports/types.ts +77 -0
  106. package/packages/sdk/src/transports/websocket-transport.ts +245 -0
  107. package/packages/sdk/tsconfig.json +1 -1
  108. package/packages/spawner/package.json +1 -1
  109. package/packages/state/package.json +1 -1
  110. package/packages/storage/dist/sqlite-adapter.d.ts +1 -0
  111. package/packages/storage/dist/sqlite-adapter.d.ts.map +1 -1
  112. package/packages/storage/dist/sqlite-adapter.js +31 -3
  113. package/packages/storage/dist/sqlite-adapter.js.map +1 -1
  114. package/packages/storage/package.json +2 -2
  115. package/packages/storage/src/jsonl-adapter.test.ts +8 -3
  116. package/packages/storage/src/sqlite-adapter.ts +34 -6
  117. package/packages/telemetry/package.json +1 -1
  118. package/packages/trajectory/package.json +2 -2
  119. package/packages/user-directory/package.json +2 -2
  120. package/packages/utils/dist/cjs/discovery.js +328 -0
  121. package/packages/utils/dist/cjs/errors.js +81 -0
  122. package/packages/utils/dist/discovery.d.ts +123 -0
  123. package/packages/utils/dist/discovery.d.ts.map +1 -0
  124. package/packages/utils/dist/discovery.js +439 -0
  125. package/packages/utils/dist/discovery.js.map +1 -0
  126. package/packages/utils/dist/errors.d.ts +29 -0
  127. package/packages/utils/dist/errors.d.ts.map +1 -0
  128. package/packages/utils/dist/errors.js +50 -0
  129. package/packages/utils/dist/errors.js.map +1 -0
  130. package/packages/utils/package.json +15 -2
  131. package/packages/utils/src/consolidation.test.ts +125 -0
  132. package/packages/utils/src/discovery.test.ts +196 -0
  133. package/packages/utils/src/discovery.ts +524 -0
  134. package/packages/utils/src/errors.test.ts +83 -0
  135. package/packages/utils/src/errors.ts +56 -0
  136. package/packages/wrapper/dist/relay-pty-orchestrator.d.ts.map +1 -1
  137. package/packages/wrapper/dist/relay-pty-orchestrator.js +12 -0
  138. package/packages/wrapper/dist/relay-pty-orchestrator.js.map +1 -1
  139. package/packages/wrapper/package.json +6 -6
  140. package/packages/wrapper/src/relay-pty-orchestrator.ts +12 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-relay/hooks",
3
- "version": "2.1.5",
3
+ "version": "2.1.7",
4
4
  "description": "Hook emitter, registry, and trajectory hooks for Agent Relay",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -37,9 +37,9 @@
37
37
  "test:watch": "vitest"
38
38
  },
39
39
  "dependencies": {
40
- "@agent-relay/protocol": "2.1.5",
41
- "@agent-relay/config": "2.1.5",
42
- "@agent-relay/trajectory": "2.1.5"
40
+ "@agent-relay/protocol": "2.1.7",
41
+ "@agent-relay/config": "2.1.7",
42
+ "@agent-relay/trajectory": "2.1.7"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@types/node": "^22.19.3",
@@ -22,6 +22,8 @@ const { values, positionals } = parseArgs({
22
22
  list: { type: 'boolean', short: 'l' },
23
23
  status: { type: 'boolean', short: 's' },
24
24
  quiet: { type: 'boolean', short: 'q' },
25
+ project: { type: 'string', short: 'p' },
26
+ socket: { type: 'string' },
25
27
  },
26
28
  });
27
29
  const command = positionals[0];
@@ -46,6 +48,10 @@ Install Options:
46
48
  -s, --status Show installation status
47
49
  -q, --quiet Minimal output
48
50
 
51
+ Serve Options:
52
+ -p, --project <path> Project root path (where .agent-relay lives)
53
+ --socket <path> Socket path override
54
+
49
55
  Supported Editors:
50
56
  ${getValidEditors().join(', ')}
51
57
 
@@ -99,20 +105,45 @@ switch (command) {
99
105
  try {
100
106
  const { runMCPServer, discoverSocket, discoverAgentName } = await import('./index.js');
101
107
  const { createHybridClient, discoverProjectRoot } = await import('./hybrid-client.js');
102
- // Discover socket and agent identity
108
+ const { join } = await import('node:path');
109
+ const { existsSync } = await import('node:fs');
110
+ // Use explicit project path if provided (for MCP servers invoked from different contexts)
111
+ const explicitProject = values.project;
112
+ const explicitSocket = values.socket;
113
+ // If explicit project path provided, derive socket path from it
114
+ let socketPath = explicitSocket;
115
+ let projectRoot = explicitProject;
116
+ if (explicitProject && !explicitSocket) {
117
+ // Derive socket path from project root
118
+ socketPath = join(explicitProject, '.agent-relay', 'relay.sock');
119
+ }
120
+ // Discover socket and agent identity (uses explicit paths if set via env)
121
+ if (socketPath) {
122
+ process.env.RELAY_SOCKET = socketPath;
123
+ }
103
124
  const discovery = discoverSocket();
104
125
  const agentName = discoverAgentName(discovery) || `mcp-${process.pid}`;
105
126
  // Discover project root for file-based transport
106
- const projectRoot = discoverProjectRoot();
127
+ if (!projectRoot) {
128
+ projectRoot = discoverProjectRoot() ?? undefined;
129
+ }
107
130
  if (!projectRoot) {
108
131
  console.error('Could not find project root (.agent-relay directory)');
132
+ console.error('Use --project <path> to specify the project root explicitly');
133
+ process.exit(1);
134
+ }
135
+ // Verify project root has .agent-relay directory
136
+ const relayDir = join(projectRoot, '.agent-relay');
137
+ if (!existsSync(relayDir)) {
138
+ console.error(`Project root does not have .agent-relay directory: ${projectRoot}`);
139
+ console.error('Run "agent-relay up" in the project to start the daemon first');
109
140
  process.exit(1);
110
141
  }
111
142
  // Create hybrid client (file-based writes, socket queries)
112
143
  const client = createHybridClient({
113
144
  agentName,
114
145
  projectRoot,
115
- socketPath: discovery?.socketPath,
146
+ socketPath: socketPath || discovery?.socketPath,
116
147
  project: discovery?.project,
117
148
  });
118
149
  await runMCPServer(client);
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
@@ -1,120 +1,13 @@
1
1
  /**
2
2
  * Cloud Integration for Agent Relay MCP Server
3
3
  *
4
- * Provides cloud workspace detection, remote daemon connection,
5
- * and workspace-aware socket discovery for cloud deployments.
6
- */
7
- export interface CloudWorkspace {
8
- workspaceId: string;
9
- cloudApiUrl: string;
10
- workspaceToken?: string;
11
- ownerUserId?: string;
12
- }
13
- export interface DiscoveryResult {
14
- socketPath: string;
15
- project: string;
16
- source: 'env' | 'cloud' | 'cwd' | 'scan';
17
- isCloud: boolean;
18
- workspace?: CloudWorkspace;
19
- }
20
- export interface CloudConnectionOptions {
21
- /** Override socket path (for testing) */
22
- socketPath?: string;
23
- /** Override workspace detection */
24
- workspace?: Partial<CloudWorkspace>;
25
- }
26
- /**
27
- * Detect if running in a cloud workspace environment.
28
- *
29
- * Cloud workspaces set these environment variables:
30
- * - WORKSPACE_ID: The unique workspace identifier
31
- * - CLOUD_API_URL: The cloud API endpoint
32
- * - WORKSPACE_TOKEN: Bearer token for API auth (optional)
33
- * - WORKSPACE_OWNER_USER_ID: The workspace owner's user ID (optional)
34
- */
35
- export declare function detectCloudWorkspace(): CloudWorkspace | null;
36
- /**
37
- * Check if we're running in a cloud workspace.
38
- */
39
- export declare function isCloudWorkspace(): boolean;
40
- /**
41
- * Get the workspace-namespaced socket path.
42
- *
43
- * In cloud workspaces, sockets are stored at:
44
- * /tmp/relay/{WORKSPACE_ID}/sockets/daemon.sock
45
- *
46
- * This provides multi-tenant isolation on shared infrastructure.
47
- */
48
- export declare function getCloudSocketPath(workspaceId: string): string;
49
- /**
50
- * Get the workspace-namespaced outbox path.
51
- *
52
- * In cloud workspaces, outbox directories are at:
53
- * /tmp/relay/{WORKSPACE_ID}/outbox/{agentName}/
54
- */
55
- export declare function getCloudOutboxPath(workspaceId: string, agentName: string): string;
56
- /**
57
- * Discover relay daemon socket with cloud-awareness.
58
- *
59
- * Priority order:
60
- * 1. RELAY_SOCKET environment variable (explicit path)
61
- * 2. Cloud workspace socket (if WORKSPACE_ID is set)
62
- * 3. RELAY_PROJECT environment variable (project name → data dir)
63
- * 4. Current working directory .relay/config.json
64
- * 5. Scan data directory for active sockets
65
- *
66
- * @param options - Optional configuration overrides
67
- * @returns Discovery result with socket path, project info, and cloud status
68
- */
69
- export declare function discoverSocket(options?: CloudConnectionOptions): DiscoveryResult | null;
70
- /**
71
- * Make an authenticated request to the cloud API.
72
- *
73
- * @param workspace - Cloud workspace configuration
74
- * @param path - API path (e.g., '/api/status')
75
- * @param options - Fetch options
76
- * @returns Response from the API
77
- */
78
- export declare function cloudApiRequest(workspace: CloudWorkspace, path: string, options?: RequestInit): Promise<Response>;
79
- /**
80
- * Get the workspace status from the cloud API.
81
- */
82
- export declare function getWorkspaceStatus(workspace: CloudWorkspace): Promise<{
83
- status: string;
84
- agents?: string[];
85
- } | null>;
86
- export interface CloudConnectionInfo {
87
- socketPath: string;
88
- project: string;
89
- isCloud: boolean;
90
- workspace?: CloudWorkspace;
91
- daemonUrl?: string;
92
- }
93
- /**
94
- * Get connection info for the relay daemon.
95
- *
96
- * This function determines the best way to connect to the daemon:
97
- * - In cloud environments: Uses workspace-namespaced socket
98
- * - In local environments: Uses standard socket discovery
99
- *
100
- * @param options - Optional configuration overrides
101
- * @returns Connection info or null if daemon not found
102
- */
103
- export declare function getConnectionInfo(options?: CloudConnectionOptions): CloudConnectionInfo | null;
104
- /**
105
- * Environment variable summary for debugging.
106
- */
107
- export declare function getCloudEnvironmentSummary(): Record<string, string | undefined>;
108
- /**
109
- * Discover the agent name for the MCP server.
110
- *
111
- * Priority order:
112
- * 1. RELAY_AGENT_NAME environment variable (explicit)
113
- * 2. Identity file in .agent-relay directory (written by wrapper)
114
- * 3. Scan outbox directories to find agent's outbox
4
+ * This module re-exports all cloud/discovery functionality from
5
+ * @agent-relay/utils, which is the single source of truth for socket
6
+ * discovery, cloud workspace detection, and agent identity discovery.
115
7
  *
116
- * @param discovery - Optional discovery result with socket path info
117
- * @returns Agent name or null if not found
8
+ * Previously this module contained its own implementation (~520 lines).
9
+ * It has been consolidated into @agent-relay/utils to eliminate code
10
+ * duplication between MCP and SDK packages.
118
11
  */
119
- export declare function discoverAgentName(discovery?: DiscoveryResult | null): string | null;
12
+ export { type CloudWorkspace, type DiscoveryResult, type CloudConnectionOptions, type CloudConnectionInfo, detectCloudWorkspace, isCloudWorkspace, getCloudSocketPath, getCloudOutboxPath, discoverSocket, cloudApiRequest, getWorkspaceStatus, getConnectionInfo, getCloudEnvironmentSummary, discoverAgentName, } from '@agent-relay/utils/discovery';
120
13
  //# sourceMappingURL=cloud.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;CACrC;AAMD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,GAAG,IAAI,CAc5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAMD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEjF;AAoBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,sBAA2B,GAAG,eAAe,GAAG,IAAI,CAiJ3F;AAMD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,QAAQ,CAAC,CAgBnB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,cAAc,GACxB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAAC,CAevD;AAMD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,GAAE,sBAA2B,GACnC,mBAAmB,GAAG,IAAI,CAoB5B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAU/E;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAgHnF"}
1
+ {"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EAGxB,oBAAoB,EACpB,gBAAgB,EAGhB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EAGd,eAAe,EACf,kBAAkB,EAGlB,iBAAiB,EAGjB,0BAA0B,EAG1B,iBAAiB,GAClB,MAAM,8BAA8B,CAAC"}