@falai/agent 0.1.0 → 0.1.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/core/Agent.d.ts +12 -0
- package/dist/core/Agent.d.ts.map +1 -1
- package/dist/core/Agent.js +41 -2
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/PromptBuilder.d.ts +4 -0
- package/dist/core/PromptBuilder.d.ts.map +1 -1
- package/dist/core/PromptBuilder.js +32 -0
- package/dist/core/PromptBuilder.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/providers/GeminiProvider.d.ts.map +1 -1
- package/dist/providers/GeminiProvider.js +18 -1
- package/dist/providers/GeminiProvider.js.map +1 -1
- package/dist/providers/OpenAIProvider.d.ts.map +1 -1
- package/dist/providers/OpenAIProvider.js +76 -0
- package/dist/providers/OpenAIProvider.js.map +1 -1
- package/dist/providers/OpenRouterProvider.d.ts.map +1 -1
- package/dist/providers/OpenRouterProvider.js +76 -0
- package/dist/providers/OpenRouterProvider.js.map +1 -1
- package/dist/types/ai.d.ts +24 -0
- package/dist/types/ai.d.ts.map +1 -1
- package/docs/API_REFERENCE.md +71 -2
- package/package.json +1 -1
- package/src/core/Agent.ts +59 -3
- package/src/core/PromptBuilder.ts +39 -0
- package/src/index.ts +1 -0
- package/src/providers/GeminiProvider.ts +20 -1
- package/src/providers/OpenAIProvider.ts +84 -0
- package/src/providers/OpenRouterProvider.ts +84 -0
- package/src/types/ai.ts +25 -0
package/dist/core/Agent.d.ts
CHANGED
|
@@ -69,6 +69,18 @@ export declare class Agent<TContext = unknown> {
|
|
|
69
69
|
signal?: AbortSignal;
|
|
70
70
|
}): Promise<{
|
|
71
71
|
message: string;
|
|
72
|
+
route?: {
|
|
73
|
+
id: string;
|
|
74
|
+
title: string;
|
|
75
|
+
} | null;
|
|
76
|
+
state?: {
|
|
77
|
+
id: string;
|
|
78
|
+
description?: string;
|
|
79
|
+
} | null;
|
|
80
|
+
toolCalls?: Array<{
|
|
81
|
+
toolName: string;
|
|
82
|
+
arguments: Record<string, unknown>;
|
|
83
|
+
}>;
|
|
72
84
|
}>;
|
|
73
85
|
/**
|
|
74
86
|
* Get all routes
|
package/dist/core/Agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EAET,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AACH,qBAAa,KAAK,CAAC,QAAQ,GAAG,OAAO;IAavB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZpC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAwB;IAE9C;;OAEG;IACH,SAAgB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAM;gBAExC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC;IAkD5D;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,KAAK;IAMzC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAK5B;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAU3C;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAS9C;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAMnD;;OAEG;IACH,SAAS,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,IAAI,EAAE,KAAK,EACX,YAAY,EAAE,OAAO,GACpB,IAAI;IAMP;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE;QACpB,OAAO,EAAE,KAAK,EAAE,CAAC;QACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,eAAe,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EAET,UAAU,EACX,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AACH,qBAAa,KAAK,CAAC,QAAQ,GAAG,OAAO;IAavB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZpC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,cAAc,CAAwB;IAE9C;;OAEG;IACH,SAAgB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAM;gBAExC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC;IAkD5D;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,KAAK;IAMzC;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAK5B;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAU3C;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAS9C;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW;IAMnD;;OAEG;IACH,SAAS,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,IAAI,EAAE,KAAK,EACX,YAAY,EAAE,OAAO,GACpB,IAAI;IAMP;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE;QACpB,OAAO,EAAE,KAAK,EAAE,CAAC;QACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,eAAe,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QAC7C,KAAK,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAC;QACpD,SAAS,CAAC,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC,CAAC;KAC7E,CAAC;IA2IF;;OAEG;IACH,SAAS,IAAI,KAAK,EAAE;IAIpB;;OAEG;IACH,QAAQ,IAAI,IAAI,EAAE;IAIlB;;OAEG;IACH,aAAa,IAAI,SAAS,EAAE;IAI5B;;OAEG;IACH,eAAe,IAAI,UAAU,EAAE;IAI/B;;OAEG;IACH,eAAe,IAAI,WAAW,EAAE;IAIhC;;OAEG;IACH,iBAAiB,IAAI,cAAc;CAGpC"}
|
package/dist/core/Agent.js
CHANGED
|
@@ -195,17 +195,56 @@ export class Agent {
|
|
|
195
195
|
conditions: r.conditions,
|
|
196
196
|
})));
|
|
197
197
|
}
|
|
198
|
+
// Add JSON response schema instructions
|
|
199
|
+
promptBuilder.addJsonResponseSchema();
|
|
198
200
|
// Build final prompt
|
|
199
201
|
const prompt = promptBuilder.build();
|
|
200
|
-
// Generate message using AI provider
|
|
202
|
+
// Generate message using AI provider with JSON mode enabled
|
|
201
203
|
const result = await this.options.ai.generateMessage({
|
|
202
204
|
prompt,
|
|
203
205
|
history,
|
|
204
206
|
context: effectiveContext,
|
|
205
207
|
signal,
|
|
208
|
+
parameters: {
|
|
209
|
+
jsonMode: true,
|
|
210
|
+
},
|
|
206
211
|
});
|
|
212
|
+
// Parse structured response
|
|
213
|
+
let message = result.message;
|
|
214
|
+
let route = null;
|
|
215
|
+
let state = null;
|
|
216
|
+
let toolCalls;
|
|
217
|
+
if (result.structured) {
|
|
218
|
+
// Extract data from structured response
|
|
219
|
+
message = result.structured.message || message;
|
|
220
|
+
// Find route by title
|
|
221
|
+
if (result.structured.route) {
|
|
222
|
+
const foundRoute = this.routes.find((r) => r.title === result.structured?.route);
|
|
223
|
+
if (foundRoute) {
|
|
224
|
+
route = {
|
|
225
|
+
id: foundRoute.id,
|
|
226
|
+
title: foundRoute.title,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
// Create state reference if provided
|
|
231
|
+
if (result.structured.state) {
|
|
232
|
+
state = {
|
|
233
|
+
id: "dynamic_state",
|
|
234
|
+
description: result.structured.state,
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
// Extract tool calls
|
|
238
|
+
if (result.structured.toolCalls &&
|
|
239
|
+
result.structured.toolCalls.length > 0) {
|
|
240
|
+
toolCalls = result.structured.toolCalls;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
207
243
|
return {
|
|
208
|
-
message
|
|
244
|
+
message,
|
|
245
|
+
route: route || undefined,
|
|
246
|
+
state: state || undefined,
|
|
247
|
+
toolCalls,
|
|
209
248
|
};
|
|
210
249
|
}
|
|
211
250
|
/**
|
package/dist/core/Agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/core/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -113,6 +113,10 @@ export declare class PromptBuilder {
|
|
|
113
113
|
description?: string;
|
|
114
114
|
conditions: string[];
|
|
115
115
|
}>): this;
|
|
116
|
+
/**
|
|
117
|
+
* Add JSON response schema instructions
|
|
118
|
+
*/
|
|
119
|
+
addJsonResponseSchema(): this;
|
|
116
120
|
private formatTemplate;
|
|
117
121
|
private gatherInteractionEvents;
|
|
118
122
|
private lastAgentMessageNote;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptBuilder.d.ts","sourceRoot":"","sources":["../../src/core/PromptBuilder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PromptBuilder.d.ts","sourceRoot":"","sources":["../../src/core/PromptBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -299,6 +299,38 @@ These routes represent different paths the conversation can take. Choose the mos
|
|
|
299
299
|
}
|
|
300
300
|
return this;
|
|
301
301
|
}
|
|
302
|
+
/**
|
|
303
|
+
* Add JSON response schema instructions
|
|
304
|
+
*/
|
|
305
|
+
addJsonResponseSchema() {
|
|
306
|
+
const schema = {
|
|
307
|
+
message: "The actual message to send to the user",
|
|
308
|
+
route: "The title of the route you chose (or null if no specific route)",
|
|
309
|
+
state: "The current state within the route (or null if not in a route)",
|
|
310
|
+
toolCalls: [
|
|
311
|
+
{
|
|
312
|
+
toolName: "Name of the tool to call",
|
|
313
|
+
arguments: "Object with tool arguments",
|
|
314
|
+
},
|
|
315
|
+
],
|
|
316
|
+
reasoning: "Optional: Your internal reasoning for this response",
|
|
317
|
+
};
|
|
318
|
+
this.addSection("json_response_format", `IMPORTANT: You must respond with valid JSON in the following format:
|
|
319
|
+
|
|
320
|
+
\`\`\`json
|
|
321
|
+
${JSON.stringify(schema, null, 2)}
|
|
322
|
+
\`\`\`
|
|
323
|
+
|
|
324
|
+
Instructions:
|
|
325
|
+
- "message": The actual message to send to the user (required)
|
|
326
|
+
- "route": If you chose a specific conversation route, provide its exact title. If not in a route, use null.
|
|
327
|
+
- "state": The current state within the chosen route. If not in a route or at initial state, use null.
|
|
328
|
+
- "toolCalls": If you need to call any tools, provide an array of tool calls. If no tools needed, use an empty array or omit.
|
|
329
|
+
- "reasoning": Optional field for your internal thinking process.
|
|
330
|
+
|
|
331
|
+
Your entire response must be valid JSON. Do not include any text before or after the JSON object.`, {}, SectionStatus.ACTIVE);
|
|
332
|
+
return this;
|
|
333
|
+
}
|
|
302
334
|
// Helper methods
|
|
303
335
|
formatTemplate(template, props) {
|
|
304
336
|
return template.replace(/\{(\w+)\}/g, (match, key) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptBuilder.js","sourceRoot":"","sources":["../../src/core/PromptBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PromptBuilder.js","sourceRoot":"","sources":["../../src/core/PromptBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ export type { Event, EmittedEvent, MessageEventData, ToolEventData, StatusEventD
|
|
|
27
27
|
export { EventKind, EventSource } from "@/types/history";
|
|
28
28
|
export type { RouteRef, StateRef, RouteOptions, TransitionSpec, TransitionResult, } from "@/types/route";
|
|
29
29
|
export type { ToolContext, ToolResult, ToolHandler, ToolRef, } from "@/types/tool";
|
|
30
|
-
export type { AiProvider, GenerateMessageInput, GenerateMessageOutput, ReasoningConfig, } from "@/types/ai";
|
|
30
|
+
export type { AiProvider, GenerateMessageInput, GenerateMessageOutput, AgentStructuredResponse, ReasoningConfig, } from "@/types/ai";
|
|
31
31
|
export type { PromptSection, ContextVariable, ContextVariableValue, } from "@/types/prompt";
|
|
32
32
|
export { SectionStatus } from "@/types/prompt";
|
|
33
33
|
export type { Observation as IObservation, ObservationOptions, } from "@/types/observation";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,YAAY,EACV,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEzD,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,OAAO,GACR,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,YAAY,EACV,WAAW,IAAI,YAAY,EAC3B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAGhF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,UAAU,EACV,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,YAAY,EACV,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEzD,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,OAAO,GACR,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,YAAY,EACV,WAAW,IAAI,YAAY,EAC3B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAUhD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO;AACP,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,YAAY;AACZ,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUxC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAUhD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AA8BzD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeminiProvider.d.ts","sourceRoot":"","sources":["../../src/providers/GeminiProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"GeminiProvider.d.ts","sourceRoot":"","sources":["../../src/providers/GeminiProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAQpB;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,0BAA0B;IAC1B,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AA8CD;;GAEG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C,SAAgB,IAAI,YAAY;IAChC,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAW;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAiC;IAChD,OAAO,CAAC,WAAW,CAAuC;gBAE9C,OAAO,EAAE,qBAAqB;IAqBpC,eAAe,CAAC,QAAQ,GAAG,OAAO,EACtC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACpC,OAAO,CAAC,qBAAqB,CAAC;YAInB,kBAAkB;YA2DlB,iBAAiB;CAqDhC"}
|
|
@@ -101,15 +101,31 @@ export class GeminiProvider {
|
|
|
101
101
|
}
|
|
102
102
|
async generateWithModel(model, input) {
|
|
103
103
|
const operation = async () => {
|
|
104
|
+
// Enable JSON mode if requested
|
|
105
|
+
const configOverride = { ...this.config };
|
|
106
|
+
if (input.parameters?.jsonMode) {
|
|
107
|
+
configOverride.responseMimeType = "application/json";
|
|
108
|
+
}
|
|
104
109
|
const response = await this.genAI.models.generateContent({
|
|
105
110
|
model,
|
|
106
111
|
contents: input.prompt,
|
|
107
|
-
config:
|
|
112
|
+
config: configOverride,
|
|
108
113
|
});
|
|
109
114
|
const message = response.text;
|
|
110
115
|
if (!message) {
|
|
111
116
|
throw new Error("No response from Gemini");
|
|
112
117
|
}
|
|
118
|
+
// Parse JSON response if JSON mode was enabled
|
|
119
|
+
let structured;
|
|
120
|
+
if (input.parameters?.jsonMode) {
|
|
121
|
+
try {
|
|
122
|
+
structured = JSON.parse(message);
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
console.warn("[GEMINI] Failed to parse JSON response:", error);
|
|
126
|
+
// Fall back to treating the message as plain text
|
|
127
|
+
}
|
|
128
|
+
}
|
|
113
129
|
return {
|
|
114
130
|
message,
|
|
115
131
|
metadata: {
|
|
@@ -118,6 +134,7 @@ export class GeminiProvider {
|
|
|
118
134
|
promptTokens: response.usageMetadata?.promptTokenCount,
|
|
119
135
|
completionTokens: response.usageMetadata?.candidatesTokenCount,
|
|
120
136
|
},
|
|
137
|
+
structured,
|
|
121
138
|
};
|
|
122
139
|
};
|
|
123
140
|
return withTimeoutAndRetry(operation, this.retryConfig.timeout, this.retryConfig.retries, `Gemini ${model}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GeminiProvider.js","sourceRoot":"","sources":["../../src/providers/GeminiProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"GeminiProvider.js","sourceRoot":"","sources":["../../src/providers/GeminiProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIProvider.d.ts","sourceRoot":"","sources":["../../src/providers/OpenAIProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,mCAAmC,CAAC;AAEhG,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"OpenAIProvider.d.ts","sourceRoot":"","sources":["../../src/providers/OpenAIProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,mCAAmC,CAAC;AAEhG,OAAO,KAAK,EACV,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAQpB;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,2FAA2F;IAC3F,MAAM,CAAC,EAAE,OAAO,CACd,IAAI,CAAC,sCAAsC,EAAE,OAAO,GAAG,UAAU,CAAC,CACnE,CAAC;IACF,0BAA0B;IAC1B,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAwED;;GAEG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C,SAAgB,IAAI,YAAY;IAChC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAW;IAC/B,OAAO,CAAC,MAAM,CAAC,CAEb;IACF,OAAO,CAAC,WAAW,CAAuC;gBAE9C,OAAO,EAAE,qBAAqB;IAiCpC,eAAe,CAAC,QAAQ,GAAG,OAAO,EACtC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACpC,OAAO,CAAC,qBAAqB,CAAC;YAInB,kBAAkB;YA2DlB,iBAAiB;CAkIhC"}
|
|
@@ -142,6 +142,82 @@ export class OpenAIProvider {
|
|
|
142
142
|
if (input.parameters?.maxOutputTokens !== undefined) {
|
|
143
143
|
params.max_tokens = input.parameters.maxOutputTokens;
|
|
144
144
|
}
|
|
145
|
+
// Use structured output API if JSON mode is enabled
|
|
146
|
+
if (input.parameters?.jsonMode) {
|
|
147
|
+
// Define the JSON schema for agent response
|
|
148
|
+
const agentResponseSchema = {
|
|
149
|
+
type: "object",
|
|
150
|
+
properties: {
|
|
151
|
+
message: {
|
|
152
|
+
type: "string",
|
|
153
|
+
description: "The actual message to send to the user",
|
|
154
|
+
},
|
|
155
|
+
route: {
|
|
156
|
+
type: ["string", "null"],
|
|
157
|
+
description: "The title of the route chosen (or null if no specific route)",
|
|
158
|
+
},
|
|
159
|
+
state: {
|
|
160
|
+
type: ["string", "null"],
|
|
161
|
+
description: "The current state within the route (or null if not in a route)",
|
|
162
|
+
},
|
|
163
|
+
toolCalls: {
|
|
164
|
+
type: "array",
|
|
165
|
+
items: {
|
|
166
|
+
type: "object",
|
|
167
|
+
properties: {
|
|
168
|
+
toolName: {
|
|
169
|
+
type: "string",
|
|
170
|
+
description: "Name of the tool to call",
|
|
171
|
+
},
|
|
172
|
+
arguments: {
|
|
173
|
+
type: "object",
|
|
174
|
+
description: "Arguments to pass to the tool",
|
|
175
|
+
},
|
|
176
|
+
},
|
|
177
|
+
required: ["toolName", "arguments"],
|
|
178
|
+
},
|
|
179
|
+
description: "Tool calls the agent wants to execute",
|
|
180
|
+
},
|
|
181
|
+
reasoning: {
|
|
182
|
+
type: "string",
|
|
183
|
+
description: "Optional: Internal reasoning for this response",
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
required: ["message"],
|
|
187
|
+
additionalProperties: false,
|
|
188
|
+
};
|
|
189
|
+
const response = await this.client.responses.parse({
|
|
190
|
+
model,
|
|
191
|
+
instructions: input.prompt,
|
|
192
|
+
input: "",
|
|
193
|
+
reasoning: {
|
|
194
|
+
effort: input.parameters?.reasoning?.effort || "low",
|
|
195
|
+
},
|
|
196
|
+
text: {
|
|
197
|
+
format: {
|
|
198
|
+
type: "json_schema",
|
|
199
|
+
name: "agentResponseSchema",
|
|
200
|
+
schema: agentResponseSchema,
|
|
201
|
+
},
|
|
202
|
+
},
|
|
203
|
+
});
|
|
204
|
+
if (!response.output_parsed) {
|
|
205
|
+
throw new Error("No parsed output returned from OpenAI");
|
|
206
|
+
}
|
|
207
|
+
const structured = response.output_parsed;
|
|
208
|
+
const message = structured.message;
|
|
209
|
+
return {
|
|
210
|
+
message,
|
|
211
|
+
metadata: {
|
|
212
|
+
model: response.model,
|
|
213
|
+
tokensUsed: response.usage?.total_tokens,
|
|
214
|
+
promptTokens: response.usage?.input_tokens,
|
|
215
|
+
completionTokens: response.usage?.output_tokens,
|
|
216
|
+
},
|
|
217
|
+
structured,
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
// Fall back to regular chat completions API if JSON mode not enabled
|
|
145
221
|
const response = await this.client.chat.completions.create(params);
|
|
146
222
|
const message = response.choices[0]?.message?.content;
|
|
147
223
|
if (!message) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../src/providers/OpenAIProvider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../src/providers/OpenAIProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterProvider.d.ts","sourceRoot":"","sources":["../../src/providers/OpenRouterProvider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,mCAAmC,CAAC;AAEhG,OAAO,KAAK,EACV,UAAU,
|
|
1
|
+
{"version":3,"file":"OpenRouterProvider.d.ts","sourceRoot":"","sources":["../../src/providers/OpenRouterProvider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,mCAAmC,CAAC;AAEhG,OAAO,KAAK,EACV,UAAU,EAEV,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAQpB;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2FAA2F;IAC3F,MAAM,CAAC,EAAE,OAAO,CACd,IAAI,CAAC,sCAAsC,EAAE,OAAO,GAAG,UAAU,CAAC,CACnE,CAAC;IACF,0BAA0B;IAC1B,WAAW,CAAC,EAAE;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAyED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,UAAU;IACnD,SAAgB,IAAI,gBAAgB;IACpC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAW;IAC/B,OAAO,CAAC,MAAM,CAAC,CAEb;IACF,OAAO,CAAC,WAAW,CAAuC;gBAE9C,OAAO,EAAE,yBAAyB;IAsCxC,eAAe,CAAC,QAAQ,GAAG,OAAO,EACtC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACpC,OAAO,CAAC,qBAAqB,CAAC;YAInB,kBAAkB;YA2DlB,iBAAiB;CAkIhC"}
|
|
@@ -149,6 +149,82 @@ export class OpenRouterProvider {
|
|
|
149
149
|
if (input.parameters?.maxOutputTokens !== undefined) {
|
|
150
150
|
params.max_tokens = input.parameters.maxOutputTokens;
|
|
151
151
|
}
|
|
152
|
+
// Use structured output API if JSON mode is enabled
|
|
153
|
+
if (input.parameters?.jsonMode) {
|
|
154
|
+
// Define the JSON schema for agent response
|
|
155
|
+
const agentResponseSchema = {
|
|
156
|
+
type: "object",
|
|
157
|
+
properties: {
|
|
158
|
+
message: {
|
|
159
|
+
type: "string",
|
|
160
|
+
description: "The actual message to send to the user",
|
|
161
|
+
},
|
|
162
|
+
route: {
|
|
163
|
+
type: ["string", "null"],
|
|
164
|
+
description: "The title of the route chosen (or null if no specific route)",
|
|
165
|
+
},
|
|
166
|
+
state: {
|
|
167
|
+
type: ["string", "null"],
|
|
168
|
+
description: "The current state within the route (or null if not in a route)",
|
|
169
|
+
},
|
|
170
|
+
toolCalls: {
|
|
171
|
+
type: "array",
|
|
172
|
+
items: {
|
|
173
|
+
type: "object",
|
|
174
|
+
properties: {
|
|
175
|
+
toolName: {
|
|
176
|
+
type: "string",
|
|
177
|
+
description: "Name of the tool to call",
|
|
178
|
+
},
|
|
179
|
+
arguments: {
|
|
180
|
+
type: "object",
|
|
181
|
+
description: "Arguments to pass to the tool",
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
required: ["toolName", "arguments"],
|
|
185
|
+
},
|
|
186
|
+
description: "Tool calls the agent wants to execute",
|
|
187
|
+
},
|
|
188
|
+
reasoning: {
|
|
189
|
+
type: "string",
|
|
190
|
+
description: "Optional: Internal reasoning for this response",
|
|
191
|
+
},
|
|
192
|
+
},
|
|
193
|
+
required: ["message"],
|
|
194
|
+
additionalProperties: false,
|
|
195
|
+
};
|
|
196
|
+
const response = await this.client.responses.parse({
|
|
197
|
+
model,
|
|
198
|
+
instructions: input.prompt,
|
|
199
|
+
input: "",
|
|
200
|
+
reasoning: {
|
|
201
|
+
effort: input.parameters?.reasoning?.effort || "low",
|
|
202
|
+
},
|
|
203
|
+
text: {
|
|
204
|
+
format: {
|
|
205
|
+
type: "json_schema",
|
|
206
|
+
name: "agentResponseSchema",
|
|
207
|
+
schema: agentResponseSchema,
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
});
|
|
211
|
+
if (!response.output_parsed) {
|
|
212
|
+
throw new Error("No parsed output returned from OpenRouter");
|
|
213
|
+
}
|
|
214
|
+
const structured = response.output_parsed;
|
|
215
|
+
const message = structured.message;
|
|
216
|
+
return {
|
|
217
|
+
message,
|
|
218
|
+
metadata: {
|
|
219
|
+
model: response.model,
|
|
220
|
+
tokensUsed: response.usage?.total_tokens,
|
|
221
|
+
promptTokens: response.usage?.input_tokens,
|
|
222
|
+
completionTokens: response.usage?.output_tokens,
|
|
223
|
+
},
|
|
224
|
+
structured,
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
// Fall back to regular chat completions API if JSON mode not enabled
|
|
152
228
|
const response = await this.client.chat.completions.create(params);
|
|
153
229
|
const message = response.choices[0]?.message?.content;
|
|
154
230
|
if (!message) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterProvider.js","sourceRoot":"","sources":["../../src/providers/OpenRouterProvider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenRouterProvider.js","sourceRoot":"","sources":["../../src/providers/OpenRouterProvider.ts"],"names":[],"mappings":"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"}
|
package/dist/types/ai.d.ts
CHANGED
|
@@ -42,10 +42,32 @@ export interface GenerateMessageInput<TContext = unknown> {
|
|
|
42
42
|
maxOutputTokens?: number;
|
|
43
43
|
/** Reasoning/thinking configuration */
|
|
44
44
|
reasoning?: ReasoningConfig;
|
|
45
|
+
/** Enable structured JSON output mode */
|
|
46
|
+
jsonMode?: boolean;
|
|
45
47
|
};
|
|
46
48
|
/** Abort signal for cancellation */
|
|
47
49
|
signal?: AbortSignal;
|
|
48
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Structured response from AI containing message and metadata
|
|
53
|
+
*/
|
|
54
|
+
export interface AgentStructuredResponse {
|
|
55
|
+
/** The actual message to send to the user */
|
|
56
|
+
message: string;
|
|
57
|
+
/** Route chosen by the agent (route title or null if no route) */
|
|
58
|
+
route?: string | null;
|
|
59
|
+
/** Current state within the route (state description or null) */
|
|
60
|
+
state?: string | null;
|
|
61
|
+
/** Tool calls the agent wants to execute */
|
|
62
|
+
toolCalls?: Array<{
|
|
63
|
+
/** Name of the tool to call */
|
|
64
|
+
toolName: string;
|
|
65
|
+
/** Arguments to pass to the tool */
|
|
66
|
+
arguments: Record<string, unknown>;
|
|
67
|
+
}>;
|
|
68
|
+
/** Additional reasoning or internal thoughts (optional) */
|
|
69
|
+
reasoning?: string;
|
|
70
|
+
}
|
|
49
71
|
/**
|
|
50
72
|
* Output from AI message generation
|
|
51
73
|
*/
|
|
@@ -63,6 +85,8 @@ export interface GenerateMessageOutput {
|
|
|
63
85
|
/** Additional provider-specific data */
|
|
64
86
|
[key: string]: unknown;
|
|
65
87
|
};
|
|
88
|
+
/** Structured response data (when JSON mode is enabled) */
|
|
89
|
+
structured?: AgentStructuredResponse;
|
|
66
90
|
}
|
|
67
91
|
/**
|
|
68
92
|
* AI provider interface (strategy pattern)
|
package/dist/types/ai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/types/ai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1C;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB,CAAC,QAAQ,GAAG,OAAO;IACtD,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,mBAAmB;IACnB,OAAO,EAAE,QAAQ,CAAC;IAClB,uCAAuC;IACvC,UAAU,CAAC,EAAE;QACX,wCAAwC;QACxC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uCAAuC;QACvC,SAAS,CAAC,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/types/ai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC1C;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB,CAAC,QAAQ,GAAG,OAAO;IACtD,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,mBAAmB;IACnB,OAAO,EAAE,QAAQ,CAAC;IAClB,uCAAuC;IACvC,UAAU,CAAC,EAAE;QACX,wCAAwC;QACxC,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uCAAuC;QACvC,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,yCAAyC;QACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,oCAAoC;IACpC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,+BAA+B;QAC/B,QAAQ,EAAE,MAAM,CAAC;QACjB,oCAAoC;QACpC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,CAAC,CAAC;IACH,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE;QACT,iBAAiB;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,sBAAsB;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,wCAAwC;QACxC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,2DAA2D;IAC3D,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,eAAe,CAAC,QAAQ,GAAG,OAAO,EAChC,KAAK,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GACpC,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACnC"}
|
package/docs/API_REFERENCE.md
CHANGED
|
@@ -46,17 +46,58 @@ Registers a domain with tools/methods. Returns `this` for chaining.
|
|
|
46
46
|
|
|
47
47
|
##### `respond(input: RespondInput<TContext>): Promise<RespondOutput>`
|
|
48
48
|
|
|
49
|
-
Generates an AI response based on conversation history.
|
|
49
|
+
Generates an AI response based on conversation history with structured output including route, state, and tool call information.
|
|
50
50
|
|
|
51
51
|
```typescript
|
|
52
52
|
interface RespondInput<TContext> {
|
|
53
53
|
history: Event[];
|
|
54
|
+
state?: StateRef;
|
|
54
55
|
contextOverride?: Partial<TContext>;
|
|
56
|
+
signal?: AbortSignal;
|
|
55
57
|
}
|
|
56
58
|
|
|
57
59
|
interface RespondOutput {
|
|
60
|
+
/** The message to send to the user */
|
|
58
61
|
message: string;
|
|
59
|
-
|
|
62
|
+
/** Route chosen by the agent (if applicable) */
|
|
63
|
+
route?: { id: string; title: string };
|
|
64
|
+
/** Current state within the route (if applicable) */
|
|
65
|
+
state?: { id: string; description?: string };
|
|
66
|
+
/** Tool calls requested by the agent */
|
|
67
|
+
toolCalls?: Array<{
|
|
68
|
+
toolName: string;
|
|
69
|
+
arguments: Record<string, unknown>;
|
|
70
|
+
}>;
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Enhanced Response Information:**
|
|
75
|
+
|
|
76
|
+
- Uses structured JSON output via `responses.parse()` API (OpenAI/OpenRouter) or JSON mode (Gemini)
|
|
77
|
+
- Automatically detects which route the agent chose based on conversation context
|
|
78
|
+
- Provides current state information for tracking conversation flow
|
|
79
|
+
- Returns tool calls for execution in your application
|
|
80
|
+
|
|
81
|
+
**Example:**
|
|
82
|
+
|
|
83
|
+
```typescript
|
|
84
|
+
const response = await agent.respond({
|
|
85
|
+
history: conversationHistory,
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
// Save to database
|
|
89
|
+
await db.agentMessages.create({
|
|
90
|
+
sessionId: session.id,
|
|
91
|
+
role: "agent",
|
|
92
|
+
content: response.message,
|
|
93
|
+
route: response.route?.title,
|
|
94
|
+
state: response.state?.description,
|
|
95
|
+
toolCalls: response.toolCalls || [],
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
// Check if conversation is complete
|
|
99
|
+
if (response.route?.title === END_ROUTE) {
|
|
100
|
+
await markSessionComplete(session.id);
|
|
60
101
|
}
|
|
61
102
|
```
|
|
62
103
|
|
|
@@ -432,6 +473,34 @@ interface ToolResult<TReturn> {
|
|
|
432
473
|
|
|
433
474
|
---
|
|
434
475
|
|
|
476
|
+
## Types
|
|
477
|
+
|
|
478
|
+
### `AgentStructuredResponse`
|
|
479
|
+
|
|
480
|
+
The structured response format returned by AI providers when JSON mode is enabled.
|
|
481
|
+
|
|
482
|
+
```typescript
|
|
483
|
+
interface AgentStructuredResponse {
|
|
484
|
+
/** The actual message to send to the user */
|
|
485
|
+
message: string;
|
|
486
|
+
/** Route chosen by the agent (route title or null if no route) */
|
|
487
|
+
route?: string | null;
|
|
488
|
+
/** Current state within the route (state description or null) */
|
|
489
|
+
state?: string | null;
|
|
490
|
+
/** Tool calls the agent wants to execute */
|
|
491
|
+
toolCalls?: Array<{
|
|
492
|
+
toolName: string;
|
|
493
|
+
arguments: Record<string, unknown>;
|
|
494
|
+
}>;
|
|
495
|
+
/** Additional reasoning or internal thoughts (optional) */
|
|
496
|
+
reasoning?: string;
|
|
497
|
+
}
|
|
498
|
+
```
|
|
499
|
+
|
|
500
|
+
This type represents the structured JSON output that AI providers return when using the enhanced response format. The `Agent.respond()` method automatically parses this and returns a more convenient format.
|
|
501
|
+
|
|
502
|
+
---
|
|
503
|
+
|
|
435
504
|
## Constants
|
|
436
505
|
|
|
437
506
|
### `END_ROUTE`
|
package/package.json
CHANGED
package/src/core/Agent.ts
CHANGED
|
@@ -175,7 +175,12 @@ export class Agent<TContext = unknown> {
|
|
|
175
175
|
state?: StateRef;
|
|
176
176
|
contextOverride?: Partial<TContext>;
|
|
177
177
|
signal?: AbortSignal;
|
|
178
|
-
}): Promise<{
|
|
178
|
+
}): Promise<{
|
|
179
|
+
message: string;
|
|
180
|
+
route?: { id: string; title: string } | null;
|
|
181
|
+
state?: { id: string; description?: string } | null;
|
|
182
|
+
toolCalls?: Array<{ toolName: string; arguments: Record<string, unknown> }>;
|
|
183
|
+
}> {
|
|
179
184
|
const { history, contextOverride, signal } = params;
|
|
180
185
|
|
|
181
186
|
// Merge context
|
|
@@ -247,19 +252,70 @@ export class Agent<TContext = unknown> {
|
|
|
247
252
|
);
|
|
248
253
|
}
|
|
249
254
|
|
|
255
|
+
// Add JSON response schema instructions
|
|
256
|
+
promptBuilder.addJsonResponseSchema();
|
|
257
|
+
|
|
250
258
|
// Build final prompt
|
|
251
259
|
const prompt = promptBuilder.build();
|
|
252
260
|
|
|
253
|
-
// Generate message using AI provider
|
|
261
|
+
// Generate message using AI provider with JSON mode enabled
|
|
254
262
|
const result = await this.options.ai.generateMessage({
|
|
255
263
|
prompt,
|
|
256
264
|
history,
|
|
257
265
|
context: effectiveContext,
|
|
258
266
|
signal,
|
|
267
|
+
parameters: {
|
|
268
|
+
jsonMode: true,
|
|
269
|
+
},
|
|
259
270
|
});
|
|
260
271
|
|
|
272
|
+
// Parse structured response
|
|
273
|
+
let message = result.message;
|
|
274
|
+
let route: { id: string; title: string } | null = null;
|
|
275
|
+
let state: { id: string; description?: string } | null = null;
|
|
276
|
+
let toolCalls:
|
|
277
|
+
| Array<{ toolName: string; arguments: Record<string, unknown> }>
|
|
278
|
+
| undefined;
|
|
279
|
+
|
|
280
|
+
if (result.structured) {
|
|
281
|
+
// Extract data from structured response
|
|
282
|
+
message = result.structured.message || message;
|
|
283
|
+
|
|
284
|
+
// Find route by title
|
|
285
|
+
if (result.structured.route) {
|
|
286
|
+
const foundRoute = this.routes.find(
|
|
287
|
+
(r) => r.title === result.structured?.route
|
|
288
|
+
);
|
|
289
|
+
if (foundRoute) {
|
|
290
|
+
route = {
|
|
291
|
+
id: foundRoute.id,
|
|
292
|
+
title: foundRoute.title,
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
// Create state reference if provided
|
|
298
|
+
if (result.structured.state) {
|
|
299
|
+
state = {
|
|
300
|
+
id: "dynamic_state",
|
|
301
|
+
description: result.structured.state,
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
// Extract tool calls
|
|
306
|
+
if (
|
|
307
|
+
result.structured.toolCalls &&
|
|
308
|
+
result.structured.toolCalls.length > 0
|
|
309
|
+
) {
|
|
310
|
+
toolCalls = result.structured.toolCalls;
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
|
|
261
314
|
return {
|
|
262
|
-
message
|
|
315
|
+
message,
|
|
316
|
+
route: route || undefined,
|
|
317
|
+
state: state || undefined,
|
|
318
|
+
toolCalls,
|
|
263
319
|
};
|
|
264
320
|
}
|
|
265
321
|
|
|
@@ -460,6 +460,45 @@ These routes represent different paths the conversation can take. Choose the mos
|
|
|
460
460
|
return this;
|
|
461
461
|
}
|
|
462
462
|
|
|
463
|
+
/**
|
|
464
|
+
* Add JSON response schema instructions
|
|
465
|
+
*/
|
|
466
|
+
addJsonResponseSchema(): this {
|
|
467
|
+
const schema = {
|
|
468
|
+
message: "The actual message to send to the user",
|
|
469
|
+
route: "The title of the route you chose (or null if no specific route)",
|
|
470
|
+
state: "The current state within the route (or null if not in a route)",
|
|
471
|
+
toolCalls: [
|
|
472
|
+
{
|
|
473
|
+
toolName: "Name of the tool to call",
|
|
474
|
+
arguments: "Object with tool arguments",
|
|
475
|
+
},
|
|
476
|
+
],
|
|
477
|
+
reasoning: "Optional: Your internal reasoning for this response",
|
|
478
|
+
};
|
|
479
|
+
|
|
480
|
+
this.addSection(
|
|
481
|
+
"json_response_format",
|
|
482
|
+
`IMPORTANT: You must respond with valid JSON in the following format:
|
|
483
|
+
|
|
484
|
+
\`\`\`json
|
|
485
|
+
${JSON.stringify(schema, null, 2)}
|
|
486
|
+
\`\`\`
|
|
487
|
+
|
|
488
|
+
Instructions:
|
|
489
|
+
- "message": The actual message to send to the user (required)
|
|
490
|
+
- "route": If you chose a specific conversation route, provide its exact title. If not in a route, use null.
|
|
491
|
+
- "state": The current state within the chosen route. If not in a route or at initial state, use null.
|
|
492
|
+
- "toolCalls": If you need to call any tools, provide an array of tool calls. If no tools needed, use an empty array or omit.
|
|
493
|
+
- "reasoning": Optional field for your internal thinking process.
|
|
494
|
+
|
|
495
|
+
Your entire response must be valid JSON. Do not include any text before or after the JSON object.`,
|
|
496
|
+
{},
|
|
497
|
+
SectionStatus.ACTIVE
|
|
498
|
+
);
|
|
499
|
+
return this;
|
|
500
|
+
}
|
|
501
|
+
|
|
463
502
|
// Helper methods
|
|
464
503
|
|
|
465
504
|
private formatTemplate(
|
package/src/index.ts
CHANGED
|
@@ -13,6 +13,7 @@ import type {
|
|
|
13
13
|
AiProvider,
|
|
14
14
|
GenerateMessageInput,
|
|
15
15
|
GenerateMessageOutput,
|
|
16
|
+
AgentStructuredResponse,
|
|
16
17
|
} from "@/types/ai";
|
|
17
18
|
import { withTimeoutAndRetry } from "@/utils/retry";
|
|
18
19
|
|
|
@@ -187,11 +188,17 @@ export class GeminiProvider implements AiProvider {
|
|
|
187
188
|
input: GenerateMessageInput<TContext>
|
|
188
189
|
): Promise<GenerateMessageOutput> {
|
|
189
190
|
const operation = async (): Promise<GenerateMessageOutput> => {
|
|
191
|
+
// Enable JSON mode if requested
|
|
192
|
+
const configOverride: Partial<GenerateContentConfig> = { ...this.config };
|
|
193
|
+
if (input.parameters?.jsonMode) {
|
|
194
|
+
configOverride.responseMimeType = "application/json";
|
|
195
|
+
}
|
|
196
|
+
|
|
190
197
|
const response: GenerateContentResponse =
|
|
191
198
|
await this.genAI.models.generateContent({
|
|
192
199
|
model,
|
|
193
200
|
contents: input.prompt,
|
|
194
|
-
config:
|
|
201
|
+
config: configOverride,
|
|
195
202
|
});
|
|
196
203
|
|
|
197
204
|
const message = response.text;
|
|
@@ -199,6 +206,17 @@ export class GeminiProvider implements AiProvider {
|
|
|
199
206
|
throw new Error("No response from Gemini");
|
|
200
207
|
}
|
|
201
208
|
|
|
209
|
+
// Parse JSON response if JSON mode was enabled
|
|
210
|
+
let structured;
|
|
211
|
+
if (input.parameters?.jsonMode) {
|
|
212
|
+
try {
|
|
213
|
+
structured = JSON.parse(message) as AgentStructuredResponse;
|
|
214
|
+
} catch (error) {
|
|
215
|
+
console.warn("[GEMINI] Failed to parse JSON response:", error);
|
|
216
|
+
// Fall back to treating the message as plain text
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
202
220
|
return {
|
|
203
221
|
message,
|
|
204
222
|
metadata: {
|
|
@@ -207,6 +225,7 @@ export class GeminiProvider implements AiProvider {
|
|
|
207
225
|
promptTokens: response.usageMetadata?.promptTokenCount,
|
|
208
226
|
completionTokens: response.usageMetadata?.candidatesTokenCount,
|
|
209
227
|
},
|
|
228
|
+
structured,
|
|
210
229
|
};
|
|
211
230
|
};
|
|
212
231
|
|
|
@@ -9,6 +9,7 @@ import type {
|
|
|
9
9
|
AiProvider,
|
|
10
10
|
GenerateMessageInput,
|
|
11
11
|
GenerateMessageOutput,
|
|
12
|
+
AgentStructuredResponse,
|
|
12
13
|
} from "@/types/ai";
|
|
13
14
|
import { withTimeoutAndRetry } from "@/utils/retry";
|
|
14
15
|
|
|
@@ -243,6 +244,89 @@ export class OpenAIProvider implements AiProvider {
|
|
|
243
244
|
params.max_tokens = input.parameters.maxOutputTokens;
|
|
244
245
|
}
|
|
245
246
|
|
|
247
|
+
// Use structured output API if JSON mode is enabled
|
|
248
|
+
if (input.parameters?.jsonMode) {
|
|
249
|
+
// Define the JSON schema for agent response
|
|
250
|
+
const agentResponseSchema = {
|
|
251
|
+
type: "object",
|
|
252
|
+
properties: {
|
|
253
|
+
message: {
|
|
254
|
+
type: "string",
|
|
255
|
+
description: "The actual message to send to the user",
|
|
256
|
+
},
|
|
257
|
+
route: {
|
|
258
|
+
type: ["string", "null"],
|
|
259
|
+
description:
|
|
260
|
+
"The title of the route chosen (or null if no specific route)",
|
|
261
|
+
},
|
|
262
|
+
state: {
|
|
263
|
+
type: ["string", "null"],
|
|
264
|
+
description:
|
|
265
|
+
"The current state within the route (or null if not in a route)",
|
|
266
|
+
},
|
|
267
|
+
toolCalls: {
|
|
268
|
+
type: "array",
|
|
269
|
+
items: {
|
|
270
|
+
type: "object",
|
|
271
|
+
properties: {
|
|
272
|
+
toolName: {
|
|
273
|
+
type: "string",
|
|
274
|
+
description: "Name of the tool to call",
|
|
275
|
+
},
|
|
276
|
+
arguments: {
|
|
277
|
+
type: "object",
|
|
278
|
+
description: "Arguments to pass to the tool",
|
|
279
|
+
},
|
|
280
|
+
},
|
|
281
|
+
required: ["toolName", "arguments"],
|
|
282
|
+
},
|
|
283
|
+
description: "Tool calls the agent wants to execute",
|
|
284
|
+
},
|
|
285
|
+
reasoning: {
|
|
286
|
+
type: "string",
|
|
287
|
+
description: "Optional: Internal reasoning for this response",
|
|
288
|
+
},
|
|
289
|
+
},
|
|
290
|
+
required: ["message"],
|
|
291
|
+
additionalProperties: false,
|
|
292
|
+
};
|
|
293
|
+
|
|
294
|
+
const response = await this.client.responses.parse({
|
|
295
|
+
model,
|
|
296
|
+
instructions: input.prompt,
|
|
297
|
+
input: "",
|
|
298
|
+
reasoning: {
|
|
299
|
+
effort: input.parameters?.reasoning?.effort || "low",
|
|
300
|
+
},
|
|
301
|
+
text: {
|
|
302
|
+
format: {
|
|
303
|
+
type: "json_schema",
|
|
304
|
+
name: "agentResponseSchema",
|
|
305
|
+
schema: agentResponseSchema,
|
|
306
|
+
},
|
|
307
|
+
},
|
|
308
|
+
});
|
|
309
|
+
|
|
310
|
+
if (!response.output_parsed) {
|
|
311
|
+
throw new Error("No parsed output returned from OpenAI");
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
const structured = response.output_parsed as AgentStructuredResponse;
|
|
315
|
+
const message = structured.message;
|
|
316
|
+
|
|
317
|
+
return {
|
|
318
|
+
message,
|
|
319
|
+
metadata: {
|
|
320
|
+
model: response.model,
|
|
321
|
+
tokensUsed: response.usage?.total_tokens,
|
|
322
|
+
promptTokens: response.usage?.input_tokens,
|
|
323
|
+
completionTokens: response.usage?.output_tokens,
|
|
324
|
+
},
|
|
325
|
+
structured,
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
// Fall back to regular chat completions API if JSON mode not enabled
|
|
246
330
|
const response = await this.client.chat.completions.create(params);
|
|
247
331
|
|
|
248
332
|
const message = response.choices[0]?.message?.content;
|
|
@@ -8,6 +8,7 @@ import type { ChatCompletionCreateParamsNonStreaming } from "openai/resources/ch
|
|
|
8
8
|
|
|
9
9
|
import type {
|
|
10
10
|
AiProvider,
|
|
11
|
+
AgentStructuredResponse,
|
|
11
12
|
GenerateMessageInput,
|
|
12
13
|
GenerateMessageOutput,
|
|
13
14
|
} from "@/types/ai";
|
|
@@ -253,6 +254,89 @@ export class OpenRouterProvider implements AiProvider {
|
|
|
253
254
|
params.max_tokens = input.parameters.maxOutputTokens;
|
|
254
255
|
}
|
|
255
256
|
|
|
257
|
+
// Use structured output API if JSON mode is enabled
|
|
258
|
+
if (input.parameters?.jsonMode) {
|
|
259
|
+
// Define the JSON schema for agent response
|
|
260
|
+
const agentResponseSchema = {
|
|
261
|
+
type: "object",
|
|
262
|
+
properties: {
|
|
263
|
+
message: {
|
|
264
|
+
type: "string",
|
|
265
|
+
description: "The actual message to send to the user",
|
|
266
|
+
},
|
|
267
|
+
route: {
|
|
268
|
+
type: ["string", "null"],
|
|
269
|
+
description:
|
|
270
|
+
"The title of the route chosen (or null if no specific route)",
|
|
271
|
+
},
|
|
272
|
+
state: {
|
|
273
|
+
type: ["string", "null"],
|
|
274
|
+
description:
|
|
275
|
+
"The current state within the route (or null if not in a route)",
|
|
276
|
+
},
|
|
277
|
+
toolCalls: {
|
|
278
|
+
type: "array",
|
|
279
|
+
items: {
|
|
280
|
+
type: "object",
|
|
281
|
+
properties: {
|
|
282
|
+
toolName: {
|
|
283
|
+
type: "string",
|
|
284
|
+
description: "Name of the tool to call",
|
|
285
|
+
},
|
|
286
|
+
arguments: {
|
|
287
|
+
type: "object",
|
|
288
|
+
description: "Arguments to pass to the tool",
|
|
289
|
+
},
|
|
290
|
+
},
|
|
291
|
+
required: ["toolName", "arguments"],
|
|
292
|
+
},
|
|
293
|
+
description: "Tool calls the agent wants to execute",
|
|
294
|
+
},
|
|
295
|
+
reasoning: {
|
|
296
|
+
type: "string",
|
|
297
|
+
description: "Optional: Internal reasoning for this response",
|
|
298
|
+
},
|
|
299
|
+
},
|
|
300
|
+
required: ["message"],
|
|
301
|
+
additionalProperties: false,
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
const response = await this.client.responses.parse({
|
|
305
|
+
model,
|
|
306
|
+
instructions: input.prompt,
|
|
307
|
+
input: "",
|
|
308
|
+
reasoning: {
|
|
309
|
+
effort: input.parameters?.reasoning?.effort || "low",
|
|
310
|
+
},
|
|
311
|
+
text: {
|
|
312
|
+
format: {
|
|
313
|
+
type: "json_schema",
|
|
314
|
+
name: "agentResponseSchema",
|
|
315
|
+
schema: agentResponseSchema,
|
|
316
|
+
},
|
|
317
|
+
},
|
|
318
|
+
});
|
|
319
|
+
|
|
320
|
+
if (!response.output_parsed) {
|
|
321
|
+
throw new Error("No parsed output returned from OpenRouter");
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
const structured = response.output_parsed as AgentStructuredResponse;
|
|
325
|
+
const message = structured.message;
|
|
326
|
+
|
|
327
|
+
return {
|
|
328
|
+
message,
|
|
329
|
+
metadata: {
|
|
330
|
+
model: response.model,
|
|
331
|
+
tokensUsed: response.usage?.total_tokens,
|
|
332
|
+
promptTokens: response.usage?.input_tokens,
|
|
333
|
+
completionTokens: response.usage?.output_tokens,
|
|
334
|
+
},
|
|
335
|
+
structured,
|
|
336
|
+
};
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// Fall back to regular chat completions API if JSON mode not enabled
|
|
256
340
|
const response = await this.client.chat.completions.create(params);
|
|
257
341
|
|
|
258
342
|
const message = response.choices[0]?.message?.content;
|
package/src/types/ai.ts
CHANGED
|
@@ -45,11 +45,34 @@ export interface GenerateMessageInput<TContext = unknown> {
|
|
|
45
45
|
maxOutputTokens?: number;
|
|
46
46
|
/** Reasoning/thinking configuration */
|
|
47
47
|
reasoning?: ReasoningConfig;
|
|
48
|
+
/** Enable structured JSON output mode */
|
|
49
|
+
jsonMode?: boolean;
|
|
48
50
|
};
|
|
49
51
|
/** Abort signal for cancellation */
|
|
50
52
|
signal?: AbortSignal;
|
|
51
53
|
}
|
|
52
54
|
|
|
55
|
+
/**
|
|
56
|
+
* Structured response from AI containing message and metadata
|
|
57
|
+
*/
|
|
58
|
+
export interface AgentStructuredResponse {
|
|
59
|
+
/** The actual message to send to the user */
|
|
60
|
+
message: string;
|
|
61
|
+
/** Route chosen by the agent (route title or null if no route) */
|
|
62
|
+
route?: string | null;
|
|
63
|
+
/** Current state within the route (state description or null) */
|
|
64
|
+
state?: string | null;
|
|
65
|
+
/** Tool calls the agent wants to execute */
|
|
66
|
+
toolCalls?: Array<{
|
|
67
|
+
/** Name of the tool to call */
|
|
68
|
+
toolName: string;
|
|
69
|
+
/** Arguments to pass to the tool */
|
|
70
|
+
arguments: Record<string, unknown>;
|
|
71
|
+
}>;
|
|
72
|
+
/** Additional reasoning or internal thoughts (optional) */
|
|
73
|
+
reasoning?: string;
|
|
74
|
+
}
|
|
75
|
+
|
|
53
76
|
/**
|
|
54
77
|
* Output from AI message generation
|
|
55
78
|
*/
|
|
@@ -67,6 +90,8 @@ export interface GenerateMessageOutput {
|
|
|
67
90
|
/** Additional provider-specific data */
|
|
68
91
|
[key: string]: unknown;
|
|
69
92
|
};
|
|
93
|
+
/** Structured response data (when JSON mode is enabled) */
|
|
94
|
+
structured?: AgentStructuredResponse;
|
|
70
95
|
}
|
|
71
96
|
|
|
72
97
|
/**
|