@brainpilot/protocol 0.0.4 → 0.0.6
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/dist/__tests__/http.test.d.ts +2 -0
- package/dist/__tests__/http.test.d.ts.map +1 -0
- package/dist/__tests__/http.test.js +22 -0
- package/dist/__tests__/http.test.js.map +1 -0
- package/dist/domain.d.ts +387 -0
- package/dist/domain.d.ts.map +1 -1
- package/dist/domain.js +152 -0
- package/dist/domain.js.map +1 -1
- package/dist/events.d.ts +15 -0
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +15 -0
- package/dist/events.js.map +1 -1
- package/dist/http.d.ts +291 -2
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +75 -1
- package/dist/http.js.map +1 -1
- package/package.json +4 -1
package/dist/http.d.ts
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* event payload schema (AgUiEvent) is identical for both.
|
|
25
25
|
*/
|
|
26
26
|
import { z } from "zod";
|
|
27
|
-
export type HttpMethod = "GET" | "POST" | "DELETE";
|
|
27
|
+
export type HttpMethod = "GET" | "POST" | "PUT" | "DELETE";
|
|
28
28
|
export interface RouteDef {
|
|
29
29
|
readonly method: HttpMethod;
|
|
30
30
|
/** Path template with `:param` placeholders. */
|
|
@@ -45,16 +45,27 @@ export declare const MetricsResponseSchema: z.ZodObject<{
|
|
|
45
45
|
lastActivityAt: z.ZodNullable<z.ZodString>;
|
|
46
46
|
/** Resident set size in bytes. */
|
|
47
47
|
memRss: z.ZodNumber;
|
|
48
|
+
/**
|
|
49
|
+
* Container memory budget in bytes (BP_MEM_LIMIT_MB, §R-4). Null when the
|
|
50
|
+
* opt-in budget is unset — i.e. single-user / no in-runtime throttle.
|
|
51
|
+
*/
|
|
52
|
+
memLimitBytes: z.ZodNullable<z.ZodNumber>;
|
|
53
|
+
/** memRss / memLimitBytes, or null when no budget is set. */
|
|
54
|
+
memRatio: z.ZodNullable<z.ZodNumber>;
|
|
48
55
|
}, "strip", z.ZodTypeAny, {
|
|
49
56
|
activeSessions: number;
|
|
50
57
|
runningAgents: number;
|
|
51
58
|
lastActivityAt: string | null;
|
|
52
59
|
memRss: number;
|
|
60
|
+
memLimitBytes: number | null;
|
|
61
|
+
memRatio: number | null;
|
|
53
62
|
}, {
|
|
54
63
|
activeSessions: number;
|
|
55
64
|
runningAgents: number;
|
|
56
65
|
lastActivityAt: string | null;
|
|
57
66
|
memRss: number;
|
|
67
|
+
memLimitBytes: number | null;
|
|
68
|
+
memRatio: number | null;
|
|
58
69
|
}>;
|
|
59
70
|
export type MetricsResponse = z.infer<typeof MetricsResponseSchema>;
|
|
60
71
|
export declare const CreateSessionRequestSchema: z.ZodObject<{
|
|
@@ -62,12 +73,20 @@ export declare const CreateSessionRequestSchema: z.ZodObject<{
|
|
|
62
73
|
title: z.ZodOptional<z.ZodString>;
|
|
63
74
|
/** Optional caller-supplied id; runtime generates a UUID otherwise. */
|
|
64
75
|
id: z.ZodOptional<z.ZodString>;
|
|
76
|
+
/** Optional provider profile id this session should use (providers.json). */
|
|
77
|
+
providerId: z.ZodOptional<z.ZodString>;
|
|
78
|
+
/** Optional model id within that provider. */
|
|
79
|
+
modelId: z.ZodOptional<z.ZodString>;
|
|
65
80
|
}, "strip", z.ZodTypeAny, {
|
|
66
81
|
id?: string | undefined;
|
|
67
82
|
title?: string | undefined;
|
|
83
|
+
providerId?: string | undefined;
|
|
84
|
+
modelId?: string | undefined;
|
|
68
85
|
}, {
|
|
69
86
|
id?: string | undefined;
|
|
70
87
|
title?: string | undefined;
|
|
88
|
+
providerId?: string | undefined;
|
|
89
|
+
modelId?: string | undefined;
|
|
71
90
|
}>;
|
|
72
91
|
export type CreateSessionRequest = z.infer<typeof CreateSessionRequestSchema>;
|
|
73
92
|
export declare const CreateSessionResponseSchema: z.ZodObject<{
|
|
@@ -198,6 +217,76 @@ export declare const GetSessionStateResponseSchema: z.ZodObject<{
|
|
|
198
217
|
alive?: boolean | undefined;
|
|
199
218
|
}>, "many">;
|
|
200
219
|
lastActivityTs: z.ZodString;
|
|
220
|
+
tokenUsage: z.ZodOptional<z.ZodObject<{
|
|
221
|
+
total: z.ZodObject<{
|
|
222
|
+
input: z.ZodNumber;
|
|
223
|
+
output: z.ZodNumber;
|
|
224
|
+
cacheRead: z.ZodNumber;
|
|
225
|
+
cacheWrite: z.ZodNumber;
|
|
226
|
+
total: z.ZodNumber;
|
|
227
|
+
}, "strip", z.ZodTypeAny, {
|
|
228
|
+
input: number;
|
|
229
|
+
output: number;
|
|
230
|
+
cacheRead: number;
|
|
231
|
+
cacheWrite: number;
|
|
232
|
+
total: number;
|
|
233
|
+
}, {
|
|
234
|
+
input: number;
|
|
235
|
+
output: number;
|
|
236
|
+
cacheRead: number;
|
|
237
|
+
cacheWrite: number;
|
|
238
|
+
total: number;
|
|
239
|
+
}>;
|
|
240
|
+
byAgent: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
241
|
+
input: z.ZodNumber;
|
|
242
|
+
output: z.ZodNumber;
|
|
243
|
+
cacheRead: z.ZodNumber;
|
|
244
|
+
cacheWrite: z.ZodNumber;
|
|
245
|
+
total: z.ZodNumber;
|
|
246
|
+
}, "strip", z.ZodTypeAny, {
|
|
247
|
+
input: number;
|
|
248
|
+
output: number;
|
|
249
|
+
cacheRead: number;
|
|
250
|
+
cacheWrite: number;
|
|
251
|
+
total: number;
|
|
252
|
+
}, {
|
|
253
|
+
input: number;
|
|
254
|
+
output: number;
|
|
255
|
+
cacheRead: number;
|
|
256
|
+
cacheWrite: number;
|
|
257
|
+
total: number;
|
|
258
|
+
}>>;
|
|
259
|
+
}, "strip", z.ZodTypeAny, {
|
|
260
|
+
total: {
|
|
261
|
+
input: number;
|
|
262
|
+
output: number;
|
|
263
|
+
cacheRead: number;
|
|
264
|
+
cacheWrite: number;
|
|
265
|
+
total: number;
|
|
266
|
+
};
|
|
267
|
+
byAgent: Record<string, {
|
|
268
|
+
input: number;
|
|
269
|
+
output: number;
|
|
270
|
+
cacheRead: number;
|
|
271
|
+
cacheWrite: number;
|
|
272
|
+
total: number;
|
|
273
|
+
}>;
|
|
274
|
+
}, {
|
|
275
|
+
total: {
|
|
276
|
+
input: number;
|
|
277
|
+
output: number;
|
|
278
|
+
cacheRead: number;
|
|
279
|
+
cacheWrite: number;
|
|
280
|
+
total: number;
|
|
281
|
+
};
|
|
282
|
+
byAgent: Record<string, {
|
|
283
|
+
input: number;
|
|
284
|
+
output: number;
|
|
285
|
+
cacheRead: number;
|
|
286
|
+
cacheWrite: number;
|
|
287
|
+
total: number;
|
|
288
|
+
}>;
|
|
289
|
+
}>>;
|
|
201
290
|
}, "strip", z.ZodTypeAny, {
|
|
202
291
|
runState: {
|
|
203
292
|
active: boolean;
|
|
@@ -211,6 +300,22 @@ export declare const GetSessionStateResponseSchema: z.ZodObject<{
|
|
|
211
300
|
alive?: boolean | undefined;
|
|
212
301
|
}[];
|
|
213
302
|
lastActivityTs: string;
|
|
303
|
+
tokenUsage?: {
|
|
304
|
+
total: {
|
|
305
|
+
input: number;
|
|
306
|
+
output: number;
|
|
307
|
+
cacheRead: number;
|
|
308
|
+
cacheWrite: number;
|
|
309
|
+
total: number;
|
|
310
|
+
};
|
|
311
|
+
byAgent: Record<string, {
|
|
312
|
+
input: number;
|
|
313
|
+
output: number;
|
|
314
|
+
cacheRead: number;
|
|
315
|
+
cacheWrite: number;
|
|
316
|
+
total: number;
|
|
317
|
+
}>;
|
|
318
|
+
} | undefined;
|
|
214
319
|
}, {
|
|
215
320
|
runState: {
|
|
216
321
|
active: boolean;
|
|
@@ -224,20 +329,136 @@ export declare const GetSessionStateResponseSchema: z.ZodObject<{
|
|
|
224
329
|
alive?: boolean | undefined;
|
|
225
330
|
}[];
|
|
226
331
|
lastActivityTs: string;
|
|
332
|
+
tokenUsage?: {
|
|
333
|
+
total: {
|
|
334
|
+
input: number;
|
|
335
|
+
output: number;
|
|
336
|
+
cacheRead: number;
|
|
337
|
+
cacheWrite: number;
|
|
338
|
+
total: number;
|
|
339
|
+
};
|
|
340
|
+
byAgent: Record<string, {
|
|
341
|
+
input: number;
|
|
342
|
+
output: number;
|
|
343
|
+
cacheRead: number;
|
|
344
|
+
cacheWrite: number;
|
|
345
|
+
total: number;
|
|
346
|
+
}>;
|
|
347
|
+
} | undefined;
|
|
227
348
|
}>;
|
|
228
349
|
export type GetSessionStateResponse = z.infer<typeof GetSessionStateResponseSchema>;
|
|
229
|
-
|
|
350
|
+
/** A normal user message injected into the session. */
|
|
351
|
+
export declare const SendMessageContentSchema: z.ZodObject<{
|
|
230
352
|
content: z.ZodString;
|
|
231
353
|
/** Target agent; defaults to principal. */
|
|
232
354
|
agent: z.ZodOptional<z.ZodString>;
|
|
355
|
+
/**
|
|
356
|
+
* Optional client-supplied metadata (issue #42). The web composer sends the
|
|
357
|
+
* `uuid` it used for the optimistic user bubble so the runtime can persist a
|
|
358
|
+
* matching `TEXT_MESSAGE_CHUNK` (role:"user") under the same id — on reload
|
|
359
|
+
* the replayed event dedupes against the optimistic one by id rather than
|
|
360
|
+
* duplicating it.
|
|
361
|
+
*/
|
|
362
|
+
data: z.ZodOptional<z.ZodObject<{
|
|
363
|
+
uuid: z.ZodOptional<z.ZodString>;
|
|
364
|
+
timestamp: z.ZodOptional<z.ZodString>;
|
|
365
|
+
}, "strip", z.ZodTypeAny, {
|
|
366
|
+
timestamp?: string | undefined;
|
|
367
|
+
uuid?: string | undefined;
|
|
368
|
+
}, {
|
|
369
|
+
timestamp?: string | undefined;
|
|
370
|
+
uuid?: string | undefined;
|
|
371
|
+
}>>;
|
|
233
372
|
}, "strip", z.ZodTypeAny, {
|
|
234
373
|
content: string;
|
|
235
374
|
agent?: string | undefined;
|
|
375
|
+
data?: {
|
|
376
|
+
timestamp?: string | undefined;
|
|
377
|
+
uuid?: string | undefined;
|
|
378
|
+
} | undefined;
|
|
236
379
|
}, {
|
|
237
380
|
content: string;
|
|
238
381
|
agent?: string | undefined;
|
|
382
|
+
data?: {
|
|
383
|
+
timestamp?: string | undefined;
|
|
384
|
+
uuid?: string | undefined;
|
|
385
|
+
} | undefined;
|
|
239
386
|
}>;
|
|
387
|
+
/** A reply to an outstanding ask_user (user_input_request) — see events.ts. */
|
|
388
|
+
export declare const UserInputResponseBodySchema: z.ZodObject<{
|
|
389
|
+
type: z.ZodLiteral<"user_input_response">;
|
|
390
|
+
session_id: z.ZodString;
|
|
391
|
+
request_id: z.ZodString;
|
|
392
|
+
answer: z.ZodString;
|
|
393
|
+
}, "strip", z.ZodTypeAny, {
|
|
394
|
+
type: "user_input_response";
|
|
395
|
+
session_id: string;
|
|
396
|
+
request_id: string;
|
|
397
|
+
answer: string;
|
|
398
|
+
}, {
|
|
399
|
+
type: "user_input_response";
|
|
400
|
+
session_id: string;
|
|
401
|
+
request_id: string;
|
|
402
|
+
answer: string;
|
|
403
|
+
}>;
|
|
404
|
+
/**
|
|
405
|
+
* POST /sessions/:id/messages accepts EITHER a normal message OR an ask_user
|
|
406
|
+
* reply. The answer body is matched by its `type` literal; everything else is
|
|
407
|
+
* treated as a content message.
|
|
408
|
+
*/
|
|
409
|
+
export declare const SendMessageRequestSchema: z.ZodUnion<[z.ZodObject<{
|
|
410
|
+
type: z.ZodLiteral<"user_input_response">;
|
|
411
|
+
session_id: z.ZodString;
|
|
412
|
+
request_id: z.ZodString;
|
|
413
|
+
answer: z.ZodString;
|
|
414
|
+
}, "strip", z.ZodTypeAny, {
|
|
415
|
+
type: "user_input_response";
|
|
416
|
+
session_id: string;
|
|
417
|
+
request_id: string;
|
|
418
|
+
answer: string;
|
|
419
|
+
}, {
|
|
420
|
+
type: "user_input_response";
|
|
421
|
+
session_id: string;
|
|
422
|
+
request_id: string;
|
|
423
|
+
answer: string;
|
|
424
|
+
}>, z.ZodObject<{
|
|
425
|
+
content: z.ZodString;
|
|
426
|
+
/** Target agent; defaults to principal. */
|
|
427
|
+
agent: z.ZodOptional<z.ZodString>;
|
|
428
|
+
/**
|
|
429
|
+
* Optional client-supplied metadata (issue #42). The web composer sends the
|
|
430
|
+
* `uuid` it used for the optimistic user bubble so the runtime can persist a
|
|
431
|
+
* matching `TEXT_MESSAGE_CHUNK` (role:"user") under the same id — on reload
|
|
432
|
+
* the replayed event dedupes against the optimistic one by id rather than
|
|
433
|
+
* duplicating it.
|
|
434
|
+
*/
|
|
435
|
+
data: z.ZodOptional<z.ZodObject<{
|
|
436
|
+
uuid: z.ZodOptional<z.ZodString>;
|
|
437
|
+
timestamp: z.ZodOptional<z.ZodString>;
|
|
438
|
+
}, "strip", z.ZodTypeAny, {
|
|
439
|
+
timestamp?: string | undefined;
|
|
440
|
+
uuid?: string | undefined;
|
|
441
|
+
}, {
|
|
442
|
+
timestamp?: string | undefined;
|
|
443
|
+
uuid?: string | undefined;
|
|
444
|
+
}>>;
|
|
445
|
+
}, "strip", z.ZodTypeAny, {
|
|
446
|
+
content: string;
|
|
447
|
+
agent?: string | undefined;
|
|
448
|
+
data?: {
|
|
449
|
+
timestamp?: string | undefined;
|
|
450
|
+
uuid?: string | undefined;
|
|
451
|
+
} | undefined;
|
|
452
|
+
}, {
|
|
453
|
+
content: string;
|
|
454
|
+
agent?: string | undefined;
|
|
455
|
+
data?: {
|
|
456
|
+
timestamp?: string | undefined;
|
|
457
|
+
uuid?: string | undefined;
|
|
458
|
+
} | undefined;
|
|
459
|
+
}>]>;
|
|
240
460
|
export type SendMessageRequest = z.infer<typeof SendMessageRequestSchema>;
|
|
461
|
+
export type UserInputResponseBody = z.infer<typeof UserInputResponseBodySchema>;
|
|
241
462
|
export declare const SendMessageResponseSchema: z.ZodObject<{
|
|
242
463
|
accepted: z.ZodBoolean;
|
|
243
464
|
/** Run id started/queued for this message, if synchronously known. */
|
|
@@ -1111,6 +1332,31 @@ export declare const InterruptResponseSchema: z.ZodObject<{
|
|
|
1111
1332
|
interrupted: boolean;
|
|
1112
1333
|
}>;
|
|
1113
1334
|
export type InterruptResponse = z.infer<typeof InterruptResponseSchema>;
|
|
1335
|
+
/** #47: upload body. Content is base64 (binary-safe over the JSON byte chain). */
|
|
1336
|
+
export declare const WriteFileRequestSchema: z.ZodObject<{
|
|
1337
|
+
/** Workspace-relative path (a leading `/workspace` prefix is tolerated). */
|
|
1338
|
+
path: z.ZodString;
|
|
1339
|
+
/** File contents, base64-encoded. */
|
|
1340
|
+
contentBase64: z.ZodString;
|
|
1341
|
+
}, "strip", z.ZodTypeAny, {
|
|
1342
|
+
path: string;
|
|
1343
|
+
contentBase64: string;
|
|
1344
|
+
}, {
|
|
1345
|
+
path: string;
|
|
1346
|
+
contentBase64: string;
|
|
1347
|
+
}>;
|
|
1348
|
+
export type WriteFileRequest = z.infer<typeof WriteFileRequestSchema>;
|
|
1349
|
+
export declare const WriteFileResponseSchema: z.ZodObject<{
|
|
1350
|
+
path: z.ZodString;
|
|
1351
|
+
size: z.ZodNumber;
|
|
1352
|
+
}, "strip", z.ZodTypeAny, {
|
|
1353
|
+
path: string;
|
|
1354
|
+
size: number;
|
|
1355
|
+
}, {
|
|
1356
|
+
path: string;
|
|
1357
|
+
size: number;
|
|
1358
|
+
}>;
|
|
1359
|
+
export type WriteFileResponse = z.infer<typeof WriteFileResponseSchema>;
|
|
1114
1360
|
export declare const ListAgentsResponseSchema: z.ZodObject<{
|
|
1115
1361
|
agents: z.ZodArray<z.ZodObject<{
|
|
1116
1362
|
name: z.ZodString;
|
|
@@ -1182,6 +1428,11 @@ export declare const RUNTIME_ROUTES: {
|
|
|
1182
1428
|
readonly method: "GET";
|
|
1183
1429
|
readonly path: "/sessions/:id";
|
|
1184
1430
|
};
|
|
1431
|
+
/** Update session metadata (currently just `title`); persists to meta.json. */
|
|
1432
|
+
readonly updateSession: {
|
|
1433
|
+
readonly method: "PUT";
|
|
1434
|
+
readonly path: "/sessions/:id";
|
|
1435
|
+
};
|
|
1185
1436
|
readonly deleteSession: {
|
|
1186
1437
|
readonly method: "DELETE";
|
|
1187
1438
|
readonly path: "/sessions/:id";
|
|
@@ -1190,6 +1441,11 @@ export declare const RUNTIME_ROUTES: {
|
|
|
1190
1441
|
readonly method: "GET";
|
|
1191
1442
|
readonly path: "/sessions/:id/state";
|
|
1192
1443
|
};
|
|
1444
|
+
/** Graph of Trace (reasoning DAG) for a session. */
|
|
1445
|
+
readonly getTrace: {
|
|
1446
|
+
readonly method: "GET";
|
|
1447
|
+
readonly path: "/sessions/:id/trace";
|
|
1448
|
+
};
|
|
1193
1449
|
readonly sendMessage: {
|
|
1194
1450
|
readonly method: "POST";
|
|
1195
1451
|
readonly path: "/sessions/:id/messages";
|
|
@@ -1204,6 +1460,17 @@ export declare const RUNTIME_ROUTES: {
|
|
|
1204
1460
|
readonly method: "GET";
|
|
1205
1461
|
readonly path: "/sessions/:id/events";
|
|
1206
1462
|
};
|
|
1463
|
+
/**
|
|
1464
|
+
* Persisted AG-UI event history from `events.jsonl`. The SPA calls this on
|
|
1465
|
+
* session activation to rehydrate chat after a runtime restart (the SSE
|
|
1466
|
+
* stream only replays the in-memory ring buffer). Query: `?limit=N`
|
|
1467
|
+
* (default 1000, capped at 5000); returns the most recent N events when
|
|
1468
|
+
* the file is longer.
|
|
1469
|
+
*/
|
|
1470
|
+
readonly getSessionHistory: {
|
|
1471
|
+
readonly method: "GET";
|
|
1472
|
+
readonly path: "/sessions/:id/history";
|
|
1473
|
+
};
|
|
1207
1474
|
readonly interrupt: {
|
|
1208
1475
|
readonly method: "POST";
|
|
1209
1476
|
readonly path: "/sessions/:id/interrupt";
|
|
@@ -1216,6 +1483,28 @@ export declare const RUNTIME_ROUTES: {
|
|
|
1216
1483
|
readonly method: "POST";
|
|
1217
1484
|
readonly path: "/sessions/:id/evict";
|
|
1218
1485
|
};
|
|
1486
|
+
/** Workspace files (`workspaces/:id/`). `?path=` is relative to the workspace root. */
|
|
1487
|
+
readonly listFiles: {
|
|
1488
|
+
readonly method: "GET";
|
|
1489
|
+
readonly path: "/sessions/:id/files";
|
|
1490
|
+
};
|
|
1491
|
+
readonly readFile: {
|
|
1492
|
+
readonly method: "GET";
|
|
1493
|
+
readonly path: "/sessions/:id/files/content";
|
|
1494
|
+
};
|
|
1495
|
+
readonly readRawFile: {
|
|
1496
|
+
readonly method: "GET";
|
|
1497
|
+
readonly path: "/sessions/:id/files/raw";
|
|
1498
|
+
};
|
|
1499
|
+
readonly deleteFile: {
|
|
1500
|
+
readonly method: "DELETE";
|
|
1501
|
+
readonly path: "/sessions/:id/files";
|
|
1502
|
+
};
|
|
1503
|
+
/** #47: upload a file into the workspace. Body: { path, contentBase64 }. */
|
|
1504
|
+
readonly writeFile: {
|
|
1505
|
+
readonly method: "POST";
|
|
1506
|
+
readonly path: "/sessions/:id/files";
|
|
1507
|
+
};
|
|
1219
1508
|
};
|
|
1220
1509
|
export type RuntimeRouteName = keyof typeof RUNTIME_ROUTES;
|
|
1221
1510
|
//# sourceMappingURL=http.d.ts.map
|
package/dist/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/dist/http.js
CHANGED
|
@@ -42,6 +42,13 @@ export const MetricsResponseSchema = z.object({
|
|
|
42
42
|
lastActivityAt: z.string().nullable(),
|
|
43
43
|
/** Resident set size in bytes. */
|
|
44
44
|
memRss: z.number(),
|
|
45
|
+
/**
|
|
46
|
+
* Container memory budget in bytes (BP_MEM_LIMIT_MB, §R-4). Null when the
|
|
47
|
+
* opt-in budget is unset — i.e. single-user / no in-runtime throttle.
|
|
48
|
+
*/
|
|
49
|
+
memLimitBytes: z.number().nullable(),
|
|
50
|
+
/** memRss / memLimitBytes, or null when no budget is set. */
|
|
51
|
+
memRatio: z.number().nullable(),
|
|
45
52
|
});
|
|
46
53
|
/* ------------------------------------------------------------------ *
|
|
47
54
|
* POST /sessions (create)
|
|
@@ -51,6 +58,10 @@ export const CreateSessionRequestSchema = z.object({
|
|
|
51
58
|
title: z.string().optional(),
|
|
52
59
|
/** Optional caller-supplied id; runtime generates a UUID otherwise. */
|
|
53
60
|
id: z.string().optional(),
|
|
61
|
+
/** Optional provider profile id this session should use (providers.json). */
|
|
62
|
+
providerId: z.string().optional(),
|
|
63
|
+
/** Optional model id within that provider. */
|
|
64
|
+
modelId: z.string().optional(),
|
|
54
65
|
});
|
|
55
66
|
export const CreateSessionResponseSchema = z.object({
|
|
56
67
|
id: z.string(),
|
|
@@ -74,11 +85,41 @@ export const GetSessionStateResponseSchema = SessionStateSnapshotSchema;
|
|
|
74
85
|
/* ------------------------------------------------------------------ *
|
|
75
86
|
* POST /sessions/:id/messages (inject user message)
|
|
76
87
|
* ------------------------------------------------------------------ */
|
|
77
|
-
|
|
88
|
+
/** A normal user message injected into the session. */
|
|
89
|
+
export const SendMessageContentSchema = z.object({
|
|
78
90
|
content: z.string(),
|
|
79
91
|
/** Target agent; defaults to principal. */
|
|
80
92
|
agent: z.string().optional(),
|
|
93
|
+
/**
|
|
94
|
+
* Optional client-supplied metadata (issue #42). The web composer sends the
|
|
95
|
+
* `uuid` it used for the optimistic user bubble so the runtime can persist a
|
|
96
|
+
* matching `TEXT_MESSAGE_CHUNK` (role:"user") under the same id — on reload
|
|
97
|
+
* the replayed event dedupes against the optimistic one by id rather than
|
|
98
|
+
* duplicating it.
|
|
99
|
+
*/
|
|
100
|
+
data: z
|
|
101
|
+
.object({
|
|
102
|
+
uuid: z.string().optional(),
|
|
103
|
+
timestamp: z.string().optional(),
|
|
104
|
+
})
|
|
105
|
+
.optional(),
|
|
81
106
|
});
|
|
107
|
+
/** A reply to an outstanding ask_user (user_input_request) — see events.ts. */
|
|
108
|
+
export const UserInputResponseBodySchema = z.object({
|
|
109
|
+
type: z.literal("user_input_response"),
|
|
110
|
+
session_id: z.string(),
|
|
111
|
+
request_id: z.string(),
|
|
112
|
+
answer: z.string(),
|
|
113
|
+
});
|
|
114
|
+
/**
|
|
115
|
+
* POST /sessions/:id/messages accepts EITHER a normal message OR an ask_user
|
|
116
|
+
* reply. The answer body is matched by its `type` literal; everything else is
|
|
117
|
+
* treated as a content message.
|
|
118
|
+
*/
|
|
119
|
+
export const SendMessageRequestSchema = z.union([
|
|
120
|
+
UserInputResponseBodySchema,
|
|
121
|
+
SendMessageContentSchema,
|
|
122
|
+
]);
|
|
82
123
|
export const SendMessageResponseSchema = z.object({
|
|
83
124
|
accepted: z.boolean(),
|
|
84
125
|
/** Run id started/queued for this message, if synchronously known. */
|
|
@@ -100,6 +141,20 @@ export const InterruptRequestSchema = z.object({
|
|
|
100
141
|
export const InterruptResponseSchema = z.object({
|
|
101
142
|
interrupted: z.boolean(),
|
|
102
143
|
});
|
|
144
|
+
/* ------------------------------------------------------------------ *
|
|
145
|
+
* POST /sessions/:id/files (#47 — upload a file into the workspace)
|
|
146
|
+
* ------------------------------------------------------------------ */
|
|
147
|
+
/** #47: upload body. Content is base64 (binary-safe over the JSON byte chain). */
|
|
148
|
+
export const WriteFileRequestSchema = z.object({
|
|
149
|
+
/** Workspace-relative path (a leading `/workspace` prefix is tolerated). */
|
|
150
|
+
path: z.string().trim().min(1),
|
|
151
|
+
/** File contents, base64-encoded. */
|
|
152
|
+
contentBase64: z.string(),
|
|
153
|
+
});
|
|
154
|
+
export const WriteFileResponseSchema = z.object({
|
|
155
|
+
path: z.string(),
|
|
156
|
+
size: z.number(),
|
|
157
|
+
});
|
|
103
158
|
/* ------------------------------------------------------------------ *
|
|
104
159
|
* GET /sessions/:id/agents (§10 polling fallback)
|
|
105
160
|
* ------------------------------------------------------------------ */
|
|
@@ -123,15 +178,34 @@ export const RUNTIME_ROUTES = {
|
|
|
123
178
|
createSession: { method: "POST", path: "/sessions" },
|
|
124
179
|
listSessions: { method: "GET", path: "/sessions" },
|
|
125
180
|
getSession: { method: "GET", path: "/sessions/:id" },
|
|
181
|
+
/** Update session metadata (currently just `title`); persists to meta.json. */
|
|
182
|
+
updateSession: { method: "PUT", path: "/sessions/:id" },
|
|
126
183
|
deleteSession: { method: "DELETE", path: "/sessions/:id" },
|
|
127
184
|
getSessionState: { method: "GET", path: "/sessions/:id/state" },
|
|
185
|
+
/** Graph of Trace (reasoning DAG) for a session. */
|
|
186
|
+
getTrace: { method: "GET", path: "/sessions/:id/trace" },
|
|
128
187
|
sendMessage: { method: "POST", path: "/sessions/:id/messages" },
|
|
129
188
|
/** Canonical AG-UI event stream (§15.4). */
|
|
130
189
|
sessionEvents: { method: "GET", path: "/sse/:id" },
|
|
131
190
|
/** Alias path some callers use; same AgUiEvent payload as `sessionEvents`. */
|
|
132
191
|
sessionEventsAlias: { method: "GET", path: "/sessions/:id/events" },
|
|
192
|
+
/**
|
|
193
|
+
* Persisted AG-UI event history from `events.jsonl`. The SPA calls this on
|
|
194
|
+
* session activation to rehydrate chat after a runtime restart (the SSE
|
|
195
|
+
* stream only replays the in-memory ring buffer). Query: `?limit=N`
|
|
196
|
+
* (default 1000, capped at 5000); returns the most recent N events when
|
|
197
|
+
* the file is longer.
|
|
198
|
+
*/
|
|
199
|
+
getSessionHistory: { method: "GET", path: "/sessions/:id/history" },
|
|
133
200
|
interrupt: { method: "POST", path: "/sessions/:id/interrupt" },
|
|
134
201
|
listAgents: { method: "GET", path: "/sessions/:id/agents" },
|
|
135
202
|
evictSession: { method: "POST", path: "/sessions/:id/evict" },
|
|
203
|
+
/** Workspace files (`workspaces/:id/`). `?path=` is relative to the workspace root. */
|
|
204
|
+
listFiles: { method: "GET", path: "/sessions/:id/files" },
|
|
205
|
+
readFile: { method: "GET", path: "/sessions/:id/files/content" },
|
|
206
|
+
readRawFile: { method: "GET", path: "/sessions/:id/files/raw" },
|
|
207
|
+
deleteFile: { method: "DELETE", path: "/sessions/:id/files" },
|
|
208
|
+
/** #47: upload a file into the workspace. Body: { path, contentBase64 }. */
|
|
209
|
+
writeFile: { method: "POST", path: "/sessions/:id/files" },
|
|
136
210
|
};
|
|
137
211
|
//# sourceMappingURL=http.js.map
|
package/dist/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAU3F;;wEAEwE;AAExE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAC3D,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,0EAA0E;IAC1E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,kCAAkC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAU3F;;wEAEwE;AAExE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAC3D,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,0EAA0E;IAC1E,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,kCAAkC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB;;;OAGG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,6DAA6D;IAC7D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,2EAA2E;IAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,uEAAuE;IACvE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,6EAA6E;IAC7E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,8CAA8C;IAC9C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC;CACjC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,wBAAwB,GAAG,aAAa,CAAC;AAGtD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,6BAA6B,GAAG,0BAA0B,CAAC;AAGxE;;wEAEwE;AAExE,uDAAuD;AACvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,2CAA2C;IAC3C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B;;;;;;OAMG;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACjC,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;IACtC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC;IAC9C,2BAA2B;IAC3B,wBAAwB;CACzB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,sEAAsE;IACtE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAGH;;wEAEwE;AAExE;6CAC6C;AAC7C,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAGnD;;wEAEwE;AAExE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,2EAA2E;IAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;CACzB,CAAC,CAAC;AAGH;;wEAEwE;AAExE,kFAAkF;AAClF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,4EAA4E;IAC5E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,qCAAqC;IACrC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;CACnC,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,2CAA2C;IAC3C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAGH;;wEAEwE;AAExE,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE;IAC1C,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;IAC5C,aAAa,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE;IACpD,YAAY,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE;IAClD,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE;IACpD,+EAA+E;IAC/E,aAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE;IACvD,aAAa,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE;IAC1D,eAAe,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC/D,oDAAoD;IACpD,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACxD,WAAW,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,EAAE;IAC/D,4CAA4C;IAC5C,aAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;IAClD,8EAA8E;IAC9E,kBAAkB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE;IACnE;;;;;;OAMG;IACH,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,uBAAuB,EAAE;IACnE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,EAAE;IAC9D,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAC3D,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC7D,uFAAuF;IACvF,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACzD,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,6BAA6B,EAAE;IAChE,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,yBAAyB,EAAE;IAC/D,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE;IAC7D,4EAA4E;IAC5E,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,EAAE;CACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brainpilot/protocol",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
|
+
"engines": {
|
|
5
|
+
"node": ">=22"
|
|
6
|
+
},
|
|
4
7
|
"license": "Apache-2.0",
|
|
5
8
|
"type": "module",
|
|
6
9
|
"description": "BrainPilot AG-UI events + REST/SSE schemas + Runtime HTTP contract (SSOT, zod-validated)",
|