@agent-relay/sdk 2.0.4 → 2.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.
- package/README.md +43 -160
- package/dist/client.d.ts +3 -99
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +6 -113
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/standalone.d.ts.map +1 -1
- package/dist/standalone.js +0 -1
- package/dist/standalone.js.map +1 -1
- package/package.json +2 -2
- package/dist/discovery.d.ts +0 -29
- package/dist/discovery.d.ts.map +0 -1
- package/dist/discovery.js +0 -126
- package/dist/discovery.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
# @agent-relay/sdk
|
|
2
2
|
|
|
3
|
-
Dead simple agent-to-agent communication
|
|
3
|
+
Dead simple agent-to-agent communication.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm install @agent-relay/sdk
|
|
8
|
+
npm install @agent-relay/sdk @agent-relay/daemon
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
## Quick Start
|
|
12
12
|
|
|
13
|
-
### Standalone (In-Process Daemon)
|
|
14
|
-
|
|
15
13
|
```typescript
|
|
16
14
|
import { createRelay } from '@agent-relay/sdk';
|
|
17
15
|
|
|
@@ -34,7 +32,9 @@ alice.sendMessage('Bob', 'Hello!');
|
|
|
34
32
|
await relay.stop();
|
|
35
33
|
```
|
|
36
34
|
|
|
37
|
-
|
|
35
|
+
That's it. No daemon to start, no config files, no setup.
|
|
36
|
+
|
|
37
|
+
## Even Simpler: Two Agents
|
|
38
38
|
|
|
39
39
|
```typescript
|
|
40
40
|
import { createPair } from '@agent-relay/sdk';
|
|
@@ -47,163 +47,56 @@ alice.sendMessage('bob', 'Hey!');
|
|
|
47
47
|
await stop();
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
If you're running `agent-relay up` separately:
|
|
53
|
-
|
|
54
|
-
```typescript
|
|
55
|
-
import { RelayClient } from '@agent-relay/sdk';
|
|
56
|
-
|
|
57
|
-
// Socket path is auto-discovered from your project's .agent-relay/relay.sock
|
|
58
|
-
const client = new RelayClient({ agentName: 'MyAgent' });
|
|
59
|
-
|
|
60
|
-
await client.connect();
|
|
61
|
-
client.sendMessage('OtherAgent', 'Hello!');
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
## Socket Discovery
|
|
65
|
-
|
|
66
|
-
The SDK automatically discovers the daemon socket in this order:
|
|
67
|
-
|
|
68
|
-
1. `RELAY_SOCKET` environment variable
|
|
69
|
-
2. Cloud workspace socket (if `WORKSPACE_ID` is set)
|
|
70
|
-
3. **Project-local socket** (`{projectRoot}/.agent-relay/relay.sock`)
|
|
71
|
-
4. Legacy fallback (`/tmp/agent-relay.sock`)
|
|
72
|
-
|
|
73
|
-
You can also use the discovery API directly:
|
|
74
|
-
|
|
75
|
-
```typescript
|
|
76
|
-
import { discoverSocket, getDefaultSocketPath } from '@agent-relay/sdk';
|
|
77
|
-
|
|
78
|
-
// Get detailed discovery info
|
|
79
|
-
const { socketPath, projectId, source } = discoverSocket();
|
|
80
|
-
console.log(`Using socket: ${socketPath} (source: ${source})`);
|
|
81
|
-
|
|
82
|
-
// Or just get the path
|
|
83
|
-
const socketPath = getDefaultSocketPath();
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
## Integration Guide (for Libraries like AgentSwarm)
|
|
87
|
-
|
|
88
|
-
If you're building a library that integrates with Agent Relay:
|
|
89
|
-
|
|
90
|
-
### Option 1: Use the SDK Client (Recommended)
|
|
91
|
-
|
|
92
|
-
```typescript
|
|
93
|
-
import { RelayClient, discoverSocket } from '@agent-relay/sdk';
|
|
94
|
-
|
|
95
|
-
class MyAgentOrchestrator {
|
|
96
|
-
private client: RelayClient;
|
|
97
|
-
|
|
98
|
-
async connect(agentName: string) {
|
|
99
|
-
// Auto-discovers socket path
|
|
100
|
-
this.client = new RelayClient({
|
|
101
|
-
agentName,
|
|
102
|
-
reconnect: true, // Auto-reconnect on disconnect
|
|
103
|
-
});
|
|
104
|
-
|
|
105
|
-
await this.client.connect();
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
async sendTask(to: string, task: string) {
|
|
109
|
-
return this.client.sendMessage(to, task);
|
|
110
|
-
}
|
|
50
|
+
## Features
|
|
111
51
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
52
|
+
| Feature | Description |
|
|
53
|
+
|---------|-------------|
|
|
54
|
+
| **Zero config** | Just import and go |
|
|
55
|
+
| **Auto-reconnect** | Handles disconnections automatically |
|
|
56
|
+
| **Message deduplication** | No duplicate deliveries |
|
|
57
|
+
| **Sync messaging** | Wait for acknowledgment |
|
|
58
|
+
| **Broadcast** | Send to all agents with `*` |
|
|
59
|
+
| **Channels** | Group messaging with `#channel` |
|
|
115
60
|
|
|
116
|
-
|
|
117
|
-
this.client.onMessage = (from, payload) => {
|
|
118
|
-
handler(from, payload.body);
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
```
|
|
61
|
+
## API Reference
|
|
123
62
|
|
|
124
|
-
###
|
|
63
|
+
### createRelay(config?)
|
|
125
64
|
|
|
126
|
-
|
|
65
|
+
Creates a standalone relay with an in-process daemon.
|
|
127
66
|
|
|
128
67
|
```typescript
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
// Send messages
|
|
134
|
-
await tools.send('Worker1', 'Run the test suite');
|
|
135
|
-
|
|
136
|
-
// Spawn workers
|
|
137
|
-
await tools.spawn({
|
|
138
|
-
name: 'Worker1',
|
|
139
|
-
cli: 'claude',
|
|
140
|
-
task: 'Run tests and report results',
|
|
68
|
+
const relay = await createRelay({
|
|
69
|
+
socketPath: '/tmp/my-relay.sock', // Optional custom socket
|
|
70
|
+
quiet: true, // Suppress logs (default: true)
|
|
141
71
|
});
|
|
142
72
|
|
|
143
|
-
//
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
// List online agents
|
|
147
|
-
const agents = await tools.who();
|
|
73
|
+
// Create clients
|
|
74
|
+
const agent = await relay.client('MyAgent');
|
|
148
75
|
|
|
149
|
-
//
|
|
150
|
-
await
|
|
76
|
+
// Stop everything
|
|
77
|
+
await relay.stop();
|
|
151
78
|
```
|
|
152
79
|
|
|
153
|
-
###
|
|
80
|
+
### createPair(name1, name2, config?)
|
|
154
81
|
|
|
155
|
-
|
|
82
|
+
Shortcut to create two connected agents.
|
|
156
83
|
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
curl -X POST http://localhost:3888/api/spawn \
|
|
160
|
-
-H 'Content-Type: application/json' \
|
|
161
|
-
-d '{"name": "Worker1", "cli": "claude", "task": "Run tests"}'
|
|
162
|
-
|
|
163
|
-
# List agents
|
|
164
|
-
curl http://localhost:3888/api/spawned
|
|
165
|
-
|
|
166
|
-
# Release an agent
|
|
167
|
-
curl -X DELETE http://localhost:3888/api/spawned/Worker1
|
|
84
|
+
```typescript
|
|
85
|
+
const { alice, bob, stop } = await createPair('alice', 'bob');
|
|
168
86
|
```
|
|
169
87
|
|
|
170
|
-
## Features
|
|
171
|
-
|
|
172
|
-
| Feature | Description |
|
|
173
|
-
|---------|-------------|
|
|
174
|
-
| **Auto-discovery** | Finds daemon socket automatically |
|
|
175
|
-
| **Auto-reconnect** | Handles disconnections automatically |
|
|
176
|
-
| **Message deduplication** | No duplicate deliveries |
|
|
177
|
-
| **Sync messaging** | Wait for acknowledgment |
|
|
178
|
-
| **Broadcast** | Send to all agents with `*` |
|
|
179
|
-
| **Channels** | Group messaging with `#channel` |
|
|
180
|
-
|
|
181
|
-
## API Reference
|
|
182
|
-
|
|
183
88
|
### RelayClient
|
|
184
89
|
|
|
185
|
-
|
|
186
|
-
import { RelayClient } from '@agent-relay/sdk';
|
|
187
|
-
|
|
188
|
-
const client = new RelayClient({
|
|
189
|
-
agentName: 'MyAgent', // Required: your agent's name
|
|
190
|
-
socketPath: '/custom/path', // Optional: override auto-discovery
|
|
191
|
-
reconnect: true, // Optional: auto-reconnect (default: true)
|
|
192
|
-
quiet: false, // Optional: suppress logs (default: false)
|
|
193
|
-
});
|
|
194
|
-
|
|
195
|
-
// Connect to daemon
|
|
196
|
-
await client.connect();
|
|
90
|
+
The client for agent communication.
|
|
197
91
|
|
|
92
|
+
```typescript
|
|
198
93
|
// Send messages
|
|
199
94
|
client.sendMessage('OtherAgent', 'Hello!');
|
|
200
95
|
client.sendMessage('#general', 'Channel message');
|
|
201
96
|
client.sendMessage('*', 'Broadcast to everyone');
|
|
202
97
|
|
|
203
98
|
// Wait for acknowledgment
|
|
204
|
-
const ack = await client.sendAndWait('OtherAgent', 'Important message'
|
|
205
|
-
timeoutMs: 30000,
|
|
206
|
-
});
|
|
99
|
+
const ack = await client.sendAndWait('OtherAgent', 'Important message');
|
|
207
100
|
|
|
208
101
|
// Receive messages
|
|
209
102
|
client.onMessage = (from, payload, messageId, meta, originalTo) => {
|
|
@@ -224,20 +117,23 @@ client.onStateChange = (state) => {
|
|
|
224
117
|
client.disconnect();
|
|
225
118
|
```
|
|
226
119
|
|
|
227
|
-
|
|
120
|
+
## Using with External Daemon
|
|
121
|
+
|
|
122
|
+
If you're running `agent-relay up` separately (e.g., for the dashboard), use the client directly:
|
|
228
123
|
|
|
229
124
|
```typescript
|
|
230
|
-
import {
|
|
125
|
+
import { RelayClient } from '@agent-relay/sdk';
|
|
231
126
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
127
|
+
const client = new RelayClient({
|
|
128
|
+
agentName: 'MyAgent',
|
|
129
|
+
socketPath: '/tmp/agent-relay.sock',
|
|
130
|
+
});
|
|
235
131
|
|
|
236
|
-
|
|
237
|
-
|
|
132
|
+
await client.connect();
|
|
133
|
+
client.sendMessage('OtherAgent', 'Hello!');
|
|
238
134
|
```
|
|
239
135
|
|
|
240
|
-
|
|
136
|
+
## Advanced: Channels
|
|
241
137
|
|
|
242
138
|
```typescript
|
|
243
139
|
// Join a channel
|
|
@@ -255,7 +151,7 @@ client.onChannelMessage = (from, channel, body, envelope) => {
|
|
|
255
151
|
client.leaveChannel('#general');
|
|
256
152
|
```
|
|
257
153
|
|
|
258
|
-
|
|
154
|
+
## Advanced: Shadow Agents
|
|
259
155
|
|
|
260
156
|
Monitor another agent's communication:
|
|
261
157
|
|
|
@@ -270,19 +166,6 @@ client.bindAsShadow('PrimaryAgent', {
|
|
|
270
166
|
client.unbindAsShadow('PrimaryAgent');
|
|
271
167
|
```
|
|
272
168
|
|
|
273
|
-
## Environment Variables
|
|
274
|
-
|
|
275
|
-
| Variable | Description |
|
|
276
|
-
|----------|-------------|
|
|
277
|
-
| `RELAY_SOCKET` | Override daemon socket path |
|
|
278
|
-
| `RELAY_PROJECT` | Override project name |
|
|
279
|
-
| `WORKSPACE_ID` | Cloud workspace ID (auto-detects cloud socket) |
|
|
280
|
-
|
|
281
|
-
## Requirements
|
|
282
|
-
|
|
283
|
-
- Node.js 18+
|
|
284
|
-
- Agent Relay daemon running (`agent-relay up`)
|
|
285
|
-
|
|
286
169
|
## License
|
|
287
170
|
|
|
288
171
|
MIT
|
package/dist/client.d.ts
CHANGED
|
@@ -45,39 +45,7 @@ export interface ClientConfig {
|
|
|
45
45
|
reconnectMaxDelayMs: number;
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
|
-
* RelayClient
|
|
49
|
-
*
|
|
50
|
-
* The client automatically discovers the daemon socket path. You only need to provide
|
|
51
|
-
* your agent name. Use `connect()` to establish a connection, then send/receive messages.
|
|
52
|
-
*
|
|
53
|
-
* @example Basic Usage
|
|
54
|
-
* ```typescript
|
|
55
|
-
* import { RelayClient } from '@agent-relay/sdk';
|
|
56
|
-
*
|
|
57
|
-
* const client = new RelayClient({ agentName: 'MyAgent' });
|
|
58
|
-
* await client.connect();
|
|
59
|
-
*
|
|
60
|
-
* // Send messages
|
|
61
|
-
* client.sendMessage('OtherAgent', 'Hello!');
|
|
62
|
-
* client.sendMessage('#general', 'Channel message');
|
|
63
|
-
* client.sendMessage('*', 'Broadcast');
|
|
64
|
-
*
|
|
65
|
-
* // Receive messages
|
|
66
|
-
* client.onMessage = (from, payload) => {
|
|
67
|
-
* console.log(`${from}: ${payload.body}`);
|
|
68
|
-
* };
|
|
69
|
-
*
|
|
70
|
-
* // Disconnect when done
|
|
71
|
-
* client.disconnect();
|
|
72
|
-
* ```
|
|
73
|
-
*
|
|
74
|
-
* @example Wait for Response
|
|
75
|
-
* ```typescript
|
|
76
|
-
* const response = await client.sendAndWait('Worker', 'Do this task', {
|
|
77
|
-
* timeoutMs: 30000,
|
|
78
|
-
* });
|
|
79
|
-
* console.log(`Worker replied: ${response.content}`);
|
|
80
|
-
* ```
|
|
48
|
+
* RelayClient for agent-to-agent communication.
|
|
81
49
|
*/
|
|
82
50
|
export declare class RelayClient {
|
|
83
51
|
private config;
|
|
@@ -94,32 +62,12 @@ export declare class RelayClient {
|
|
|
94
62
|
private writeQueue;
|
|
95
63
|
private writeScheduled;
|
|
96
64
|
private pendingSyncAcks;
|
|
97
|
-
/**
|
|
98
|
-
* Callback for receiving direct messages.
|
|
99
|
-
* @param from - Name of the sending agent
|
|
100
|
-
* @param payload - Message payload containing body, kind, and optional data
|
|
101
|
-
* @param messageId - Unique message identifier
|
|
102
|
-
* @param meta - Optional metadata (sync info, etc.)
|
|
103
|
-
* @param originalTo - Original recipient (useful for detecting broadcasts when originalTo='*')
|
|
104
|
-
*/
|
|
105
65
|
onMessage?: (from: string, payload: SendPayload, messageId: string, meta?: SendMeta, originalTo?: string) => void;
|
|
106
66
|
/**
|
|
107
67
|
* Callback for channel messages.
|
|
108
|
-
* @param from - Name of the sending agent
|
|
109
|
-
* @param channel - Channel name (e.g., '#general')
|
|
110
|
-
* @param body - Message body text
|
|
111
|
-
* @param envelope - Full message envelope with metadata
|
|
112
68
|
*/
|
|
113
69
|
onChannelMessage?: (from: string, channel: string, body: string, envelope: Envelope<ChannelMessagePayload>) => void;
|
|
114
|
-
/**
|
|
115
|
-
* Callback for connection state changes.
|
|
116
|
-
* @param state - New connection state: 'DISCONNECTED' | 'CONNECTING' | 'HANDSHAKING' | 'READY' | 'BACKOFF'
|
|
117
|
-
*/
|
|
118
70
|
onStateChange?: (state: ClientState) => void;
|
|
119
|
-
/**
|
|
120
|
-
* Callback for errors.
|
|
121
|
-
* @param error - The error that occurred
|
|
122
|
-
*/
|
|
123
71
|
onError?: (error: Error) => void;
|
|
124
72
|
constructor(config?: Partial<ClientConfig>);
|
|
125
73
|
get state(): ClientState;
|
|
@@ -138,30 +86,7 @@ export declare class RelayClient {
|
|
|
138
86
|
*/
|
|
139
87
|
destroy(): void;
|
|
140
88
|
/**
|
|
141
|
-
* Send a message to another agent
|
|
142
|
-
*
|
|
143
|
-
* @param to - Recipient: agent name, '#channel', or '*' for broadcast
|
|
144
|
-
* @param body - Message content
|
|
145
|
-
* @param kind - Message type (default: 'message')
|
|
146
|
-
* @param data - Optional structured data to include
|
|
147
|
-
* @param thread - Optional thread ID for conversation threading
|
|
148
|
-
* @param meta - Optional metadata (sync info, etc.)
|
|
149
|
-
* @returns true if message was queued, false if not connected
|
|
150
|
-
*
|
|
151
|
-
* @example
|
|
152
|
-
* ```typescript
|
|
153
|
-
* // Direct message
|
|
154
|
-
* client.sendMessage('Worker1', 'Start the task');
|
|
155
|
-
*
|
|
156
|
-
* // Channel message
|
|
157
|
-
* client.sendMessage('#general', 'Team update');
|
|
158
|
-
*
|
|
159
|
-
* // Broadcast to all agents
|
|
160
|
-
* client.sendMessage('*', 'System announcement');
|
|
161
|
-
*
|
|
162
|
-
* // With structured data
|
|
163
|
-
* client.sendMessage('Worker1', 'Process this', 'task', { priority: 'high' });
|
|
164
|
-
* ```
|
|
89
|
+
* Send a message to another agent.
|
|
165
90
|
*/
|
|
166
91
|
sendMessage(to: string, body: string, kind?: PayloadKind, data?: Record<string, unknown>, thread?: string, meta?: SendMeta): boolean;
|
|
167
92
|
/**
|
|
@@ -169,28 +94,7 @@ export declare class RelayClient {
|
|
|
169
94
|
*/
|
|
170
95
|
sendAck(payload: AckPayload): boolean;
|
|
171
96
|
/**
|
|
172
|
-
* Send a message and wait for
|
|
173
|
-
*
|
|
174
|
-
* This is useful for request-response patterns where you need to wait for
|
|
175
|
-
* the recipient to process your message and reply.
|
|
176
|
-
*
|
|
177
|
-
* @param to - Recipient agent name
|
|
178
|
-
* @param body - Message content
|
|
179
|
-
* @param options - Options including timeout, thread, etc.
|
|
180
|
-
* @returns Promise that resolves with the ACK payload when recipient responds
|
|
181
|
-
* @throws Error if client not ready or timeout exceeded
|
|
182
|
-
*
|
|
183
|
-
* @example
|
|
184
|
-
* ```typescript
|
|
185
|
-
* try {
|
|
186
|
-
* const response = await client.sendAndWait('Worker', 'Process this task', {
|
|
187
|
-
* timeoutMs: 30000, // 30 second timeout
|
|
188
|
-
* });
|
|
189
|
-
* console.log('Worker responded:', response);
|
|
190
|
-
* } catch (err) {
|
|
191
|
-
* console.error('Worker did not respond in time');
|
|
192
|
-
* }
|
|
193
|
-
* ```
|
|
97
|
+
* Send a message and wait for ACK response.
|
|
194
98
|
*/
|
|
195
99
|
sendAndWait(to: string, body: string, options?: SyncOptions): Promise<AckPayload>;
|
|
196
100
|
/**
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -6,19 +6,11 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import net from 'node:net';
|
|
8
8
|
import { randomUUID } from 'node:crypto';
|
|
9
|
-
import { getDefaultSocketPath } from './discovery.js';
|
|
10
9
|
import { PROTOCOL_VERSION, } from './protocol/types.js';
|
|
11
10
|
import { encodeFrameLegacy, FrameParser } from './protocol/framing.js';
|
|
12
|
-
|
|
13
|
-
let _discoveredSocketPath = null;
|
|
14
|
-
function getDiscoveredSocketPath() {
|
|
15
|
-
if (_discoveredSocketPath === null) {
|
|
16
|
-
_discoveredSocketPath = getDefaultSocketPath();
|
|
17
|
-
}
|
|
18
|
-
return _discoveredSocketPath;
|
|
19
|
-
}
|
|
11
|
+
const DEFAULT_SOCKET_PATH = '/tmp/agent-relay.sock';
|
|
20
12
|
const DEFAULT_CLIENT_CONFIG = {
|
|
21
|
-
socketPath:
|
|
13
|
+
socketPath: DEFAULT_SOCKET_PATH,
|
|
22
14
|
agentName: 'agent',
|
|
23
15
|
cli: undefined,
|
|
24
16
|
quiet: false,
|
|
@@ -64,39 +56,7 @@ class CircularDedupeCache {
|
|
|
64
56
|
}
|
|
65
57
|
}
|
|
66
58
|
/**
|
|
67
|
-
* RelayClient
|
|
68
|
-
*
|
|
69
|
-
* The client automatically discovers the daemon socket path. You only need to provide
|
|
70
|
-
* your agent name. Use `connect()` to establish a connection, then send/receive messages.
|
|
71
|
-
*
|
|
72
|
-
* @example Basic Usage
|
|
73
|
-
* ```typescript
|
|
74
|
-
* import { RelayClient } from '@agent-relay/sdk';
|
|
75
|
-
*
|
|
76
|
-
* const client = new RelayClient({ agentName: 'MyAgent' });
|
|
77
|
-
* await client.connect();
|
|
78
|
-
*
|
|
79
|
-
* // Send messages
|
|
80
|
-
* client.sendMessage('OtherAgent', 'Hello!');
|
|
81
|
-
* client.sendMessage('#general', 'Channel message');
|
|
82
|
-
* client.sendMessage('*', 'Broadcast');
|
|
83
|
-
*
|
|
84
|
-
* // Receive messages
|
|
85
|
-
* client.onMessage = (from, payload) => {
|
|
86
|
-
* console.log(`${from}: ${payload.body}`);
|
|
87
|
-
* };
|
|
88
|
-
*
|
|
89
|
-
* // Disconnect when done
|
|
90
|
-
* client.disconnect();
|
|
91
|
-
* ```
|
|
92
|
-
*
|
|
93
|
-
* @example Wait for Response
|
|
94
|
-
* ```typescript
|
|
95
|
-
* const response = await client.sendAndWait('Worker', 'Do this task', {
|
|
96
|
-
* timeoutMs: 30000,
|
|
97
|
-
* });
|
|
98
|
-
* console.log(`Worker replied: ${response.content}`);
|
|
99
|
-
* ```
|
|
59
|
+
* RelayClient for agent-to-agent communication.
|
|
100
60
|
*/
|
|
101
61
|
export class RelayClient {
|
|
102
62
|
config;
|
|
@@ -113,39 +73,16 @@ export class RelayClient {
|
|
|
113
73
|
writeQueue = [];
|
|
114
74
|
writeScheduled = false;
|
|
115
75
|
pendingSyncAcks = new Map();
|
|
116
|
-
|
|
117
|
-
* Callback for receiving direct messages.
|
|
118
|
-
* @param from - Name of the sending agent
|
|
119
|
-
* @param payload - Message payload containing body, kind, and optional data
|
|
120
|
-
* @param messageId - Unique message identifier
|
|
121
|
-
* @param meta - Optional metadata (sync info, etc.)
|
|
122
|
-
* @param originalTo - Original recipient (useful for detecting broadcasts when originalTo='*')
|
|
123
|
-
*/
|
|
76
|
+
// Event handlers
|
|
124
77
|
onMessage;
|
|
125
78
|
/**
|
|
126
79
|
* Callback for channel messages.
|
|
127
|
-
* @param from - Name of the sending agent
|
|
128
|
-
* @param channel - Channel name (e.g., '#general')
|
|
129
|
-
* @param body - Message body text
|
|
130
|
-
* @param envelope - Full message envelope with metadata
|
|
131
80
|
*/
|
|
132
81
|
onChannelMessage;
|
|
133
|
-
/**
|
|
134
|
-
* Callback for connection state changes.
|
|
135
|
-
* @param state - New connection state: 'DISCONNECTED' | 'CONNECTING' | 'HANDSHAKING' | 'READY' | 'BACKOFF'
|
|
136
|
-
*/
|
|
137
82
|
onStateChange;
|
|
138
|
-
/**
|
|
139
|
-
* Callback for errors.
|
|
140
|
-
* @param error - The error that occurred
|
|
141
|
-
*/
|
|
142
83
|
onError;
|
|
143
84
|
constructor(config = {}) {
|
|
144
85
|
this.config = { ...DEFAULT_CLIENT_CONFIG, ...config };
|
|
145
|
-
// Use discovered socket path if not explicitly provided
|
|
146
|
-
if (!this.config.socketPath) {
|
|
147
|
-
this.config.socketPath = getDiscoveredSocketPath();
|
|
148
|
-
}
|
|
149
86
|
this.parser = new FrameParser();
|
|
150
87
|
this.parser.setLegacyMode(true);
|
|
151
88
|
this.reconnectDelay = this.config.reconnectDelayMs;
|
|
@@ -240,30 +177,7 @@ export class RelayClient {
|
|
|
240
177
|
this.disconnect();
|
|
241
178
|
}
|
|
242
179
|
/**
|
|
243
|
-
* Send a message to another agent
|
|
244
|
-
*
|
|
245
|
-
* @param to - Recipient: agent name, '#channel', or '*' for broadcast
|
|
246
|
-
* @param body - Message content
|
|
247
|
-
* @param kind - Message type (default: 'message')
|
|
248
|
-
* @param data - Optional structured data to include
|
|
249
|
-
* @param thread - Optional thread ID for conversation threading
|
|
250
|
-
* @param meta - Optional metadata (sync info, etc.)
|
|
251
|
-
* @returns true if message was queued, false if not connected
|
|
252
|
-
*
|
|
253
|
-
* @example
|
|
254
|
-
* ```typescript
|
|
255
|
-
* // Direct message
|
|
256
|
-
* client.sendMessage('Worker1', 'Start the task');
|
|
257
|
-
*
|
|
258
|
-
* // Channel message
|
|
259
|
-
* client.sendMessage('#general', 'Team update');
|
|
260
|
-
*
|
|
261
|
-
* // Broadcast to all agents
|
|
262
|
-
* client.sendMessage('*', 'System announcement');
|
|
263
|
-
*
|
|
264
|
-
* // With structured data
|
|
265
|
-
* client.sendMessage('Worker1', 'Process this', 'task', { priority: 'high' });
|
|
266
|
-
* ```
|
|
180
|
+
* Send a message to another agent.
|
|
267
181
|
*/
|
|
268
182
|
sendMessage(to, body, kind = 'message', data, thread, meta) {
|
|
269
183
|
if (this._state !== 'READY') {
|
|
@@ -302,28 +216,7 @@ export class RelayClient {
|
|
|
302
216
|
return this.send(envelope);
|
|
303
217
|
}
|
|
304
218
|
/**
|
|
305
|
-
* Send a message and wait for
|
|
306
|
-
*
|
|
307
|
-
* This is useful for request-response patterns where you need to wait for
|
|
308
|
-
* the recipient to process your message and reply.
|
|
309
|
-
*
|
|
310
|
-
* @param to - Recipient agent name
|
|
311
|
-
* @param body - Message content
|
|
312
|
-
* @param options - Options including timeout, thread, etc.
|
|
313
|
-
* @returns Promise that resolves with the ACK payload when recipient responds
|
|
314
|
-
* @throws Error if client not ready or timeout exceeded
|
|
315
|
-
*
|
|
316
|
-
* @example
|
|
317
|
-
* ```typescript
|
|
318
|
-
* try {
|
|
319
|
-
* const response = await client.sendAndWait('Worker', 'Process this task', {
|
|
320
|
-
* timeoutMs: 30000, // 30 second timeout
|
|
321
|
-
* });
|
|
322
|
-
* console.log('Worker responded:', response);
|
|
323
|
-
* } catch (err) {
|
|
324
|
-
* console.error('Worker did not respond in time');
|
|
325
|
-
* }
|
|
326
|
-
* ```
|
|
219
|
+
* Send a message and wait for ACK response.
|
|
327
220
|
*/
|
|
328
221
|
async sendAndWait(to, body, options = {}) {
|
|
329
222
|
if (this._state !== 'READY') {
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAmBL,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AA4CvE,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAEpD,MAAM,qBAAqB,GAAiB;IAC1C,UAAU,EAAE,mBAAmB;IAC/B,SAAS,EAAE,OAAO;IAClB,GAAG,EAAE,SAAS;IACd,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,IAAI;IACf,oBAAoB,EAAE,EAAE;IACxB,gBAAgB,EAAE,IAAI,EAAE,mDAAmD;IAC3E,mBAAmB,EAAE,KAAK;CAC3B,CAAC;AAEF,sBAAsB;AACtB,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,SAAS,UAAU;IACjB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,mBAAmB;IACf,GAAG,GAAgB,IAAI,GAAG,EAAE,CAAC;IAC7B,IAAI,CAAW;IACf,IAAI,GAAG,CAAC,CAAC;IACA,QAAQ,CAAS;IAElC,YAAY,QAAQ,GAAG,IAAI;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,EAAU;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QAElC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,MAAM;gBAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;IAChB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAW;IACd,MAAM,CAAe;IACrB,MAAM,CAAc;IACpB,MAAM,CAAc;IAEpB,MAAM,GAAgB,cAAc,CAAC;IACrC,SAAS,CAAU;IACnB,WAAW,CAAU;IACrB,iBAAiB,GAAG,CAAC,CAAC;IACtB,cAAc,CAAS;IACvB,cAAc,CAAkB;IAChC,UAAU,GAAG,KAAK,CAAC;IAEnB,WAAW,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5C,UAAU,GAAa,EAAE,CAAC;IAC1B,cAAc,GAAG,KAAK,CAAC;IAEvB,eAAe,GAIlB,IAAI,GAAG,EAAE,CAAC;IAEf,iBAAiB;IACjB,SAAS,CAAyG;IAClH;;OAEG;IACH,gBAAgB,CAAoG;IACpH,aAAa,CAAgC;IAC7C,OAAO,CAA0B;IAEjC,YAAY,SAAgC,EAAE;QAC5C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,qBAAqB,EAAE,GAAG,MAAM,EAAE,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACrD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,MAAM,aAAa,GAAG,GAAS,EAAE;gBAC/B,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,MAAM,YAAY,GAAG,CAAC,GAAU,EAAQ,EAAE;gBACxC,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAE5B,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE;gBAC9D,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAExD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBACjC,YAAY,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;gBAClC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC5B,aAAa,CAAC,UAAU,CAAC,CAAC;oBAC1B,YAAY,CAAC,OAAO,CAAC,CAAC;oBACtB,aAAa,EAAE,CAAC;gBAClB,CAAC;YACH,CAAC,EAAE,EAAE,CAAC,CAAC;YAEP,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC5B,aAAa,CAAC,UAAU,CAAC,CAAC;oBAC1B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;oBACvB,YAAY,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC,EAAE,IAAI,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,IAAI,CAAC;gBACR,CAAC,EAAE,gBAAgB;gBACnB,IAAI,EAAE,KAAK;gBACX,EAAE,EAAE,UAAU,EAAE;gBAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;gBACd,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,WAAW,CACT,EAAU,EACV,IAAY,EACZ,OAAoB,SAAS,EAC7B,IAA8B,EAC9B,MAAe,EACf,IAAe;QAEf,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAiB;YAC7B,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,EAAE;YACF,OAAO,EAAE;gBACP,IAAI;gBACJ,IAAI;gBACJ,IAAI;gBACJ,MAAM;aACP;YACD,YAAY,EAAE,IAAI;SACnB,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAAmB;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAyB;YACrC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO;SACR,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,EAAU,EAAE,IAAY,EAAE,UAAuB,EAAE;QACnE,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,aAAa,GAAG,UAAU,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;QAEvC,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACjD,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBAC3C,MAAM,CAAC,IAAI,KAAK,CAAC,qBAAqB,SAAS,IAAI,CAAC,CAAC,CAAC;YACxD,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;YAE5E,MAAM,QAAQ,GAAiB;gBAC7B,CAAC,EAAE,gBAAgB;gBACnB,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,UAAU,EAAE;gBAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;gBACd,EAAE;gBACF,OAAO,EAAE;oBACP,IAAI;oBACJ,IAAI;oBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;iBACvB;gBACD,YAAY,EAAE;oBACZ,IAAI,EAAE;wBACJ,aAAa;wBACb,SAAS;wBACT,QAAQ,EAAE,IAAI;qBACf;iBACF;aACF,CAAC;YAEF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBAC3C,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,IAAY,EAAE,OAAoB,SAAS,EAAE,IAA8B;QACnF,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAa;QACrB,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC;YACf,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,WAAW;YACjB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,KAAK;YACL,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAa;QACvB,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC;YACf,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,aAAa;YACnB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,KAAK;YACL,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CACV,YAAoB,EACpB,UAII,EAAE;QAEN,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC;YACf,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,aAAa;YACnB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,YAAY;gBACZ,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,eAAe,EAAE,OAAO,CAAC,eAAe;gBACxC,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,YAAoB;QACjC,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAE1C,OAAO,IAAI,CAAC,IAAI,CAAC;YACf,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,eAAe;YACrB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,YAAY;aACb;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QAClB,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAyB;YACrC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,IAAI;gBACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,gFAAgF;IAChF,qBAAqB;IACrB,gFAAgF;IAEhF;;;;OAIG;IACH,WAAW,CAAC,OAAe,EAAE,WAAoB;QAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAwB;YACpC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,cAAc;YACpB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,OAAO;gBACP,WAAW;aACZ;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,OAAe,EAAE,MAAc;QAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAwB;YACpC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,cAAc;YACpB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,OAAO;gBACP,MAAM;aACP;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,OAAe,EAAE,MAAe;QAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAE1C,MAAM,QAAQ,GAAyB;YACrC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,eAAe;YACrB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,OAAO;gBACP,MAAM;aACP;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,OAAe,EAAE,MAAc;QAC/C,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAAyB;YACrC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,eAAe;YACrB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,OAAO;gBACP,MAAM;aACP;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAChB,OAAe,EACf,IAAY,EACZ,OAKC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,QAAQ,GAA2B;YACvC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,OAAO;gBACP,IAAI;gBACJ,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,WAAW,EAAE,OAAO,EAAE,WAAW;gBACjC,IAAI,EAAE,OAAO,EAAE,IAAI;aACpB;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,kBAAkB;IAEV,QAAQ,CAAC,KAAkB;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,SAAS;QACf,MAAM,KAAK,GAA2B;YACpC,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC5B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;gBAClC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;gBACpB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;gBACxB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;gBACtB,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;gBAC9C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBACpC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAChC,YAAY,EAAE;oBACZ,GAAG,EAAE,IAAI;oBACT,MAAM,EAAE,IAAI;oBACZ,YAAY,EAAE,GAAG;oBACjB,eAAe,EAAE,IAAI;iBACtB;gBACD,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;aAC3E;SACF,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAEO,IAAI,CAAC,QAAkB;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE/B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAE5B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,YAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAY,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEzD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACvB,CAAC;IAEO,UAAU,CAAC,IAAY;QAC7B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,GAAY,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,QAAkB;QACrC,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,SAAS;gBACZ,IAAI,CAAC,aAAa,CAAC,QAAoC,CAAC,CAAC;gBACzD,MAAM;YAER,KAAK,SAAS;gBACZ,IAAI,CAAC,aAAa,CAAC,QAA2B,CAAC,CAAC;gBAChD,MAAM;YAER,KAAK,iBAAiB;gBACpB,IAAI,CAAC,oBAAoB,CAAC,QAA+D,CAAC,CAAC;gBAC3F,MAAM;YAER,KAAK,MAAM;gBACT,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC1B,MAAM;YAER,KAAK,KAAK;gBACR,IAAI,CAAC,SAAS,CAAC,QAAgC,CAAC,CAAC;gBACjD,MAAM;YAER,KAAK,OAAO;gBACV,IAAI,CAAC,gBAAgB,CAAC,QAAkC,CAAC,CAAC;gBAC1D,MAAM;YAER,KAAK,MAAM;gBACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACvB,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBACjD,CAAC;gBACD,MAAM;QACV,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,QAAkC;QACtD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;QACjD,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,MAAM,CAAC,SAAS,cAAc,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,QAAyB;QAC7C,WAAW;QACX,IAAI,CAAC,IAAI,CAAC;YACR,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAE;gBACP,MAAM,EAAE,QAAQ,CAAC,EAAE;gBACnB,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG;aAC3B;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,SAAS,CACZ,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,OAAO,EAChB,QAAQ,CAAC,EAAE,EACX,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,QAA6D;QACxF,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,gBAAgB,CACnB,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,OAAO,CAAC,OAAO,EACxB,QAAQ,CAAC,OAAO,CAAC,IAAI,EACrB,QAA2C,CAC5C,CAAC;QACJ,CAAC;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,WAAW,GAAgB;gBAC/B,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI;gBAC3B,IAAI,EAAE;oBACJ,iBAAiB,EAAE,IAAI;oBACvB,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO;oBAClC,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;iBACrC;gBACD,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;aAChC,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,QAA8B;QAC9C,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC;QACrD,IAAI,CAAC,aAAa;YAAE,OAAO;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACpC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAEO,UAAU,CAAC,QAAkB;QACnC,IAAI,CAAC,IAAI,CAAC;YACR,CAAC,EAAE,gBAAgB;YACnB,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,OAAO,EAAG,QAAQ,CAAC,OAA8B,IAAI,EAAE;SACxD,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,QAAgC;QACvD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC/C,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,qBAAqB,CAAC,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAEzE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;YACvF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBACrF,OAAO,CAAC,KAAK,CACX,yCAAyC,IAAI,CAAC,MAAM,CAAC,oBAAoB,cAAc,CACxF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAY;QAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,KAAY;QACxC,KAAK,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC;YACtE,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACtF,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAClG,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjC,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -29,5 +29,4 @@ export { RelayClient, type ClientState, type ClientConfig, type SyncOptions, } f
|
|
|
29
29
|
export { createRelay, createPair, type Relay, type RelayConfig, } from './standalone.js';
|
|
30
30
|
export { PROTOCOL_VERSION, type MessageType, type PayloadKind, type Envelope, type EntityType, type SendPayload, type SendMeta, type SyncMeta, type DeliveryInfo, type AckPayload, type ErrorCode, type ErrorPayload, type SpeakOnTrigger, type ShadowConfig, type SpawnPayload, type SpawnResultPayload, type ReleasePayload, type ReleaseResultPayload, type ChannelMessagePayload, type ChannelJoinPayload, type ChannelLeavePayload, } from './protocol/index.js';
|
|
31
31
|
export { encodeFrame, encodeFrameLegacy, FrameParser, MAX_FRAME_BYTES, } from './protocol/index.js';
|
|
32
|
-
export { discoverSocket, getDefaultSocketPath, type DiscoveryResult, } from './discovery.js';
|
|
33
32
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EACL,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,UAAU,EACV,KAAK,KAAK,EACV,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EACL,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,UAAU,EACV,KAAK,KAAK,EACV,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,oBAAoB,EAEzB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,6 +33,4 @@ export { createRelay, createPair, } from './standalone.js';
|
|
|
33
33
|
export { PROTOCOL_VERSION, } from './protocol/index.js';
|
|
34
34
|
// Framing utilities
|
|
35
35
|
export { encodeFrame, encodeFrameLegacy, FrameParser, MAX_FRAME_BYTES, } from './protocol/index.js';
|
|
36
|
-
// Socket discovery utilities
|
|
37
|
-
export { discoverSocket, getDefaultSocketPath, } from './discovery.js';
|
|
38
36
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,cAAc;AACd,OAAO,EACL,WAAW,GAIZ,MAAM,aAAa,CAAC;AAErB,4DAA4D;AAC5D,OAAO,EACL,WAAW,EACX,UAAU,GAGX,MAAM,iBAAiB,CAAC;AAEzB,6CAA6C;AAC7C,OAAO,EACL,gBAAgB,GAuBjB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,cAAc;AACd,OAAO,EACL,WAAW,GAIZ,MAAM,aAAa,CAAC;AAErB,4DAA4D;AAC5D,OAAO,EACL,WAAW,EACX,UAAU,GAGX,MAAM,iBAAiB,CAAC;AAEzB,6CAA6C;AAC7C,OAAO,EACL,gBAAgB,GAuBjB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,eAAe,GAChB,MAAM,qBAAqB,CAAC"}
|
package/dist/standalone.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAS7D,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,KAAK;IACpB,6CAA6C;IAC7C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3E,gDAAgD;IAChD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAID;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,WAAW,CAAC,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"standalone.d.ts","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAS7D,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,KAAK;IACpB,6CAA6C;IAC7C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3E,gDAAgD;IAChD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,gCAAgC;IAChC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAID;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,WAAW,CAAC,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,CA2D1E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,WAAgB,GACvB,OAAO,CAAC;KACR,CAAC,IAAI,OAAO,KAAK,GAAG,WAAW;CACjC,GAAG;KACD,CAAC,IAAI,OAAO,KAAK,GAAG,WAAW;CACjC,GAAG;IACF,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B,CAAC,CAWD;AAGD,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/standalone.js
CHANGED
|
@@ -52,7 +52,6 @@ export async function createRelay(config = {}) {
|
|
|
52
52
|
// Lazy-load daemon to keep SDK lightweight for client-only users
|
|
53
53
|
let Daemon;
|
|
54
54
|
try {
|
|
55
|
-
// @ts-ignore - daemon is an optional peer dependency, may not be installed
|
|
56
55
|
const daemonModule = await import('@agent-relay/daemon');
|
|
57
56
|
Daemon = daemonModule.Daemon;
|
|
58
57
|
}
|
package/dist/standalone.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AA2B7D,MAAM,mBAAmB,GAAG,kCAAkC,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,SAAsB,EAAE;IACxD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,mBAAmB,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;IAEnC,iEAAiE;IACjE,IAAI,MAA2D,CAAC;IAChE,IAAI,CAAC;QACH,
|
|
1
|
+
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../src/standalone.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC;AA2B7D,MAAM,mBAAmB,GAAG,kCAAkC,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,SAAsB,EAAE;IACxD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,mBAAmB,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;IAEnC,iEAAiE;IACjE,IAAI,MAA2D,CAAC;IAChE,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACzD,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,yDAAyD;YACzD,uCAAuC;YACvC,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;QACxB,UAAU;QACV,SAAS,EAAE,KAAK,EAAE,gCAAgC;QAClD,SAAS,EAAE,KAAK,EAAE,oBAAoB;KACvC,CAAC,CAAC;IAEH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IAErB,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,eAAsC,EAAE;YACjE,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;gBAC7B,SAAS,EAAE,IAAI;gBACf,UAAU;gBACV,KAAK;gBACL,SAAS,EAAE,IAAI;gBACf,GAAG,YAAY;aAChB,CAAC,CAAC;YACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,KAAK,CAAC,IAAI;YACR,+BAA+B;YAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACnB,kBAAkB;YAClB,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,SAAS;YACX,OAAO,MAAM,CAAC,SAAS,CAAC;QAC1B,CAAC;QAED,IAAI,UAAU;YACZ,OAAO,UAAU,CAAC;QACpB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,KAAa,EACb,SAAsB,EAAE;IASxB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE1C,OAAO;QACL,CAAC,KAAK,CAAC,EAAE,OAAO;QAChB,CAAC,KAAK,CAAC,EAAE,OAAO;QAChB,KAAK;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE;KAClB,CAAC;AACX,CAAC;AAED,mCAAmC;AACnC,OAAO,EAAE,WAAW,EAAqB,MAAM,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-relay/sdk",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.5",
|
|
4
4
|
"description": "Lightweight SDK for agent-to-agent communication via Agent Relay",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"access": "public"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"@agent-relay/protocol": "2.0.
|
|
58
|
+
"@agent-relay/protocol": "2.0.5"
|
|
59
59
|
},
|
|
60
60
|
"engines": {
|
|
61
61
|
"node": ">=18.0.0"
|
package/dist/discovery.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Socket Discovery for Agent Relay SDK
|
|
3
|
-
*
|
|
4
|
-
* Discovers the daemon socket path for local development and cloud environments.
|
|
5
|
-
*/
|
|
6
|
-
export interface DiscoveryResult {
|
|
7
|
-
socketPath: string;
|
|
8
|
-
projectId: string;
|
|
9
|
-
source: 'env' | 'cloud' | 'project' | 'legacy';
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Discover the relay daemon socket path.
|
|
13
|
-
*
|
|
14
|
-
* Discovery order:
|
|
15
|
-
* 1. RELAY_SOCKET environment variable (explicit override)
|
|
16
|
-
* 2. Cloud workspace socket (if WORKSPACE_ID is set)
|
|
17
|
-
* 3. Project-local socket ({projectRoot}/.agent-relay/relay.sock)
|
|
18
|
-
* 4. Legacy fallback (/tmp/agent-relay.sock)
|
|
19
|
-
*
|
|
20
|
-
* @param cwd - Working directory to start search from (default: process.cwd())
|
|
21
|
-
* @returns Discovery result with socket path and metadata
|
|
22
|
-
*/
|
|
23
|
-
export declare function discoverSocket(cwd?: string): DiscoveryResult;
|
|
24
|
-
/**
|
|
25
|
-
* Get the default socket path using discovery.
|
|
26
|
-
* Convenience function that returns just the path.
|
|
27
|
-
*/
|
|
28
|
-
export declare function getDefaultSocketPath(cwd?: string): string;
|
|
29
|
-
//# sourceMappingURL=discovery.d.ts.map
|
package/dist/discovery.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;CAChD;AAyBD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,eAAe,CAkF5D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|
package/dist/discovery.js
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Socket Discovery for Agent Relay SDK
|
|
3
|
-
*
|
|
4
|
-
* Discovers the daemon socket path for local development and cloud environments.
|
|
5
|
-
*/
|
|
6
|
-
import { existsSync, readFileSync } from 'node:fs';
|
|
7
|
-
import { join } from 'node:path';
|
|
8
|
-
import { homedir } from 'node:os';
|
|
9
|
-
/**
|
|
10
|
-
* Find project root by looking for common markers.
|
|
11
|
-
* Scans up from startDir until it finds a marker or hits the filesystem root.
|
|
12
|
-
*/
|
|
13
|
-
function findProjectRoot(startDir = process.cwd()) {
|
|
14
|
-
let current = startDir;
|
|
15
|
-
const markers = ['.git', 'package.json', 'Cargo.toml', 'go.mod', 'pyproject.toml', '.agent-relay'];
|
|
16
|
-
// Limit iterations to prevent infinite loops
|
|
17
|
-
for (let i = 0; i < 100; i++) {
|
|
18
|
-
for (const marker of markers) {
|
|
19
|
-
if (existsSync(join(current, marker))) {
|
|
20
|
-
return current;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
const parent = join(current, '..');
|
|
24
|
-
if (parent === current)
|
|
25
|
-
break; // Reached root
|
|
26
|
-
current = parent;
|
|
27
|
-
}
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Discover the relay daemon socket path.
|
|
32
|
-
*
|
|
33
|
-
* Discovery order:
|
|
34
|
-
* 1. RELAY_SOCKET environment variable (explicit override)
|
|
35
|
-
* 2. Cloud workspace socket (if WORKSPACE_ID is set)
|
|
36
|
-
* 3. Project-local socket ({projectRoot}/.agent-relay/relay.sock)
|
|
37
|
-
* 4. Legacy fallback (/tmp/agent-relay.sock)
|
|
38
|
-
*
|
|
39
|
-
* @param cwd - Working directory to start search from (default: process.cwd())
|
|
40
|
-
* @returns Discovery result with socket path and metadata
|
|
41
|
-
*/
|
|
42
|
-
export function discoverSocket(cwd) {
|
|
43
|
-
const startDir = cwd || process.cwd();
|
|
44
|
-
// 1. Explicit socket path from environment
|
|
45
|
-
const socketEnv = process.env.RELAY_SOCKET;
|
|
46
|
-
if (socketEnv && existsSync(socketEnv)) {
|
|
47
|
-
return {
|
|
48
|
-
socketPath: socketEnv,
|
|
49
|
-
projectId: process.env.RELAY_PROJECT || 'env',
|
|
50
|
-
source: 'env',
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
// 2. Cloud workspace socket (if WORKSPACE_ID is set)
|
|
54
|
-
const workspaceId = process.env.WORKSPACE_ID;
|
|
55
|
-
if (workspaceId) {
|
|
56
|
-
const cloudSocket = `/tmp/relay/${workspaceId}/sockets/daemon.sock`;
|
|
57
|
-
if (existsSync(cloudSocket)) {
|
|
58
|
-
return {
|
|
59
|
-
socketPath: cloudSocket,
|
|
60
|
-
projectId: workspaceId,
|
|
61
|
-
source: 'cloud',
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
// 3. Project-local socket
|
|
66
|
-
// First try cwd, then scan up to find project root
|
|
67
|
-
const projectRoot = findProjectRoot(startDir);
|
|
68
|
-
const searchDirs = [startDir];
|
|
69
|
-
if (projectRoot && projectRoot !== startDir) {
|
|
70
|
-
searchDirs.push(projectRoot);
|
|
71
|
-
}
|
|
72
|
-
for (const dir of searchDirs) {
|
|
73
|
-
const projectLocalSocket = join(dir, '.agent-relay', 'relay.sock');
|
|
74
|
-
if (existsSync(projectLocalSocket)) {
|
|
75
|
-
// Read project ID from marker file if available
|
|
76
|
-
let projectId = 'local';
|
|
77
|
-
const markerPath = join(dir, '.agent-relay', '.project');
|
|
78
|
-
if (existsSync(markerPath)) {
|
|
79
|
-
try {
|
|
80
|
-
const marker = JSON.parse(readFileSync(markerPath, 'utf-8'));
|
|
81
|
-
projectId = marker.projectId || 'local';
|
|
82
|
-
}
|
|
83
|
-
catch {
|
|
84
|
-
// Ignore marker read errors
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return {
|
|
88
|
-
socketPath: projectLocalSocket,
|
|
89
|
-
projectId,
|
|
90
|
-
source: 'project',
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
// 4. Legacy fallback
|
|
95
|
-
const legacySocket = '/tmp/agent-relay.sock';
|
|
96
|
-
if (existsSync(legacySocket)) {
|
|
97
|
-
return {
|
|
98
|
-
socketPath: legacySocket,
|
|
99
|
-
projectId: 'legacy',
|
|
100
|
-
source: 'legacy',
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
// Also check ~/.agent-relay for legacy global installations
|
|
104
|
-
const homeSocket = join(homedir(), '.agent-relay', 'relay.sock');
|
|
105
|
-
if (existsSync(homeSocket)) {
|
|
106
|
-
return {
|
|
107
|
-
socketPath: homeSocket,
|
|
108
|
-
projectId: 'home',
|
|
109
|
-
source: 'legacy',
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
// Return legacy path even if it doesn't exist (will fail on connect)
|
|
113
|
-
return {
|
|
114
|
-
socketPath: legacySocket,
|
|
115
|
-
projectId: 'unknown',
|
|
116
|
-
source: 'legacy',
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Get the default socket path using discovery.
|
|
121
|
-
* Convenience function that returns just the path.
|
|
122
|
-
*/
|
|
123
|
-
export function getDefaultSocketPath(cwd) {
|
|
124
|
-
return discoverSocket(cwd).socketPath;
|
|
125
|
-
}
|
|
126
|
-
//# sourceMappingURL=discovery.js.map
|
package/dist/discovery.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
|