@dxos/assistant 0.8.3 → 0.8.4-main.1068cf700f

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 (199) hide show
  1. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  2. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  3. package/dist/lib/neutral/chunk-ZPC54VRM.mjs +596 -0
  4. package/dist/lib/neutral/chunk-ZPC54VRM.mjs.map +7 -0
  5. package/dist/lib/neutral/extraction/index.mjs +225 -0
  6. package/dist/lib/neutral/extraction/index.mjs.map +7 -0
  7. package/dist/lib/neutral/index.mjs +929 -0
  8. package/dist/lib/neutral/index.mjs.map +7 -0
  9. package/dist/lib/neutral/meta.json +1 -0
  10. package/dist/lib/neutral/testing/index.mjs +38 -0
  11. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  12. package/dist/types/src/conversation/context.d.ts +138 -0
  13. package/dist/types/src/conversation/context.d.ts.map +1 -0
  14. package/dist/types/src/conversation/context.test.d.ts +2 -0
  15. package/dist/types/src/conversation/context.test.d.ts.map +1 -0
  16. package/dist/types/src/conversation/conversation.d.ts +66 -0
  17. package/dist/types/src/conversation/conversation.d.ts.map +1 -0
  18. package/dist/types/src/conversation/conversation.test.d.ts +2 -0
  19. package/dist/types/src/conversation/conversation.test.d.ts.map +1 -0
  20. package/dist/types/src/conversation/index.d.ts +3 -0
  21. package/dist/types/src/conversation/index.d.ts.map +1 -0
  22. package/dist/types/src/diff.d.ts +17 -0
  23. package/dist/types/src/diff.d.ts.map +1 -0
  24. package/dist/types/src/diff.test.d.ts +2 -0
  25. package/dist/types/src/diff.test.d.ts.map +1 -0
  26. package/dist/types/src/errors.d.ts +67 -0
  27. package/dist/types/src/errors.d.ts.map +1 -0
  28. package/dist/types/src/execution-graph.d.ts +85 -0
  29. package/dist/types/src/execution-graph.d.ts.map +1 -0
  30. package/dist/types/src/execution-graph.test.d.ts +2 -0
  31. package/dist/types/src/execution-graph.test.d.ts.map +1 -0
  32. package/dist/types/src/extraction/extraction-llm-function/extraction-llm-function.d.ts +1 -1
  33. package/dist/types/src/extraction/extraction-llm-function/extraction-llm-function.d.ts.map +1 -1
  34. package/dist/types/src/extraction/extraction-ner-function/extraction-ner-function.d.ts +279 -140
  35. package/dist/types/src/extraction/extraction-ner-function/extraction-ner-function.d.ts.map +1 -1
  36. package/dist/types/src/extraction/extraction-ner-function/named-entity-recognition.d.ts +1 -1
  37. package/dist/types/src/extraction/extraction-ner-function/named-entity-recognition.d.ts.map +1 -1
  38. package/dist/types/src/extraction/extraction.d.ts +345 -212
  39. package/dist/types/src/extraction/extraction.d.ts.map +1 -1
  40. package/dist/types/src/extraction/quotes.d.ts +3 -3
  41. package/dist/types/src/extraction/quotes.d.ts.map +1 -1
  42. package/dist/types/src/functions/index.d.ts +2 -0
  43. package/dist/types/src/functions/index.d.ts.map +1 -0
  44. package/dist/types/src/functions/services.d.ts +19 -0
  45. package/dist/types/src/functions/services.d.ts.map +1 -0
  46. package/dist/types/src/functions.test.d.ts +2 -0
  47. package/dist/types/src/functions.test.d.ts.map +1 -0
  48. package/dist/types/src/index.d.ts +6 -3
  49. package/dist/types/src/index.d.ts.map +1 -1
  50. package/dist/types/src/session/GenericToolkit.d.ts +107 -0
  51. package/dist/types/src/session/GenericToolkit.d.ts.map +1 -0
  52. package/dist/types/src/session/artifact-diff.d.ts +27 -0
  53. package/dist/types/src/session/artifact-diff.d.ts.map +1 -0
  54. package/dist/types/src/session/error-handling.d.ts +4 -0
  55. package/dist/types/src/session/error-handling.d.ts.map +1 -0
  56. package/dist/types/src/session/format.d.ts +12 -0
  57. package/dist/types/src/session/format.d.ts.map +1 -0
  58. package/dist/types/src/session/format.test.d.ts +2 -0
  59. package/dist/types/src/session/format.test.d.ts.map +1 -0
  60. package/dist/types/src/session/index.d.ts +5 -0
  61. package/dist/types/src/session/index.d.ts.map +1 -1
  62. package/dist/types/src/session/observer.d.ts +23 -0
  63. package/dist/types/src/session/observer.d.ts.map +1 -0
  64. package/dist/types/src/session/session.d.ts +41 -246
  65. package/dist/types/src/session/session.d.ts.map +1 -1
  66. package/dist/types/src/session/toolkit.d.ts +14 -0
  67. package/dist/types/src/session/toolkit.d.ts.map +1 -0
  68. package/dist/types/src/session/version-pin.d.ts +5 -5
  69. package/dist/types/src/session/version-pin.d.ts.map +1 -1
  70. package/dist/types/src/templates/index.d.ts +2 -0
  71. package/dist/types/src/templates/index.d.ts.map +1 -0
  72. package/dist/types/src/templates/system.d.ts +18 -0
  73. package/dist/types/src/templates/system.d.ts.map +1 -0
  74. package/dist/types/src/testing/index.d.ts +1 -2
  75. package/dist/types/src/testing/index.d.ts.map +1 -1
  76. package/dist/types/src/testing/layer.d.ts +22 -0
  77. package/dist/types/src/testing/layer.d.ts.map +1 -0
  78. package/dist/types/src/types/artifact.d.ts +28 -0
  79. package/dist/types/src/types/artifact.d.ts.map +1 -0
  80. package/dist/types/src/types/index.d.ts +2 -0
  81. package/dist/types/src/types/index.d.ts.map +1 -0
  82. package/dist/types/tsconfig.tsbuildinfo +1 -1
  83. package/package.json +58 -38
  84. package/src/conversation/context.test.ts +46 -0
  85. package/src/conversation/context.ts +330 -0
  86. package/src/conversation/conversation.test.ts +65 -0
  87. package/src/conversation/conversation.ts +203 -0
  88. package/src/conversation/index.ts +6 -0
  89. package/src/diff.test.ts +74 -0
  90. package/src/diff.ts +93 -0
  91. package/src/errors.ts +15 -0
  92. package/src/execution-graph.test.ts +740 -0
  93. package/src/execution-graph.ts +509 -0
  94. package/src/extraction/extraction-llm-function/extraction-llm-function.test.ts +14 -25
  95. package/src/extraction/extraction-llm-function/extraction-llm-function.ts +48 -51
  96. package/src/extraction/extraction-ner-function/extraction-ner-function.test.ts +23 -22
  97. package/src/extraction/extraction-ner-function/extraction-ner-function.ts +43 -41
  98. package/src/extraction/extraction-ner-function/named-entity-recognition.test.ts +12 -6
  99. package/src/extraction/extraction-ner-function/named-entity-recognition.ts +3 -1
  100. package/src/extraction/extraction.ts +10 -9
  101. package/src/extraction/quotes.test.ts +3 -3
  102. package/src/extraction/quotes.ts +6 -7
  103. package/src/functions/index.ts +5 -0
  104. package/src/functions/services.ts +187 -0
  105. package/src/functions.conversations.json +1 -0
  106. package/src/functions.test.ts +74 -0
  107. package/src/index.ts +6 -3
  108. package/src/session/GenericToolkit.ts +160 -0
  109. package/src/session/artifact-diff.ts +41 -0
  110. package/src/session/error-handling.ts +41 -0
  111. package/src/session/format.test.ts +124 -0
  112. package/src/session/format.ts +143 -0
  113. package/src/session/index.ts +6 -0
  114. package/src/session/observer.ts +61 -0
  115. package/src/session/session.conversations.json +1 -0
  116. package/src/session/session.test.ts +106 -173
  117. package/src/session/session.ts +181 -495
  118. package/src/session/toolkit.ts +39 -0
  119. package/src/session/version-pin.ts +12 -12
  120. package/src/templates/index.ts +5 -0
  121. package/src/templates/instructions/format.tpl +57 -0
  122. package/src/templates/instructions/system.tpl +48 -0
  123. package/src/templates/system.ts +41 -0
  124. package/src/testing/index.ts +2 -8
  125. package/src/testing/layer.ts +84 -0
  126. package/src/types/artifact.ts +89 -0
  127. package/src/types/index.ts +5 -0
  128. package/src/typings.d.ts +5 -0
  129. package/dist/lib/browser/index.mjs +0 -2158
  130. package/dist/lib/browser/index.mjs.map +0 -7
  131. package/dist/lib/browser/meta.json +0 -1
  132. package/dist/lib/node/index.cjs +0 -2178
  133. package/dist/lib/node/index.cjs.map +0 -7
  134. package/dist/lib/node/meta.json +0 -1
  135. package/dist/lib/node-esm/index.mjs +0 -2160
  136. package/dist/lib/node-esm/index.mjs.map +0 -7
  137. package/dist/lib/node-esm/meta.json +0 -1
  138. package/dist/types/bin/chat.d.ts +0 -2
  139. package/dist/types/bin/chat.d.ts.map +0 -1
  140. package/dist/types/src/blueprint/ai.test.d.ts +0 -2
  141. package/dist/types/src/blueprint/ai.test.d.ts.map +0 -1
  142. package/dist/types/src/blueprint/blueprint.d.ts +0 -55
  143. package/dist/types/src/blueprint/blueprint.d.ts.map +0 -1
  144. package/dist/types/src/blueprint/blueprint.test.d.ts +0 -2
  145. package/dist/types/src/blueprint/blueprint.test.d.ts.map +0 -1
  146. package/dist/types/src/blueprint/index.d.ts +0 -4
  147. package/dist/types/src/blueprint/index.d.ts.map +0 -1
  148. package/dist/types/src/blueprint/logger.d.ts +0 -25
  149. package/dist/types/src/blueprint/logger.d.ts.map +0 -1
  150. package/dist/types/src/blueprint/machine.d.ts +0 -143
  151. package/dist/types/src/blueprint/machine.d.ts.map +0 -1
  152. package/dist/types/src/blueprint/test-data.d.ts +0 -3
  153. package/dist/types/src/blueprint/test-data.d.ts.map +0 -1
  154. package/dist/types/src/research/exa.d.ts +0 -7
  155. package/dist/types/src/research/exa.d.ts.map +0 -1
  156. package/dist/types/src/research/graph.d.ts +0 -41
  157. package/dist/types/src/research/graph.d.ts.map +0 -1
  158. package/dist/types/src/research/graph.test.d.ts +0 -2
  159. package/dist/types/src/research/graph.test.d.ts.map +0 -1
  160. package/dist/types/src/research/index.d.ts +0 -4
  161. package/dist/types/src/research/index.d.ts.map +0 -1
  162. package/dist/types/src/research/research.d.ts +0 -10
  163. package/dist/types/src/research/research.d.ts.map +0 -1
  164. package/dist/types/src/research/research.test.d.ts +0 -2
  165. package/dist/types/src/research/research.test.d.ts.map +0 -1
  166. package/dist/types/src/session/version-pin.test.d.ts +0 -2
  167. package/dist/types/src/session/version-pin.test.d.ts.map +0 -1
  168. package/dist/types/src/summarization/summarization.test.d.ts +0 -2
  169. package/dist/types/src/summarization/summarization.test.d.ts.map +0 -1
  170. package/dist/types/src/testing/exa-search-1748337321991.d.ts +0 -38
  171. package/dist/types/src/testing/exa-search-1748337321991.d.ts.map +0 -1
  172. package/dist/types/src/testing/exa-search-1748337331526.d.ts +0 -37
  173. package/dist/types/src/testing/exa-search-1748337331526.d.ts.map +0 -1
  174. package/dist/types/src/testing/exa-search-1748337344119.d.ts +0 -58
  175. package/dist/types/src/testing/exa-search-1748337344119.d.ts.map +0 -1
  176. package/dist/types/src/types.d.ts +0 -3
  177. package/dist/types/src/types.d.ts.map +0 -1
  178. package/src/blueprint/ai.test.ts +0 -156
  179. package/src/blueprint/blueprint.test.ts +0 -151
  180. package/src/blueprint/blueprint.ts +0 -75
  181. package/src/blueprint/index.ts +0 -7
  182. package/src/blueprint/logger.ts +0 -155
  183. package/src/blueprint/machine.ts +0 -251
  184. package/src/blueprint/test-data.ts +0 -55
  185. package/src/research/exa.ts +0 -100
  186. package/src/research/graph.test.ts +0 -15
  187. package/src/research/graph.ts +0 -337
  188. package/src/research/index.ts +0 -7
  189. package/src/research/instructions-research.tpl +0 -97
  190. package/src/research/research.test.ts +0 -190
  191. package/src/research/research.ts +0 -89
  192. package/src/session/version-pin.test.ts +0 -26
  193. package/src/summarization/summarization.test.ts +0 -221
  194. package/src/testing/exa-search-1748337321991.ts +0 -131
  195. package/src/testing/exa-search-1748337331526.ts +0 -144
  196. package/src/testing/exa-search-1748337344119.ts +0 -133
  197. package/src/typedefs.d.ts +0 -8
  198. package/src/types.ts +0 -8
  199. /package/src/extraction/extraction-llm-function/{instructions.tpl → transcription-instructions.tpl} +0 -0
@@ -2,18 +2,20 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Schema } from 'effect';
6
- import { describe, test } from 'vitest';
7
-
8
- import { EdgeAiServiceClient, ConsolePrinter, createTool, ToolResult } from '@dxos/ai';
9
- import { AI_SERVICE_ENDPOINT } from '@dxos/ai/testing';
10
- import { ArtifactId, defineArtifact } from '@dxos/artifact';
11
- import { Type, Obj } from '@dxos/echo';
12
- import { ObjectId } from '@dxos/echo-schema';
13
- import { DXN } from '@dxos/keys';
5
+ import * as Tool from '@effect/ai/Tool';
6
+ import * as Toolkit from '@effect/ai/Toolkit';
7
+ import { describe, it } from '@effect/vitest';
8
+ import * as Effect from 'effect/Effect';
9
+ import * as Layer from 'effect/Layer';
10
+ import * as Schema from 'effect/Schema';
11
+
12
+ import { Obj, Type } from '@dxos/echo';
13
+ import { TestHelpers } from '@dxos/effect/testing';
14
14
  import { log } from '@dxos/log';
15
15
 
16
- import { AISession } from './session';
16
+ import { AssistantTestLayer } from '../testing';
17
+
18
+ import { AiSession } from './session';
17
19
 
18
20
  // Define a calendar event artifact schema.
19
21
  const CalendarEventSchema = Schema.Struct({
@@ -22,7 +24,7 @@ const CalendarEventSchema = Schema.Struct({
22
24
  endTime: Schema.String,
23
25
  description: Schema.String,
24
26
  }).pipe(
25
- Type.Obj({
27
+ Type.object({
26
28
  typename: 'example.com/type/CalendarEvent',
27
29
  version: '0.1.0',
28
30
  }),
@@ -30,132 +32,103 @@ const CalendarEventSchema = Schema.Struct({
30
32
 
31
33
  type CalendarEvent = Schema.Schema.Type<typeof CalendarEventSchema>;
32
34
 
33
- // TODO(burdon): Flaky.
34
- describe.skip('AISession with Ollama', () => {
35
- test('create calendar itinerary', { timeout: 60_000 }, async () => {
36
- const aiClient = new EdgeAiServiceClient({ endpoint: AI_SERVICE_ENDPOINT.REMOTE });
37
- // const aiClient = new OllamaAiServiceClient({
38
- // overrides: { model: 'llama3.1:8b' },
39
- // });
40
- const session = new AISession({ operationModel: 'configured' });
41
-
42
- const objects = new Set<string>();
43
-
44
- // Define calendar artifact.
45
- const calendarArtifact = defineArtifact({
46
- id: 'artifact:dxos.org/plugin/calendar',
47
- name: 'Calendar',
48
- instructions: 'Use this to create and query calendar events.',
49
- schema: CalendarEventSchema,
50
- tools: [
51
- createTool('calendar', {
52
- name: 'query',
53
- description: 'Query the calendar for events',
54
- schema: Schema.Struct({}),
55
- execute: async () => {
56
- return ToolResult.Success(CALENDAR_EVENTS);
57
- },
58
- }),
59
- ],
60
- });
61
-
62
- const tableArtifact = defineArtifact({
63
- id: 'artifact:dxos.org/plugin/table',
64
- name: 'Table',
65
- instructions: 'Use this to create and manage tables. Each table has a unique id.',
66
- schema: Schema.Struct({}),
67
- tools: [
68
- createTool('table', {
69
- name: 'create',
70
- description: 'Create a table',
71
- schema: Schema.Struct({
72
- data: Schema.Array(Schema.Any).annotations({ description: 'Array of data payloads to add as rows' }),
73
- }),
74
- execute: async ({ data }) => {
75
- log('create table', { data });
76
- const id = DXN.fromLocalObjectId(ObjectId.random()).toString();
77
- objects.add(id);
78
- // TODO(dmaretskyi): consider xml for refs instead of @dxn:echo:@:XXXXX
79
- return ToolResult.Success(`table @${id}`);
80
- },
81
- }),
82
- ],
83
- });
84
-
85
- const mapArtifact = defineArtifact({
86
- id: 'artifact:dxos.org/plugin/map',
87
- name: 'Map',
88
- instructions:
89
- 'Use this to create and manage maps. Maps source data from tables. Table id is required to create a map.',
90
- schema: Schema.Struct({}),
91
- tools: [
92
- createTool('map', {
93
- name: 'create',
94
- description: 'Create a map',
95
- schema: Schema.Struct({
96
- source: ArtifactId.annotations({
97
- description: 'The table that will be used as the source of the map',
98
- }),
99
- }),
100
- execute: async ({ source }) => {
101
- // TODO(dmaretskyi): Use effect-schema decode instead of manual parsing.
102
- const sourceId = ArtifactId.toDXN(source);
103
- if (!objects.has(sourceId.toString())) {
104
- return ToolResult.Error(`table id=${source} not found`);
105
- }
106
- log('create map', { sourceId });
107
- const id = DXN.fromLocalObjectId(ObjectId.random()).toString();
108
- objects.add(id);
109
- // TODO(dmaretskyi): consider xml for refs instead of @dxn:echo:@:XXXXX
110
- return ToolResult.Success(`map @${id}`);
111
- },
112
- }),
113
- ],
114
- });
115
-
116
- const scriptArtifact = defineArtifact({
117
- id: 'artifact:dxos.org/plugin/script',
118
- name: 'Script',
119
- instructions: 'Use this to create and manage scripts',
120
- schema: Schema.Struct({}),
121
- tools: [],
122
- });
123
-
124
- // session.streamEvent.on((event) => {
125
- // printStreamEvent(event);
126
- // });
127
-
128
- const printer = new ConsolePrinter();
129
- session.message.on((message) => printer.printMessage(message));
130
- session.userMessage.on((message) => printer.printMessage(message));
131
- session.block.on((block) => printer.printContentBlock(block));
132
-
133
- // session.update.on((update) => {
134
- // log('update', { update });
135
- // });
136
-
137
- // Test creating an itinerary
138
- const response = await session.run({
139
- client: aiClient,
140
- tools: [],
141
- artifacts: [calendarArtifact, tableArtifact, mapArtifact, scriptArtifact],
142
- requiredArtifactIds: [calendarArtifact.id, tableArtifact.id, mapArtifact.id, scriptArtifact.id],
143
- history: [],
144
- generationOptions: {
145
- model: '@anthropic/claude-3-5-haiku-20241022',
35
+ const TestToolkit = Toolkit.make(
36
+ Tool.make('Calculator', {
37
+ description: 'Basic calculator tool',
38
+ parameters: {
39
+ input: Schema.String.annotations({
40
+ description: 'The calculation to perform.',
41
+ }),
42
+ },
43
+ success: Schema.Struct({
44
+ result: Schema.Number,
45
+ }),
46
+ failure: Schema.Never,
47
+ }),
48
+ );
49
+
50
+ // Tool handlers.
51
+ const toolkitLayer = TestToolkit.toLayer({
52
+ Calculator: ({ input }) =>
53
+ Effect.gen(function* () {
54
+ const result = (() => {
55
+ // Restrict to basic arithmetic operations for safety.
56
+ const sanitizedInput = input.replace(/[^0-9+\-*/().\s]/g, '');
57
+ log.info('calculate', { sanitizedInput });
58
+
59
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
60
+ return Function(`"use strict"; return (${sanitizedInput})`)();
61
+ })();
62
+
63
+ return { result };
64
+ }),
65
+ });
66
+
67
+ const TestLayer = Layer.mergeAll(
68
+ AssistantTestLayer({
69
+ types: [CalendarEventSchema],
70
+ }),
71
+ toolkitLayer,
72
+ );
73
+
74
+ describe('AiSession', () => {
75
+ it.effect(
76
+ 'no tools',
77
+ Effect.fnUntraced(
78
+ function* (_) {
79
+ const session = new AiSession({ operationModel: 'configured' });
80
+ const response = yield* session.run({
81
+ prompt: 'Hello world!',
82
+ history: [],
83
+ });
84
+ log.info('response', { response });
85
+ },
86
+ Effect.provide(TestLayer),
87
+ TestHelpers.provideTestContext,
88
+ ),
89
+ );
90
+
91
+ it.effect(
92
+ 'calculator',
93
+ Effect.fnUntraced(
94
+ function* (_) {
95
+ const session = new AiSession({ operationModel: 'configured' });
96
+ const toolkit = yield* TestToolkit;
97
+ const response = yield* session.run({
98
+ toolkit,
99
+ prompt: 'What is 10 + 30?',
100
+ history: [],
101
+ });
102
+ log.info('response', { response });
146
103
  },
147
- prompt: 'create a table and map for a travel itinerary based on events in my calendar',
148
- });
149
-
150
- log('result', {
151
- objects,
152
- finalMessage: response.at(-1),
153
- });
154
- });
104
+ Effect.provide(TestLayer),
105
+ TestHelpers.provideTestContext,
106
+ ),
107
+ );
108
+
109
+ it.effect(
110
+ 'tool schema error',
111
+ Effect.fnUntraced(
112
+ function* (_) {
113
+ const session = new AiSession({ operationModel: 'configured' });
114
+ const toolkit = yield* TestToolkit;
115
+ const response = yield* session.run({
116
+ toolkit,
117
+ prompt:
118
+ 'I am testing error handling in tool paramter parsing. I want you to call the calculator tool but omit the input parameter to intentionally differ from the tool schema.',
119
+ history: [],
120
+ });
121
+ log.info('response', { response });
122
+ },
123
+ Effect.provide(TestLayer),
124
+ TestHelpers.provideTestContext,
125
+ ),
126
+ );
155
127
  });
156
128
 
157
129
  // Travel to rome, florence, livorno, siena, madrid for conferences
158
- const CALENDAR_EVENTS: CalendarEvent[] = [
130
+
131
+ const _CALENDAR_EVENTS: CalendarEvent[] = [
159
132
  Obj.make(CalendarEventSchema, {
160
133
  title: 'Exploring Ancient Ruins in Rome',
161
134
  startTime: '2024-01-01T10:00:00Z',
@@ -187,43 +160,3 @@ const CALENDAR_EVENTS: CalendarEvent[] = [
187
160
  description: 'Travel to Madrid',
188
161
  }),
189
162
  ];
190
-
191
- // const printStreamEvent = (event: GenerationStreamEvent) => {
192
- // switch (event.type) {
193
- // case 'message_start': {
194
- // process.stdout.write(`${event.message.role.toUpperCase()}\n\n`);
195
- // for (const content of event.message.content) {
196
- // printContentBlock(content);
197
- // }
198
- // break;
199
- // }
200
- // case 'content_block_start': {
201
- // printContentBlock(event.content);
202
- // break;
203
- // }
204
- // case 'content_block_delta': {
205
- // switch (event.delta.type) {
206
- // case 'text_delta': {
207
- // process.stdout.write(event.delta.text);
208
- // break;
209
- // }
210
- // case 'input_json_delta': {
211
- // process.stdout.write(event.delta.partial_json);
212
- // break;
213
- // }
214
- // }
215
- // break;
216
- // }
217
- // case 'content_block_stop': {
218
- // process.stdout.write('\n');
219
- // break;
220
- // }
221
- // case 'message_delta': {
222
- // break;
223
- // }
224
- // case 'message_stop': {
225
- // process.stdout.write('\n\n');
226
- // break;
227
- // }
228
- // }
229
- // };