@genesislcap/ai-assistant 14.493.0-GENC-1461.2 → 14.493.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/ai-assistant.api.json +213 -578
  2. package/dist/ai-assistant.d.ts +5 -128
  3. package/dist/custom-elements.json +430 -734
  4. package/dist/dts/channel/ai-activity-bus.d.ts +0 -36
  5. package/dist/dts/channel/ai-activity-bus.d.ts.map +1 -1
  6. package/dist/dts/components/chat-driver/chat-driver.d.ts +5 -49
  7. package/dist/dts/components/chat-driver/chat-driver.d.ts.map +1 -1
  8. package/dist/dts/components/orchestrating-driver/orchestrating-driver.d.ts +0 -3
  9. package/dist/dts/components/orchestrating-driver/orchestrating-driver.d.ts.map +1 -1
  10. package/dist/dts/config/config.d.ts +2 -37
  11. package/dist/dts/config/config.d.ts.map +1 -1
  12. package/dist/dts/main/main.d.ts.map +1 -1
  13. package/dist/esm/channel/ai-activity-bus.js +12 -48
  14. package/dist/esm/components/chat-driver/chat-driver.js +14 -28
  15. package/dist/esm/components/chat-driver/chat-driver.test.js +35 -19
  16. package/dist/esm/components/orchestrating-driver/orchestrating-driver.js +1 -7
  17. package/dist/esm/main/main.js +1 -8
  18. package/dist/esm/main/popout-interaction-gate.test.js +10 -6
  19. package/dist/tsconfig.tsbuildinfo +1 -1
  20. package/package.json +19 -29
  21. package/src/channel/ai-activity-bus.ts +10 -64
  22. package/src/components/chat-driver/chat-driver.test.ts +49 -23
  23. package/src/components/chat-driver/chat-driver.ts +28 -96
  24. package/src/components/orchestrating-driver/orchestrating-driver.ts +11 -10
  25. package/src/config/config.ts +1 -40
  26. package/src/main/main.ts +11 -8
  27. package/src/main/popout-interaction-gate.test.ts +11 -6
  28. package/dist/chat-driver.cjs +0 -5576
  29. package/dist/chat-driver.cjs.map +0 -7
  30. package/dist/chat-driver.mjs +0 -5534
  31. package/dist/chat-driver.mjs.map +0 -7
  32. package/dist/dts/chat-driver-node.d.ts +0 -28
  33. package/dist/dts/chat-driver-node.d.ts.map +0 -1
  34. package/dist/esm/chat-driver-node.js +0 -33
  35. package/scripts/build-chat-driver-node.mjs +0 -42
  36. package/src/chat-driver-node.ts +0 -54
@@ -178,116 +178,6 @@
178
178
  "name": "",
179
179
  "preserveMemberOrder": false,
180
180
  "members": [
181
- {
182
- "kind": "Interface",
183
- "canonicalReference": "@genesislcap/ai-assistant!ActivityBus:interface",
184
- "docComment": "/**\n * Minimal activity-bus surface the drivers depend on. `ChatDriver`/`OrchestratingDriver` only ever *publish* — accepting this narrow interface (rather than importing the module singleton) lets a headless/server or unit-test host omit the bus entirely, so no live `BroadcastChannel` is ever opened on that path. See {@link NOOP_ACTIVITY_BUS}.\n *\n * @beta\n */\n",
185
- "excerptTokens": [
186
- {
187
- "kind": "Content",
188
- "text": "export interface ActivityBus "
189
- }
190
- ],
191
- "fileUrlPath": "src/channel/ai-activity-bus.ts",
192
- "releaseTag": "Beta",
193
- "name": "ActivityBus",
194
- "preserveMemberOrder": false,
195
- "members": [
196
- {
197
- "kind": "MethodSignature",
198
- "canonicalReference": "@genesislcap/ai-assistant!ActivityBus#publish:member(1)",
199
- "docComment": "",
200
- "excerptTokens": [
201
- {
202
- "kind": "Content",
203
- "text": "publish<K extends "
204
- },
205
- {
206
- "kind": "Content",
207
- "text": "keyof "
208
- },
209
- {
210
- "kind": "Reference",
211
- "text": "AgenticActivityEvents",
212
- "canonicalReference": "@genesislcap/ai-assistant!AgenticActivityEvents:interface"
213
- },
214
- {
215
- "kind": "Content",
216
- "text": ">(type: "
217
- },
218
- {
219
- "kind": "Content",
220
- "text": "K"
221
- },
222
- {
223
- "kind": "Content",
224
- "text": ", detail: "
225
- },
226
- {
227
- "kind": "Reference",
228
- "text": "AgenticActivityEvents",
229
- "canonicalReference": "@genesislcap/ai-assistant!AgenticActivityEvents:interface"
230
- },
231
- {
232
- "kind": "Content",
233
- "text": "[K]"
234
- },
235
- {
236
- "kind": "Content",
237
- "text": "): "
238
- },
239
- {
240
- "kind": "Content",
241
- "text": "void"
242
- },
243
- {
244
- "kind": "Content",
245
- "text": ";"
246
- }
247
- ],
248
- "isOptional": false,
249
- "returnTypeTokenRange": {
250
- "startIndex": 9,
251
- "endIndex": 10
252
- },
253
- "releaseTag": "Beta",
254
- "overloadIndex": 1,
255
- "parameters": [
256
- {
257
- "parameterName": "type",
258
- "parameterTypeTokenRange": {
259
- "startIndex": 4,
260
- "endIndex": 5
261
- },
262
- "isOptional": false
263
- },
264
- {
265
- "parameterName": "detail",
266
- "parameterTypeTokenRange": {
267
- "startIndex": 6,
268
- "endIndex": 8
269
- },
270
- "isOptional": false
271
- }
272
- ],
273
- "typeParameters": [
274
- {
275
- "typeParameterName": "K",
276
- "constraintTokenRange": {
277
- "startIndex": 1,
278
- "endIndex": 3
279
- },
280
- "defaultTypeTokenRange": {
281
- "startIndex": 0,
282
- "endIndex": 0
283
- }
284
- }
285
- ],
286
- "name": "publish"
287
- }
288
- ],
289
- "extendsTokenRanges": []
290
- },
291
181
  {
292
182
  "kind": "Variable",
293
183
  "canonicalReference": "@genesislcap/ai-assistant!AGENT_PICKER_AUTO_VALUE:var",
@@ -747,33 +637,6 @@
747
637
  "endIndex": 2
748
638
  }
749
639
  },
750
- {
751
- "kind": "PropertySignature",
752
- "canonicalReference": "@genesislcap/ai-assistant!AgenticActivityBusConfig#channelNameFactory:member",
753
- "docComment": "/**\n * Lazy alternative to {@link AgenticActivityBusConfig.channelName}: called the first time a cross-tab channel is actually needed, in a browser only. Deferring the name computation keeps side effects (e.g. `sessionStorage` reads) out of module-eval and off the non-browser path. Ignored if `channelName` is also set.\n */\n",
754
- "excerptTokens": [
755
- {
756
- "kind": "Content",
757
- "text": "channelNameFactory?: "
758
- },
759
- {
760
- "kind": "Content",
761
- "text": "() => string"
762
- },
763
- {
764
- "kind": "Content",
765
- "text": ";"
766
- }
767
- ],
768
- "isReadonly": false,
769
- "isOptional": true,
770
- "releaseTag": "Beta",
771
- "name": "channelNameFactory",
772
- "propertyTypeTokenRange": {
773
- "startIndex": 1,
774
- "endIndex": 2
775
- }
776
- },
777
640
  {
778
641
  "kind": "PropertySignature",
779
642
  "canonicalReference": "@genesislcap/ai-assistant!AgenticActivityBusConfig#crossTabEvents:member",
@@ -4175,12 +4038,75 @@
4175
4038
  },
4176
4039
  {
4177
4040
  "kind": "Content",
4178
- "text": ", config?: "
4041
+ "text": ", toolHandlers?: "
4042
+ },
4043
+ {
4044
+ "kind": "Reference",
4045
+ "text": "ToolHandlersInput",
4046
+ "canonicalReference": "@genesislcap/ai-assistant!ToolHandlersInput:type"
4047
+ },
4048
+ {
4049
+ "kind": "Content",
4050
+ "text": ", toolDefinitions?: "
4051
+ },
4052
+ {
4053
+ "kind": "Reference",
4054
+ "text": "ToolDefinitionsInput",
4055
+ "canonicalReference": "@genesislcap/ai-assistant!ToolDefinitionsInput:type"
4056
+ },
4057
+ {
4058
+ "kind": "Content",
4059
+ "text": ", systemPrompt?: "
4060
+ },
4061
+ {
4062
+ "kind": "Reference",
4063
+ "text": "SystemPromptInput",
4064
+ "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
4065
+ },
4066
+ {
4067
+ "kind": "Content",
4068
+ "text": ", primerHistory?: "
4179
4069
  },
4180
4070
  {
4181
4071
  "kind": "Reference",
4182
- "text": "ChatDriverConfig",
4183
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig:interface"
4072
+ "text": "ChatMessage",
4073
+ "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
4074
+ },
4075
+ {
4076
+ "kind": "Content",
4077
+ "text": "[]"
4078
+ },
4079
+ {
4080
+ "kind": "Content",
4081
+ "text": ", maxToolIterations?: "
4082
+ },
4083
+ {
4084
+ "kind": "Content",
4085
+ "text": "number"
4086
+ },
4087
+ {
4088
+ "kind": "Content",
4089
+ "text": ", maxFoldOperations?: "
4090
+ },
4091
+ {
4092
+ "kind": "Content",
4093
+ "text": "number"
4094
+ },
4095
+ {
4096
+ "kind": "Content",
4097
+ "text": ", maxTurnSnapshots?: "
4098
+ },
4099
+ {
4100
+ "kind": "Content",
4101
+ "text": "number"
4102
+ },
4103
+ {
4104
+ "kind": "Content",
4105
+ "text": ", \n sessionKey?: "
4106
+ },
4107
+ {
4108
+ "kind": "Content",
4109
+ "text": "string"
4184
4110
  },
4185
4111
  {
4186
4112
  "kind": "Content",
@@ -4200,12 +4126,68 @@
4200
4126
  "isOptional": false
4201
4127
  },
4202
4128
  {
4203
- "parameterName": "config",
4129
+ "parameterName": "toolHandlers",
4204
4130
  "parameterTypeTokenRange": {
4205
4131
  "startIndex": 3,
4206
4132
  "endIndex": 4
4207
4133
  },
4208
4134
  "isOptional": true
4135
+ },
4136
+ {
4137
+ "parameterName": "toolDefinitions",
4138
+ "parameterTypeTokenRange": {
4139
+ "startIndex": 5,
4140
+ "endIndex": 6
4141
+ },
4142
+ "isOptional": true
4143
+ },
4144
+ {
4145
+ "parameterName": "systemPrompt",
4146
+ "parameterTypeTokenRange": {
4147
+ "startIndex": 7,
4148
+ "endIndex": 8
4149
+ },
4150
+ "isOptional": true
4151
+ },
4152
+ {
4153
+ "parameterName": "primerHistory",
4154
+ "parameterTypeTokenRange": {
4155
+ "startIndex": 9,
4156
+ "endIndex": 11
4157
+ },
4158
+ "isOptional": true
4159
+ },
4160
+ {
4161
+ "parameterName": "maxToolIterations",
4162
+ "parameterTypeTokenRange": {
4163
+ "startIndex": 12,
4164
+ "endIndex": 13
4165
+ },
4166
+ "isOptional": true
4167
+ },
4168
+ {
4169
+ "parameterName": "maxFoldOperations",
4170
+ "parameterTypeTokenRange": {
4171
+ "startIndex": 14,
4172
+ "endIndex": 15
4173
+ },
4174
+ "isOptional": true
4175
+ },
4176
+ {
4177
+ "parameterName": "maxTurnSnapshots",
4178
+ "parameterTypeTokenRange": {
4179
+ "startIndex": 16,
4180
+ "endIndex": 17
4181
+ },
4182
+ "isOptional": true
4183
+ },
4184
+ {
4185
+ "parameterName": "sessionKey",
4186
+ "parameterTypeTokenRange": {
4187
+ "startIndex": 18,
4188
+ "endIndex": 19
4189
+ },
4190
+ "isOptional": true
4209
4191
  }
4210
4192
  ]
4211
4193
  },
@@ -5274,427 +5256,157 @@
5274
5256
  "parameterTypeTokenRange": {
5275
5257
  "startIndex": 3,
5276
5258
  "endIndex": 5
5277
- },
5278
- "isOptional": true
5279
- }
5280
- ],
5281
- "isOptional": false,
5282
- "isAbstract": false,
5283
- "name": "sendMessage"
5284
- },
5285
- {
5286
- "kind": "Method",
5287
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriver#setHostInteractionRequester:member(1)",
5288
- "docComment": "/**\n * Wire a parent driver as the host for this driver's interactions. When set, `requestInteraction` delegates upward so the widget renders in (and resolves through) the parent's history and pending map. Calls chain naturally: a grandchild → child → root.\n */\n",
5289
- "excerptTokens": [
5290
- {
5291
- "kind": "Content",
5292
- "text": "setHostInteractionRequester(fn: "
5293
- },
5294
- {
5295
- "kind": "Content",
5296
- "text": "<T>(componentName: string, data: any, options?: "
5297
- },
5298
- {
5299
- "kind": "Reference",
5300
- "text": "InteractionRequestOptions",
5301
- "canonicalReference": "@genesislcap/foundation-ai!InteractionRequestOptions:interface"
5302
- },
5303
- {
5304
- "kind": "Content",
5305
- "text": ") => "
5306
- },
5307
- {
5308
- "kind": "Reference",
5309
- "text": "Promise",
5310
- "canonicalReference": "!Promise:interface"
5311
- },
5312
- {
5313
- "kind": "Content",
5314
- "text": "<T>"
5315
- },
5316
- {
5317
- "kind": "Content",
5318
- "text": "): "
5319
- },
5320
- {
5321
- "kind": "Content",
5322
- "text": "void"
5323
- },
5324
- {
5325
- "kind": "Content",
5326
- "text": ";"
5327
- }
5328
- ],
5329
- "isStatic": false,
5330
- "returnTypeTokenRange": {
5331
- "startIndex": 7,
5332
- "endIndex": 8
5333
- },
5334
- "releaseTag": "Beta",
5335
- "isProtected": false,
5336
- "overloadIndex": 1,
5337
- "parameters": [
5338
- {
5339
- "parameterName": "fn",
5340
- "parameterTypeTokenRange": {
5341
- "startIndex": 1,
5342
- "endIndex": 6
5343
- },
5344
- "isOptional": false
5345
- }
5346
- ],
5347
- "isOptional": false,
5348
- "isAbstract": false,
5349
- "name": "setHostInteractionRequester"
5350
- },
5351
- {
5352
- "kind": "Method",
5353
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriver#setProviderHistoryTransform:member(1)",
5354
- "docComment": "/**\n * Optional transform applied to conversation history immediately before each LLM request. Cleared when `undefined`. Does not alter stored history.\n */\n",
5355
- "excerptTokens": [
5356
- {
5357
- "kind": "Content",
5358
- "text": "setProviderHistoryTransform(transform?: "
5359
- },
5360
- {
5361
- "kind": "Content",
5362
- "text": "(history: "
5363
- },
5364
- {
5365
- "kind": "Reference",
5366
- "text": "ChatMessage",
5367
- "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5368
- },
5369
- {
5370
- "kind": "Content",
5371
- "text": "[]) => "
5372
- },
5373
- {
5374
- "kind": "Reference",
5375
- "text": "ChatMessage",
5376
- "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5377
- },
5378
- {
5379
- "kind": "Content",
5380
- "text": "[]"
5381
- },
5382
- {
5383
- "kind": "Content",
5384
- "text": "): "
5385
- },
5386
- {
5387
- "kind": "Content",
5388
- "text": "void"
5389
- },
5390
- {
5391
- "kind": "Content",
5392
- "text": ";"
5393
- }
5394
- ],
5395
- "isStatic": false,
5396
- "returnTypeTokenRange": {
5397
- "startIndex": 7,
5398
- "endIndex": 8
5399
- },
5400
- "releaseTag": "Beta",
5401
- "isProtected": false,
5402
- "overloadIndex": 1,
5403
- "parameters": [
5404
- {
5405
- "parameterName": "transform",
5406
- "parameterTypeTokenRange": {
5407
- "startIndex": 1,
5408
- "endIndex": 6
5409
- },
5410
- "isOptional": true
5411
- }
5412
- ],
5413
- "isOptional": false,
5414
- "isAbstract": false,
5415
- "name": "setProviderHistoryTransform"
5416
- }
5417
- ],
5418
- "extendsTokenRange": {
5419
- "startIndex": 1,
5420
- "endIndex": 2
5421
- },
5422
- "implementsTokenRanges": [
5423
- {
5424
- "startIndex": 3,
5425
- "endIndex": 4
5426
- }
5427
- ]
5428
- },
5429
- {
5430
- "kind": "Interface",
5431
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig:interface",
5432
- "docComment": "/**\n * Construction-time configuration for {@link ChatDriver}. Everything except the provider registry is optional — most fields are also settable per-agent via `applyAgent`, so a bare `new ChatDriver(registry)` is valid. Mirrors the `(registry, options)` shape of `OrchestratingDriver`.\n *\n * @beta\n */\n",
5433
- "excerptTokens": [
5434
- {
5435
- "kind": "Content",
5436
- "text": "export interface ChatDriverConfig "
5437
- }
5438
- ],
5439
- "fileUrlPath": "src/components/chat-driver/chat-driver.ts",
5440
- "releaseTag": "Beta",
5441
- "name": "ChatDriverConfig",
5442
- "preserveMemberOrder": false,
5443
- "members": [
5444
- {
5445
- "kind": "PropertySignature",
5446
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#activityBus:member",
5447
- "docComment": "/**\n * Activity bus for lifecycle/halo/tool-loop events. Injected by the browser host (the shared cross-tab singleton); omitted off-browser (Node, tests, headless), where it defaults to {@link NOOP_ACTIVITY_BUS} so no `BroadcastChannel` is ever opened.\n */\n",
5448
- "excerptTokens": [
5449
- {
5450
- "kind": "Content",
5451
- "text": "activityBus?: "
5452
- },
5453
- {
5454
- "kind": "Reference",
5455
- "text": "ActivityBus",
5456
- "canonicalReference": "@genesislcap/ai-assistant!ActivityBus:interface"
5457
- },
5458
- {
5459
- "kind": "Content",
5460
- "text": ";"
5461
- }
5462
- ],
5463
- "isReadonly": false,
5464
- "isOptional": true,
5465
- "releaseTag": "Beta",
5466
- "name": "activityBus",
5467
- "propertyTypeTokenRange": {
5468
- "startIndex": 1,
5469
- "endIndex": 2
5470
- }
5471
- },
5472
- {
5473
- "kind": "PropertySignature",
5474
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#maxFoldOperations:member",
5475
- "docComment": "/**\n * Hard cap on fold operations. Default `5`.\n */\n",
5476
- "excerptTokens": [
5477
- {
5478
- "kind": "Content",
5479
- "text": "maxFoldOperations?: "
5480
- },
5481
- {
5482
- "kind": "Content",
5483
- "text": "number"
5484
- },
5485
- {
5486
- "kind": "Content",
5487
- "text": ";"
5488
- }
5489
- ],
5490
- "isReadonly": false,
5491
- "isOptional": true,
5492
- "releaseTag": "Beta",
5493
- "name": "maxFoldOperations",
5494
- "propertyTypeTokenRange": {
5495
- "startIndex": 1,
5496
- "endIndex": 2
5497
- }
5498
- },
5499
- {
5500
- "kind": "PropertySignature",
5501
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#maxToolIterations:member",
5502
- "docComment": "/**\n * Hard cap on tool-loop iterations. Default `50`.\n */\n",
5503
- "excerptTokens": [
5504
- {
5505
- "kind": "Content",
5506
- "text": "maxToolIterations?: "
5507
- },
5508
- {
5509
- "kind": "Content",
5510
- "text": "number"
5511
- },
5512
- {
5513
- "kind": "Content",
5514
- "text": ";"
5259
+ },
5260
+ "isOptional": true
5515
5261
  }
5516
5262
  ],
5517
- "isReadonly": false,
5518
- "isOptional": true,
5519
- "releaseTag": "Beta",
5520
- "name": "maxToolIterations",
5521
- "propertyTypeTokenRange": {
5522
- "startIndex": 1,
5523
- "endIndex": 2
5524
- }
5263
+ "isOptional": false,
5264
+ "isAbstract": false,
5265
+ "name": "sendMessage"
5525
5266
  },
5526
5267
  {
5527
- "kind": "PropertySignature",
5528
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#maxTurnSnapshots:member",
5529
- "docComment": "/**\n * Ring-buffer size for per-turn snapshots. Default `400`.\n */\n",
5268
+ "kind": "Method",
5269
+ "canonicalReference": "@genesislcap/ai-assistant!ChatDriver#setHostInteractionRequester:member(1)",
5270
+ "docComment": "/**\n * Wire a parent driver as the host for this driver's interactions. When set, `requestInteraction` delegates upward so the widget renders in (and resolves through) the parent's history and pending map. Calls chain naturally: a grandchild → child → root.\n */\n",
5530
5271
  "excerptTokens": [
5531
5272
  {
5532
5273
  "kind": "Content",
5533
- "text": "maxTurnSnapshots?: "
5274
+ "text": "setHostInteractionRequester(fn: "
5534
5275
  },
5535
5276
  {
5536
5277
  "kind": "Content",
5537
- "text": "number"
5278
+ "text": "<T>(componentName: string, data: any, options?: "
5538
5279
  },
5539
5280
  {
5540
- "kind": "Content",
5541
- "text": ";"
5542
- }
5543
- ],
5544
- "isReadonly": false,
5545
- "isOptional": true,
5546
- "releaseTag": "Beta",
5547
- "name": "maxTurnSnapshots",
5548
- "propertyTypeTokenRange": {
5549
- "startIndex": 1,
5550
- "endIndex": 2
5551
- }
5552
- },
5553
- {
5554
- "kind": "PropertySignature",
5555
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#primerHistory:member",
5556
- "docComment": "/**\n * Primer history prepended to the conversation.\n */\n",
5557
- "excerptTokens": [
5281
+ "kind": "Reference",
5282
+ "text": "InteractionRequestOptions",
5283
+ "canonicalReference": "@genesislcap/foundation-ai!InteractionRequestOptions:interface"
5284
+ },
5558
5285
  {
5559
5286
  "kind": "Content",
5560
- "text": "primerHistory?: "
5287
+ "text": ") => "
5561
5288
  },
5562
5289
  {
5563
5290
  "kind": "Reference",
5564
- "text": "ChatMessage",
5565
- "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5291
+ "text": "Promise",
5292
+ "canonicalReference": "!Promise:interface"
5566
5293
  },
5567
5294
  {
5568
5295
  "kind": "Content",
5569
- "text": "[]"
5296
+ "text": "<T>"
5570
5297
  },
5571
5298
  {
5572
5299
  "kind": "Content",
5573
- "text": ";"
5574
- }
5575
- ],
5576
- "isReadonly": false,
5577
- "isOptional": true,
5578
- "releaseTag": "Beta",
5579
- "name": "primerHistory",
5580
- "propertyTypeTokenRange": {
5581
- "startIndex": 1,
5582
- "endIndex": 3
5583
- }
5584
- },
5585
- {
5586
- "kind": "PropertySignature",
5587
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#sessionKey:member",
5588
- "docComment": "/**\n * Session identity used to file meta events onto the shared debug-log timeline.\n */\n",
5589
- "excerptTokens": [
5590
- {
5591
- "kind": "Content",
5592
- "text": "sessionKey?: "
5300
+ "text": "): "
5593
5301
  },
5594
5302
  {
5595
5303
  "kind": "Content",
5596
- "text": "string"
5304
+ "text": "void"
5597
5305
  },
5598
5306
  {
5599
5307
  "kind": "Content",
5600
5308
  "text": ";"
5601
5309
  }
5602
5310
  ],
5603
- "isReadonly": false,
5604
- "isOptional": true,
5311
+ "isStatic": false,
5312
+ "returnTypeTokenRange": {
5313
+ "startIndex": 7,
5314
+ "endIndex": 8
5315
+ },
5605
5316
  "releaseTag": "Beta",
5606
- "name": "sessionKey",
5607
- "propertyTypeTokenRange": {
5608
- "startIndex": 1,
5609
- "endIndex": 2
5610
- }
5317
+ "isProtected": false,
5318
+ "overloadIndex": 1,
5319
+ "parameters": [
5320
+ {
5321
+ "parameterName": "fn",
5322
+ "parameterTypeTokenRange": {
5323
+ "startIndex": 1,
5324
+ "endIndex": 6
5325
+ },
5326
+ "isOptional": false
5327
+ }
5328
+ ],
5329
+ "isOptional": false,
5330
+ "isAbstract": false,
5331
+ "name": "setHostInteractionRequester"
5611
5332
  },
5612
5333
  {
5613
- "kind": "PropertySignature",
5614
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#systemPrompt:member",
5615
- "docComment": "/**\n * Initial system prompt (string or per-turn resolver).\n */\n",
5334
+ "kind": "Method",
5335
+ "canonicalReference": "@genesislcap/ai-assistant!ChatDriver#setProviderHistoryTransform:member(1)",
5336
+ "docComment": "/**\n * Optional transform applied to conversation history immediately before each LLM request. Cleared when `undefined`. Does not alter stored history.\n */\n",
5616
5337
  "excerptTokens": [
5617
5338
  {
5618
5339
  "kind": "Content",
5619
- "text": "systemPrompt?: "
5340
+ "text": "setProviderHistoryTransform(transform?: "
5620
5341
  },
5621
5342
  {
5622
- "kind": "Reference",
5623
- "text": "SystemPromptInput",
5624
- "canonicalReference": "@genesislcap/ai-assistant!SystemPromptInput:type"
5343
+ "kind": "Content",
5344
+ "text": "(history: "
5625
5345
  },
5626
5346
  {
5627
- "kind": "Content",
5628
- "text": ";"
5629
- }
5630
- ],
5631
- "isReadonly": false,
5632
- "isOptional": true,
5633
- "releaseTag": "Beta",
5634
- "name": "systemPrompt",
5635
- "propertyTypeTokenRange": {
5636
- "startIndex": 1,
5637
- "endIndex": 2
5638
- }
5639
- },
5640
- {
5641
- "kind": "PropertySignature",
5642
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#toolDefinitions:member",
5643
- "docComment": "/**\n * Initial tool definitions (static array or per-turn factory). Default `[]`.\n */\n",
5644
- "excerptTokens": [
5347
+ "kind": "Reference",
5348
+ "text": "ChatMessage",
5349
+ "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5350
+ },
5645
5351
  {
5646
5352
  "kind": "Content",
5647
- "text": "toolDefinitions?: "
5353
+ "text": "[]) => "
5648
5354
  },
5649
5355
  {
5650
5356
  "kind": "Reference",
5651
- "text": "ToolDefinitionsInput",
5652
- "canonicalReference": "@genesislcap/ai-assistant!ToolDefinitionsInput:type"
5357
+ "text": "ChatMessage",
5358
+ "canonicalReference": "@genesislcap/foundation-ai!ChatMessage:interface"
5653
5359
  },
5654
5360
  {
5655
5361
  "kind": "Content",
5656
- "text": ";"
5657
- }
5658
- ],
5659
- "isReadonly": false,
5660
- "isOptional": true,
5661
- "releaseTag": "Beta",
5662
- "name": "toolDefinitions",
5663
- "propertyTypeTokenRange": {
5664
- "startIndex": 1,
5665
- "endIndex": 2
5666
- }
5667
- },
5668
- {
5669
- "kind": "PropertySignature",
5670
- "canonicalReference": "@genesislcap/ai-assistant!ChatDriverConfig#toolHandlers:member",
5671
- "docComment": "/**\n * Initial tool handlers (static map or per-turn factory). Default `{}`.\n */\n",
5672
- "excerptTokens": [
5362
+ "text": "[]"
5363
+ },
5673
5364
  {
5674
5365
  "kind": "Content",
5675
- "text": "toolHandlers?: "
5366
+ "text": "): "
5676
5367
  },
5677
5368
  {
5678
- "kind": "Reference",
5679
- "text": "ToolHandlersInput",
5680
- "canonicalReference": "@genesislcap/ai-assistant!ToolHandlersInput:type"
5369
+ "kind": "Content",
5370
+ "text": "void"
5681
5371
  },
5682
5372
  {
5683
5373
  "kind": "Content",
5684
5374
  "text": ";"
5685
5375
  }
5686
5376
  ],
5687
- "isReadonly": false,
5688
- "isOptional": true,
5377
+ "isStatic": false,
5378
+ "returnTypeTokenRange": {
5379
+ "startIndex": 7,
5380
+ "endIndex": 8
5381
+ },
5689
5382
  "releaseTag": "Beta",
5690
- "name": "toolHandlers",
5691
- "propertyTypeTokenRange": {
5692
- "startIndex": 1,
5693
- "endIndex": 2
5694
- }
5383
+ "isProtected": false,
5384
+ "overloadIndex": 1,
5385
+ "parameters": [
5386
+ {
5387
+ "parameterName": "transform",
5388
+ "parameterTypeTokenRange": {
5389
+ "startIndex": 1,
5390
+ "endIndex": 6
5391
+ },
5392
+ "isOptional": true
5393
+ }
5394
+ ],
5395
+ "isOptional": false,
5396
+ "isAbstract": false,
5397
+ "name": "setProviderHistoryTransform"
5695
5398
  }
5696
5399
  ],
5697
- "extendsTokenRanges": []
5400
+ "extendsTokenRange": {
5401
+ "startIndex": 1,
5402
+ "endIndex": 2
5403
+ },
5404
+ "implementsTokenRanges": [
5405
+ {
5406
+ "startIndex": 3,
5407
+ "endIndex": 4
5408
+ }
5409
+ ]
5698
5410
  },
5699
5411
  {
5700
5412
  "kind": "Interface",
@@ -12828,30 +12540,6 @@
12828
12540
  ],
12829
12541
  "extendsTokenRanges": []
12830
12542
  },
12831
- {
12832
- "kind": "Variable",
12833
- "canonicalReference": "@genesislcap/ai-assistant!NOOP_ACTIVITY_BUS:var",
12834
- "docComment": "/**\n * No-op {@link ActivityBus}. The default when no bus is injected (Node, tests, headless server use) — publishing goes nowhere and nothing is left open to tear down.\n *\n * @beta\n */\n",
12835
- "excerptTokens": [
12836
- {
12837
- "kind": "Content",
12838
- "text": "NOOP_ACTIVITY_BUS: "
12839
- },
12840
- {
12841
- "kind": "Reference",
12842
- "text": "ActivityBus",
12843
- "canonicalReference": "@genesislcap/ai-assistant!ActivityBus:interface"
12844
- }
12845
- ],
12846
- "fileUrlPath": "src/channel/ai-activity-bus.ts",
12847
- "isReadonly": true,
12848
- "releaseTag": "Beta",
12849
- "name": "NOOP_ACTIVITY_BUS",
12850
- "variableTypeTokenRange": {
12851
- "startIndex": 1,
12852
- "endIndex": 2
12853
- }
12854
- },
12855
12543
  {
12856
12544
  "kind": "Class",
12857
12545
  "canonicalReference": "@genesislcap/ai-assistant!OrchestratingDriver:class",
@@ -12919,16 +12607,7 @@
12919
12607
  },
12920
12608
  {
12921
12609
  "kind": "Content",
12922
- "text": "{\n sessionKey?: string;\n maxHandoffs?: number;\n classifierHistoryLength?: number;\n classifierRetries?: number;\n maxToolIterations?: number;\n maxFoldOperations?: number;\n maxTurnSnapshots?: number;\n activityBus?: "
12923
- },
12924
- {
12925
- "kind": "Reference",
12926
- "text": "ActivityBus",
12927
- "canonicalReference": "@genesislcap/ai-assistant!ActivityBus:interface"
12928
- },
12929
- {
12930
- "kind": "Content",
12931
- "text": ";\n }"
12610
+ "text": "{\n sessionKey?: string;\n maxHandoffs?: number;\n classifierHistoryLength?: number;\n classifierRetries?: number;\n maxToolIterations?: number;\n maxFoldOperations?: number;\n maxTurnSnapshots?: number;\n }"
12932
12611
  },
12933
12612
  {
12934
12613
  "kind": "Content",
@@ -12959,7 +12638,7 @@
12959
12638
  "parameterName": "options",
12960
12639
  "parameterTypeTokenRange": {
12961
12640
  "startIndex": 6,
12962
- "endIndex": 9
12641
+ "endIndex": 7
12963
12642
  },
12964
12643
  "isOptional": true
12965
12644
  }
@@ -14471,50 +14150,6 @@
14471
14150
  "endIndex": 0
14472
14151
  }
14473
14152
  },
14474
- {
14475
- "kind": "TypeAlias",
14476
- "canonicalReference": "@genesislcap/ai-assistant!ResponseSchemaInput:type",
14477
- "docComment": "/**\n * Structured-output schema for an agent. When set, the model's final (non-tool) answer is constrained to this JSON Schema instead of free text. Either a static schema or a function resolved each tool-loop iteration — return the schema on the turn(s) it should apply and `undefined` otherwise, so \"whole-loop\" vs \"finalize-turn\" enforcement is just what the resolver returns (e.g. `({ state }) => state.machine.matches('finalizing') ? schema : undefined`).\n *\n * Orthogonal to {@link ToolChoiceInput}: an agent can carry both `tools` and a `responseSchema`. Each provider applies it natively where possible (Anthropic `output_config.format`, Gemini JSON mode) and degrades gracefully otherwise. The schema is a plain JSON Schema object; keep to the portable subset providers share (`additionalProperties: false`, explicit `required`, enums, `anyOf` for nullables — no numeric/string constraints or recursion).\n *\n * @beta\n */\n",
14478
- "excerptTokens": [
14479
- {
14480
- "kind": "Content",
14481
- "text": "export type ResponseSchemaInput = "
14482
- },
14483
- {
14484
- "kind": "Content",
14485
- "text": "object | ((ctx: "
14486
- },
14487
- {
14488
- "kind": "Reference",
14489
- "text": "SystemPromptContext",
14490
- "canonicalReference": "@genesislcap/ai-assistant!SystemPromptContext:interface"
14491
- },
14492
- {
14493
- "kind": "Content",
14494
- "text": ") => object | undefined | "
14495
- },
14496
- {
14497
- "kind": "Reference",
14498
- "text": "Promise",
14499
- "canonicalReference": "!Promise:interface"
14500
- },
14501
- {
14502
- "kind": "Content",
14503
- "text": "<object | undefined>)"
14504
- },
14505
- {
14506
- "kind": "Content",
14507
- "text": ";"
14508
- }
14509
- ],
14510
- "fileUrlPath": "src/config/config.ts",
14511
- "releaseTag": "Beta",
14512
- "name": "ResponseSchemaInput",
14513
- "typeTokenRange": {
14514
- "startIndex": 1,
14515
- "endIndex": 6
14516
- }
14517
- },
14518
14153
  {
14519
14154
  "kind": "Function",
14520
14155
  "canonicalReference": "@genesislcap/ai-assistant!restoreMachine:function(1)",