@burdenoff/fe-libs 2026.1024.4 → 2026.1027.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/credentials/SchemaForm.js +2 -0
  2. package/dist/shared/agent-tools/AgentToolsProvider.d.ts +33 -0
  3. package/dist/shared/agent-tools/AgentToolsProvider.js +48 -0
  4. package/dist/shared/agent-tools/adapters/assistant.d.ts +85 -0
  5. package/dist/shared/agent-tools/adapters/assistant.js +110 -0
  6. package/dist/shared/agent-tools/adapters/webmcp.d.ts +69 -0
  7. package/dist/shared/agent-tools/adapters/webmcp.js +81 -0
  8. package/dist/shared/agent-tools/confirm/AgentConfirmHost.d.ts +12 -0
  9. package/dist/shared/agent-tools/confirm/AgentConfirmHost.js +34 -0
  10. package/dist/shared/agent-tools/confirm/confirmStore.d.ts +37 -0
  11. package/dist/shared/agent-tools/confirm/confirmStore.js +58 -0
  12. package/dist/shared/agent-tools/defineAgentTool.d.ts +13 -0
  13. package/dist/shared/agent-tools/defineAgentTool.js +27 -0
  14. package/dist/shared/agent-tools/errors.d.ts +33 -0
  15. package/dist/shared/agent-tools/errors.js +105 -0
  16. package/dist/shared/agent-tools/index.d.ts +29 -0
  17. package/dist/shared/agent-tools/limits.d.ts +20 -0
  18. package/dist/shared/agent-tools/limits.js +4 -0
  19. package/dist/shared/agent-tools/log.d.ts +15 -0
  20. package/dist/shared/agent-tools/log.js +11 -0
  21. package/dist/shared/agent-tools/outputBudget.d.ts +21 -0
  22. package/dist/shared/agent-tools/outputBudget.js +51 -0
  23. package/dist/shared/agent-tools/registry.d.ts +13 -0
  24. package/dist/shared/agent-tools/registry.js +53 -0
  25. package/dist/shared/agent-tools/runAgentTool.d.ts +21 -0
  26. package/dist/shared/agent-tools/runAgentTool.js +57 -0
  27. package/dist/shared/agent-tools/shell/shellTools.d.ts +44 -0
  28. package/dist/shared/agent-tools/shell/shellTools.js +145 -0
  29. package/dist/shared/agent-tools/testSupport/installDom.d.ts +6 -0
  30. package/dist/shared/agent-tools/types.d.ts +106 -0
  31. package/dist/shared/agent-tools/ui/dom.d.ts +43 -0
  32. package/dist/shared/agent-tools/ui/dom.js +178 -0
  33. package/dist/shared/agent-tools/ui/refs.d.ts +8 -0
  34. package/dist/shared/agent-tools/ui/refs.js +20 -0
  35. package/dist/shared/agent-tools/ui/uiTools.d.ts +40 -0
  36. package/dist/shared/agent-tools/ui/uiTools.js +277 -0
  37. package/dist/shared/agent-tools/useAgentTools.d.ts +14 -0
  38. package/dist/shared/agent-tools/useAgentTools.js +14 -0
  39. package/dist/shared/assistant/api.d.ts +18 -0
  40. package/dist/shared/assistant/api.js +145 -131
  41. package/dist/shared/assistant/avatar/live/LiveAvatarStage.js +2 -3
  42. package/dist/shared/assistant/avatar/live/LiveAvatarTabView.js +2 -3
  43. package/dist/shared/assistant/avatar/live/avatarPorts.d.ts +9 -0
  44. package/dist/shared/assistant/avatar/live/avatarTransport.d.ts +25 -3
  45. package/dist/shared/assistant/avatar/live/avatarTransport.js +29 -2
  46. package/dist/shared/assistant/avatar/live/createLiveAvatarSeam.d.ts +22 -4
  47. package/dist/shared/assistant/avatar/live/createLiveAvatarSeam.js +113 -81
  48. package/dist/shared/assistant/avatar/live/liveAvatarController.d.ts +15 -1
  49. package/dist/shared/assistant/avatar/live/liveAvatarController.js +204 -186
  50. package/dist/shared/assistant/avatar/live/liveKitAvatarRoom.js +6 -1
  51. package/dist/shared/assistant/ui/AssistantChatArea.js +1158 -1148
  52. package/dist/shared/assistant/ui/assistantLiveAvatarSeam.d.ts +1 -1
  53. package/dist/shared/assistant/writeProposals.d.ts +6 -0
  54. package/dist/shared/providers/shell/ActiveContextProvider.d.ts +5 -0
  55. package/dist/shared/providers/shell/ActiveContextProvider.js +4 -1
  56. package/dist/shared/providers/shell/index.d.ts +1 -1
  57. package/dist/shared-agent-tools.d.ts +2 -0
  58. package/dist/shared-agent-tools.js +16 -0
  59. package/dist/shared-assistant.js +285 -285
  60. package/dist/shared-providers-shell.js +20 -20
  61. package/dist/ui/alert-dialog.js +2 -0
  62. package/package.json +7 -2
@@ -0,0 +1,14 @@
1
+ import { AnyDefinedAgentTool } from './types';
2
+ /**
3
+ * Offer `tools` to agents for as long as the calling component is mounted.
4
+ *
5
+ * Call it in the component that owns the state the tools act on — a route's
6
+ * page for page tools, the builder for canvas tools — so a tool exists exactly
7
+ * when it can work. Registration is synchronous and removal is by token
8
+ * (`registry.ts`), so React Strict Mode's mount → unmount → mount and a route
9
+ * transition's overlapping mount/unmount both end with one registration each.
10
+ *
11
+ * `tools` should be stable (module constants, or memoised): a new array
12
+ * re-registers every tool.
13
+ */
14
+ export declare function useAgentTools(tools: readonly AnyDefinedAgentTool[], enabled?: boolean): void;
@@ -0,0 +1,14 @@
1
+ import { registerAgentTool as e } from "./registry.js";
2
+ import { useEffect as t } from "react";
3
+ //#region src/shared/agent-tools/useAgentTools.ts
4
+ function n(n, r = !0) {
5
+ t(() => {
6
+ if (!r) return;
7
+ let t = n.map((t) => e(t));
8
+ return () => {
9
+ for (let e of t) e();
10
+ };
11
+ }, [n, r]);
12
+ }
13
+ //#endregion
14
+ export { n as useAgentTools };
@@ -1,4 +1,5 @@
1
1
  import { AssistantUiCatalogue } from './uiActions/uiCatalogue';
2
+ import { ClientToolManifestEntry } from '../agent-tools/adapters/assistant';
2
3
  import { AssistantMode, AssistantPromptPart, AssistantRawMessage, AssistantTokenUsage, AssistantSandboxAuthContext, AssistantArtifact, AssistantSessionInfo, DownloadedAssistantArtifact, StreamAccess } from './types';
3
4
  import { SandboxWriteCapabilities, WriteApprovalMode, WriteExecutionState } from './writeProposals';
4
5
  import { WriteReplyKind, WriteReplyOrigin } from './writeReplyBinder';
@@ -439,6 +440,8 @@ export declare function buildPromptRequestBody(args: {
439
440
  writeReply?: AssistantPromptWriteReply | null;
440
441
  /** ★ BOFF-8060 (N1b, dormant): the pages this person may be sent to. Absent unless a product opts in. */
441
442
  uiCatalogue?: AssistantUiCatalogue | null;
443
+ /** ★ BOFF-9786: the page's browser tools. Absent unless the sandbox runs them and the page registers some. */
444
+ clientTools?: readonly ClientToolManifestEntry[] | null;
442
445
  }): Record<string, unknown>;
443
446
  export interface AssistantPromptGatewayRequest {
444
447
  sandboxId: string;
@@ -455,6 +458,8 @@ export interface AssistantPromptGatewayRequest {
455
458
  writeReply?: AssistantPromptWriteReply | null;
456
459
  /** The navigable pages (BOFF-8060 N1b, dormant). */
457
460
  uiCatalogue?: AssistantUiCatalogue | null;
461
+ /** The page's browser tools (BOFF-9786). */
462
+ clientTools?: readonly ClientToolManifestEntry[] | null;
458
463
  }
459
464
  /** The actual unbatched GraphQL body, including context and forwarded-token overhead. */
460
465
  export declare function buildPromptGatewayRequest(args: AssistantPromptGatewayRequest): {
@@ -473,6 +478,7 @@ options?: {
473
478
  conversationId?: string | null;
474
479
  writeReply?: AssistantPromptWriteReply | null;
475
480
  uiCatalogue?: AssistantUiCatalogue | null;
481
+ clientTools?: readonly ClientToolManifestEntry[] | null;
476
482
  }): Promise<{
477
483
  messageID?: string;
478
484
  }>;
@@ -502,7 +508,19 @@ export declare function getAssistantMessages(sandboxId: string, workspaceId: str
502
508
  * break the read: an offer is a suggestion, the turn is not.
503
509
  */
504
510
  surfaceUiOffers?: (offers: unknown, serverNow: number) => void;
511
+ /**
512
+ * ★ BOFF-9786: hand the answer's `clientToolRequests` (unparsed) to the
513
+ * turn's browser-tool runner. Only the panel's turn poller passes it, and
514
+ * never allowed to break the read.
515
+ */
516
+ surfaceClientToolRequests?: (requests: unknown) => void;
505
517
  }): Promise<AssistantRawMessage[]>;
518
+ /**
519
+ * ★ BOFF-9786: answer one browser-tool call with the page's result. The
520
+ * sandbox accepts it only from the person the call is bound to; a call it has
521
+ * already ended answers 409, which is not an error worth retrying.
522
+ */
523
+ export declare function postClientToolResult(sandboxId: string, workspaceId: string, sessionId: string, callId: string, result: unknown, mode: AssistantMode, authContext: AssistantSandboxAuthContext): Promise<void>;
506
524
  /**
507
525
  * Ask the svc to mint a signed SSE stream URL. Returns null when unavailable
508
526
  * (older backend / preview data plane off) → caller falls back to polling.