@slopus/happy-agent-client 0.0.32 → 0.0.34
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/HappyAgentClient.d.ts +24 -3
- package/dist/HappyAgentClient.d.ts.map +1 -1
- package/dist/HappyAgentClient.js +92 -2
- package/dist/HappyAgentClient.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/protocol/agents.d.ts +48 -41
- package/dist/protocol/agents.d.ts.map +1 -1
- package/dist/protocol/agents.js +48 -1
- package/dist/protocol/agents.js.map +1 -1
- package/dist/protocol/bootstrap.d.ts +115 -4
- package/dist/protocol/bootstrap.d.ts.map +1 -1
- package/dist/protocol/bootstrap.js +3 -0
- package/dist/protocol/bootstrap.js.map +1 -1
- package/dist/protocol/bots.d.ts +235 -0
- package/dist/protocol/bots.d.ts.map +1 -0
- package/dist/protocol/bots.js +78 -0
- package/dist/protocol/bots.js.map +1 -0
- package/dist/protocol/cloud.d.ts +4 -5
- package/dist/protocol/cloud.d.ts.map +1 -1
- package/dist/protocol/cloud.js +9 -6
- package/dist/protocol/cloud.js.map +1 -1
- package/dist/protocol/events.d.ts +120 -1
- package/dist/protocol/events.d.ts.map +1 -1
- package/dist/protocol/events.js +14 -0
- package/dist/protocol/events.js.map +1 -1
- package/dist/protocol/projects.d.ts +116 -5
- package/dist/protocol/projects.d.ts.map +1 -1
- package/dist/protocol/projects.js +2 -1
- package/dist/protocol/projects.js.map +1 -1
- package/dist/protocol/workspaces.d.ts +105 -16
- package/dist/protocol/workspaces.d.ts.map +1 -1
- package/dist/protocol/workspaces.js +13 -5
- package/dist/protocol/workspaces.js.map +1 -1
- package/package.json +1 -1
|
@@ -29,6 +29,60 @@ export interface AgentBootstrapResponse extends AgentDraftResponse, AgentModeRes
|
|
|
29
29
|
* workspace carries its own ordered top-level agents.
|
|
30
30
|
*/
|
|
31
31
|
export declare const desktopBootstrapResponseSchema: import("@sinclair/typebox").TObject<{
|
|
32
|
+
/** Every bot, archived ones included. Absent on older compatible daemons. */
|
|
33
|
+
bots: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
34
|
+
agent: import("@sinclair/typebox").TObject<{
|
|
35
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
36
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
37
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
38
|
+
id: import("@sinclair/typebox").TString;
|
|
39
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
40
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
41
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
42
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
43
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
44
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
45
|
+
running: import("@sinclair/typebox").TInteger;
|
|
46
|
+
}>;
|
|
47
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
48
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
49
|
+
running: import("@sinclair/typebox").TInteger;
|
|
50
|
+
total: import("@sinclair/typebox").TInteger;
|
|
51
|
+
}>;
|
|
52
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
53
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
54
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
55
|
+
reason: import("@sinclair/typebox").TString;
|
|
56
|
+
since: import("@sinclair/typebox").TInteger;
|
|
57
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
58
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
59
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
60
|
+
version: import("@sinclair/typebox").TString;
|
|
61
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
62
|
+
}>;
|
|
63
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
64
|
+
avatar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
65
|
+
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
66
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
67
|
+
thumbhash: import("@sinclair/typebox").TString;
|
|
68
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
69
|
+
compute: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
70
|
+
path: import("@sinclair/typebox").TString;
|
|
71
|
+
type: import("@sinclair/typebox").TLiteral<"host">;
|
|
72
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
73
|
+
image: import("@sinclair/typebox").TString;
|
|
74
|
+
type: import("@sinclair/typebox").TLiteral<"docker">;
|
|
75
|
+
}>]>;
|
|
76
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
77
|
+
id: import("@sinclair/typebox").TString;
|
|
78
|
+
name: import("@sinclair/typebox").TString;
|
|
79
|
+
orderKey: import("@sinclair/typebox").TString;
|
|
80
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"archived">]>;
|
|
81
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
82
|
+
username: import("@sinclair/typebox").TString;
|
|
83
|
+
version: import("@sinclair/typebox").TString;
|
|
84
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
85
|
+
}>>>;
|
|
32
86
|
config: import("@sinclair/typebox").TObject<{
|
|
33
87
|
defaults: import("@sinclair/typebox").TObject<{
|
|
34
88
|
effort: import("@sinclair/typebox").TString;
|
|
@@ -239,7 +293,35 @@ export declare const desktopBootstrapResponseSchema: import("@sinclair/typebox")
|
|
|
239
293
|
}>;
|
|
240
294
|
/** Every active project, in catalog order. */
|
|
241
295
|
projects: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
242
|
-
agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").
|
|
296
|
+
agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
297
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
298
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
299
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
300
|
+
id: import("@sinclair/typebox").TString;
|
|
301
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
302
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
303
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
304
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
305
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
306
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
307
|
+
running: import("@sinclair/typebox").TInteger;
|
|
308
|
+
}>;
|
|
309
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
310
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
311
|
+
running: import("@sinclair/typebox").TInteger;
|
|
312
|
+
total: import("@sinclair/typebox").TInteger;
|
|
313
|
+
}>;
|
|
314
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
315
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
316
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
317
|
+
reason: import("@sinclair/typebox").TString;
|
|
318
|
+
since: import("@sinclair/typebox").TInteger;
|
|
319
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
320
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
321
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
322
|
+
version: import("@sinclair/typebox").TString;
|
|
323
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
324
|
+
}>>;
|
|
243
325
|
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
244
326
|
avatar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
245
327
|
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
@@ -340,12 +422,41 @@ export declare const desktopBootstrapResponseSchema: import("@sinclair/typebox")
|
|
|
340
422
|
}>]>>;
|
|
341
423
|
/** Each project's root workspace and the workspaces directly under it. */
|
|
342
424
|
workspaces: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
343
|
-
agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").
|
|
425
|
+
agents: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
426
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
427
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
428
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
429
|
+
id: import("@sinclair/typebox").TString;
|
|
430
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
431
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
432
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
433
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
434
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
435
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
436
|
+
running: import("@sinclair/typebox").TInteger;
|
|
437
|
+
}>;
|
|
438
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
439
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
440
|
+
running: import("@sinclair/typebox").TInteger;
|
|
441
|
+
total: import("@sinclair/typebox").TInteger;
|
|
442
|
+
}>;
|
|
443
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
444
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
445
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
446
|
+
reason: import("@sinclair/typebox").TString;
|
|
447
|
+
since: import("@sinclair/typebox").TInteger;
|
|
448
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
449
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
450
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
451
|
+
version: import("@sinclair/typebox").TString;
|
|
452
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
453
|
+
}>>;
|
|
344
454
|
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
345
455
|
base: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
346
456
|
commit: import("@sinclair/typebox").TString;
|
|
347
457
|
ref: import("@sinclair/typebox").TString;
|
|
348
458
|
}>, import("@sinclair/typebox").TNull]>;
|
|
459
|
+
botId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>>;
|
|
349
460
|
compute: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
350
461
|
path: import("@sinclair/typebox").TString;
|
|
351
462
|
type: import("@sinclair/typebox").TLiteral<"host">;
|
|
@@ -369,12 +480,12 @@ export declare const desktopBootstrapResponseSchema: import("@sinclair/typebox")
|
|
|
369
480
|
error: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
370
481
|
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"initializing">, import("@sinclair/typebox").TLiteral<"ready">, import("@sinclair/typebox").TLiteral<"failed">]>;
|
|
371
482
|
}>;
|
|
372
|
-
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TLiteral<"worktree">, import("@sinclair/typebox").TLiteral<"copy">]>;
|
|
483
|
+
kind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"root">, import("@sinclair/typebox").TLiteral<"worktree">, import("@sinclair/typebox").TLiteral<"copy">, import("@sinclair/typebox").TLiteral<"bot">]>;
|
|
373
484
|
name: import("@sinclair/typebox").TString;
|
|
374
485
|
nameSource: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
375
486
|
orderKey: import("@sinclair/typebox").TString;
|
|
376
487
|
parentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
377
|
-
projectId: import("@sinclair/typebox").TString
|
|
488
|
+
projectId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
378
489
|
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"archiving">, import("@sinclair/typebox").TLiteral<"archived">]>;
|
|
379
490
|
updatedAt: import("@sinclair/typebox").TInteger;
|
|
380
491
|
version: import("@sinclair/typebox").TString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../sources/protocol/bootstrap.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../sources/protocol/bootstrap.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG/F,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,aAAa,CAAC;AAGlE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD;;;;;;GAMG;AACH,MAAM,WAAW,sBACb,SAAQ,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,kBAAkB;IAChF,gFAAgF;IAChF,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAChC,mFAAmF;IACnF,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;CACvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B;IACvC,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAG7E;;;OAGG;;IAEH,oFAAoF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEpF,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIjF,8CAA8C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAE9C,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAE7E,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5E,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** Bootstrap: one request that gets a desktop client on screen instantly. */
|
|
2
2
|
import { Type } from "@sinclair/typebox";
|
|
3
|
+
import { botSchema } from "./bots.js";
|
|
3
4
|
import { cloudSchema } from "./cloud.js";
|
|
4
5
|
import { eventCursorSchema } from "./common.js";
|
|
5
6
|
import { daemonConfigSchema, onboardingStateSchema } from "./daemon.js";
|
|
@@ -16,6 +17,8 @@ import { workspaceSchema } from "./workspaces.js";
|
|
|
16
17
|
* workspace carries its own ordered top-level agents.
|
|
17
18
|
*/
|
|
18
19
|
export const desktopBootstrapResponseSchema = Type.Object({
|
|
20
|
+
/** Every bot, archived ones included. Absent on older compatible daemons. */
|
|
21
|
+
bots: Type.Optional(Type.Array(botSchema)),
|
|
19
22
|
config: daemonConfigSchema,
|
|
20
23
|
/**
|
|
21
24
|
* The newest event cursor as of this snapshot. Opening the event stream
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../sources/protocol/bootstrap.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,OAAO,EAAe,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAoB,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAoBlD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,CAAC,MAAM,CAAC;IACtD,MAAM,EAAE,kBAAkB;IAC1B;;;OAGG;IACH,MAAM,EAAE,iBAAiB;IACzB,oFAAoF;IACpF,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IACjC,iFAAiF;IACjF,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACvD,UAAU,EAAE,qBAAqB;IACjC,OAAO,EAAE,aAAa;IACtB,8CAA8C;IAC9C,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACnC,6EAA6E;IAC7E,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;IACrC,0EAA0E;IAC1E,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;CAC1C,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../sources/protocol/bootstrap.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,OAAO,EAAe,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAoB,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAoBlD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,CAAC,MAAM,CAAC;IACtD,6EAA6E;IAC7E,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,EAAE,kBAAkB;IAC1B;;;OAGG;IACH,MAAM,EAAE,iBAAiB;IACzB,oFAAoF;IACpF,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IACjC,iFAAiF;IACjF,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACvD,UAAU,EAAE,qBAAqB;IACjC,OAAO,EAAE,aAAa;IACtB,8CAA8C;IAC9C,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACnC,6EAA6E;IAC7E,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;IACrC,0EAA0E;IAC1E,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;CAC1C,CAAC,CAAC"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
/** Bots: persistent single-conversation assistants with a dedicated workspace. */
|
|
2
|
+
import { type Static } from "@sinclair/typebox";
|
|
3
|
+
/** A bot picture. Its bytes are served separately from the bot resource. */
|
|
4
|
+
export declare const botAvatarSchema: import("@sinclair/typebox").TObject<{
|
|
5
|
+
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
6
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
7
|
+
thumbhash: import("@sinclair/typebox").TString;
|
|
8
|
+
}>;
|
|
9
|
+
export type BotAvatar = Static<typeof botAvatarSchema>;
|
|
10
|
+
/** A human display name: nonblank, bounded, and free of ASCII control characters. */
|
|
11
|
+
export declare const botNameSchema: import("@sinclair/typebox").TString;
|
|
12
|
+
export type BotName = Static<typeof botNameSchema>;
|
|
13
|
+
/** The immutable local folder name chosen when a bot is created. */
|
|
14
|
+
export declare const botUsernameSchema: import("@sinclair/typebox").TString;
|
|
15
|
+
export type BotUsername = Static<typeof botUsernameSchema>;
|
|
16
|
+
/** A bot and its one independently versioned agent. */
|
|
17
|
+
export declare const botSchema: import("@sinclair/typebox").TObject<{
|
|
18
|
+
/** The bot's one agent, embedded in full for list rendering. */
|
|
19
|
+
agent: import("@sinclair/typebox").TObject<{
|
|
20
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
21
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
22
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
23
|
+
id: import("@sinclair/typebox").TString;
|
|
24
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
25
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
26
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
27
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
28
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
29
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
30
|
+
running: import("@sinclair/typebox").TInteger;
|
|
31
|
+
}>;
|
|
32
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
33
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
34
|
+
running: import("@sinclair/typebox").TInteger;
|
|
35
|
+
total: import("@sinclair/typebox").TInteger;
|
|
36
|
+
}>;
|
|
37
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
38
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
39
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
40
|
+
reason: import("@sinclair/typebox").TString;
|
|
41
|
+
since: import("@sinclair/typebox").TInteger;
|
|
42
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
43
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
44
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
45
|
+
version: import("@sinclair/typebox").TString;
|
|
46
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
47
|
+
}>;
|
|
48
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
49
|
+
avatar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
50
|
+
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
51
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
52
|
+
thumbhash: import("@sinclair/typebox").TString;
|
|
53
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
54
|
+
/** Mirrors the dedicated workspace's compute. */
|
|
55
|
+
compute: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
56
|
+
path: import("@sinclair/typebox").TString;
|
|
57
|
+
type: import("@sinclair/typebox").TLiteral<"host">;
|
|
58
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
59
|
+
image: import("@sinclair/typebox").TString;
|
|
60
|
+
type: import("@sinclair/typebox").TLiteral<"docker">;
|
|
61
|
+
}>]>;
|
|
62
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
63
|
+
id: import("@sinclair/typebox").TString;
|
|
64
|
+
name: import("@sinclair/typebox").TString;
|
|
65
|
+
/** An opaque catalog sort key. */
|
|
66
|
+
orderKey: import("@sinclair/typebox").TString;
|
|
67
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"archived">]>;
|
|
68
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
69
|
+
/** Immutable local snake_case name and folder name. */
|
|
70
|
+
username: import("@sinclair/typebox").TString;
|
|
71
|
+
version: import("@sinclair/typebox").TString;
|
|
72
|
+
/** The bot's dedicated workspace, distinct from the bot and agent IDs. */
|
|
73
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
74
|
+
}>;
|
|
75
|
+
export type Bot = Static<typeof botSchema>;
|
|
76
|
+
/** `GET /v0/bots` */
|
|
77
|
+
export declare const botListResponseSchema: import("@sinclair/typebox").TObject<{
|
|
78
|
+
bots: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
79
|
+
/** The bot's one agent, embedded in full for list rendering. */
|
|
80
|
+
agent: import("@sinclair/typebox").TObject<{
|
|
81
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
82
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
83
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
84
|
+
id: import("@sinclair/typebox").TString;
|
|
85
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
86
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
87
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
88
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
89
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
90
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
91
|
+
running: import("@sinclair/typebox").TInteger;
|
|
92
|
+
}>;
|
|
93
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
94
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
95
|
+
running: import("@sinclair/typebox").TInteger;
|
|
96
|
+
total: import("@sinclair/typebox").TInteger;
|
|
97
|
+
}>;
|
|
98
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
99
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
100
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
101
|
+
reason: import("@sinclair/typebox").TString;
|
|
102
|
+
since: import("@sinclair/typebox").TInteger;
|
|
103
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
104
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
105
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
106
|
+
version: import("@sinclair/typebox").TString;
|
|
107
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
108
|
+
}>;
|
|
109
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
110
|
+
avatar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
111
|
+
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
112
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
113
|
+
thumbhash: import("@sinclair/typebox").TString;
|
|
114
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
115
|
+
/** Mirrors the dedicated workspace's compute. */
|
|
116
|
+
compute: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
117
|
+
path: import("@sinclair/typebox").TString;
|
|
118
|
+
type: import("@sinclair/typebox").TLiteral<"host">;
|
|
119
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
120
|
+
image: import("@sinclair/typebox").TString;
|
|
121
|
+
type: import("@sinclair/typebox").TLiteral<"docker">;
|
|
122
|
+
}>]>;
|
|
123
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
124
|
+
id: import("@sinclair/typebox").TString;
|
|
125
|
+
name: import("@sinclair/typebox").TString;
|
|
126
|
+
/** An opaque catalog sort key. */
|
|
127
|
+
orderKey: import("@sinclair/typebox").TString;
|
|
128
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"archived">]>;
|
|
129
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
130
|
+
/** Immutable local snake_case name and folder name. */
|
|
131
|
+
username: import("@sinclair/typebox").TString;
|
|
132
|
+
version: import("@sinclair/typebox").TString;
|
|
133
|
+
/** The bot's dedicated workspace, distinct from the bot and agent IDs. */
|
|
134
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
135
|
+
}>>;
|
|
136
|
+
}>;
|
|
137
|
+
export type BotListResponse = Static<typeof botListResponseSchema>;
|
|
138
|
+
/** Every single-bot JSON route answers with this. */
|
|
139
|
+
export declare const botResponseSchema: import("@sinclair/typebox").TObject<{
|
|
140
|
+
bot: import("@sinclair/typebox").TObject<{
|
|
141
|
+
/** The bot's one agent, embedded in full for list rendering. */
|
|
142
|
+
agent: import("@sinclair/typebox").TObject<{
|
|
143
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
144
|
+
canSendMessages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
145
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
146
|
+
id: import("@sinclair/typebox").TString;
|
|
147
|
+
lastCursor: import("@sinclair/typebox").TString;
|
|
148
|
+
managedByAnotherAgent: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
149
|
+
orderKey: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
150
|
+
parentAgentId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
151
|
+
pendingQuestionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
152
|
+
processes: import("@sinclair/typebox").TObject<{
|
|
153
|
+
running: import("@sinclair/typebox").TInteger;
|
|
154
|
+
}>;
|
|
155
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"thinking">, import("@sinclair/typebox").TLiteral<"working">, import("@sinclair/typebox").TLiteral<"generating_tools">, import("@sinclair/typebox").TLiteral<"running_tools">]>;
|
|
156
|
+
subagents: import("@sinclair/typebox").TObject<{
|
|
157
|
+
running: import("@sinclair/typebox").TInteger;
|
|
158
|
+
total: import("@sinclair/typebox").TInteger;
|
|
159
|
+
}>;
|
|
160
|
+
title: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
161
|
+
titleStatus: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"idle">, import("@sinclair/typebox").TLiteral<"ready">]>;
|
|
162
|
+
unread: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
163
|
+
reason: import("@sinclair/typebox").TString;
|
|
164
|
+
since: import("@sinclair/typebox").TInteger;
|
|
165
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
166
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
167
|
+
userVisible: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
168
|
+
version: import("@sinclair/typebox").TString;
|
|
169
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
170
|
+
}>;
|
|
171
|
+
archivedAt: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TInteger, import("@sinclair/typebox").TNull]>;
|
|
172
|
+
avatar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
173
|
+
kind: import("@sinclair/typebox").TLiteral<"image">;
|
|
174
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"user">, import("@sinclair/typebox").TLiteral<"generated">]>;
|
|
175
|
+
thumbhash: import("@sinclair/typebox").TString;
|
|
176
|
+
}>, import("@sinclair/typebox").TNull]>;
|
|
177
|
+
/** Mirrors the dedicated workspace's compute. */
|
|
178
|
+
compute: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
179
|
+
path: import("@sinclair/typebox").TString;
|
|
180
|
+
type: import("@sinclair/typebox").TLiteral<"host">;
|
|
181
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
182
|
+
image: import("@sinclair/typebox").TString;
|
|
183
|
+
type: import("@sinclair/typebox").TLiteral<"docker">;
|
|
184
|
+
}>]>;
|
|
185
|
+
createdAt: import("@sinclair/typebox").TInteger;
|
|
186
|
+
id: import("@sinclair/typebox").TString;
|
|
187
|
+
name: import("@sinclair/typebox").TString;
|
|
188
|
+
/** An opaque catalog sort key. */
|
|
189
|
+
orderKey: import("@sinclair/typebox").TString;
|
|
190
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"active">, import("@sinclair/typebox").TLiteral<"archived">]>;
|
|
191
|
+
updatedAt: import("@sinclair/typebox").TInteger;
|
|
192
|
+
/** Immutable local snake_case name and folder name. */
|
|
193
|
+
username: import("@sinclair/typebox").TString;
|
|
194
|
+
version: import("@sinclair/typebox").TString;
|
|
195
|
+
/** The bot's dedicated workspace, distinct from the bot and agent IDs. */
|
|
196
|
+
workspaceId: import("@sinclair/typebox").TString;
|
|
197
|
+
}>;
|
|
198
|
+
}>;
|
|
199
|
+
export type BotResponse = Static<typeof botResponseSchema>;
|
|
200
|
+
/** `POST /v0/bots` */
|
|
201
|
+
export declare const createBotRequestSchema: import("@sinclair/typebox").TObject<{
|
|
202
|
+
/** Optional client-supplied ID, which makes creation safely retryable. */
|
|
203
|
+
id: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
204
|
+
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
205
|
+
name: import("@sinclair/typebox").TString;
|
|
206
|
+
/** Omitted, the daemon derives a unique username from `name`. */
|
|
207
|
+
username: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
208
|
+
}>;
|
|
209
|
+
export type CreateBotRequest = Static<typeof createBotRequestSchema>;
|
|
210
|
+
/** `PATCH /v0/bots/:botId` — the immutable username is deliberately absent. */
|
|
211
|
+
export declare const renameBotRequestSchema: import("@sinclair/typebox").TObject<{
|
|
212
|
+
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
213
|
+
name: import("@sinclair/typebox").TString;
|
|
214
|
+
/** Explicitly forbidden even though request objects tolerate future additive fields. */
|
|
215
|
+
username: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNever>;
|
|
216
|
+
}>;
|
|
217
|
+
export type RenameBotRequest = Static<typeof renameBotRequestSchema>;
|
|
218
|
+
/** `POST /v0/bots/:botId/archive` */
|
|
219
|
+
export declare const archiveBotRequestSchema: import("@sinclair/typebox").TObject<{
|
|
220
|
+
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
221
|
+
}>;
|
|
222
|
+
export type ArchiveBotRequest = Static<typeof archiveBotRequestSchema>;
|
|
223
|
+
/** `POST /v0/bots/:botId/unarchive` */
|
|
224
|
+
export declare const unarchiveBotRequestSchema: import("@sinclair/typebox").TObject<{
|
|
225
|
+
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
226
|
+
}>;
|
|
227
|
+
export type UnarchiveBotRequest = Static<typeof unarchiveBotRequestSchema>;
|
|
228
|
+
/** `POST /v0/bots/:botId/reorder` */
|
|
229
|
+
export declare const reorderBotRequestSchema: import("@sinclair/typebox").TObject<{
|
|
230
|
+
/** The bot to place this one after, or `null` to move it first. */
|
|
231
|
+
afterId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>;
|
|
232
|
+
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
233
|
+
}>;
|
|
234
|
+
export type ReorderBotRequest = Static<typeof reorderBotRequestSchema>;
|
|
235
|
+
//# sourceMappingURL=bots.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bots.d.ts","sourceRoot":"","sources":["../../sources/protocol/bots.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EAAE,KAAK,MAAM,EAAQ,MAAM,mBAAmB,CAAC;AAYtD,4EAA4E;AAC5E,eAAO,MAAM,eAAe;;;;EAI1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAEvD,qFAAqF;AACrF,eAAO,MAAM,aAAa,qCAIxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAEnD,oEAAoE;AACpE,eAAO,MAAM,iBAAiB,qCAI5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE3D,uDAAuD;AACvD,eAAO,MAAM,SAAS;IAClB,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIhE,iDAAiD;;;;;;;;;;;IAKjD,kCAAkC;;;;IAIlC,uDAAuD;;;IAGvD,0EAA0E;;EAE5E,CAAC;AACH,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAE3C,qBAAqB;AACrB,eAAO,MAAM,qBAAqB;;QAtB9B,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAIhE,iDAAiD;;;;;;;;;;;QAKjD,kCAAkC;;;;QAIlC,uDAAuD;;;QAGvD,0EAA0E;;;EAMG,CAAC;AAClF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEnE,qDAAqD;AACrD,eAAO,MAAM,iBAAiB;;QA1B1B,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAIhE,iDAAiD;;;;;;;;;;;QAKjD,kCAAkC;;;;QAIlC,uDAAuD;;;QAGvD,0EAA0E;;;EAUd,CAAC;AACjE,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE3D,sBAAsB;AACtB,eAAO,MAAM,sBAAsB;IAC/B,0EAA0E;;;;IAI1E,iEAAiE;;EAEnE,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAErE,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB;;;IAG/B,wFAAwF;;EAE1F,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAErE,qCAAqC;AACrC,eAAO,MAAM,uBAAuB;;EAElC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAEvE,uCAAuC;AACvC,eAAO,MAAM,yBAAyB;;EAEpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE3E,qCAAqC;AACrC,eAAO,MAAM,uBAAuB;IAChC,mEAAmE;;;EAGrE,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/** Bots: persistent single-conversation assistants with a dedicated workspace. */
|
|
2
|
+
import { Type } from "@sinclair/typebox";
|
|
3
|
+
import { agentSchema } from "./agents.js";
|
|
4
|
+
import { computeSchema, cuid2Schema, mutationIdSchema, Nullable, resourceVersionSchema, timestampSchema, } from "./common.js";
|
|
5
|
+
/** A bot picture. Its bytes are served separately from the bot resource. */
|
|
6
|
+
export const botAvatarSchema = Type.Object({
|
|
7
|
+
kind: Type.Literal("image"),
|
|
8
|
+
source: Type.Union([Type.Literal("user"), Type.Literal("generated")]),
|
|
9
|
+
thumbhash: Type.String(),
|
|
10
|
+
});
|
|
11
|
+
/** A human display name: nonblank, bounded, and free of ASCII control characters. */
|
|
12
|
+
export const botNameSchema = Type.String({
|
|
13
|
+
maxLength: 256,
|
|
14
|
+
minLength: 1,
|
|
15
|
+
pattern: "^(?=.*\\S)[^\\x00-\\x1f\\x7f]+$",
|
|
16
|
+
});
|
|
17
|
+
/** The immutable local folder name chosen when a bot is created. */
|
|
18
|
+
export const botUsernameSchema = Type.String({
|
|
19
|
+
maxLength: 64,
|
|
20
|
+
minLength: 1,
|
|
21
|
+
pattern: "^[a-z][a-z0-9_]{0,63}$",
|
|
22
|
+
});
|
|
23
|
+
/** A bot and its one independently versioned agent. */
|
|
24
|
+
export const botSchema = Type.Object({
|
|
25
|
+
/** The bot's one agent, embedded in full for list rendering. */
|
|
26
|
+
agent: agentSchema,
|
|
27
|
+
archivedAt: Nullable(timestampSchema),
|
|
28
|
+
avatar: Nullable(botAvatarSchema),
|
|
29
|
+
/** Mirrors the dedicated workspace's compute. */
|
|
30
|
+
compute: computeSchema,
|
|
31
|
+
createdAt: timestampSchema,
|
|
32
|
+
id: cuid2Schema,
|
|
33
|
+
name: botNameSchema,
|
|
34
|
+
/** An opaque catalog sort key. */
|
|
35
|
+
orderKey: Type.String(),
|
|
36
|
+
status: Type.Union([Type.Literal("active"), Type.Literal("archived")]),
|
|
37
|
+
updatedAt: timestampSchema,
|
|
38
|
+
/** Immutable local snake_case name and folder name. */
|
|
39
|
+
username: botUsernameSchema,
|
|
40
|
+
version: resourceVersionSchema,
|
|
41
|
+
/** The bot's dedicated workspace, distinct from the bot and agent IDs. */
|
|
42
|
+
workspaceId: cuid2Schema,
|
|
43
|
+
});
|
|
44
|
+
/** `GET /v0/bots` */
|
|
45
|
+
export const botListResponseSchema = Type.Object({ bots: Type.Array(botSchema) });
|
|
46
|
+
/** Every single-bot JSON route answers with this. */
|
|
47
|
+
export const botResponseSchema = Type.Object({ bot: botSchema });
|
|
48
|
+
/** `POST /v0/bots` */
|
|
49
|
+
export const createBotRequestSchema = Type.Object({
|
|
50
|
+
/** Optional client-supplied ID, which makes creation safely retryable. */
|
|
51
|
+
id: Type.Optional(cuid2Schema),
|
|
52
|
+
mutationId: Type.Optional(mutationIdSchema),
|
|
53
|
+
name: botNameSchema,
|
|
54
|
+
/** Omitted, the daemon derives a unique username from `name`. */
|
|
55
|
+
username: Type.Optional(botUsernameSchema),
|
|
56
|
+
});
|
|
57
|
+
/** `PATCH /v0/bots/:botId` — the immutable username is deliberately absent. */
|
|
58
|
+
export const renameBotRequestSchema = Type.Object({
|
|
59
|
+
mutationId: Type.Optional(mutationIdSchema),
|
|
60
|
+
name: botNameSchema,
|
|
61
|
+
/** Explicitly forbidden even though request objects tolerate future additive fields. */
|
|
62
|
+
username: Type.Optional(Type.Never()),
|
|
63
|
+
});
|
|
64
|
+
/** `POST /v0/bots/:botId/archive` */
|
|
65
|
+
export const archiveBotRequestSchema = Type.Object({
|
|
66
|
+
mutationId: Type.Optional(mutationIdSchema),
|
|
67
|
+
});
|
|
68
|
+
/** `POST /v0/bots/:botId/unarchive` */
|
|
69
|
+
export const unarchiveBotRequestSchema = Type.Object({
|
|
70
|
+
mutationId: Type.Optional(mutationIdSchema),
|
|
71
|
+
});
|
|
72
|
+
/** `POST /v0/bots/:botId/reorder` */
|
|
73
|
+
export const reorderBotRequestSchema = Type.Object({
|
|
74
|
+
/** The bot to place this one after, or `null` to move it first. */
|
|
75
|
+
afterId: Nullable(cuid2Schema),
|
|
76
|
+
mutationId: Type.Optional(mutationIdSchema),
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=bots.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bots.js","sourceRoot":"","sources":["../../sources/protocol/bots.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EAAe,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACH,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,qBAAqB,EACrB,eAAe,GAClB,MAAM,aAAa,CAAC;AAErB,4EAA4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC3B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACrE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;CAC3B,CAAC,CAAC;AAGH,qFAAqF;AACrF,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,GAAG;IACd,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,iCAAiC;CAC7C,CAAC,CAAC;AAGH,oEAAoE;AACpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,CAAC;IACZ,OAAO,EAAE,wBAAwB;CACpC,CAAC,CAAC;AAGH,uDAAuD;AACvD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;IACjC,gEAAgE;IAChE,KAAK,EAAE,WAAW;IAClB,UAAU,EAAE,QAAQ,CAAC,eAAe,CAAC;IACrC,MAAM,EAAE,QAAQ,CAAC,eAAe,CAAC;IACjC,iDAAiD;IACjD,OAAO,EAAE,aAAa;IACtB,SAAS,EAAE,eAAe;IAC1B,EAAE,EAAE,WAAW;IACf,IAAI,EAAE,aAAa;IACnB,kCAAkC;IAClC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACtE,SAAS,EAAE,eAAe;IAC1B,uDAAuD;IACvD,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,qBAAqB;IAC9B,0EAA0E;IAC1E,WAAW,EAAE,WAAW;CAC3B,CAAC,CAAC;AAGH,qBAAqB;AACrB,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;AAGlF,qDAAqD;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;AAGjE,sBAAsB;AACtB,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,0EAA0E;IAC1E,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC9B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC3C,IAAI,EAAE,aAAa;IACnB,iEAAiE;IACjE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;CAC7C,CAAC,CAAC;AAGH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9C,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC3C,IAAI,EAAE,aAAa;IACnB,wFAAwF;IACxF,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;CACxC,CAAC,CAAC;AAGH,qCAAqC;AACrC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC/C,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC9C,CAAC,CAAC;AAGH,uCAAuC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC,MAAM,CAAC;IACjD,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC9C,CAAC,CAAC;AAGH,qCAAqC;AACrC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC,MAAM,CAAC;IAC/C,mEAAmE;IACnE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC;IAC9B,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC9C,CAAC,CAAC"}
|
package/dist/protocol/cloud.d.ts
CHANGED
|
@@ -237,6 +237,7 @@ export declare const cloudAccessTokenResponseSchema: import("@sinclair/typebox")
|
|
|
237
237
|
}>;
|
|
238
238
|
}>;
|
|
239
239
|
export type CloudAccessTokenResponse = Static<typeof cloudAccessTokenResponseSchema>;
|
|
240
|
+
export declare const cloudUsernameSchema: import("@sinclair/typebox").TString;
|
|
240
241
|
/** A public profile that has not yet been registered in Happy Cloud. */
|
|
241
242
|
export declare const cloudUnregisteredProfileSchema: import("@sinclair/typebox").TObject<{
|
|
242
243
|
firstName: import("@sinclair/typebox").TNull;
|
|
@@ -270,12 +271,10 @@ export declare const cloudProfileResponseSchema: import("@sinclair/typebox").TOb
|
|
|
270
271
|
}>]>;
|
|
271
272
|
}>;
|
|
272
273
|
export type CloudProfileResponse = Static<typeof cloudProfileResponseSchema>;
|
|
273
|
-
/**
|
|
274
|
-
export declare const
|
|
275
|
-
firstName: import("@sinclair/typebox").TString;
|
|
276
|
-
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
274
|
+
/** Enrolls the connected account using the local Happy Agent profile and a Cloud username. */
|
|
275
|
+
export declare const enrollCloudProfileRequestSchema: import("@sinclair/typebox").TObject<{
|
|
277
276
|
mutationId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
278
277
|
username: import("@sinclair/typebox").TString;
|
|
279
278
|
}>;
|
|
280
|
-
export type
|
|
279
|
+
export type EnrollCloudProfileRequest = Static<typeof enrollCloudProfileRequestSchema>;
|
|
281
280
|
//# sourceMappingURL=cloud.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../sources/protocol/cloud.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../sources/protocol/cloud.ts"],"names":[],"mappings":"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"}
|
package/dist/protocol/cloud.js
CHANGED
|
@@ -101,6 +101,11 @@ const cloudVisibleNameSchema = Type.String({
|
|
|
101
101
|
maxLength: 64,
|
|
102
102
|
pattern: "^(?=.*\\S)[^\\x00-\\x1f\\x7f]+$",
|
|
103
103
|
});
|
|
104
|
+
export const cloudUsernameSchema = Type.String({
|
|
105
|
+
minLength: 3,
|
|
106
|
+
maxLength: 24,
|
|
107
|
+
pattern: "^[a-z0-9_]+$",
|
|
108
|
+
});
|
|
104
109
|
/** A public profile that has not yet been registered in Happy Cloud. */
|
|
105
110
|
export const cloudUnregisteredProfileSchema = Type.Object({
|
|
106
111
|
firstName: Type.Null(),
|
|
@@ -110,18 +115,16 @@ export const cloudUnregisteredProfileSchema = Type.Object({
|
|
|
110
115
|
export const cloudRegisteredProfileSchema = Type.Object({
|
|
111
116
|
firstName: cloudVisibleNameSchema,
|
|
112
117
|
lastName: Type.Optional(cloudVisibleNameSchema),
|
|
113
|
-
username:
|
|
118
|
+
username: cloudUsernameSchema,
|
|
114
119
|
});
|
|
115
120
|
export const cloudProfileSchema = Type.Union([
|
|
116
121
|
cloudUnregisteredProfileSchema,
|
|
117
122
|
cloudRegisteredProfileSchema,
|
|
118
123
|
]);
|
|
119
124
|
export const cloudProfileResponseSchema = Type.Object({ profile: cloudProfileSchema });
|
|
120
|
-
/**
|
|
121
|
-
export const
|
|
122
|
-
firstName: cloudVisibleNameSchema,
|
|
123
|
-
lastName: Type.Optional(cloudVisibleNameSchema),
|
|
125
|
+
/** Enrolls the connected account using the local Happy Agent profile and a Cloud username. */
|
|
126
|
+
export const enrollCloudProfileRequestSchema = Type.Object({
|
|
124
127
|
mutationId: Type.Optional(mutationIdSchema),
|
|
125
|
-
username:
|
|
128
|
+
username: cloudUsernameSchema,
|
|
126
129
|
}, { additionalProperties: false });
|
|
127
130
|
//# sourceMappingURL=cloud.js.map
|