@datalayer/agent-runtimes 1.5.16 → 1.5.18

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 (53) hide show
  1. package/dist-embed/chunks/ChatView-Bz0eyWo6.js +32 -0
  2. package/dist-embed/datalayer-app-main.js +102 -102
  3. package/lib/apps/apps/appspec.d.ts +36 -4
  4. package/lib/apps/apps/appspec.js +104 -11
  5. package/lib/apps/apps/threads.d.ts +20 -0
  6. package/lib/apps/apps/threads.js +31 -0
  7. package/lib/apps/plugins/canvas-blocks/index.d.ts +7 -9
  8. package/lib/apps/plugins/canvas-blocks/index.js +8 -10
  9. package/lib/apps/plugins/canvas-parts/index.d.ts +4 -1
  10. package/lib/apps/plugins/canvas-parts/index.js +7 -3
  11. package/lib/apps/plugins/chat/ChatView.js +32 -7
  12. package/lib/chat/ChatFloating.js +12 -4
  13. package/lib/chat/base/ChatBase.js +31 -5
  14. package/lib/chat/messages/ChatMessageList.js +1 -1
  15. package/lib/config/AgentConfiguration.d.ts +5 -1
  16. package/lib/examples/AgentA2ATeamExample.js +6 -5
  17. package/lib/examples/ChatExample.js +2 -2
  18. package/lib/examples/VoiceChatExample.js +9 -3
  19. package/lib/hooks/useBrowserAgent.d.ts +1 -1
  20. package/lib/hooks/useBrowserAgent.js +1 -1
  21. package/lib/protocols/AGUIAdapter.d.ts +11 -0
  22. package/lib/protocols/AGUIAdapter.js +27 -2
  23. package/lib/specs/agents/agents.js +169 -169
  24. package/lib/specs/apps.d.ts +32 -32
  25. package/lib/specs/apps.js +624 -143
  26. package/lib/specs/appspecSchema.js +30 -2
  27. package/lib/specs/cogs.js +3 -3
  28. package/lib/specs/index.d.ts +1 -0
  29. package/lib/specs/index.js +1 -0
  30. package/lib/specs/protocols.js +2 -2
  31. package/lib/specs/sceneSchema.js +2 -0
  32. package/lib/specs/scenes.js +7 -7
  33. package/lib/specs/teams/teams.js +11 -11
  34. package/lib/specs/ui.d.ts +32 -6
  35. package/lib/specs/ui.js +760 -26
  36. package/lib/specs/uiRenderers.d.ts +17 -0
  37. package/lib/specs/uiRenderers.js +40 -0
  38. package/lib/specs/voices.d.ts +2 -0
  39. package/lib/specs/voices.js +5 -0
  40. package/lib/types/agentspecs.d.ts +63 -12
  41. package/lib/types/chat.d.ts +6 -0
  42. package/lib/types/protocol.d.ts +17 -0
  43. package/lib/utils/utils.js +8 -1
  44. package/lib/voice/ReadAloud.d.ts +35 -0
  45. package/lib/voice/ReadAloud.js +29 -0
  46. package/lib/voice/index.d.ts +7 -2
  47. package/lib/voice/index.js +1 -0
  48. package/package.json +2 -2
  49. package/scripts/codegen/generate_agents.py +60 -11
  50. package/scripts/codegen/generate_ui.py +68 -22
  51. package/scripts/codegen/generate_ui_renderers.py +176 -0
  52. package/scripts/codegen/generate_voices.py +5 -1
  53. package/dist-embed/chunks/ChatView-nnI1-MOR.js +0 -32
@@ -2487,6 +2487,34 @@ export const APPSPEC_SCHEMA = {
2487
2487
  title: 'TriggerType',
2488
2488
  type: 'string',
2489
2489
  },
2490
+ UiChoice: {
2491
+ additionalProperties: false,
2492
+ description: 'A UI plugin an agent or an application names, and the renderer it is exposed through, when it is.',
2493
+ properties: {
2494
+ plugin: {
2495
+ description: 'A UI plugin of `agentspecs/ui`, by id',
2496
+ minLength: 1,
2497
+ title: 'Plugin',
2498
+ type: 'string',
2499
+ },
2500
+ renderer: {
2501
+ anyOf: [
2502
+ {
2503
+ type: 'string',
2504
+ },
2505
+ {
2506
+ type: 'null',
2507
+ },
2508
+ ],
2509
+ default: null,
2510
+ description: 'The UI renderer of `agentspecs/ui-renderers` it is exposed through, by id',
2511
+ title: 'Renderer',
2512
+ },
2513
+ },
2514
+ required: ['plugin'],
2515
+ title: 'UiChoice',
2516
+ type: 'object',
2517
+ },
2490
2518
  Visibility: {
2491
2519
  description: 'Who can open a hosted application.',
2492
2520
  enum: ['private', 'invited', 'organization', 'link', 'public'],
@@ -2634,9 +2662,9 @@ export const APPSPEC_SCHEMA = {
2634
2662
  type: 'array',
2635
2663
  },
2636
2664
  ui: {
2637
- description: 'The UI its answers render in, ids of `agentspecs/ui` (AGENT_PROTOCOLS PS-04): each once, and one that is not enabled only while it is not offered',
2665
+ description: 'Its UI plugins, each `{plugin, renderer}` (AGENTIC_UI R8): a plugin of `agentspecs/ui`, each once, and the renderer of `agentspecs/ui-renderers` it is exposed through, when it is — one the plugin may be exposed through, and one that is not enabled only while the application is not offered',
2638
2666
  items: {
2639
- type: 'string',
2667
+ $ref: '#/$defs/UiChoice',
2640
2668
  },
2641
2669
  title: 'Ui',
2642
2670
  type: 'array',
package/lib/specs/cogs.js CHANGED
@@ -216,7 +216,7 @@ Check your output against every Guard before you hand it over, and say which you
216
216
  { id: 'research.gather' },
217
217
  ],
218
218
  protocol: undefined,
219
- ui: undefined,
219
+ ui: [],
220
220
  protocols: [],
221
221
  trigger: undefined,
222
222
  modelConfig: undefined,
@@ -379,7 +379,7 @@ Check your output against every Guard before you hand it over, and say which you
379
379
  { id: 'support.respond' },
380
380
  ],
381
381
  protocol: 'vercel-ai',
382
- ui: 'a2ui',
382
+ ui: [{ plugin: 'a2ui-surface', renderer: 'a2ui' }],
383
383
  protocols: [],
384
384
  trigger: undefined,
385
385
  modelConfig: { temperature: 0.7, max_tokens: 4096 },
@@ -559,7 +559,7 @@ Check your output against every Guard before you hand it over, and say which you
559
559
  { id: 'report.author' },
560
560
  ],
561
561
  protocol: undefined,
562
- ui: undefined,
562
+ ui: [],
563
563
  protocols: [],
564
564
  trigger: undefined,
565
565
  modelConfig: undefined,
@@ -20,6 +20,7 @@ export * from './skills';
20
20
  export * from './backendTools';
21
21
  export * from './triggers';
22
22
  export * from './ui';
23
+ export * from './uiRenderers';
23
24
  export * from './protocols';
24
25
  export * from './frames';
25
26
  export * from './cogs';
@@ -24,6 +24,7 @@ export * from './skills';
24
24
  export * from './backendTools';
25
25
  export * from './triggers';
26
26
  export * from './ui';
27
+ export * from './uiRenderers';
27
28
  export * from './protocols';
28
29
  export * from './frames';
29
30
  export * from './cogs';
@@ -128,12 +128,12 @@ export const TAP_PROTOCOL_0_0_1 = {
128
128
  id: 'tap',
129
129
  version: '0.0.1',
130
130
  name: 'Trusted Agent Protocol',
131
- description: "An agent-recognition profile over Web Bot Auth for merchants: a signature tagged agent-browser-auth to browse or agent-payer-auth to pay. Built as a draft from Visa's public Merchant Specifications (2026-10-13) in agent-runtimes; planned for applications until Visa confirms it.",
131
+ description: "An agent-recognition profile over Web Bot Auth for merchants: a signature tagged agent-browser-auth to browse or agent-payer-auth to pay. Still a draft profile, built from Visa's public Merchant Specifications (2026-10-13) until Visa confirms it. In applications at test merchants only (decided 2026-10-14): the MCP gateway signs each UCP or ACP purchase with agent-payer-auth under the application's own key, and the test merchants verify it; browsing stays Web Bot Auth.",
132
132
  publisher: 'Visa',
133
133
  layer: 'identity',
134
134
  specUrl: 'https://developer.visa.com/capabilities/trusted-agent-protocol/trusted-agent-protocol-specifications',
135
135
  specVersion: 'draft (Merchant Specifications, read 2026-10-13)',
136
- status: 'planned',
136
+ status: 'shipped',
137
137
  connects: 'Merchants that recognise an agent by its signature',
138
138
  packages: {
139
139
  python: ['agent-runtimes'],
@@ -277,8 +277,10 @@ export const SCENE_SCHEMA = {
277
277
  properties: {
278
278
  kind: {
279
279
  $ref: '#/$defs/SceneCardKind',
280
+ description: 'What the card is: a find, a sign-in, an approval, a done, a record',
280
281
  },
281
282
  title: {
283
+ description: 'Its title, on top',
282
284
  title: 'Title',
283
285
  type: 'string',
284
286
  },
@@ -17,7 +17,7 @@ export const CROP_MONITORING_SCENE_0_0_1 = {
17
17
  cast: [
18
18
  {
19
19
  member: 'crop-monitoring',
20
- app: 'crop-monitoring:0.0.1',
20
+ app: 'crop-monitoring:0.0.2',
21
21
  ref: '',
22
22
  server: '',
23
23
  role: 'initiator',
@@ -330,7 +330,7 @@ export const DISASTER_ASSESSMENT_SCENE_0_0_1 = {
330
330
  cast: [
331
331
  {
332
332
  member: 'event-response',
333
- app: 'event-response:0.0.2',
333
+ app: 'event-response:0.0.3',
334
334
  ref: '',
335
335
  server: '',
336
336
  role: 'initiator',
@@ -354,7 +354,7 @@ export const DISASTER_ASSESSMENT_SCENE_0_0_1 = {
354
354
  },
355
355
  {
356
356
  member: 'disaster-assessment',
357
- app: 'disaster-assessment:0.0.1',
357
+ app: 'disaster-assessment:0.0.2',
358
358
  ref: '',
359
359
  server: '',
360
360
  role: 'contributor',
@@ -368,7 +368,7 @@ export const DISASTER_ASSESSMENT_SCENE_0_0_1 = {
368
368
  },
369
369
  {
370
370
  member: 'change-detection',
371
- app: 'change-detection:0.0.1',
371
+ app: 'change-detection:0.0.2',
372
372
  ref: '',
373
373
  server: '',
374
374
  role: 'contributor',
@@ -755,7 +755,7 @@ export const MONTH_END_CLOSE_SCENE_0_0_1 = {
755
755
  cast: [
756
756
  {
757
757
  member: 'month-end-close',
758
- app: 'month-end-close:0.0.1',
758
+ app: 'month-end-close:0.0.2',
759
759
  ref: '',
760
760
  server: '',
761
761
  role: 'initiator',
@@ -1912,7 +1912,7 @@ export const SALES_AND_ACCOUNTING_SCENE_0_0_1 = {
1912
1912
  cast: [
1913
1913
  {
1914
1914
  member: 'sales',
1915
- app: 'sales:0.0.2',
1915
+ app: 'sales:0.0.3',
1916
1916
  ref: '',
1917
1917
  server: '',
1918
1918
  role: 'initiator',
@@ -1932,7 +1932,7 @@ export const SALES_AND_ACCOUNTING_SCENE_0_0_1 = {
1932
1932
  },
1933
1933
  {
1934
1934
  member: 'accounting',
1935
- app: 'accounting:0.0.1',
1935
+ app: 'accounting:0.0.2',
1936
1936
  ref: '',
1937
1937
  server: '',
1938
1938
  role: 'contributor',
@@ -727,7 +727,7 @@ export const CROP_MONITORING_TEAM_SPEC_0_0_1 = {
727
727
  supervisor: {
728
728
  name: 'Crop Monitoring',
729
729
  ref: '',
730
- app: 'crop-monitoring:0.0.1',
730
+ app: 'crop-monitoring:0.0.2',
731
731
  model: '',
732
732
  goal: ``,
733
733
  instructions: ``,
@@ -766,7 +766,7 @@ export const CROP_MONITORING_TEAM_SPEC_0_0_1 = {
766
766
  id: 'crop-monitoring',
767
767
  name: '',
768
768
  ref: '',
769
- app: 'crop-monitoring:0.0.1',
769
+ app: 'crop-monitoring:0.0.2',
770
770
  runsIn: 'runtime',
771
771
  role: 'initiator',
772
772
  goal: `Take the person's field and period, search the imagery that covers them, and report the vigour, the growth and the fields to watch.`,
@@ -804,7 +804,7 @@ export const DISASTER_ASSESSMENT_TEAM_SPEC_0_0_1 = {
804
804
  supervisor: {
805
805
  name: 'Event response',
806
806
  ref: '',
807
- app: 'event-response:0.0.2',
807
+ app: 'event-response:0.0.3',
808
808
  model: '',
809
809
  goal: ``,
810
810
  instructions: ``,
@@ -843,7 +843,7 @@ export const DISASTER_ASSESSMENT_TEAM_SPEC_0_0_1 = {
843
843
  id: 'event-response',
844
844
  name: '',
845
845
  ref: '',
846
- app: 'event-response:0.0.2',
846
+ app: 'event-response:0.0.3',
847
847
  runsIn: 'browser',
848
848
  talksTo: [
849
849
  { member: 'disaster-assessment', over: 'a2a' },
@@ -863,7 +863,7 @@ export const DISASTER_ASSESSMENT_TEAM_SPEC_0_0_1 = {
863
863
  id: 'disaster-assessment',
864
864
  name: '',
865
865
  ref: '',
866
- app: 'disaster-assessment:0.0.1',
866
+ app: 'disaster-assessment:0.0.2',
867
867
  runsIn: 'runtime',
868
868
  role: 'contributor',
869
869
  goal: `Estimate the area the event affected and the extent of the damage from the imagery before and after it, over A2A.`,
@@ -879,7 +879,7 @@ export const DISASTER_ASSESSMENT_TEAM_SPEC_0_0_1 = {
879
879
  id: 'change-detection',
880
880
  name: '',
881
881
  ref: '',
882
- app: 'change-detection:0.0.1',
882
+ app: 'change-detection:0.0.2',
883
883
  runsIn: 'runtime',
884
884
  role: 'contributor',
885
885
  goal: `Find what changed on the ground between the two dates from the imagery, over A2A.`,
@@ -1133,7 +1133,7 @@ export const MONTH_END_CLOSE_TEAM_SPEC_0_0_1 = {
1133
1133
  supervisor: {
1134
1134
  name: 'Month-end Close',
1135
1135
  ref: '',
1136
- app: 'month-end-close:0.0.1',
1136
+ app: 'month-end-close:0.0.2',
1137
1137
  model: '',
1138
1138
  goal: ``,
1139
1139
  instructions: ``,
@@ -1169,7 +1169,7 @@ export const MONTH_END_CLOSE_TEAM_SPEC_0_0_1 = {
1169
1169
  id: 'month-end-close',
1170
1170
  name: '',
1171
1171
  ref: '',
1172
- app: 'month-end-close:0.0.1',
1172
+ app: 'month-end-close:0.0.2',
1173
1173
  runsIn: 'runtime',
1174
1174
  role: 'initiator',
1175
1175
  goal: `Take the person's request, read the period's books, and report where the close stands: what is done, what is to book, what is still open.`,
@@ -1735,7 +1735,7 @@ export const SALES_AND_ACCOUNTING_TEAM_SPEC_0_0_1 = {
1735
1735
  supervisor: {
1736
1736
  name: 'Sales',
1737
1737
  ref: '',
1738
- app: 'sales:0.0.2',
1738
+ app: 'sales:0.0.3',
1739
1739
  model: '',
1740
1740
  goal: ``,
1741
1741
  instructions: ``,
@@ -1774,7 +1774,7 @@ export const SALES_AND_ACCOUNTING_TEAM_SPEC_0_0_1 = {
1774
1774
  id: 'sales',
1775
1775
  name: '',
1776
1776
  ref: '',
1777
- app: 'sales:0.0.2',
1777
+ app: 'sales:0.0.3',
1778
1778
  runsIn: 'browser',
1779
1779
  talksTo: [{ member: 'accounting', over: 'a2a' }],
1780
1780
  role: 'initiator',
@@ -1791,7 +1791,7 @@ export const SALES_AND_ACCOUNTING_TEAM_SPEC_0_0_1 = {
1791
1791
  id: 'accounting',
1792
1792
  name: '',
1793
1793
  ref: '',
1794
- app: 'accounting:0.0.1',
1794
+ app: 'accounting:0.0.2',
1795
1795
  runsIn: 'runtime',
1796
1796
  role: 'contributor',
1797
1797
  goal: `Answer report requests from the Odoo books, read only, over A2A.`,
package/lib/specs/ui.d.ts CHANGED
@@ -1,20 +1,46 @@
1
1
  /**
2
2
  * UI Catalog.
3
3
  *
4
- * How an agent's answer becomes an interface: the protocols a host renders.
4
+ * The UI plugins: the Reactor plugins an interface is made of (AGENTIC_UI R8).
5
5
  *
6
6
  * This file is AUTO-GENERATED from YAML specifications.
7
7
  * DO NOT EDIT MANUALLY - run 'make specs' to regenerate.
8
8
  */
9
9
  import type { ComponentSpec, UISpec } from '../types/agentspecs';
10
- export declare const A2UI_UI_0_0_1: UISpec;
11
- export declare const MCP_APPS_UI_0_0_1: UISpec;
12
- export declare const MCP_UI_UI_0_0_1: UISpec;
10
+ export declare const A2UI_SURFACE_UI_0_0_1: UISpec;
11
+ export declare const A2UI_VIEW_UI_0_0_1: UISpec;
12
+ export declare const AGENTSPECS_UI_0_0_1: UISpec;
13
+ export declare const APP_ACTIVITY_UI_0_0_1: UISpec;
14
+ export declare const APP_COMPONENTS_UI_0_0_1: UISpec;
15
+ export declare const APP_COMPUTER_UI_0_0_1: UISpec;
16
+ export declare const APP_ELEMENTS_UI_0_0_1: UISpec;
17
+ export declare const APP_PAGE_UI_0_0_1: UISpec;
18
+ export declare const APP_RULES_UI_0_0_1: UISpec;
19
+ export declare const CANVAS_BLOCKS_UI_0_0_1: UISpec;
20
+ export declare const CANVAS_PARTS_UI_0_0_1: UISpec;
21
+ export declare const CHAT_EXTRAS_UI_0_0_1: UISpec;
22
+ export declare const CHAT_HEADER_UI_0_0_1: UISpec;
23
+ export declare const CHAT_VIEW_UI_0_0_1: UISpec;
24
+ export declare const CHAT_UI_0_0_1: UISpec;
25
+ export declare const COMMANDS_UI_0_0_1: UISpec;
26
+ export declare const DOCUMENT_TOOLBAR_UI_0_0_1: UISpec;
27
+ export declare const DOCUMENT_VIEW_UI_0_0_1: UISpec;
28
+ export declare const DOCUMENT_UI_0_0_1: UISpec;
29
+ export declare const INPUT_PROMPT_UI_0_0_1: UISpec;
30
+ export declare const MODELS_UI_0_0_1: UISpec;
31
+ export declare const NOTEBOOK_TOOLBAR_UI_0_0_1: UISpec;
32
+ export declare const NOTEBOOK_VIEW_UI_0_0_1: UISpec;
33
+ export declare const NOTEBOOK_UI_0_0_1: UISpec;
34
+ export declare const PAGE_LAYOUT_UI_0_0_1: UISpec;
35
+ export declare const PAP_SIGN_IN_UI_0_0_1: UISpec;
36
+ export declare const PROMPT_UI_0_0_1: UISpec;
37
+ export declare const SUBAGENT_ACTIVITY_UI_0_0_1: UISpec;
38
+ export declare const WINDOW_FRAME_UI_0_0_1: UISpec;
13
39
  export declare const UI_CATALOGUE: Record<string, UISpec>;
14
- /** The UI an agent spec's `ui` names, or undefined. */
40
+ /** The UI plugin an agent's or an application's `ui` names, or undefined. */
15
41
  export declare function getUI(pluginId: string): UISpec | undefined;
16
42
  export declare function listUI(): UISpec[];
17
- /** The visual components the enabled UI specs render, by the name a surface gives them (LOOP C-13). */
43
+ /** The visual components the UI plugins render, by the name a surface gives them (LOOP C-13). */
18
44
  export declare const COMPONENT_CATALOGUE: Record<string, ComponentSpec>;
19
45
  /** The component a layout names, or undefined. */
20
46
  export declare function getComponent(name: string): ComponentSpec | undefined;