@agent-relay/sdk 6.3.5 → 7.0.0
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/bin/agent-relay-broker-darwin-arm64 +0 -0
- package/bin/agent-relay-broker-darwin-x64 +0 -0
- package/bin/agent-relay-broker-linux-arm64 +0 -0
- package/bin/agent-relay-broker-linux-x64 +0 -0
- package/bin/agent-relay-broker-win32-x64.exe +0 -0
- package/dist/client.d.ts +34 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +167 -46
- package/dist/client.js.map +1 -1
- package/dist/event-bus.d.ts +45 -0
- package/dist/event-bus.d.ts.map +1 -0
- package/dist/event-bus.js +68 -0
- package/dist/event-bus.js.map +1 -0
- package/dist/examples/demo.js +27 -27
- package/dist/examples/demo.js.map +1 -1
- package/dist/examples/persona-spawn.js +9 -10
- package/dist/examples/persona-spawn.js.map +1 -1
- package/dist/examples/quickstart.js +17 -17
- package/dist/examples/quickstart.js.map +1 -1
- package/dist/examples/ralph-loop.js +37 -37
- package/dist/examples/ralph-loop.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lifecycle-hooks.d.ts +140 -0
- package/dist/lifecycle-hooks.d.ts.map +1 -0
- package/dist/lifecycle-hooks.js +29 -0
- package/dist/lifecycle-hooks.js.map +1 -0
- package/dist/relay.d.ts +37 -29
- package/dist/relay.d.ts.map +1 -1
- package/dist/relay.js +52 -30
- package/dist/relay.js.map +1 -1
- package/dist/shadow.d.ts +4 -4
- package/dist/shadow.d.ts.map +1 -1
- package/dist/shadow.js +9 -9
- package/dist/shadow.js.map +1 -1
- package/dist/spawn-from-env.d.ts.map +1 -1
- package/dist/spawn-from-env.js +20 -22
- package/dist/spawn-from-env.js.map +1 -1
- package/dist/workflows/__tests__/budget-enforcement.test.js +1 -7
- package/dist/workflows/__tests__/budget-enforcement.test.js.map +1 -1
- package/dist/workflows/__tests__/e2e-permissions.test.js +18 -11
- package/dist/workflows/__tests__/e2e-permissions.test.js.map +1 -1
- package/dist/workflows/__tests__/permissions-integration.test.js +18 -9
- package/dist/workflows/__tests__/permissions-integration.test.js.map +1 -1
- package/dist/workflows/__tests__/verification-custom.test.js +1 -7
- package/dist/workflows/__tests__/verification-custom.test.js.map +1 -1
- package/dist/workflows/__tests__/verification-traceback.test.js +1 -7
- package/dist/workflows/__tests__/verification-traceback.test.js.map +1 -1
- package/dist/workflows/runner.d.ts +1 -0
- package/dist/workflows/runner.d.ts.map +1 -1
- package/dist/workflows/runner.js +24 -23
- package/dist/workflows/runner.js.map +1 -1
- package/package.json +12 -12
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed lifecycle-hook surface for `AgentRelay` / `AgentRelayClient`.
|
|
3
|
+
*
|
|
4
|
+
* Two kinds of events flow through the same registry:
|
|
5
|
+
*
|
|
6
|
+
* 1. **Broker events** — `agentSpawned`, `agentReleased`, `agentExited`,
|
|
7
|
+
* `agentReady`, `agentIdle`, `agentExitRequested`,
|
|
8
|
+
* `agentActivityChanged`, `messageReceived`, `messageSent`,
|
|
9
|
+
* `workerOutput`, `deliveryUpdate`, `channelSubscribed`,
|
|
10
|
+
* `channelUnsubscribed`. These fire when the broker emits the
|
|
11
|
+
* corresponding event over the WS stream.
|
|
12
|
+
* 2. **Call-site hooks** — `beforeAgentSpawn`, `afterAgentSpawn`,
|
|
13
|
+
* `beforeAgentRelease`, `afterAgentRelease`. These fire at the SDK
|
|
14
|
+
* call site (before / after the HTTP request), so handlers can
|
|
15
|
+
* observe — and, for `beforeAgentSpawn`, *modify* — the spawn input
|
|
16
|
+
* before it reaches the broker.
|
|
17
|
+
*
|
|
18
|
+
* The `beforeAgentSpawn` contract is the only one that supports
|
|
19
|
+
* mutation: handlers may return a {@link SpawnPatch} to merge into the
|
|
20
|
+
* input via shallow merge in registration order. All other hooks are
|
|
21
|
+
* observe-only — return type `void | Promise<void>`.
|
|
22
|
+
*
|
|
23
|
+
* Types from `relay.ts` are pulled in with `import type` to avoid a
|
|
24
|
+
* runtime circular import; TypeScript erases type-only imports so the
|
|
25
|
+
* runtime dependency graph stays unidirectional
|
|
26
|
+
* (`relay.ts` → `event-bus.ts` → no further).
|
|
27
|
+
*/
|
|
28
|
+
import type { AgentRuntime, BrokerEvent } from './protocol.js';
|
|
29
|
+
import type { Agent, AgentActivityChange, Message } from './relay.js';
|
|
30
|
+
import type { SpawnPtyInput, SpawnProviderInput } from './types.js';
|
|
31
|
+
/**
|
|
32
|
+
* The subset of {@link SpawnPtyInput} / {@link SpawnProviderInput} fields a
|
|
33
|
+
* `beforeAgentSpawn` handler may patch. Keeping this narrower than the full
|
|
34
|
+
* input type stops handlers from rewriting identity (`name`, `cli`,
|
|
35
|
+
* `provider`, `cwd`) — those need to come from the caller.
|
|
36
|
+
*
|
|
37
|
+
* For array fields (`args`, `channels`) a patch *replaces* the array. To
|
|
38
|
+
* extend rather than replace, spread the current value:
|
|
39
|
+
*
|
|
40
|
+
* ```ts
|
|
41
|
+
* relay.addListener('beforeAgentSpawn', (ctx) => ({
|
|
42
|
+
* args: [...(ctx.input.args ?? []), '--session-id', uuid],
|
|
43
|
+
* }));
|
|
44
|
+
* ```
|
|
45
|
+
*
|
|
46
|
+
* When multiple handlers return patches, they merge in registration order
|
|
47
|
+
* via shallow `Object.assign` — later handlers override earlier ones for
|
|
48
|
+
* the same key.
|
|
49
|
+
*/
|
|
50
|
+
export type SpawnPatch = Partial<Pick<SpawnPtyInput & SpawnProviderInput, 'args' | 'channels' | 'task' | 'model' | 'team' | 'agentToken'>>;
|
|
51
|
+
export interface BeforeAgentSpawnContext {
|
|
52
|
+
/** Which spawn API was called. */
|
|
53
|
+
kind: 'pty' | 'provider';
|
|
54
|
+
/** Raw input the caller passed in. Treat as read-only — return a {@link SpawnPatch} to modify. */
|
|
55
|
+
input: Readonly<SpawnPtyInput | SpawnProviderInput>;
|
|
56
|
+
/** `process.pid` of the calling Node process. Useful for burn-style stamping. */
|
|
57
|
+
spawnerPid: number;
|
|
58
|
+
/** ISO timestamp captured the instant the hook chain started. */
|
|
59
|
+
spawnStartTs: string;
|
|
60
|
+
/** Resolved broker base URL the spawn will POST to. */
|
|
61
|
+
baseUrl: string;
|
|
62
|
+
}
|
|
63
|
+
export type BeforeAgentSpawnHandler = (ctx: BeforeAgentSpawnContext) => void | SpawnPatch | Promise<void | SpawnPatch>;
|
|
64
|
+
export interface AfterAgentSpawnContext extends BeforeAgentSpawnContext {
|
|
65
|
+
/** Final input that was sent to the broker — original input merged with every handler's patch. */
|
|
66
|
+
resolvedInput: SpawnPtyInput | SpawnProviderInput;
|
|
67
|
+
/** Broker reply on success. */
|
|
68
|
+
result?: {
|
|
69
|
+
name: string;
|
|
70
|
+
runtime: AgentRuntime;
|
|
71
|
+
};
|
|
72
|
+
/** Set when the broker call rejected. Mutually exclusive with `result`. */
|
|
73
|
+
error?: Error;
|
|
74
|
+
/** Wall-clock duration from `beforeAgentSpawn` start to here. */
|
|
75
|
+
durationMs: number;
|
|
76
|
+
}
|
|
77
|
+
export interface BeforeAgentReleaseContext {
|
|
78
|
+
name: string;
|
|
79
|
+
reason?: string;
|
|
80
|
+
baseUrl: string;
|
|
81
|
+
}
|
|
82
|
+
export interface AfterAgentReleaseContext extends BeforeAgentReleaseContext {
|
|
83
|
+
error?: Error;
|
|
84
|
+
durationMs: number;
|
|
85
|
+
}
|
|
86
|
+
export interface AgentIdlePayload {
|
|
87
|
+
name: string;
|
|
88
|
+
idleSecs: number;
|
|
89
|
+
}
|
|
90
|
+
export interface AgentExitRequestedPayload {
|
|
91
|
+
name: string;
|
|
92
|
+
reason: string;
|
|
93
|
+
}
|
|
94
|
+
export interface WorkerOutputPayload {
|
|
95
|
+
name: string;
|
|
96
|
+
stream: string;
|
|
97
|
+
chunk: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Object-shaped payload for channel subscribe / unsubscribe events. The
|
|
101
|
+
* pre-2.x single-callback fields took two positional args
|
|
102
|
+
* (`(agent, channels) => void`); the registry standardizes on an object
|
|
103
|
+
* payload so all events share the one-arg shape and future fields can be
|
|
104
|
+
* added without breaking handlers.
|
|
105
|
+
*/
|
|
106
|
+
export interface ChannelSubscriptionPayload {
|
|
107
|
+
agent: string;
|
|
108
|
+
channels: string[];
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Typed event map consumed by the {@link EventBus} that backs
|
|
112
|
+
* `AgentRelay.addListener` / `removeListener`.
|
|
113
|
+
*
|
|
114
|
+
* Each entry's tuple is the handler argument list (always length 1 here —
|
|
115
|
+
* payloads are objects rather than positional args).
|
|
116
|
+
*
|
|
117
|
+
* Declared as a `type` alias rather than an `interface` so it satisfies
|
|
118
|
+
* the `EventBus<E extends EventMap>` constraint without requiring callers
|
|
119
|
+
* to spell out an index signature.
|
|
120
|
+
*/
|
|
121
|
+
export type AgentRelayEvents = {
|
|
122
|
+
messageReceived: [Message];
|
|
123
|
+
messageSent: [Message];
|
|
124
|
+
agentSpawned: [Agent];
|
|
125
|
+
agentReleased: [Agent];
|
|
126
|
+
agentExited: [Agent];
|
|
127
|
+
agentReady: [Agent];
|
|
128
|
+
workerOutput: [WorkerOutputPayload];
|
|
129
|
+
deliveryUpdate: [BrokerEvent];
|
|
130
|
+
agentExitRequested: [AgentExitRequestedPayload];
|
|
131
|
+
agentIdle: [AgentIdlePayload];
|
|
132
|
+
agentActivityChanged: [AgentActivityChange];
|
|
133
|
+
channelSubscribed: [ChannelSubscriptionPayload];
|
|
134
|
+
channelUnsubscribed: [ChannelSubscriptionPayload];
|
|
135
|
+
beforeAgentSpawn: [BeforeAgentSpawnContext];
|
|
136
|
+
afterAgentSpawn: [AfterAgentSpawnContext];
|
|
137
|
+
beforeAgentRelease: [BeforeAgentReleaseContext];
|
|
138
|
+
afterAgentRelease: [AfterAgentReleaseContext];
|
|
139
|
+
};
|
|
140
|
+
//# sourceMappingURL=lifecycle-hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle-hooks.d.ts","sourceRoot":"","sources":["../src/lifecycle-hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed lifecycle-hook surface for `AgentRelay` / `AgentRelayClient`.
|
|
3
|
+
*
|
|
4
|
+
* Two kinds of events flow through the same registry:
|
|
5
|
+
*
|
|
6
|
+
* 1. **Broker events** — `agentSpawned`, `agentReleased`, `agentExited`,
|
|
7
|
+
* `agentReady`, `agentIdle`, `agentExitRequested`,
|
|
8
|
+
* `agentActivityChanged`, `messageReceived`, `messageSent`,
|
|
9
|
+
* `workerOutput`, `deliveryUpdate`, `channelSubscribed`,
|
|
10
|
+
* `channelUnsubscribed`. These fire when the broker emits the
|
|
11
|
+
* corresponding event over the WS stream.
|
|
12
|
+
* 2. **Call-site hooks** — `beforeAgentSpawn`, `afterAgentSpawn`,
|
|
13
|
+
* `beforeAgentRelease`, `afterAgentRelease`. These fire at the SDK
|
|
14
|
+
* call site (before / after the HTTP request), so handlers can
|
|
15
|
+
* observe — and, for `beforeAgentSpawn`, *modify* — the spawn input
|
|
16
|
+
* before it reaches the broker.
|
|
17
|
+
*
|
|
18
|
+
* The `beforeAgentSpawn` contract is the only one that supports
|
|
19
|
+
* mutation: handlers may return a {@link SpawnPatch} to merge into the
|
|
20
|
+
* input via shallow merge in registration order. All other hooks are
|
|
21
|
+
* observe-only — return type `void | Promise<void>`.
|
|
22
|
+
*
|
|
23
|
+
* Types from `relay.ts` are pulled in with `import type` to avoid a
|
|
24
|
+
* runtime circular import; TypeScript erases type-only imports so the
|
|
25
|
+
* runtime dependency graph stays unidirectional
|
|
26
|
+
* (`relay.ts` → `event-bus.ts` → no further).
|
|
27
|
+
*/
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=lifecycle-hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lifecycle-hooks.js","sourceRoot":"","sources":["../src/lifecycle-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG"}
|
package/dist/relay.d.ts
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
*
|
|
11
11
|
* const relay = new AgentRelay();
|
|
12
12
|
*
|
|
13
|
-
* relay.
|
|
14
|
-
* relay.
|
|
13
|
+
* relay.addListener('messageReceived', (message) => console.log(message));
|
|
14
|
+
* relay.addListener('agentSpawned', (agent) => console.log("spawned", agent.name));
|
|
15
15
|
*
|
|
16
16
|
* const codex = await relay.codex.spawn();
|
|
17
17
|
* const human = relay.human({ name: "System" });
|
|
@@ -23,9 +23,11 @@
|
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
25
25
|
import { type AgentRelayBrokerInitArgs } from './client.js';
|
|
26
|
+
import { EventBus } from './event-bus.js';
|
|
27
|
+
import type { AgentRelayEvents } from './lifecycle-hooks.js';
|
|
26
28
|
import { type PersonaTier, type ResolvedPersona } from './personas.js';
|
|
27
29
|
import type { SendMessageInput, SpawnPtyInput } from './types.js';
|
|
28
|
-
import type { AgentRuntime,
|
|
30
|
+
import type { AgentRuntime, BrokerStatus, MessageInjectionMode, RestartPolicy } from './protocol.js';
|
|
29
31
|
import { type FollowLogsOptions, type LogFollowHandle, type LogsResult } from './logs.js';
|
|
30
32
|
export interface Message {
|
|
31
33
|
eventId: string;
|
|
@@ -154,11 +156,11 @@ export interface Agent {
|
|
|
154
156
|
readonly channels: string[];
|
|
155
157
|
/** Current lifecycle status of the agent. */
|
|
156
158
|
readonly status: AgentStatus;
|
|
157
|
-
/** Set when the agent exits. Available
|
|
159
|
+
/** Set when the agent exits. Available once the `agentExited` event fires. */
|
|
158
160
|
exitCode?: number;
|
|
159
|
-
/** Set when the agent exits via signal. Available
|
|
161
|
+
/** Set when the agent exits via signal. Available once the `agentExited` event fires. */
|
|
160
162
|
exitSignal?: string;
|
|
161
|
-
/** Set when the agent requests exit via /exit. Available
|
|
163
|
+
/** Set when the agent requests exit via /exit. Available once the `agentExitRequested` event fires. */
|
|
162
164
|
exitReason?: string;
|
|
163
165
|
release(reasonOrOptions?: string | ReleaseOptions): Promise<void>;
|
|
164
166
|
waitForReady(timeoutMs?: number): Promise<void>;
|
|
@@ -265,29 +267,35 @@ export interface AgentRelayOptions {
|
|
|
265
267
|
personaDirs?: string[];
|
|
266
268
|
}
|
|
267
269
|
export declare class AgentRelay {
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
270
|
+
/**
|
|
271
|
+
* Multi-listener event registry. Subscribe via {@link addListener} or
|
|
272
|
+
* `bus.addListener` directly; emit happens internally as broker events
|
|
273
|
+
* arrive and at SDK call sites for the spawn / release lifecycle hooks.
|
|
274
|
+
*
|
|
275
|
+
* The bus is shared with the underlying `AgentRelayClient` (created via
|
|
276
|
+
* {@link ensureStarted}) so listeners registered on either object see
|
|
277
|
+
* the same events.
|
|
278
|
+
*/
|
|
279
|
+
readonly bus: EventBus<AgentRelayEvents>;
|
|
280
|
+
/**
|
|
281
|
+
* Register a listener for a relay lifecycle event. Returns an
|
|
282
|
+
* unsubscribe function.
|
|
283
|
+
*
|
|
284
|
+
* Example:
|
|
285
|
+
* ```ts
|
|
286
|
+
* const off = relay.addListener('agentSpawned', (agent) => console.log(agent.name));
|
|
287
|
+
* // later:
|
|
288
|
+
* off();
|
|
289
|
+
* ```
|
|
290
|
+
*
|
|
291
|
+
* Replaces the pre-2.x single-callback `on*` fields. Multiple listeners
|
|
292
|
+
* can register for the same event; they fire sequentially in
|
|
293
|
+
* registration order. Async handlers are awaited. Handler exceptions
|
|
294
|
+
* are caught and logged; one bad listener never blocks the others.
|
|
295
|
+
*/
|
|
296
|
+
addListener<K extends keyof AgentRelayEvents>(event: K, handler: (...args: AgentRelayEvents[K]) => void | Promise<void>): () => void;
|
|
297
|
+
/** Remove a previously-registered listener. Idempotent. */
|
|
298
|
+
removeListener<K extends keyof AgentRelayEvents>(event: K, handler: (...args: AgentRelayEvents[K]) => void | Promise<void>): void;
|
|
291
299
|
/** The resolved Relaycast workspace API key (available after first spawn). */
|
|
292
300
|
get workspaceKey(): string | undefined;
|
|
293
301
|
/** Observer URL for the auto-created workspace (available after first spawn). */
|
package/dist/relay.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAQH,OAAO,EAAoB,KAAK,wBAAwB,EAA+B,MAAM,aAAa,CAAC;AAC3G,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAOL,KAAK,WAAW,EAChB,KAAK,eAAe,EACrB,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EAEZ,YAAY,EAEZ,oBAAoB,EACpB,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,UAAU,EAChB,MAAM,WAAW,CAAC;AA8FnB,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;AACnE,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC3F,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AACD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,mBAAmB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,mBAAmB,GAC3B,iBAAiB,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,GACd,iBAAiB,GACjB,4BAA4B,GAC5B,yBAAyB,GACzB,eAAe,GACf,YAAY,GACZ,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE,OAAO,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,4BAA4B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,4BAA6B,SAAQ,uBAAuB;IAC3E,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,4BAA4B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAED,MAAM,WAAW,cAAe,SAAQ,qBAAqB;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAa,SAAQ,mBAAmB;IACvD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;gFAM4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qFACiF;IACjF,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,KAAK,kBAAkB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5D,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC,CAAC;AAE5F,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC5B,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uGAAuG;IACvG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD;;4FAEwF;IACxF,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC,CAAC;IAC5E;;oFAEgF;IAChF,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;IACxE,WAAW,CAAC,KAAK,EAAE;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE,oBAAoB,CAAC;KAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C;;;OAGG;IACH,QAAQ,CACN,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,GAAG,YAAY,CAAA;KAAE,GAC3D,MAAM,IAAI,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,KAAK,EAAE;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE,oBAAoB,CAAC;KAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;gFAM4E;IAC5E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;qFACiF;IACjF,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAmBD,qBAAa,UAAU;IACrB;;;;;;;;OAQG;IACH,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAoC;IAI5E;;;;;;;;;;;;;;;OAeG;IACH,WAAW,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC1C,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC9D,MAAM,IAAI;IAIb,2DAA2D;IAC3D,cAAc,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC7C,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC9D,IAAI;IAMP,8EAA8E;IAC9E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IAED,iFAAiF;IACjF,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAGpC;IAGD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAEhC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAW;IAC3C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAW;IAC/C,OAAO,CAAC,WAAW,CAAC,CAAS;IAC7B,OAAO,CAAC,mBAAmB,CAAC,CAAS;IACrC,OAAO,CAAC,MAAM,CAAC,CAAmB;IAClC,OAAO,CAAC,YAAY,CAAC,CAA4B;IACjD,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IACxD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAClD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IACnE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAyC;IAC7E,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAC1E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG1B;IACJ,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAG1B;IACJ,OAAO,CAAC,eAAe,CAAK;gBAEhB,OAAO,GAAE,iBAAsB;IA6B3C,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,qBAAqB;IAqC7B,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,6BAA6B;IAUrC,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,iBAAiB;YAqBX,8BAA8B;IAa5C;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAStD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC;IA4DpE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;IAsBvF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,CAAC;IAS1G;;;;;;;;;;;;;;;;;OAiBG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,KAAK,CAAC;IA8DxF,KAAK,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,WAAW;IA0C1C,MAAM,IAAI,WAAW;IAMrB;;;;OAIG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtE,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgEhG,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAYpC,0EAA0E;IACpE,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlF,uEAAuE;IACjE,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAO/D,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC;IAKlC,SAAS,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrE,WAAW,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7E,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAM5D;;;;;;;;OAQG;IACG,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;IAMnF,2CAA2C;IACrC,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAM3C;;;;;;;;;;;;;;;OAeG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,GAAG,eAAe;IAQ3F;;;;;;;;;OASG;WACU,UAAU,CACrB,MAAM,EAAE,KAAK,EAAE,EACf,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAA;KAAE,CAAC;IAYvE;;;;OAIG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IAsDnE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IAgErE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAwC/B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,gBAAgB;IAoBxB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,mBAAmB;IAO3B;;8DAE0D;IAC1D,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,cAAc;IAatB;;;;;;;OAOG;YACW,qBAAqB;IAiDnC,wFAAwF;IACxF,OAAO,CAAC,oBAAoB;YAMd,aAAa;IAiD3B,OAAO,CAAC,UAAU;IAuLlB,OAAO,CAAC,SAAS;IAoNjB,OAAO,CAAC,aAAa;YA8EP,mBAAmB;IAejC,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,uBAAuB;CAMhC"}
|
package/dist/relay.js
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
*
|
|
11
11
|
* const relay = new AgentRelay();
|
|
12
12
|
*
|
|
13
|
-
* relay.
|
|
14
|
-
* relay.
|
|
13
|
+
* relay.addListener('messageReceived', (message) => console.log(message));
|
|
14
|
+
* relay.addListener('agentSpawned', (agent) => console.log("spawned", agent.name));
|
|
15
15
|
*
|
|
16
16
|
* const codex = await relay.codex.spawn();
|
|
17
17
|
* const human = relay.human({ name: "System" });
|
|
@@ -27,6 +27,7 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
|
27
27
|
import path from 'node:path';
|
|
28
28
|
import { RelayCast } from '@relaycast/sdk';
|
|
29
29
|
import { AgentRelayClient } from './client.js';
|
|
30
|
+
import { EventBus } from './event-bus.js';
|
|
30
31
|
import { buildPersonaSpawnSpec, composePersonaTask, loadPersona, materializePersonaConfigFiles, restorePersonaConfigFiles, } from './personas.js';
|
|
31
32
|
import { AgentRelayProtocolError } from './transport.js';
|
|
32
33
|
import { followLogs as followLogsFromFile, getLogs as getLogsFromFile, listLoggedAgents as listLoggedAgentsFromFile, } from './logs.js';
|
|
@@ -93,20 +94,40 @@ function toWorkspaceRegistryEntry(value) {
|
|
|
93
94
|
}
|
|
94
95
|
// ── AgentRelay facade ───────────────────────────────────────────────────────
|
|
95
96
|
export class AgentRelay {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
97
|
+
/**
|
|
98
|
+
* Multi-listener event registry. Subscribe via {@link addListener} or
|
|
99
|
+
* `bus.addListener` directly; emit happens internally as broker events
|
|
100
|
+
* arrive and at SDK call sites for the spawn / release lifecycle hooks.
|
|
101
|
+
*
|
|
102
|
+
* The bus is shared with the underlying `AgentRelayClient` (created via
|
|
103
|
+
* {@link ensureStarted}) so listeners registered on either object see
|
|
104
|
+
* the same events.
|
|
105
|
+
*/
|
|
106
|
+
bus = new EventBus();
|
|
107
|
+
// ── Listener registration ───────────────────────────────────────────────
|
|
108
|
+
/**
|
|
109
|
+
* Register a listener for a relay lifecycle event. Returns an
|
|
110
|
+
* unsubscribe function.
|
|
111
|
+
*
|
|
112
|
+
* Example:
|
|
113
|
+
* ```ts
|
|
114
|
+
* const off = relay.addListener('agentSpawned', (agent) => console.log(agent.name));
|
|
115
|
+
* // later:
|
|
116
|
+
* off();
|
|
117
|
+
* ```
|
|
118
|
+
*
|
|
119
|
+
* Replaces the pre-2.x single-callback `on*` fields. Multiple listeners
|
|
120
|
+
* can register for the same event; they fire sequentially in
|
|
121
|
+
* registration order. Async handlers are awaited. Handler exceptions
|
|
122
|
+
* are caught and logged; one bad listener never blocks the others.
|
|
123
|
+
*/
|
|
124
|
+
addListener(event, handler) {
|
|
125
|
+
return this.bus.addListener(event, handler);
|
|
126
|
+
}
|
|
127
|
+
/** Remove a previously-registered listener. Idempotent. */
|
|
128
|
+
removeListener(event, handler) {
|
|
129
|
+
this.bus.removeListener(event, handler);
|
|
130
|
+
}
|
|
110
131
|
// ── Public accessors ────────────────────────────────────────────────────
|
|
111
132
|
/** The resolved Relaycast workspace API key (available after first spawn). */
|
|
112
133
|
get workspaceKey() {
|
|
@@ -475,7 +496,7 @@ export class AgentRelay {
|
|
|
475
496
|
data: input.data,
|
|
476
497
|
mode: input.mode,
|
|
477
498
|
};
|
|
478
|
-
this.
|
|
499
|
+
void this.bus.emit('messageSent', msg);
|
|
479
500
|
return msg;
|
|
480
501
|
},
|
|
481
502
|
};
|
|
@@ -860,7 +881,7 @@ export class AgentRelay {
|
|
|
860
881
|
return;
|
|
861
882
|
}
|
|
862
883
|
state.active = active;
|
|
863
|
-
this.
|
|
884
|
+
void this.bus.emit('agentActivityChanged', {
|
|
864
885
|
name,
|
|
865
886
|
active,
|
|
866
887
|
pendingDeliveries: state.pendingDeliveries.size,
|
|
@@ -988,6 +1009,7 @@ export class AgentRelay {
|
|
|
988
1009
|
this.startPromise = this.ensureRelaycastApiKey()
|
|
989
1010
|
.then(() => AgentRelayClient.spawn({
|
|
990
1011
|
...this.clientOptions,
|
|
1012
|
+
eventBus: this.bus,
|
|
991
1013
|
onStderr: (line) => {
|
|
992
1014
|
for (const listener of this.stderrListeners) {
|
|
993
1015
|
try {
|
|
@@ -1046,7 +1068,7 @@ export class AgentRelay {
|
|
|
1046
1068
|
threadId: event.thread_id,
|
|
1047
1069
|
mode: event.injection_mode ?? event.mode,
|
|
1048
1070
|
};
|
|
1049
|
-
this.
|
|
1071
|
+
void this.bus.emit('messageReceived', msg);
|
|
1050
1072
|
break;
|
|
1051
1073
|
}
|
|
1052
1074
|
case 'agent_spawned': {
|
|
@@ -1055,7 +1077,7 @@ export class AgentRelay {
|
|
|
1055
1077
|
this.messageReadyAgents.delete(event.name);
|
|
1056
1078
|
this.exitedAgents.delete(event.name);
|
|
1057
1079
|
this.idleAgents.delete(event.name);
|
|
1058
|
-
this.
|
|
1080
|
+
void this.bus.emit('agentSpawned', agent);
|
|
1059
1081
|
break;
|
|
1060
1082
|
}
|
|
1061
1083
|
case 'agent_released': {
|
|
@@ -1065,7 +1087,7 @@ export class AgentRelay {
|
|
|
1065
1087
|
this.readyAgents.delete(event.name);
|
|
1066
1088
|
this.messageReadyAgents.delete(event.name);
|
|
1067
1089
|
this.idleAgents.delete(event.name);
|
|
1068
|
-
this.
|
|
1090
|
+
void this.bus.emit('agentReleased', agent);
|
|
1069
1091
|
this.knownAgents.delete(event.name);
|
|
1070
1092
|
this.outputListeners.delete(event.name);
|
|
1071
1093
|
this.exitResolvers.get(event.name)?.resolve('released');
|
|
@@ -1087,7 +1109,7 @@ export class AgentRelay {
|
|
|
1087
1109
|
if (event.reason !== undefined) {
|
|
1088
1110
|
agent.exitReason = event.reason;
|
|
1089
1111
|
}
|
|
1090
|
-
this.
|
|
1112
|
+
void this.bus.emit('agentExited', agent);
|
|
1091
1113
|
this.knownAgents.delete(event.name);
|
|
1092
1114
|
this.outputListeners.delete(event.name);
|
|
1093
1115
|
this.exitResolvers.get(event.name)?.resolve('exited');
|
|
@@ -1099,7 +1121,7 @@ export class AgentRelay {
|
|
|
1099
1121
|
case 'agent_exit': {
|
|
1100
1122
|
const agent = this.knownAgents.get(event.name) ?? this.ensureAgentHandle(event.name, 'pty', []);
|
|
1101
1123
|
agent.exitReason = event.reason;
|
|
1102
|
-
this.
|
|
1124
|
+
void this.bus.emit('agentExitRequested', { name: event.name, reason: event.reason });
|
|
1103
1125
|
break;
|
|
1104
1126
|
}
|
|
1105
1127
|
case 'worker_ready': {
|
|
@@ -1107,17 +1129,17 @@ export class AgentRelay {
|
|
|
1107
1129
|
this.readyAgents.add(event.name);
|
|
1108
1130
|
this.exitedAgents.delete(event.name);
|
|
1109
1131
|
this.idleAgents.delete(event.name);
|
|
1110
|
-
this.
|
|
1132
|
+
void this.bus.emit('agentReady', agent);
|
|
1111
1133
|
break;
|
|
1112
1134
|
}
|
|
1113
1135
|
case 'channel_subscribed': {
|
|
1114
1136
|
this.addAgentChannels(event.name, event.channels);
|
|
1115
|
-
this.
|
|
1137
|
+
void this.bus.emit('channelSubscribed', { agent: event.name, channels: event.channels });
|
|
1116
1138
|
break;
|
|
1117
1139
|
}
|
|
1118
1140
|
case 'channel_unsubscribed': {
|
|
1119
1141
|
this.removeAgentChannels(event.name, event.channels);
|
|
1120
|
-
this.
|
|
1142
|
+
void this.bus.emit('channelUnsubscribed', { agent: event.name, channels: event.channels });
|
|
1121
1143
|
break;
|
|
1122
1144
|
}
|
|
1123
1145
|
case 'delivery_queued': {
|
|
@@ -1167,7 +1189,7 @@ export class AgentRelay {
|
|
|
1167
1189
|
case 'worker_stream': {
|
|
1168
1190
|
// Agent producing output is no longer idle
|
|
1169
1191
|
this.idleAgents.delete(event.name);
|
|
1170
|
-
this.
|
|
1192
|
+
void this.bus.emit('workerOutput', {
|
|
1171
1193
|
name: event.name,
|
|
1172
1194
|
stream: event.stream,
|
|
1173
1195
|
chunk: event.chunk,
|
|
@@ -1179,7 +1201,7 @@ export class AgentRelay {
|
|
|
1179
1201
|
case 'agent_idle': {
|
|
1180
1202
|
this.clearAgentDeliveries(event.name, 'agent_idle');
|
|
1181
1203
|
this.idleAgents.add(event.name);
|
|
1182
|
-
this.
|
|
1204
|
+
void this.bus.emit('agentIdle', {
|
|
1183
1205
|
name: event.name,
|
|
1184
1206
|
idleSecs: event.idle_secs,
|
|
1185
1207
|
});
|
|
@@ -1190,7 +1212,7 @@ export class AgentRelay {
|
|
|
1190
1212
|
}
|
|
1191
1213
|
}
|
|
1192
1214
|
if (event.kind.startsWith('delivery_') || event.kind.startsWith('message_delivery_')) {
|
|
1193
|
-
this.
|
|
1215
|
+
void this.bus.emit('deliveryUpdate', event);
|
|
1194
1216
|
}
|
|
1195
1217
|
});
|
|
1196
1218
|
}
|
|
@@ -1355,7 +1377,7 @@ export class AgentRelay {
|
|
|
1355
1377
|
data: input.data,
|
|
1356
1378
|
mode: input.mode,
|
|
1357
1379
|
};
|
|
1358
|
-
relay.
|
|
1380
|
+
void relay.bus.emit('messageSent', msg);
|
|
1359
1381
|
return msg;
|
|
1360
1382
|
},
|
|
1361
1383
|
async subscribe(channelsToAdd) {
|