@brainpilot/protocol 0.0.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;IA2P3C,mDAAmD;;;IAGnD,iCAAiC;;IAEjC,wDAAwD;;IAExD,eAAe;;IAEf,iEAAiE;;;;;IATjE,mDAAmD;;;IAGnD,iCAAiC;;IAEjC,wDAAwD;;IAExD,eAAe;;IAEf,iEAAiE;;;;;IATjE,mDAAmD;;;IAGnD,iCAAiC;;IAEjC,wDAAwD;;IAExD,eAAe;;IAEf,iEAAiE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAgFnE,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,mcAuBpB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAM/D,wEAAwE;AACxE,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,CAElD;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO;;;;;IA5XzC,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;IA2P3C,mDAAmD;;;IAGnD,iCAAiC;;IAEjC,wDAAwD;;IAExD,eAAe;;IAEf,iEAAiE;;;;;;;;;;;;;;;;;;;;;IApQnE,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;IAA7C,6CAA6C;;;;;;;;;;;;;;;;;;;;;;;IA2P3C,mDAAmD;;;IAGnD,iCAAiC;;IAEjC,wDAAwD;;IAExD,eAAe;;IAEf,iEAAiE;;;;;;;;;;;;;;;;iCA0HpE;AAED,oDAAoD;AACpD,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,SAAS,CAE1D"}
package/dist/events.js ADDED
@@ -0,0 +1,387 @@
1
+ /**
2
+ * AG-UI event union — the wire contract between Runtime and clients.
3
+ *
4
+ * This file is the single source of truth for the 23-event AG-UI v1 set:
5
+ * - ~20 existing AG-UI canonical events (UPPERCASE names, emitted by the
6
+ * legacy runtime `events/ag_ui.py`), and
7
+ * - 3 NEW events from TS_PI_REFACTOR_DESIGN.md §6 (snake_case names):
8
+ * `system_message`, `user_input_request`, `user_input_response`.
9
+ *
10
+ * Naming policy: we preserve each event's *wire* `type` string verbatim so the
11
+ * bytes flowing over SSE are unchanged. The existing events keep their
12
+ * AG-UI-canonical UPPERCASE `type` values (TEXT_MESSAGE_START, …) exactly as
13
+ * `legacy/agent_runtime/events/ag_ui.py` emits them; the 3 new events use the
14
+ * snake_case `type` values given in the design doc.
15
+ *
16
+ * Field naming: the wire is snake_case (`session_id`, `agent_name`,
17
+ * `tool_call_id`, …). backend.ts camelizes on receipt. This SSOT models the
18
+ * WIRE shape (snake_case) since that is what crosses the Runtime HTTP
19
+ * boundary; the web package's `normalizeAgUiEvent` is responsible for the
20
+ * camelCase view. See backend.ts `AgUiEvent`/`AgUiMessage` for the camel view.
21
+ */
22
+ import { z } from "zod";
23
+ /* ------------------------------------------------------------------ *
24
+ * Shared building blocks
25
+ * ------------------------------------------------------------------ */
26
+ /**
27
+ * AG-UI message shape inside MESSAGES_SNAPSHOT. Wire form is snake_case
28
+ * (`agent_name`); backend.ts camelizes to `agentName`.
29
+ * NOTE: doc/backend.ts call the camel field `agentName`; the wire field is
30
+ * `agent_name` (per legacy fold.py). We model the wire here.
31
+ */
32
+ export const AgUiMessageSchema = z
33
+ .object({
34
+ id: z.string(),
35
+ role: z.string(),
36
+ content: z.string().optional(),
37
+ tool_calls: z
38
+ .array(z.object({
39
+ id: z.string(),
40
+ name: z.string(),
41
+ arguments: z.string(),
42
+ }))
43
+ .optional(),
44
+ tool_call_id: z.string().optional(),
45
+ error: z.boolean().optional(),
46
+ agent_name: z.string().optional(),
47
+ unfinished: z.boolean().optional(),
48
+ kind: z.string().optional(),
49
+ hook_family: z.string().optional(),
50
+ hook_phase: z.string().optional(),
51
+ hook_level: z.string().optional(),
52
+ hook_data: z.record(z.string(), z.unknown()).optional(),
53
+ })
54
+ .passthrough();
55
+ /**
56
+ * Common envelope every existing AG-UI event carries (see `_envelope` in
57
+ * legacy ag_ui.py). All fields optional except `type` so tolerant parsing of
58
+ * partial/legacy payloads still succeeds.
59
+ */
60
+ const envelope = {
61
+ session_id: z.string().optional(),
62
+ run_id: z.string().optional(),
63
+ thread_id: z.string().optional(),
64
+ agent_name: z.string().optional(),
65
+ /** ISO8601 emit timestamp (legacy `_ts`). */
66
+ _ts: z.string().optional(),
67
+ };
68
+ /* ------------------------------------------------------------------ *
69
+ * TEXT_MESSAGE_* (assistant text streaming)
70
+ * ------------------------------------------------------------------ */
71
+ export const TextMessageStartEventSchema = z
72
+ .object({
73
+ type: z.literal("TEXT_MESSAGE_START"),
74
+ message_id: z.string(),
75
+ role: z.string().default("assistant"),
76
+ ...envelope,
77
+ })
78
+ .passthrough();
79
+ export const TextMessageContentEventSchema = z
80
+ .object({
81
+ type: z.literal("TEXT_MESSAGE_CONTENT"),
82
+ message_id: z.string(),
83
+ delta: z.string(),
84
+ ...envelope,
85
+ })
86
+ .passthrough();
87
+ export const TextMessageEndEventSchema = z
88
+ .object({
89
+ type: z.literal("TEXT_MESSAGE_END"),
90
+ message_id: z.string(),
91
+ ...envelope,
92
+ })
93
+ .passthrough();
94
+ export const TextMessageChunkEventSchema = z
95
+ .object({
96
+ type: z.literal("TEXT_MESSAGE_CHUNK"),
97
+ message_id: z.string(),
98
+ role: z.string().default("assistant"),
99
+ delta: z.string(),
100
+ ...envelope,
101
+ })
102
+ .passthrough();
103
+ /* ------------------------------------------------------------------ *
104
+ * TOOL_CALL_*
105
+ * ------------------------------------------------------------------ */
106
+ export const ToolCallStartEventSchema = z
107
+ .object({
108
+ type: z.literal("TOOL_CALL_START"),
109
+ tool_call_id: z.string(),
110
+ tool_call_name: z.string(),
111
+ parent_message_id: z.string().optional(),
112
+ ...envelope,
113
+ })
114
+ .passthrough();
115
+ export const ToolCallArgsEventSchema = z
116
+ .object({
117
+ type: z.literal("TOOL_CALL_ARGS"),
118
+ tool_call_id: z.string(),
119
+ delta: z.string(),
120
+ ...envelope,
121
+ })
122
+ .passthrough();
123
+ export const ToolCallEndEventSchema = z
124
+ .object({
125
+ type: z.literal("TOOL_CALL_END"),
126
+ tool_call_id: z.string(),
127
+ ...envelope,
128
+ })
129
+ .passthrough();
130
+ export const ToolCallResultEventSchema = z
131
+ .object({
132
+ type: z.literal("TOOL_CALL_RESULT"),
133
+ tool_call_id: z.string(),
134
+ message_id: z.string().optional(),
135
+ content: z.string().optional(),
136
+ is_error: z.boolean().optional(),
137
+ ...envelope,
138
+ })
139
+ .passthrough();
140
+ /* ------------------------------------------------------------------ *
141
+ * REASONING / thinking
142
+ * ------------------------------------------------------------------ */
143
+ export const ReasoningStartEventSchema = z
144
+ .object({
145
+ type: z.literal("REASONING_START"),
146
+ ...envelope,
147
+ })
148
+ .passthrough();
149
+ export const ReasoningEndEventSchema = z
150
+ .object({
151
+ type: z.literal("REASONING_END"),
152
+ ...envelope,
153
+ })
154
+ .passthrough();
155
+ export const ReasoningMessageStartEventSchema = z
156
+ .object({
157
+ type: z.literal("REASONING_MESSAGE_START"),
158
+ message_id: z.string(),
159
+ ...envelope,
160
+ })
161
+ .passthrough();
162
+ export const ReasoningMessageContentEventSchema = z
163
+ .object({
164
+ type: z.literal("REASONING_MESSAGE_CONTENT"),
165
+ message_id: z.string(),
166
+ delta: z.string(),
167
+ ...envelope,
168
+ })
169
+ .passthrough();
170
+ export const ReasoningMessageEndEventSchema = z
171
+ .object({
172
+ type: z.literal("REASONING_MESSAGE_END"),
173
+ message_id: z.string(),
174
+ ...envelope,
175
+ })
176
+ .passthrough();
177
+ /* ------------------------------------------------------------------ *
178
+ * RUN_* (lifecycle of one agent run)
179
+ * ------------------------------------------------------------------ */
180
+ export const RunStartedEventSchema = z
181
+ .object({
182
+ ...envelope,
183
+ type: z.literal("RUN_STARTED"),
184
+ run_id: z.string(),
185
+ parent_run_id: z.string().optional(),
186
+ })
187
+ .passthrough();
188
+ export const RunFinishedEventSchema = z
189
+ .object({
190
+ ...envelope,
191
+ type: z.literal("RUN_FINISHED"),
192
+ run_id: z.string(),
193
+ result: z.unknown().optional(),
194
+ })
195
+ .passthrough();
196
+ export const RunErrorEventSchema = z
197
+ .object({
198
+ ...envelope,
199
+ type: z.literal("RUN_ERROR"),
200
+ message: z.string(),
201
+ code: z.string().default("RUNTIME_ERROR"),
202
+ run_id: z.string().optional(),
203
+ })
204
+ .passthrough();
205
+ /* ------------------------------------------------------------------ *
206
+ * Snapshots & CUSTOM extension channel
207
+ * ------------------------------------------------------------------ */
208
+ export const MessagesSnapshotEventSchema = z
209
+ .object({
210
+ type: z.literal("MESSAGES_SNAPSHOT"),
211
+ messages: z.array(AgUiMessageSchema),
212
+ ...envelope,
213
+ })
214
+ .passthrough();
215
+ /**
216
+ * AG-UI CUSTOM event — project-specific extension channel. Carries a `name`
217
+ * discriminator + arbitrary `value`. Used by the runtime for `session_state`,
218
+ * `session_heartbeat`, and `agent_status` (see legacy ag_ui.py make_custom /
219
+ * make_session_state / make_session_heartbeat).
220
+ * NOTE: §10 names a dedicated `agent_status_update` event; in the existing
221
+ * wire that travels as CUSTOM{ name:"agent_status" | "session_state" }. We
222
+ * model both: the CUSTOM channel here, and a standalone agent_status_update
223
+ * schema below for the §10 contract. Consumers should accept either.
224
+ */
225
+ export const CustomEventSchema = z
226
+ .object({
227
+ type: z.literal("CUSTOM"),
228
+ name: z.string(),
229
+ value: z.unknown(),
230
+ ...envelope,
231
+ })
232
+ .passthrough();
233
+ /* ------------------------------------------------------------------ *
234
+ * agent_status_update (§10 state authority)
235
+ * ------------------------------------------------------------------ */
236
+ export const AgentRunStatusSchema = z.enum(["idle", "running", "error", "stopped"]);
237
+ /**
238
+ * §10 "状态权威:沙盒进程内" — emitted whenever an agent transitions
239
+ * idle/running/error/stopped. Field shape mirrors §10 `AgentState`.
240
+ */
241
+ export const AgentStatusUpdateEventSchema = z
242
+ .object({
243
+ type: z.literal("agent_status_update"),
244
+ name: z.string(),
245
+ status: AgentRunStatusSchema,
246
+ active_run_id: z.string().optional(),
247
+ active_tool_executions: z.array(z.string()).optional(),
248
+ last_error: z
249
+ .object({
250
+ message: z.string(),
251
+ timestamp: z.string(),
252
+ consecutive_count: z.number(),
253
+ })
254
+ .optional(),
255
+ ...envelope,
256
+ })
257
+ .passthrough();
258
+ /* ------------------------------------------------------------------ *
259
+ * NEW event 1: system_message (doc §6)
260
+ * ------------------------------------------------------------------ */
261
+ export const SystemMessageLevelSchema = z.enum(["info", "warning", "error", "fatal"]);
262
+ export const SystemMessageEventSchema = z
263
+ .object({
264
+ type: z.literal("system_message"),
265
+ session_id: z.string(),
266
+ /** Empty/absent = session-level system message. */
267
+ agent: z.string().optional(),
268
+ level: SystemMessageLevelSchema,
269
+ /** Plain, user-friendly text. */
270
+ message: z.string(),
271
+ /** Technical detail revealed on expand (debug mode). */
272
+ details: z.string().optional(),
273
+ /** ISO8601. */
274
+ timestamp: z.string(),
275
+ /** fatal = red flashing background; affects frontend styling. */
276
+ recoverable: z.boolean(),
277
+ })
278
+ .passthrough();
279
+ /* ------------------------------------------------------------------ *
280
+ * NEW event 2: user_input_request (doc §6 — ask_user)
281
+ * ------------------------------------------------------------------ */
282
+ export const UserInputRequestEventSchema = z
283
+ .object({
284
+ type: z.literal("user_input_request"),
285
+ session_id: z.string(),
286
+ request_id: z.string(),
287
+ agent: z.string(),
288
+ question: z.string(),
289
+ options: z.array(z.string()).optional(),
290
+ allow_free_text: z.boolean().optional(),
291
+ timeout_sec: z.number().optional(),
292
+ })
293
+ .passthrough();
294
+ /* ------------------------------------------------------------------ *
295
+ * NEW event 3: user_input_response (doc §6 — ask_user)
296
+ * ------------------------------------------------------------------ */
297
+ export const UserInputResponseEventSchema = z
298
+ .object({
299
+ type: z.literal("user_input_response"),
300
+ session_id: z.string(),
301
+ request_id: z.string(),
302
+ answer: z.string(),
303
+ })
304
+ .passthrough();
305
+ /* ------------------------------------------------------------------ *
306
+ * Discriminated union
307
+ * ------------------------------------------------------------------ */
308
+ /**
309
+ * The full AG-UI v1 event union (23 events).
310
+ *
311
+ * Existing (20): TEXT_MESSAGE_START/CONTENT/END/CHUNK,
312
+ * TOOL_CALL_START/ARGS/END/RESULT, REASONING_START/END,
313
+ * REASONING_MESSAGE_START/CONTENT/END, RUN_STARTED/FINISHED/ERROR,
314
+ * MESSAGES_SNAPSHOT, CUSTOM, agent_status_update.
315
+ * New (3): system_message, user_input_request, user_input_response.
316
+ */
317
+ export const AgUiEventSchema = z.discriminatedUnion("type", [
318
+ // text
319
+ TextMessageStartEventSchema,
320
+ TextMessageContentEventSchema,
321
+ TextMessageEndEventSchema,
322
+ TextMessageChunkEventSchema,
323
+ // tools
324
+ ToolCallStartEventSchema,
325
+ ToolCallArgsEventSchema,
326
+ ToolCallEndEventSchema,
327
+ ToolCallResultEventSchema,
328
+ // reasoning
329
+ ReasoningStartEventSchema,
330
+ ReasoningEndEventSchema,
331
+ ReasoningMessageStartEventSchema,
332
+ ReasoningMessageContentEventSchema,
333
+ ReasoningMessageEndEventSchema,
334
+ // run lifecycle
335
+ RunStartedEventSchema,
336
+ RunFinishedEventSchema,
337
+ RunErrorEventSchema,
338
+ // snapshots / custom / status
339
+ MessagesSnapshotEventSchema,
340
+ CustomEventSchema,
341
+ AgentStatusUpdateEventSchema,
342
+ // new
343
+ SystemMessageEventSchema,
344
+ UserInputRequestEventSchema,
345
+ UserInputResponseEventSchema,
346
+ ]);
347
+ /** All AG-UI event `type` discriminator strings, for runtime checks/tests. */
348
+ export const AG_UI_EVENT_TYPES = [
349
+ "TEXT_MESSAGE_START",
350
+ "TEXT_MESSAGE_CONTENT",
351
+ "TEXT_MESSAGE_END",
352
+ "TEXT_MESSAGE_CHUNK",
353
+ "TOOL_CALL_START",
354
+ "TOOL_CALL_ARGS",
355
+ "TOOL_CALL_END",
356
+ "TOOL_CALL_RESULT",
357
+ "REASONING_START",
358
+ "REASONING_END",
359
+ "REASONING_MESSAGE_START",
360
+ "REASONING_MESSAGE_CONTENT",
361
+ "REASONING_MESSAGE_END",
362
+ "RUN_STARTED",
363
+ "RUN_FINISHED",
364
+ "RUN_ERROR",
365
+ "MESSAGES_SNAPSHOT",
366
+ "CUSTOM",
367
+ "agent_status_update",
368
+ "system_message",
369
+ "user_input_request",
370
+ "user_input_response",
371
+ ];
372
+ /* ------------------------------------------------------------------ *
373
+ * Validation helpers (tolerant, zod-backed — spirit of normalizeAgUiEvent)
374
+ * ------------------------------------------------------------------ */
375
+ /** Parse + validate a raw event; throws a ZodError on invalid input. */
376
+ export function parseEvent(raw) {
377
+ return AgUiEventSchema.parse(raw);
378
+ }
379
+ /** Non-throwing variant returning zod's SafeParseReturnType. */
380
+ export function safeParseEvent(raw) {
381
+ return AgUiEventSchema.safeParse(raw);
382
+ }
383
+ /** True iff `raw` validates as some AG-UI event. */
384
+ export function isAgUiEvent(raw) {
385
+ return AgUiEventSchema.safeParse(raw).success;
386
+ }
387
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}