@dxos/plugin-assistant 0.8.4-main.937b3ca → 0.8.4-main.9735255

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 (34) hide show
  1. package/dist/lib/browser/{ChatCompanion-GFSJZTOT.mjs → ChatCompanion-ECQYUQ2B.mjs} +2 -2
  2. package/dist/lib/browser/{ChatContainer-IHAPBIZE.mjs → ChatContainer-QCCOFBUX.mjs} +3 -2
  3. package/dist/lib/browser/{ChatContainer-IHAPBIZE.mjs.map → ChatContainer-QCCOFBUX.mjs.map} +3 -3
  4. package/dist/lib/browser/{ChatDialog-EGRMPCTL.mjs → ChatDialog-SMK4RSZU.mjs} +2 -2
  5. package/dist/lib/browser/{chunk-A75V4MOQ.mjs → chunk-3JYPE2MM.mjs} +4 -4
  6. package/dist/lib/browser/index.mjs +2 -2
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/{react-surface-S7SBFOSW.mjs → react-surface-NCITRSJJ.mjs} +2 -2
  9. package/dist/lib/node-esm/{ChatCompanion-UR7DXZ54.mjs → ChatCompanion-Q4FUZ2MW.mjs} +2 -2
  10. package/dist/lib/node-esm/{ChatContainer-YMLLGOZK.mjs → ChatContainer-AKI33HIB.mjs} +3 -2
  11. package/dist/lib/node-esm/{ChatContainer-YMLLGOZK.mjs.map → ChatContainer-AKI33HIB.mjs.map} +3 -3
  12. package/dist/lib/node-esm/{ChatDialog-D24WJPK4.mjs → ChatDialog-AP45PVZR.mjs} +2 -2
  13. package/dist/lib/node-esm/{chunk-4BERCIES.mjs → chunk-XI5T3MJC.mjs} +4 -4
  14. package/dist/lib/node-esm/index.mjs +2 -2
  15. package/dist/lib/node-esm/meta.json +1 -1
  16. package/dist/lib/node-esm/{react-surface-ZR6FXGLF.mjs → react-surface-ST6V7LPE.mjs} +2 -2
  17. package/dist/types/src/blueprints/assistant-blueprint.d.ts +89 -89
  18. package/dist/types/src/blueprints/assistant-blueprint.d.ts.map +1 -1
  19. package/dist/types/src/types/AssistantAction.d.ts +1 -1
  20. package/dist/types/tsconfig.tsbuildinfo +1 -1
  21. package/package.json +78 -78
  22. package/src/components/ChatContainer.tsx +1 -1
  23. package/src/components/ChatThread/sync.test.ts +2 -1
  24. package/dist/types/src/components/ChatThread/reducers.d.ts +0 -40
  25. package/dist/types/src/components/ChatThread/reducers.d.ts.map +0 -1
  26. package/src/components/ChatThread/reducers.ts +0 -151
  27. /package/dist/lib/browser/{ChatCompanion-GFSJZTOT.mjs.map → ChatCompanion-ECQYUQ2B.mjs.map} +0 -0
  28. /package/dist/lib/browser/{ChatDialog-EGRMPCTL.mjs.map → ChatDialog-SMK4RSZU.mjs.map} +0 -0
  29. /package/dist/lib/browser/{chunk-A75V4MOQ.mjs.map → chunk-3JYPE2MM.mjs.map} +0 -0
  30. /package/dist/lib/browser/{react-surface-S7SBFOSW.mjs.map → react-surface-NCITRSJJ.mjs.map} +0 -0
  31. /package/dist/lib/node-esm/{ChatCompanion-UR7DXZ54.mjs.map → ChatCompanion-Q4FUZ2MW.mjs.map} +0 -0
  32. /package/dist/lib/node-esm/{ChatDialog-D24WJPK4.mjs.map → ChatDialog-AP45PVZR.mjs.map} +0 -0
  33. /package/dist/lib/node-esm/{chunk-4BERCIES.mjs.map → chunk-XI5T3MJC.mjs.map} +0 -0
  34. /package/dist/lib/node-esm/{react-surface-ZR6FXGLF.mjs.map → react-surface-ST6V7LPE.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-assistant",
3
- "version": "0.8.4-main.937b3ca",
3
+ "version": "0.8.4-main.9735255",
4
4
  "description": "Assistant plugin",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -73,68 +73,68 @@
73
73
  "lodash.defaultsdeep": "^4.6.1",
74
74
  "unified": "^11.0.0",
75
75
  "use-deep-compare-effect": "^1.8.1",
76
- "@dxos/assistant": "0.8.4-main.937b3ca",
77
- "@dxos/app-framework": "0.8.4-main.937b3ca",
78
- "@dxos/ai": "0.8.4-main.937b3ca",
79
- "@dxos/assistant-toolkit": "0.8.4-main.937b3ca",
80
- "@dxos/async": "0.8.4-main.937b3ca",
81
- "@dxos/client": "0.8.4-main.937b3ca",
82
- "@dxos/compute": "0.8.4-main.937b3ca",
83
- "@dxos/config": "0.8.4-main.937b3ca",
84
- "@dxos/conductor": "0.8.4-main.937b3ca",
85
- "@dxos/context": "0.8.4-main.937b3ca",
86
- "@dxos/blueprints": "0.8.4-main.937b3ca",
87
- "@dxos/devtools": "0.8.4-main.937b3ca",
88
- "@dxos/debug": "0.8.4-main.937b3ca",
89
- "@dxos/echo": "0.8.4-main.937b3ca",
90
- "@dxos/echo-atom": "0.8.4-main.937b3ca",
91
- "@dxos/echo-protocol": "0.8.4-main.937b3ca",
92
- "@dxos/echo-db": "0.8.4-main.937b3ca",
93
- "@dxos/echo-query": "0.8.4-main.937b3ca",
94
- "@dxos/edge-client": "0.8.4-main.937b3ca",
95
- "@dxos/effect": "0.8.4-main.937b3ca",
96
- "@dxos/functions": "0.8.4-main.937b3ca",
97
- "@dxos/functions-runtime": "0.8.4-main.937b3ca",
98
- "@dxos/invariant": "0.8.4-main.937b3ca",
99
- "@dxos/lit-ui": "0.8.4-main.937b3ca",
100
- "@dxos/graph": "0.8.4-main.937b3ca",
101
- "@dxos/keys": "0.8.4-main.937b3ca",
102
- "@dxos/log": "0.8.4-main.937b3ca",
103
- "@dxos/operation": "0.8.4-main.937b3ca",
104
- "@dxos/plugin-attention": "0.8.4-main.937b3ca",
105
- "@dxos/plugin-automation": "0.8.4-main.937b3ca",
106
- "@dxos/plugin-deck": "0.8.4-main.937b3ca",
107
- "@dxos/plugin-graph": "0.8.4-main.937b3ca",
108
- "@dxos/plugin-client": "0.8.4-main.937b3ca",
109
- "@dxos/plugin-map": "0.8.4-main.937b3ca",
110
- "@dxos/plugin-space": "0.8.4-main.937b3ca",
111
- "@dxos/plugin-table": "0.8.4-main.937b3ca",
112
- "@dxos/plugin-transcription": "0.8.4-main.937b3ca",
113
- "@dxos/protocols": "0.8.4-main.937b3ca",
114
- "@dxos/react-client": "0.8.4-main.937b3ca",
115
- "@dxos/react-edge-client": "0.8.4-main.937b3ca",
116
- "@dxos/react-ui-attention": "0.8.4-main.937b3ca",
117
- "@dxos/react-ui-canvas-editor": "0.8.4-main.937b3ca",
118
- "@dxos/react-ui-chat": "0.8.4-main.937b3ca",
119
- "@dxos/react-ui-canvas-compute": "0.8.4-main.937b3ca",
120
- "@dxos/react-ui-editor": "0.8.4-main.937b3ca",
121
- "@dxos/react-ui-form": "0.8.4-main.937b3ca",
122
- "@dxos/react-ui-list": "0.8.4-main.937b3ca",
123
- "@dxos/react-ui-graph": "0.8.4-main.937b3ca",
124
- "@dxos/react-ui-markdown": "0.8.4-main.937b3ca",
125
- "@dxos/react-ui-menu": "0.8.4-main.937b3ca",
126
- "@dxos/react-ui-searchlist": "0.8.4-main.937b3ca",
127
- "@dxos/react-ui-mosaic": "0.8.4-main.937b3ca",
128
- "@dxos/react-ui-sfx": "0.8.4-main.937b3ca",
129
- "@dxos/react-ui-components": "0.8.4-main.937b3ca",
130
- "@dxos/react-ui-stack": "0.8.4-main.937b3ca",
131
- "@dxos/react-ui-syntax-highlighter": "0.8.4-main.937b3ca",
132
- "@dxos/react-ui-tabs": "0.8.4-main.937b3ca",
133
- "@dxos/schema": "0.8.4-main.937b3ca",
134
- "@dxos/ui-editor": "0.8.4-main.937b3ca",
135
- "@dxos/util": "0.8.4-main.937b3ca",
136
- "@dxos/ui": "0.8.4-main.937b3ca",
137
- "@dxos/types": "0.8.4-main.937b3ca"
76
+ "@dxos/ai": "0.8.4-main.9735255",
77
+ "@dxos/app-framework": "0.8.4-main.9735255",
78
+ "@dxos/assistant-toolkit": "0.8.4-main.9735255",
79
+ "@dxos/assistant": "0.8.4-main.9735255",
80
+ "@dxos/blueprints": "0.8.4-main.9735255",
81
+ "@dxos/client": "0.8.4-main.9735255",
82
+ "@dxos/async": "0.8.4-main.9735255",
83
+ "@dxos/conductor": "0.8.4-main.9735255",
84
+ "@dxos/compute": "0.8.4-main.9735255",
85
+ "@dxos/config": "0.8.4-main.9735255",
86
+ "@dxos/debug": "0.8.4-main.9735255",
87
+ "@dxos/context": "0.8.4-main.9735255",
88
+ "@dxos/devtools": "0.8.4-main.9735255",
89
+ "@dxos/echo": "0.8.4-main.9735255",
90
+ "@dxos/echo-atom": "0.8.4-main.9735255",
91
+ "@dxos/echo-protocol": "0.8.4-main.9735255",
92
+ "@dxos/echo-query": "0.8.4-main.9735255",
93
+ "@dxos/echo-db": "0.8.4-main.9735255",
94
+ "@dxos/edge-client": "0.8.4-main.9735255",
95
+ "@dxos/effect": "0.8.4-main.9735255",
96
+ "@dxos/functions": "0.8.4-main.9735255",
97
+ "@dxos/functions-runtime": "0.8.4-main.9735255",
98
+ "@dxos/graph": "0.8.4-main.9735255",
99
+ "@dxos/lit-ui": "0.8.4-main.9735255",
100
+ "@dxos/keys": "0.8.4-main.9735255",
101
+ "@dxos/invariant": "0.8.4-main.9735255",
102
+ "@dxos/log": "0.8.4-main.9735255",
103
+ "@dxos/plugin-automation": "0.8.4-main.9735255",
104
+ "@dxos/plugin-client": "0.8.4-main.9735255",
105
+ "@dxos/plugin-graph": "0.8.4-main.9735255",
106
+ "@dxos/plugin-attention": "0.8.4-main.9735255",
107
+ "@dxos/plugin-deck": "0.8.4-main.9735255",
108
+ "@dxos/plugin-map": "0.8.4-main.9735255",
109
+ "@dxos/plugin-table": "0.8.4-main.9735255",
110
+ "@dxos/plugin-space": "0.8.4-main.9735255",
111
+ "@dxos/operation": "0.8.4-main.9735255",
112
+ "@dxos/plugin-transcription": "0.8.4-main.9735255",
113
+ "@dxos/react-client": "0.8.4-main.9735255",
114
+ "@dxos/react-edge-client": "0.8.4-main.9735255",
115
+ "@dxos/protocols": "0.8.4-main.9735255",
116
+ "@dxos/react-ui-attention": "0.8.4-main.9735255",
117
+ "@dxos/react-ui-canvas-compute": "0.8.4-main.9735255",
118
+ "@dxos/react-ui-canvas-editor": "0.8.4-main.9735255",
119
+ "@dxos/react-ui-components": "0.8.4-main.9735255",
120
+ "@dxos/react-ui-chat": "0.8.4-main.9735255",
121
+ "@dxos/react-ui-form": "0.8.4-main.9735255",
122
+ "@dxos/react-ui-editor": "0.8.4-main.9735255",
123
+ "@dxos/react-ui-graph": "0.8.4-main.9735255",
124
+ "@dxos/react-ui-list": "0.8.4-main.9735255",
125
+ "@dxos/react-ui-markdown": "0.8.4-main.9735255",
126
+ "@dxos/react-ui-menu": "0.8.4-main.9735255",
127
+ "@dxos/react-ui-mosaic": "0.8.4-main.9735255",
128
+ "@dxos/react-ui-searchlist": "0.8.4-main.9735255",
129
+ "@dxos/react-ui-sfx": "0.8.4-main.9735255",
130
+ "@dxos/react-ui-syntax-highlighter": "0.8.4-main.9735255",
131
+ "@dxos/react-ui-tabs": "0.8.4-main.9735255",
132
+ "@dxos/react-ui-stack": "0.8.4-main.9735255",
133
+ "@dxos/schema": "0.8.4-main.9735255",
134
+ "@dxos/types": "0.8.4-main.9735255",
135
+ "@dxos/ui": "0.8.4-main.9735255",
136
+ "@dxos/util": "0.8.4-main.9735255",
137
+ "@dxos/ui-editor": "0.8.4-main.9735255"
138
138
  },
139
139
  "devDependencies": {
140
140
  "@effect/platform": "0.93.6",
@@ -146,19 +146,19 @@
146
146
  "react": "~19.2.3",
147
147
  "react-dom": "~19.2.3",
148
148
  "vite": "7.1.9",
149
- "@dxos/assistant-toolkit": "0.8.4-main.937b3ca",
150
- "@dxos/devtools": "0.8.4-main.937b3ca",
151
- "@dxos/echo-db": "0.8.4-main.937b3ca",
152
- "@dxos/plugin-map": "0.8.4-main.937b3ca",
153
- "@dxos/plugin-chess": "0.8.4-main.937b3ca",
154
- "@dxos/plugin-table": "0.8.4-main.937b3ca",
155
- "@dxos/plugin-testing": "0.8.4-main.937b3ca",
156
- "@dxos/random": "0.8.4-main.937b3ca",
157
- "@dxos/react-ui": "0.8.4-main.937b3ca",
158
- "@dxos/react-ui-menu": "0.8.4-main.937b3ca",
159
- "@dxos/storybook-utils": "0.8.4-main.937b3ca",
160
- "@dxos/ui-theme": "0.8.4-main.937b3ca",
161
- "@dxos/react-ui-table": "0.8.4-main.937b3ca"
149
+ "@dxos/assistant-toolkit": "0.8.4-main.9735255",
150
+ "@dxos/devtools": "0.8.4-main.9735255",
151
+ "@dxos/plugin-chess": "0.8.4-main.9735255",
152
+ "@dxos/echo-db": "0.8.4-main.9735255",
153
+ "@dxos/plugin-map": "0.8.4-main.9735255",
154
+ "@dxos/plugin-table": "0.8.4-main.9735255",
155
+ "@dxos/plugin-testing": "0.8.4-main.9735255",
156
+ "@dxos/random": "0.8.4-main.9735255",
157
+ "@dxos/react-ui": "0.8.4-main.9735255",
158
+ "@dxos/react-ui-menu": "0.8.4-main.9735255",
159
+ "@dxos/react-ui-table": "0.8.4-main.9735255",
160
+ "@dxos/storybook-utils": "0.8.4-main.9735255",
161
+ "@dxos/ui-theme": "0.8.4-main.9735255"
162
162
  },
163
163
  "peerDependencies": {
164
164
  "@effect-atom/atom-react": "^0.4.6",
@@ -166,8 +166,8 @@
166
166
  "effect": "3.19.11",
167
167
  "react": "~19.2.3",
168
168
  "react-dom": "~19.2.3",
169
- "@dxos/ui-theme": "0.8.4-main.937b3ca",
170
- "@dxos/react-ui": "0.8.4-main.937b3ca"
169
+ "@dxos/react-ui": "0.8.4-main.9735255",
170
+ "@dxos/ui-theme": "0.8.4-main.9735255"
171
171
  },
172
172
  "publishConfig": {
173
173
  "access": "public"
@@ -44,7 +44,7 @@ export const ChatContainer = forwardRef<HTMLDivElement, ChatContainerProps>((pro
44
44
  }
45
45
 
46
46
  return (
47
- <Layout.Main role={role} ref={forwardedRef}>
47
+ <Layout.Main toolbar role={role} ref={forwardedRef}>
48
48
  <Chat.Root db={space?.db} chat={chat} processor={processor} onEvent={onEvent}>
49
49
  <Chat.Toolbar companionTo={companionTo} />
50
50
  <Chat.Viewport classNames='container-max-width'>
@@ -7,6 +7,7 @@ import { describe, it } from '@effect/vitest';
7
7
  import * as Effect from 'effect/Effect';
8
8
 
9
9
  import { Obj } from '@dxos/echo';
10
+ import { type Mutable } from '@dxos/echo/internal';
10
11
  import { type ContentBlock } from '@dxos/types';
11
12
 
12
13
  import { createMessage } from '../../testing';
@@ -78,7 +79,7 @@ describe('reducers', () => {
78
79
  expect(doc.content).toEqual(['<prompt>Hello</prompt>', 'Hi there!'].join('\n'));
79
80
 
80
81
  Obj.change(messages[1], (m) => {
81
- const block = m.blocks[0] as ContentBlock.Text;
82
+ const block = m.blocks[0] as Mutable<ContentBlock.Text>;
82
83
  block.text = 'Hi there! How are you?';
83
84
  block.pending = false;
84
85
  });
@@ -1,40 +0,0 @@
1
- import { type Message } from '@dxos/types';
2
- type Reducer<R, I> = (acc: R, value: I, idx: number) => R;
3
- /**
4
- * Reducer that collapses related message blocks into single messages.
5
- * For example, combines tool request/response pairs into a single message.
6
- *
7
- * Typical order:
8
- * - message 0
9
- * - text
10
- * - message 1
11
- * - text
12
- * - toolCall
13
- * - summary
14
- * - message 2
15
- * - toolResult
16
- * - message 3
17
- * - text
18
- * - summary
19
- *
20
- * Coverts to:
21
- * - message 0
22
- * - text
23
- * - message 1
24
- * - text
25
- * - message 2
26
- * - toolCall
27
- * - toolResult
28
- * - summary
29
- * - message 3
30
- * - text
31
- * - summary
32
- */
33
- export declare const reduceMessages: Reducer<{
34
- messages: Message.Message[];
35
- current?: Message.Message;
36
- toolBlock?: boolean;
37
- assistantMessages?: Message.Message[];
38
- }, Message.Message>;
39
- export {};
40
- //# sourceMappingURL=reducers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reducers.d.ts","sourceRoot":"","sources":["../../../../../src/components/ChatThread/reducers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAqB,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAE9D,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAClC;IACE,QAAQ,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;CACvC,EACD,OAAO,CAAC,OAAO,CA+DhB,CAAC"}
@@ -1,151 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { type ContentBlock, type Message } from '@dxos/types';
6
-
7
- type Reducer<R, I> = (acc: R, value: I, idx: number) => R;
8
-
9
- /**
10
- * Reducer that collapses related message blocks into single messages.
11
- * For example, combines tool request/response pairs into a single message.
12
- *
13
- * Typical order:
14
- * - message 0
15
- * - text
16
- * - message 1
17
- * - text
18
- * - toolCall
19
- * - summary
20
- * - message 2
21
- * - toolResult
22
- * - message 3
23
- * - text
24
- * - summary
25
- *
26
- * Coverts to:
27
- * - message 0
28
- * - text
29
- * - message 1
30
- * - text
31
- * - message 2
32
- * - toolCall
33
- * - toolResult
34
- * - summary
35
- * - message 3
36
- * - text
37
- * - summary
38
- */
39
- export const reduceMessages: Reducer<
40
- {
41
- messages: Message.Message[];
42
- current?: Message.Message;
43
- toolBlock?: boolean;
44
- assistantMessages?: Message.Message[];
45
- },
46
- Message.Message
47
- > = ({ messages, current, toolBlock, assistantMessages = [] }, message) => {
48
- // Treat tool calls as assistant messages.
49
- let assistant = message?.sender.role === 'assistant';
50
- let i = 0;
51
- for (const block of message.blocks) {
52
- switch (block._tag) {
53
- // TODO(burdon): Preserve call tool title.
54
- case 'toolCall': {
55
- assistant = true;
56
- if (!toolBlock) {
57
- current = {
58
- ...message,
59
- id: [message.id, i++].join('_'),
60
- blocks: [block],
61
- };
62
- messages.push(current);
63
- toolBlock = true;
64
- } else {
65
- current!.blocks.push(block);
66
- }
67
- break;
68
- }
69
-
70
- case 'toolResult': {
71
- assistant = true;
72
- if (toolBlock) {
73
- current!.blocks.push(block);
74
- }
75
- break;
76
- }
77
-
78
- case 'summary': {
79
- assistant = true;
80
- if (toolBlock) {
81
- current!.blocks.push(block);
82
- } else {
83
- const summary = reduceSummary([...assistantMessages, message]);
84
- current!.blocks.push(summary);
85
- }
86
- break;
87
- }
88
-
89
- default: {
90
- assistant = message.sender.role === 'assistant';
91
- current = {
92
- ...message,
93
- id: [message.id, i++].join('_'),
94
- blocks: [block],
95
- };
96
- messages.push(current);
97
- toolBlock = false;
98
- break;
99
- }
100
- }
101
- }
102
-
103
- return {
104
- messages,
105
- current,
106
- toolBlock,
107
- assistantMessages: assistant ? [...assistantMessages, message] : undefined,
108
- };
109
- };
110
-
111
- /**
112
- * Accumulate token counts from all summary blocks in pending messages.
113
- */
114
- const reduceSummary = (messages: Message.Message[]): ContentBlock.Summary => {
115
- let start: number | undefined;
116
- return messages.reduce<ContentBlock.Summary>(
117
- (acc, msg) => {
118
- const time = new Date(msg.created).getTime();
119
- if (!start) {
120
- start = time;
121
- }
122
- msg.blocks.forEach((block) => {
123
- switch (block._tag) {
124
- case 'toolCall': {
125
- acc.toolCalls = (acc.toolCalls ?? 0) + 1;
126
- break;
127
- }
128
- case 'summary': {
129
- acc.model = block.model;
130
- if (block.usage) {
131
- acc.message = block.message;
132
- acc.usage = {
133
- inputTokens: (acc.usage?.inputTokens ?? 0) + (block.usage.inputTokens ?? 0),
134
- outputTokens: (acc.usage?.outputTokens ?? 0) + (block.usage.outputTokens ?? 0),
135
- totalTokens: (acc.usage?.totalTokens ?? 0) + (block.usage.totalTokens ?? 0),
136
- };
137
- acc.duration = time - (start ?? time);
138
- }
139
- break;
140
- }
141
- }
142
- });
143
-
144
- return acc;
145
- },
146
- {
147
- _tag: 'summary',
148
- duration: 0,
149
- } satisfies ContentBlock.Summary,
150
- );
151
- };