@mozaik-ai/core 2.2.1 → 2.3.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.
package/dist/index.d.mts CHANGED
@@ -105,7 +105,7 @@ declare class SummaryText extends Content {
105
105
  toJSON(): Record<string, any>;
106
106
  }
107
107
 
108
- declare class Reasoning extends ContextItem {
108
+ declare class Reasoning$1 extends ContextItem {
109
109
  readonly type = "reasoning";
110
110
  readonly content: InputText | undefined;
111
111
  readonly encryptedContent: string | undefined;
@@ -115,12 +115,12 @@ declare class Reasoning extends ContextItem {
115
115
  content: InputText | undefined;
116
116
  encryptedContent: string | undefined;
117
117
  summary: SummaryText[];
118
- }): Reasoning;
118
+ }): Reasoning$1;
119
119
  toJSON(): any;
120
120
  }
121
121
 
122
- declare abstract class GenerativeModel {
123
- abstract infer(context: Context): Promise<ContextItem[]>;
122
+ interface GenerativeModel<Id extends string> {
123
+ readonly id: Id;
124
124
  }
125
125
 
126
126
  declare class FunctionCallOutput extends ContextItem {
@@ -142,4 +142,24 @@ interface ContextRepository {
142
142
  getByProjectId(projectId: string): Promise<Context[]>;
143
143
  }
144
144
 
145
- export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, GenerativeModel, ModelMessage, Reasoning, UserMessage };
145
+ interface ModelRuntime<Id extends string> {
146
+ infer(model: GenerativeModel<Id>, context: Context): Promise<ContextItem[]>;
147
+ }
148
+
149
+ interface Reasoning<Effort extends string> {
150
+ readonly reasoning: true;
151
+ readonly reasoningEfforts: readonly Effort[];
152
+ }
153
+
154
+ type GPT54 = GenerativeModel<"gpt-5.4"> & Reasoning<"xhigh" | "high" | "medium" | "low" | "none">;
155
+ declare const gpt54: GPT54;
156
+
157
+ declare class OpenAIResponses implements ModelRuntime<"gpt-5.4"> {
158
+ private readonly client;
159
+ constructor();
160
+ infer(model: GPT54, context: Context): Promise<ContextItem[]>;
161
+ mapContextToRequest(context: Context): any[];
162
+ extractContextItems(response: any): ContextItem[];
163
+ }
164
+
165
+ export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, ModelMessage, OpenAIResponses, Reasoning$1 as Reasoning, UserMessage, gpt54 };
package/dist/index.d.ts CHANGED
@@ -105,7 +105,7 @@ declare class SummaryText extends Content {
105
105
  toJSON(): Record<string, any>;
106
106
  }
107
107
 
108
- declare class Reasoning extends ContextItem {
108
+ declare class Reasoning$1 extends ContextItem {
109
109
  readonly type = "reasoning";
110
110
  readonly content: InputText | undefined;
111
111
  readonly encryptedContent: string | undefined;
@@ -115,12 +115,12 @@ declare class Reasoning extends ContextItem {
115
115
  content: InputText | undefined;
116
116
  encryptedContent: string | undefined;
117
117
  summary: SummaryText[];
118
- }): Reasoning;
118
+ }): Reasoning$1;
119
119
  toJSON(): any;
120
120
  }
121
121
 
122
- declare abstract class GenerativeModel {
123
- abstract infer(context: Context): Promise<ContextItem[]>;
122
+ interface GenerativeModel<Id extends string> {
123
+ readonly id: Id;
124
124
  }
125
125
 
126
126
  declare class FunctionCallOutput extends ContextItem {
@@ -142,4 +142,24 @@ interface ContextRepository {
142
142
  getByProjectId(projectId: string): Promise<Context[]>;
143
143
  }
144
144
 
145
- export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, GenerativeModel, ModelMessage, Reasoning, UserMessage };
145
+ interface ModelRuntime<Id extends string> {
146
+ infer(model: GenerativeModel<Id>, context: Context): Promise<ContextItem[]>;
147
+ }
148
+
149
+ interface Reasoning<Effort extends string> {
150
+ readonly reasoning: true;
151
+ readonly reasoningEfforts: readonly Effort[];
152
+ }
153
+
154
+ type GPT54 = GenerativeModel<"gpt-5.4"> & Reasoning<"xhigh" | "high" | "medium" | "low" | "none">;
155
+ declare const gpt54: GPT54;
156
+
157
+ declare class OpenAIResponses implements ModelRuntime<"gpt-5.4"> {
158
+ private readonly client;
159
+ constructor();
160
+ infer(model: GPT54, context: Context): Promise<ContextItem[]>;
161
+ mapContextToRequest(context: Context): any[];
162
+ extractContextItems(response: any): ContextItem[];
163
+ }
164
+
165
+ export { Context, ContextItem, type ContextRepository, DeveloperMessage, FunctionCall, FunctionCallOutput, type GenerativeModel, ModelMessage, OpenAIResponses, Reasoning$1 as Reasoning, UserMessage, gpt54 };
package/dist/index.js CHANGED
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
8
  var __export = (target, all) => {
7
9
  for (var name in all)
@@ -15,6 +17,14 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
29
 
20
30
  // src/index.ts
@@ -25,14 +35,15 @@ __export(index_exports, {
25
35
  DeveloperMessage: () => DeveloperMessage,
26
36
  FunctionCall: () => FunctionCall,
27
37
  FunctionCallOutput: () => FunctionCallOutput,
28
- GenerativeModel: () => GenerativeModel,
29
38
  ModelMessage: () => ModelMessage,
39
+ OpenAIResponses: () => OpenAIResponses,
30
40
  Reasoning: () => Reasoning,
31
- UserMessage: () => UserMessage
41
+ UserMessage: () => UserMessage,
42
+ gpt54: () => gpt54
32
43
  });
33
44
  module.exports = __toCommonJS(index_exports);
34
45
 
35
- // src/domain/context-runtime/context.ts
46
+ // src/core/context-runtime/context.ts
36
47
  var Context = class _Context {
37
48
  constructor(id, projectId, items) {
38
49
  this.projectId = projectId;
@@ -45,7 +56,7 @@ var Context = class _Context {
45
56
  }
46
57
  applyModelOutput(items) {
47
58
  for (const item of items) {
48
- if (item.getType() !== "function_call" || item.getType() !== "model_message" || item.getType() !== "reasoning") {
59
+ if (item.getType() !== "function_call" || item.getType() !== "message" || item.getType() !== "reasoning") {
49
60
  throw new Error(`Invalid item type: ${item.getType()}`);
50
61
  }
51
62
  }
@@ -67,18 +78,18 @@ var Context = class _Context {
67
78
  }
68
79
  };
69
80
 
70
- // src/domain/context-runtime/context-item.ts
81
+ // src/core/context-runtime/context-item.ts
71
82
  var ContextItem = class {
72
83
  getType() {
73
84
  return this.type;
74
85
  }
75
86
  };
76
87
 
77
- // src/domain/context-runtime/content.ts
88
+ // src/core/context-runtime/content.ts
78
89
  var Content = class {
79
90
  };
80
91
 
81
- // src/domain/context-runtime/content/input-text.ts
92
+ // src/core/context-runtime/content/input-text.ts
82
93
  var InputText = class _InputText extends Content {
83
94
  constructor(text) {
84
95
  super();
@@ -101,7 +112,7 @@ var InputText = class _InputText extends Content {
101
112
  }
102
113
  };
103
114
 
104
- // src/domain/context-runtime/input/user-message.ts
115
+ // src/core/context-runtime/input/user-message.ts
105
116
  var UserMessage = class _UserMessage extends ContextItem {
106
117
  constructor(content) {
107
118
  super();
@@ -126,7 +137,7 @@ var UserMessage = class _UserMessage extends ContextItem {
126
137
  }
127
138
  };
128
139
 
129
- // src/domain/context-runtime/input/developer-message.ts
140
+ // src/core/context-runtime/input/developer-message.ts
130
141
  var DeveloperMessage = class _DeveloperMessage extends ContextItem {
131
142
  constructor(content) {
132
143
  super();
@@ -151,7 +162,7 @@ var DeveloperMessage = class _DeveloperMessage extends ContextItem {
151
162
  }
152
163
  };
153
164
 
154
- // src/domain/context-runtime/content/output-text.ts
165
+ // src/core/context-runtime/content/output-text.ts
155
166
  var OutputText = class _OutputText extends Content {
156
167
  constructor(text) {
157
168
  super();
@@ -171,7 +182,7 @@ var OutputText = class _OutputText extends Content {
171
182
  }
172
183
  };
173
184
 
174
- // src/domain/context-runtime/output/model-message.ts
185
+ // src/core/context-runtime/output/model-message.ts
175
186
  var ModelMessage = class _ModelMessage extends ContextItem {
176
187
  constructor(content) {
177
188
  super();
@@ -192,7 +203,7 @@ var ModelMessage = class _ModelMessage extends ContextItem {
192
203
  }
193
204
  };
194
205
 
195
- // src/domain/context-runtime/output/function-call.ts
206
+ // src/core/context-runtime/output/function-call.ts
196
207
  var FunctionCall = class _FunctionCall extends ContextItem {
197
208
  constructor(callId, name, args) {
198
209
  super();
@@ -214,7 +225,7 @@ var FunctionCall = class _FunctionCall extends ContextItem {
214
225
  }
215
226
  };
216
227
 
217
- // src/domain/context-runtime/output/reasoning.ts
228
+ // src/core/context-runtime/output/reasoning.ts
218
229
  var Reasoning = class _Reasoning extends ContextItem {
219
230
  constructor(content, encryptedContent, summary = []) {
220
231
  super();
@@ -237,11 +248,7 @@ var Reasoning = class _Reasoning extends ContextItem {
237
248
  }
238
249
  };
239
250
 
240
- // src/domain/generative-model/generative-model.ts
241
- var GenerativeModel = class {
242
- };
243
-
244
- // src/domain/context-runtime/input/function-call-output.ts
251
+ // src/core/context-runtime/input/function-call-output.ts
245
252
  var FunctionCallOutput = class _FunctionCallOutput extends ContextItem {
246
253
  constructor(callId, output) {
247
254
  super();
@@ -263,6 +270,45 @@ var FunctionCallOutput = class _FunctionCallOutput extends ContextItem {
263
270
  };
264
271
  }
265
272
  };
273
+
274
+ // src/providers/openai/runtime/openai-responses.ts
275
+ var import_openai = __toESM(require("openai"));
276
+ var OpenAIResponses = class {
277
+ constructor() {
278
+ this.client = new import_openai.default();
279
+ }
280
+ async infer(model, context) {
281
+ const request = this.mapContextToRequest(context);
282
+ const response = await this.client.responses.create({
283
+ model: model.id,
284
+ input: request
285
+ });
286
+ return this.extractContextItems(response);
287
+ }
288
+ mapContextToRequest(context) {
289
+ return context.getItems().map((item) => item.toJSON());
290
+ }
291
+ extractContextItems(response) {
292
+ return response.output.map((item) => {
293
+ if (item.type === "message" && item.status === "completed") {
294
+ return ModelMessage.rehydrate(item.content[0]);
295
+ }
296
+ if (item.type === "function_call" && item.status === "completed") {
297
+ return FunctionCall.rehydrate(item);
298
+ }
299
+ if (item.type === "reasoning" && item.status === "completed") {
300
+ return Reasoning.rehydrate(item);
301
+ }
302
+ });
303
+ }
304
+ };
305
+
306
+ // src/providers/openai/models/gpt-5-4.ts
307
+ var gpt54 = {
308
+ id: "gpt-5.4",
309
+ reasoning: true,
310
+ reasoningEfforts: ["xhigh", "high", "medium", "low", "none"]
311
+ };
266
312
  // Annotate the CommonJS export names for ESM import in node:
267
313
  0 && (module.exports = {
268
314
  Context,
@@ -270,9 +316,10 @@ var FunctionCallOutput = class _FunctionCallOutput extends ContextItem {
270
316
  DeveloperMessage,
271
317
  FunctionCall,
272
318
  FunctionCallOutput,
273
- GenerativeModel,
274
319
  ModelMessage,
320
+ OpenAIResponses,
275
321
  Reasoning,
276
- UserMessage
322
+ UserMessage,
323
+ gpt54
277
324
  });
278
325
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/domain/context-runtime/context.ts","../src/domain/context-runtime/context-item.ts","../src/domain/context-runtime/content.ts","../src/domain/context-runtime/content/input-text.ts","../src/domain/context-runtime/input/user-message.ts","../src/domain/context-runtime/input/developer-message.ts","../src/domain/context-runtime/content/output-text.ts","../src/domain/context-runtime/output/model-message.ts","../src/domain/context-runtime/output/function-call.ts","../src/domain/context-runtime/output/reasoning.ts","../src/domain/generative-model/generative-model.ts","../src/domain/context-runtime/input/function-call-output.ts"],"sourcesContent":["import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { UserMessage } from \"@core/context-runtime/input/user-message\"\nimport { DeveloperMessage } from \"@core/context-runtime/input/developer-message\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\nimport { FunctionCallOutput } from \"@core/context-runtime/input/function-call-output\"\nimport { ContextRepository } from \"@core/context-runtime/context-repository\"\n\nexport {\n\tContext,\n\tContextItem,\n\tUserMessage,\n\tDeveloperMessage,\n\tModelMessage,\n\tFunctionCall,\n\tFunctionCallOutput,\n\tReasoning,\n\tGenerativeModel,\n\tContextRepository,\n}\n","import { ContextItem } from \"./context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tif (\n\t\t\t\titem.getType() !== \"function_call\" ||\n\t\t\t\titem.getType() !== \"model_message\" ||\n\t\t\t\titem.getType() !== \"reasoning\"\n\t\t\t) {\n\t\t\t\tthrow new Error(`Invalid item type: ${item.getType()}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"../content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"../context-item\"\nimport { InputText } from \"../content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"../content/input-text\"\nimport { ContextItem } from \"../context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"../content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"../context-item\"\nimport { OutputText } from \"../content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"../context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"../content/input-text\"\nimport { SummaryText } from \"../content/summary-text\"\nimport { ContextItem } from \"../context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { Context } from \"../context-runtime/context\"\nimport { ContextItem } from \"../context-runtime/context-item\"\n\nexport interface Usage {\n\treadonly inputTokens: number\n\treadonly outputTokens: number\n\treadonly reasoningTokens: number\n\treadonly cachedTokens: number\n\treadonly cost: number\n}\n\nexport abstract class GenerativeModel {\n\tabstract infer(context: Context): Promise<ContextItem[]>\n}\n","import { ContextItem } from \"../context-item\"\nimport { InputText } from \"../content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAM,UAAN,MAAM,SAAQ;AAAA,EAKpB,YAAY,IAAY,WAAmB,OAAsB;AAChE,SAAK,YAAY;AACjB,SAAK,KAAK;AACV,SAAK,QAAQ;AAAA,EACd;AAAA,EAEA,QAAQ,MAA4B;AACnC,SAAK,MAAM,KAAK,IAAI;AACpB,WAAO;AAAA,EACR;AAAA,EAEA,iBAAiB,OAA+B;AAC/C,eAAW,QAAQ,OAAO;AACzB,UACC,KAAK,QAAQ,MAAM,mBACnB,KAAK,QAAQ,MAAM,mBACnB,KAAK,QAAQ,MAAM,aAClB;AACD,cAAM,IAAI,MAAM,sBAAsB,KAAK,QAAQ,CAAC,EAAE;AAAA,MACvD;AAAA,IACD;AACA,SAAK,MAAM,KAAK,GAAG,KAAK;AACxB,WAAO;AAAA,EACR;AAAA,EAEA,WAA0B;AACzB,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,OAAO,OAAO,WAA4B;AACzC,UAAM,KAAK,OAAO,WAAW;AAC7B,WAAO,IAAI,SAAQ,IAAI,WAAW,CAAC,CAAC;AAAA,EACrC;AAAA,EAEA,OAAO,UAAU,MAAwE;AACxF,WAAO,IAAI,SAAQ,KAAK,IAAI,KAAK,WAAW,KAAK,KAAK;AAAA,EACvD;AAAA,EAEA,SAAc;AACb,WAAO,KAAK,MAAM,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC;AAAA,EAC9C;AACD;;;AChDO,IAAe,cAAf,MAA2B;AAAA,EAGjC,UAAkB;AACjB,WAAO,KAAK;AAAA,EACb;AAGD;;;ACRO,IAAe,UAAf,MAAuB;AAE9B;;;ACAO,IAAM,YAAN,MAAM,mBAAkB,QAAQ;AAAA,EAG9B,YAA4B,MAAc;AACjD,UAAM;AAD6B;AAFpC,SAAS,OAAO;AAAA,EAIhB;AAAA,EAEA,OAAO,OAAO,MAAyB;AACtC,WAAO,IAAI,WAAU,IAAI;AAAA,EAC1B;AAAA,EAEA,OAAO,UAAU,MAAmC;AACnD,WAAO,IAAI,WAAU,KAAK,IAAI;AAAA,EAC/B;AAAA,EAEA,SAAgB;AACf,WAAO;AAAA,MACN;AAAA,QACC,MAAM,KAAK;AAAA,QACX,MAAM,KAAK;AAAA,MACZ;AAAA,IACD;AAAA,EACD;AACD;;;ACtBO,IAAM,cAAN,MAAM,qBAAoB,YAAY;AAAA,EAKpC,YAAY,SAAoB;AACvC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,OAAO,MAA2B;AACxC,UAAM,UAAU,UAAU,OAAO,IAAI;AACrC,WAAO,IAAI,aAAY,OAAO;AAAA,EAC/B;AAAA,EAEA,OAAO,UAAU,MAAqC;AACrD,UAAM,UAAU,UAAU,UAAU,IAAI;AACxC,WAAO,IAAI,aAAY,OAAO;AAAA,EAC/B;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AACD;;;AC3BO,IAAM,mBAAN,MAAM,0BAAyB,YAAY;AAAA,EAKzC,YAAY,SAAoB;AACvC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AAAA,EAEA,OAAO,OAAO,MAAgC;AAC7C,UAAM,UAAU,UAAU,OAAO,IAAI;AACrC,WAAO,IAAI,kBAAiB,OAAO;AAAA,EACpC;AAAA,EAEA,OAAO,UAAU,MAA0C;AAC1D,UAAM,UAAU,UAAU,UAAU,IAAI;AACxC,WAAO,IAAI,kBAAiB,OAAO;AAAA,EACpC;AACD;;;AC5BO,IAAM,aAAN,MAAM,oBAAmB,QAAQ;AAAA,EAG/B,YAA4B,MAAc;AACjD,UAAM;AAD6B;AAFpC,SAAS,OAAO;AAAA,EAIhB;AAAA,EAEA,OAAO,UAAU,MAAoC;AACpD,WAAO,IAAI,YAAW,KAAK,IAAI;AAAA,EAChC;AAAA,EAEA,SAAgB;AACf,WAAO;AAAA,MACN;AAAA,QACC,MAAM,KAAK;AAAA,QACX,MAAM,KAAK;AAAA,MACZ;AAAA,IACD;AAAA,EACD;AACD;;;AClBO,IAAM,eAAN,MAAM,sBAAqB,YAAY;AAAA,EAKrC,YAAY,SAAqB;AACxC,UAAM;AALP,SAAS,OAAO;AAChB,SAAS,OAAO;AAKf,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,UAAU,MAAsC;AACtD,UAAM,UAAU,WAAW,UAAU,IAAI;AACzC,WAAO,IAAI,cAAa,OAAO;AAAA,EAChC;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,QAAQ,OAAO;AAAA,IAC9B;AAAA,EACD;AACD;;;ACvBO,IAAM,eAAN,MAAM,sBAAqB,YAAY;AAAA,EAMrC,YAAY,QAAgB,MAAc,MAAc;AAC/D,UAAM;AANP,SAAS,OAAO;AAOf,SAAK,SAAS;AACd,SAAK,OAAO;AACZ,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,OAAO,UAAU,MAAoE;AACpF,WAAO,IAAI,cAAa,KAAK,QAAQ,KAAK,MAAM,KAAK,IAAI;AAAA,EAC1D;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,QAAQ,KAAK;AAAA,MACb,MAAM,KAAK;AAAA,MACX,WAAW,KAAK;AAAA,IACjB;AAAA,EACD;AACD;;;ACvBO,IAAM,YAAN,MAAM,mBAAkB,YAAY;AAAA,EAMlC,YACP,SACA,kBACA,UAAyB,CAAC,GACzB;AACD,UAAM;AAVP,SAAS,OAAO;AAWf,SAAK,UAAU;AACf,SAAK,mBAAmB;AACxB,SAAK,UAAU;AAAA,EAChB;AAAA,EAEA,OAAO,UAAU,MAIH;AACb,WAAO,IAAI,WAAU,KAAK,SAAS,KAAK,kBAAkB,KAAK,OAAO;AAAA,EACvE;AAAA,EAEA,SAAc;AA7Bf;AA8BE,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,UAAS,UAAK,YAAL,mBAAc;AAAA,MACvB,kBAAkB,KAAK;AAAA,MACvB,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,IAC5C;AAAA,EACD;AACD;;;AC1BO,IAAe,kBAAf,MAA+B;AAEtC;;;ACVO,IAAM,qBAAN,MAAM,4BAA2B,YAAY;AAAA,EAK3C,YAAY,QAAgB,QAAqB;AACxD,UAAM;AALP,SAAS,OAAO;AAMf,SAAK,SAAS;AACd,SAAK,SAAS;AAAA,EACf;AAAA,EAEA,OAAO,OAAO,QAAgB,QAAyC;AACtE,WAAO,IAAI,oBAAmB,QAAQ,MAAM;AAAA,EAC7C;AAAA,EAEA,OAAO,UAAU,MAAmE;AACnF,WAAO,IAAI,oBAAmB,KAAK,QAAQ,KAAK,MAAM;AAAA,EACvD;AAAA,EAEA,SAAc;AACb,WAAO;AAAA,MACN,MAAM,KAAK;AAAA,MACX,QAAQ,KAAK;AAAA,MACb,QAAQ,KAAK,OAAO,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;AAAA,IAC1C;AAAA,EACD;AACD;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts"],"sourcesContent":["import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { UserMessage } from \"@core/context-runtime/input/user-message\"\nimport { DeveloperMessage } from \"@core/context-runtime/input/developer-message\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\nimport { FunctionCallOutput } from \"@core/context-runtime/input/function-call-output\"\nimport { ContextRepository } from \"@core/context-runtime/context-repository\"\nimport { OpenAIResponses } from \"@openai/runtime/openai-responses\"\nimport { gpt54 } from \"@openai/models/gpt-5-4\"\n\nexport {\n\tContext,\n\tContextItem,\n\tUserMessage,\n\tDeveloperMessage,\n\tModelMessage,\n\tFunctionCall,\n\tFunctionCallOutput,\n\tReasoning,\n\tGenerativeModel,\n\tContextRepository,\n\tOpenAIResponses,\n\tgpt54,\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tif (item.getType() !== \"function_call\" || item.getType() !== \"message\" || item.getType() !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${item.getType()}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { GPT54 } from \"@openai/models/gpt-5-4\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime<\"gpt-5.4\"> {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(model: GPT54, context: Context): Promise<ContextItem[]> {\n\t\tconst request = this.mapContextToRequest(context)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: model.id,\n\t\t\tinput: request,\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Reasoning } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport type GPT54 = GenerativeModel<\"gpt-5.4\"> & Reasoning<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">\n\nexport const gpt54: GPT54 = {\n\tid: \"gpt-5.4\",\n\treasoning: true,\n\treasoningEfforts: [\"xhigh\", \"high\", \"medium\", \"low\", \"none\"],\n}\n"],"mappings":"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","names":["OpenAI"]}
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- // src/domain/context-runtime/context.ts
1
+ // src/core/context-runtime/context.ts
2
2
  var Context = class _Context {
3
3
  constructor(id, projectId, items) {
4
4
  this.projectId = projectId;
@@ -11,7 +11,7 @@ var Context = class _Context {
11
11
  }
12
12
  applyModelOutput(items) {
13
13
  for (const item of items) {
14
- if (item.getType() !== "function_call" || item.getType() !== "model_message" || item.getType() !== "reasoning") {
14
+ if (item.getType() !== "function_call" || item.getType() !== "message" || item.getType() !== "reasoning") {
15
15
  throw new Error(`Invalid item type: ${item.getType()}`);
16
16
  }
17
17
  }
@@ -33,18 +33,18 @@ var Context = class _Context {
33
33
  }
34
34
  };
35
35
 
36
- // src/domain/context-runtime/context-item.ts
36
+ // src/core/context-runtime/context-item.ts
37
37
  var ContextItem = class {
38
38
  getType() {
39
39
  return this.type;
40
40
  }
41
41
  };
42
42
 
43
- // src/domain/context-runtime/content.ts
43
+ // src/core/context-runtime/content.ts
44
44
  var Content = class {
45
45
  };
46
46
 
47
- // src/domain/context-runtime/content/input-text.ts
47
+ // src/core/context-runtime/content/input-text.ts
48
48
  var InputText = class _InputText extends Content {
49
49
  constructor(text) {
50
50
  super();
@@ -67,7 +67,7 @@ var InputText = class _InputText extends Content {
67
67
  }
68
68
  };
69
69
 
70
- // src/domain/context-runtime/input/user-message.ts
70
+ // src/core/context-runtime/input/user-message.ts
71
71
  var UserMessage = class _UserMessage extends ContextItem {
72
72
  constructor(content) {
73
73
  super();
@@ -92,7 +92,7 @@ var UserMessage = class _UserMessage extends ContextItem {
92
92
  }
93
93
  };
94
94
 
95
- // src/domain/context-runtime/input/developer-message.ts
95
+ // src/core/context-runtime/input/developer-message.ts
96
96
  var DeveloperMessage = class _DeveloperMessage extends ContextItem {
97
97
  constructor(content) {
98
98
  super();
@@ -117,7 +117,7 @@ var DeveloperMessage = class _DeveloperMessage extends ContextItem {
117
117
  }
118
118
  };
119
119
 
120
- // src/domain/context-runtime/content/output-text.ts
120
+ // src/core/context-runtime/content/output-text.ts
121
121
  var OutputText = class _OutputText extends Content {
122
122
  constructor(text) {
123
123
  super();
@@ -137,7 +137,7 @@ var OutputText = class _OutputText extends Content {
137
137
  }
138
138
  };
139
139
 
140
- // src/domain/context-runtime/output/model-message.ts
140
+ // src/core/context-runtime/output/model-message.ts
141
141
  var ModelMessage = class _ModelMessage extends ContextItem {
142
142
  constructor(content) {
143
143
  super();
@@ -158,7 +158,7 @@ var ModelMessage = class _ModelMessage extends ContextItem {
158
158
  }
159
159
  };
160
160
 
161
- // src/domain/context-runtime/output/function-call.ts
161
+ // src/core/context-runtime/output/function-call.ts
162
162
  var FunctionCall = class _FunctionCall extends ContextItem {
163
163
  constructor(callId, name, args) {
164
164
  super();
@@ -180,7 +180,7 @@ var FunctionCall = class _FunctionCall extends ContextItem {
180
180
  }
181
181
  };
182
182
 
183
- // src/domain/context-runtime/output/reasoning.ts
183
+ // src/core/context-runtime/output/reasoning.ts
184
184
  var Reasoning = class _Reasoning extends ContextItem {
185
185
  constructor(content, encryptedContent, summary = []) {
186
186
  super();
@@ -203,11 +203,7 @@ var Reasoning = class _Reasoning extends ContextItem {
203
203
  }
204
204
  };
205
205
 
206
- // src/domain/generative-model/generative-model.ts
207
- var GenerativeModel = class {
208
- };
209
-
210
- // src/domain/context-runtime/input/function-call-output.ts
206
+ // src/core/context-runtime/input/function-call-output.ts
211
207
  var FunctionCallOutput = class _FunctionCallOutput extends ContextItem {
212
208
  constructor(callId, output) {
213
209
  super();
@@ -229,15 +225,55 @@ var FunctionCallOutput = class _FunctionCallOutput extends ContextItem {
229
225
  };
230
226
  }
231
227
  };
228
+
229
+ // src/providers/openai/runtime/openai-responses.ts
230
+ import OpenAI from "openai";
231
+ var OpenAIResponses = class {
232
+ constructor() {
233
+ this.client = new OpenAI();
234
+ }
235
+ async infer(model, context) {
236
+ const request = this.mapContextToRequest(context);
237
+ const response = await this.client.responses.create({
238
+ model: model.id,
239
+ input: request
240
+ });
241
+ return this.extractContextItems(response);
242
+ }
243
+ mapContextToRequest(context) {
244
+ return context.getItems().map((item) => item.toJSON());
245
+ }
246
+ extractContextItems(response) {
247
+ return response.output.map((item) => {
248
+ if (item.type === "message" && item.status === "completed") {
249
+ return ModelMessage.rehydrate(item.content[0]);
250
+ }
251
+ if (item.type === "function_call" && item.status === "completed") {
252
+ return FunctionCall.rehydrate(item);
253
+ }
254
+ if (item.type === "reasoning" && item.status === "completed") {
255
+ return Reasoning.rehydrate(item);
256
+ }
257
+ });
258
+ }
259
+ };
260
+
261
+ // src/providers/openai/models/gpt-5-4.ts
262
+ var gpt54 = {
263
+ id: "gpt-5.4",
264
+ reasoning: true,
265
+ reasoningEfforts: ["xhigh", "high", "medium", "low", "none"]
266
+ };
232
267
  export {
233
268
  Context,
234
269
  ContextItem,
235
270
  DeveloperMessage,
236
271
  FunctionCall,
237
272
  FunctionCallOutput,
238
- GenerativeModel,
239
273
  ModelMessage,
274
+ OpenAIResponses,
240
275
  Reasoning,
241
- UserMessage
276
+ UserMessage,
277
+ gpt54
242
278
  };
243
279
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/domain/context-runtime/context.ts","../src/domain/context-runtime/context-item.ts","../src/domain/context-runtime/content.ts","../src/domain/context-runtime/content/input-text.ts","../src/domain/context-runtime/input/user-message.ts","../src/domain/context-runtime/input/developer-message.ts","../src/domain/context-runtime/content/output-text.ts","../src/domain/context-runtime/output/model-message.ts","../src/domain/context-runtime/output/function-call.ts","../src/domain/context-runtime/output/reasoning.ts","../src/domain/generative-model/generative-model.ts","../src/domain/context-runtime/input/function-call-output.ts"],"sourcesContent":["import { ContextItem } from \"./context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tif (\n\t\t\t\titem.getType() !== \"function_call\" ||\n\t\t\t\titem.getType() !== \"model_message\" ||\n\t\t\t\titem.getType() !== \"reasoning\"\n\t\t\t) {\n\t\t\t\tthrow new Error(`Invalid item type: ${item.getType()}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"../content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"../context-item\"\nimport { InputText } from \"../content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"../content/input-text\"\nimport { ContextItem } from \"../context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"../content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"../context-item\"\nimport { OutputText } from \"../content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"../context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"../content/input-text\"\nimport { SummaryText } from \"../content/summary-text\"\nimport { ContextItem } from \"../context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { Context } from \"../context-runtime/context\"\nimport { ContextItem } from \"../context-runtime/context-item\"\n\nexport interface Usage {\n\treadonly inputTokens: number\n\treadonly outputTokens: number\n\treadonly reasoningTokens: number\n\treadonly cachedTokens: number\n\treadonly cost: number\n}\n\nexport abstract class GenerativeModel {\n\tabstract infer(context: Context): Promise<ContextItem[]>\n}\n","import { ContextItem } from \"../context-item\"\nimport { InputText } from \"../content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/core/context-runtime/context.ts","../src/core/context-runtime/context-item.ts","../src/core/context-runtime/content.ts","../src/core/context-runtime/content/input-text.ts","../src/core/context-runtime/input/user-message.ts","../src/core/context-runtime/input/developer-message.ts","../src/core/context-runtime/content/output-text.ts","../src/core/context-runtime/output/model-message.ts","../src/core/context-runtime/output/function-call.ts","../src/core/context-runtime/output/reasoning.ts","../src/core/context-runtime/input/function-call-output.ts","../src/providers/openai/runtime/openai-responses.ts","../src/providers/openai/models/gpt-5-4.ts"],"sourcesContent":["import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Context {\n\treadonly id: string\n\treadonly projectId: string\n\treadonly items: ContextItem[]\n\n\tconstructor(id: string, projectId: string, items: ContextItem[]) {\n\t\tthis.projectId = projectId\n\t\tthis.id = id\n\t\tthis.items = items\n\t}\n\n\taddItem(item: ContextItem): Context {\n\t\tthis.items.push(item)\n\t\treturn this\n\t}\n\n\tapplyModelOutput(items: ContextItem[]): Context {\n\t\tfor (const item of items) {\n\t\t\tif (item.getType() !== \"function_call\" || item.getType() !== \"message\" || item.getType() !== \"reasoning\") {\n\t\t\t\tthrow new Error(`Invalid item type: ${item.getType()}`)\n\t\t\t}\n\t\t}\n\t\tthis.items.push(...items)\n\t\treturn this\n\t}\n\n\tgetItems(): ContextItem[] {\n\t\treturn this.items\n\t}\n\n\tstatic create(projectId: string): Context {\n\t\tconst id = crypto.randomUUID()\n\t\treturn new Context(id, projectId, [])\n\t}\n\n\tstatic rehydrate(data: { id: string; projectId: string; items: ContextItem[] }): Context {\n\t\treturn new Context(data.id, data.projectId, data.items)\n\t}\n\n\ttoJSON(): any {\n\t\treturn this.items.map((item) => item.toJSON())\n\t}\n}\n","export abstract class ContextItem {\n\tabstract readonly type: string\n\n\tgetType(): string {\n\t\treturn this.type\n\t}\n\n\tabstract toJSON(): any\n}\n","export abstract class Content {\n\tabstract readonly type: string\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class InputText extends Content {\n\treadonly type = \"input_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic create(text: string): InputText {\n\t\treturn new InputText(text)\n\t}\n\n\tstatic rehydrate(data: { text: string }): InputText {\n\t\treturn new InputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class UserMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"user\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic create(text: string): UserMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new UserMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): UserMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new UserMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class DeveloperMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"developer\"\n\treadonly content: InputText\n\n\tprivate constructor(content: InputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n\n\tstatic create(text: string): DeveloperMessage {\n\t\tconst content = InputText.create(text)\n\t\treturn new DeveloperMessage(content)\n\t}\n\n\tstatic rehydrate(data: { text: string }): DeveloperMessage {\n\t\tconst content = InputText.rehydrate(data)\n\t\treturn new DeveloperMessage(content)\n\t}\n}\n","import { Content } from \"@core/context-runtime/content\"\n\nexport class OutputText extends Content {\n\treadonly type = \"output_text\"\n\n\tprivate constructor(public readonly text: string) {\n\t\tsuper()\n\t}\n\n\tstatic rehydrate(data: { text: string }): OutputText {\n\t\treturn new OutputText(data.text)\n\t}\n\n\ttoJSON(): any[] {\n\t\treturn [\n\t\t\t{\n\t\t\t\ttype: this.type,\n\t\t\t\ttext: this.text,\n\t\t\t},\n\t\t]\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { OutputText } from \"@core/context-runtime/content/output-text\"\n\nexport class ModelMessage extends ContextItem {\n\treadonly type = \"message\"\n\treadonly role = \"assistant\"\n\treadonly content: OutputText\n\n\tprivate constructor(content: OutputText) {\n\t\tsuper()\n\t\tthis.content = content\n\t}\n\n\tstatic rehydrate(data: { text: string }): ModelMessage {\n\t\tconst content = OutputText.rehydrate(data)\n\t\treturn new ModelMessage(content)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\trole: this.role,\n\t\t\tcontent: this.content.toJSON(),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class FunctionCall extends ContextItem {\n\treadonly type = \"function_call\"\n\treadonly callId: string\n\treadonly name: string\n\treadonly args: string\n\n\tprivate constructor(callId: string, name: string, args: string) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.name = name\n\t\tthis.args = args\n\t}\n\n\tstatic rehydrate(data: { callId: string; name: string; args: string }): FunctionCall {\n\t\treturn new FunctionCall(data.callId, data.name, data.args)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\tname: this.name,\n\t\t\targuments: this.args,\n\t\t}\n\t}\n}\n","import { InputText } from \"@core/context-runtime/content/input-text\"\nimport { SummaryText } from \"@core/context-runtime/content/summary-text\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\n\nexport class Reasoning extends ContextItem {\n\treadonly type = \"reasoning\"\n\treadonly content: InputText | undefined\n\treadonly encryptedContent: string | undefined\n\treadonly summary: SummaryText[]\n\n\tprivate constructor(\n\t\tcontent: InputText | undefined,\n\t\tencryptedContent?: string | undefined,\n\t\tsummary: SummaryText[] = [],\n\t) {\n\t\tsuper()\n\t\tthis.content = content\n\t\tthis.encryptedContent = encryptedContent\n\t\tthis.summary = summary\n\t}\n\n\tstatic rehydrate(data: {\n\t\tcontent: InputText | undefined\n\t\tencryptedContent: string | undefined\n\t\tsummary: SummaryText[]\n\t}): Reasoning {\n\t\treturn new Reasoning(data.content, data.encryptedContent, data.summary)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcontent: this.content?.toJSON(),\n\t\t\tencryptedContent: this.encryptedContent,\n\t\t\tsummary: this.summary.map((s) => s.toJSON()),\n\t\t}\n\t}\n}\n","import { ContextItem } from \"@core/context-runtime/context-item\"\nimport { InputText } from \"@core/context-runtime/content/input-text\"\n\nexport class FunctionCallOutput extends ContextItem {\n\treadonly type = \"function_call_output\"\n\treadonly callId: string\n\treadonly output: InputText[]\n\n\tprivate constructor(callId: string, output: InputText[]) {\n\t\tsuper()\n\t\tthis.callId = callId\n\t\tthis.output = output\n\t}\n\n\tstatic create(callId: string, output: InputText[]): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(callId, output)\n\t}\n\n\tstatic rehydrate(data: { callId: string; output: InputText[] }): FunctionCallOutput {\n\t\treturn new FunctionCallOutput(data.callId, data.output)\n\t}\n\n\ttoJSON(): any {\n\t\treturn {\n\t\t\ttype: this.type,\n\t\t\tcallId: this.callId,\n\t\t\toutput: this.output.map((o) => o.toJSON()),\n\t\t}\n\t}\n}\n","import { Context } from \"@core/context-runtime/context\"\nimport { ContextItem } from \"@core/context-runtime/context-item\"\nimport { FunctionCall } from \"@core/context-runtime/output/function-call\"\nimport { ModelMessage } from \"@core/context-runtime/output/model-message\"\nimport { Reasoning } from \"@core/context-runtime/output/reasoning\"\nimport { ModelRuntime } from \"@core/generative-model/runtime/model-runtime\"\nimport { GPT54 } from \"@openai/models/gpt-5-4\"\nimport OpenAI from \"openai\"\n\nexport class OpenAIResponses implements ModelRuntime<\"gpt-5.4\"> {\n\tprivate readonly client: OpenAI\n\n\tconstructor() {\n\t\tthis.client = new OpenAI()\n\t}\n\n\tasync infer(model: GPT54, context: Context): Promise<ContextItem[]> {\n\t\tconst request = this.mapContextToRequest(context)\n\t\tconst response = await this.client.responses.create({\n\t\t\tmodel: model.id,\n\t\t\tinput: request,\n\t\t})\n\t\treturn this.extractContextItems(response)\n\t}\n\n\tmapContextToRequest(context: Context): any[] {\n\t\treturn context.getItems().map((item) => item.toJSON())\n\t}\n\n\textractContextItems(response: any): ContextItem[] {\n\t\treturn response.output.map((item: any) => {\n\t\t\tif (item.type === \"message\" && item.status === \"completed\") {\n\t\t\t\treturn ModelMessage.rehydrate(item.content[0] as { text: string })\n\t\t\t}\n\t\t\tif (item.type === \"function_call\" && item.status === \"completed\") {\n\t\t\t\treturn FunctionCall.rehydrate(item)\n\t\t\t}\n\t\t\tif (item.type === \"reasoning\" && item.status === \"completed\") {\n\t\t\t\treturn Reasoning.rehydrate(item)\n\t\t\t}\n\t\t})\n\t}\n}\n","import { Reasoning } from \"@core/generative-model/capabilities/reasoning-effort\"\nimport { GenerativeModel } from \"@core/generative-model/generative-model\"\n\nexport type GPT54 = GenerativeModel<\"gpt-5.4\"> & Reasoning<\"xhigh\" | \"high\" | \"medium\" | \"low\" | \"none\">\n\nexport const gpt54: GPT54 = {\n\tid: \"gpt-5.4\",\n\treasoning: true,\n\treasoningEfforts: [\"xhigh\", \"high\", \"medium\", \"low\", \"none\"],\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mozaik-ai/core",
3
- "version": "2.2.1",
3
+ "version": "2.3.1",
4
4
  "description": "A TypeScript library for building AI agents",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",