concevent-ai-agent-sdk 3.0.7 → 3.1.0

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/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # concevent-ai-agent-sdk
2
2
 
3
- A framework-agnostic AI Agent SDK for building intelligent conversational agents with tool calling, automatic conversation summarization, and comprehensive event handling. Built on top of OpenAI-compatible APIs (including OpenRouter).
3
+ A framework-agnostic AI Agent SDK for building intelligent conversational agents with tool calling, automatic conversation summarization, and comprehensive event handling. **Designed and built specifically for [OpenRouter](https://openrouter.ai/)**, providing access to a wide range of AI models (Claude, GPT-4, Gemini, Llama, and more) through a single, unified API.
4
+
5
+ > **Why OpenRouter?** OpenRouter provides access to 200+ AI models from multiple providers (Anthropic, OpenAI, Google, Meta, etc.) through a single API endpoint and consistent interface. This SDK leverages OpenRouter's OpenAI-compatible API to give you flexibility in model selection while maintaining a consistent development experience.
4
6
 
5
7
  ## Features
6
8
 
@@ -107,6 +109,17 @@ console.log(result.message);
107
109
 
108
110
  ## Core Concepts
109
111
 
112
+ ### OpenRouter Integration
113
+
114
+ This SDK is built specifically for OpenRouter and uses it as the default API endpoint. Key benefits:
115
+
116
+ - **Model Flexibility**: Access Claude, GPT-4, Gemini, Llama, Mistral, and 200+ other models through a single API
117
+ - **Provider Fallbacks**: OpenRouter automatically handles provider outages and rate limits
118
+ - **Unified Billing**: One API key, one billing relationship for all models
119
+ - **Consistent API**: OpenAI-compatible API means familiar patterns and easy migration
120
+
121
+ The SDK defaults to `https://openrouter.ai/api/v1` as the base URL. Model names follow OpenRouter's format (e.g., `anthropic/claude-3.5-sonnet`, `openai/gpt-4o`, `google/gemini-pro`).
122
+
110
123
  ### Agent
111
124
 
112
125
  An Agent is the main interface for interacting with AI models. It manages conversation history, executes tools, handles token usage tracking, and provides automatic summarization when context limits are reached.
@@ -144,9 +157,9 @@ const agent = createAgent(config: AgentConfig): Agent;
144
157
  | `model` | `string` | ✅ | - | Model identifier (e.g., `'anthropic/claude-3.5-sonnet'`) |
145
158
  | `systemPrompts` | `string[]` | ✅ | - | Array of system prompt messages |
146
159
  | `tools` | `ToolDefinition[]` | ✅ | - | Array of tool definitions |
147
- | `baseURL` | `string` | ❌ | OpenRouter default | Custom API base URL |
160
+ | `baseURL` | `string` | ❌ | `https://openrouter.ai/api/v1` | API base URL (defaults to OpenRouter) |
148
161
  | `temperature` | `number` | ❌ | `0.1` | Sampling temperature (0-2) |
149
- | `reasoningEffort` | `'low' \| 'medium' \| 'high'` | ❌ | `'high'` | Reasoning effort level for supported models |
162
+ | `reasoning` | `ReasoningConfig \| ReasoningEffort \| false` | ❌ | `{ enabled: true }` | Reasoning configuration (see below) |
150
163
  | `maxIterations` | `number` | ❌ | `50` | Maximum tool execution iterations per chat |
151
164
  | `stream` | `boolean` | ❌ | `true` | Enable streaming responses with delta callbacks |
152
165
  | `summarization` | `SummarizationConfig` | ❌ | `{ enabled: true }` | Summarization settings |
@@ -158,6 +171,50 @@ const agent = createAgent(config: AgentConfig): Agent;
158
171
  | `responseFormat` | `ResponseFormatConfig` | ❌ | `undefined` (text) | Structured output format (text, json_object, json_schema) |
159
172
  | `middleware` | `Middleware[]` | ❌ | `[]` | Middleware array for intercepting agent behavior |
160
173
 
174
+ #### ReasoningConfig
175
+
176
+ Controls model reasoning behavior. **By default, reasoning is enabled** with the model's default settings.
177
+
178
+ ```typescript
179
+ // Effort levels
180
+ type ReasoningEffort = 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh';
181
+
182
+ // Full configuration object
183
+ interface ReasoningConfig {
184
+ enabled?: boolean; // Enable/disable reasoning (default: true)
185
+ effort?: ReasoningEffort; // Reasoning effort level (let API choose if not specified)
186
+ maxTokens?: number; // Maximum tokens for reasoning
187
+ exclude?: boolean; // Hide reasoning from output (model still thinks)
188
+ }
189
+
190
+ // Usage examples:
191
+ createAgent({ /* default */ }); // Reasoning enabled with model defaults
192
+ createAgent({ reasoning: false }); // Explicitly disable reasoning
193
+ createAgent({ reasoning: 'high' }); // Shorthand for { effort: 'high' }
194
+ createAgent({ reasoning: { effort: 'medium' } }); // Specific effort level
195
+ createAgent({ reasoning: { effort: 'high', maxTokens: 2000 } }); // With token limit
196
+ createAgent({ reasoning: { exclude: true } }); // Hide reasoning from output
197
+ createAgent({ reasoning: { enabled: false } }); // Disable via config object
198
+ ```
199
+
200
+ **Model Compatibility:**
201
+ - Reasoning is enabled by default - models that don't support it typically ignore the parameter safely
202
+ - For models that error on reasoning params, use `reasoning: false`
203
+ - OpenAI o-series models support full reasoning configuration
204
+ - Anthropic Claude models support reasoning with `exclude` option
205
+
206
+ **Migration from v3.x:**
207
+ ```typescript
208
+ // Before (v3.x)
209
+ createAgent({ reasoningEffort: 'high' });
210
+
211
+ // After (v4.x)
212
+ createAgent({ reasoning: 'high' }); // Shorthand for specific effort
213
+ createAgent({ reasoning: { effort: 'high' } }); // Explicit config
214
+ createAgent({ reasoning: false }); // Disable reasoning
215
+ createAgent({ /* default */ }); // Enable with model defaults (recommended)
216
+ ```
217
+
161
218
  #### SummarizationConfig
162
219
 
163
220
  ```typescript
@@ -234,7 +291,7 @@ const agent = createAgent({
234
291
  model: "anthropic/claude-3.5-sonnet",
235
292
  baseURL: "https://openrouter.ai/api/v1",
236
293
  temperature: 0.7,
237
- reasoningEffort: "high",
294
+ reasoning: { effort: "high" }, // Or just "high" as shorthand, or false to disable
238
295
  maxIterations: 10,
239
296
  systemPrompts: [
240
297
  "You are a helpful assistant.",
@@ -1,4 +1,4 @@
1
- import type { AgentConfig, AgentCallbacks, AgentResult, ChatMessage, ToolExecutorContext, UsageMetadata } from '../types/index.js';
1
+ import type { AgentConfig, AgentCallbacks, AgentResult, ChatMessage, ToolExecutorContext, UsageMetadata, ChatOptions } from '../types/index.js';
2
2
  /**
3
3
  * Agent interface for AI chat interactions with tool calling capabilities.
4
4
  *
@@ -10,9 +10,21 @@ export interface Agent<TAppContext = Record<string, unknown>> {
10
10
  * @param message - The user's message
11
11
  * @param context - Execution context (appContext, abortSignal)
12
12
  * @param callbacks - Optional callbacks for streaming events
13
+ * @param options - Optional chat options (e.g., images for multimodal input)
13
14
  * @returns AgentResult with the response
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * // Text-only message
19
+ * await agent.chat('Hello', context);
20
+ *
21
+ * // Message with images
22
+ * await agent.chat('What is in this image?', context, {}, {
23
+ * images: [{ url: 'https://example.com/image.png' }]
24
+ * });
25
+ * ```
14
26
  */
15
- chat(message: string, context: ToolExecutorContext<TAppContext>, callbacks?: AgentCallbacks): Promise<AgentResult>;
27
+ chat(message: string, context: ToolExecutorContext<TAppContext>, callbacks?: AgentCallbacks, options?: ChatOptions): Promise<AgentResult>;
16
28
  abort(): void;
17
29
  getHistory(): ChatMessage[];
18
30
  setHistory(history: ChatMessage[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EAKd,MAAM,mBAAmB,CAAC;AA0E3B;;;;GAIG;AACH,MAAM,WAAW,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D;;;;;;OAMG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,cAAc,GACzB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,WAAW,EAAE,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,aAAa,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,KAAK,CAAC,WAAW,CAAC,CA6yBpB"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EAOb,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AA6I3B;;;;GAIG;AACH,MAAM,WAAW,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,cAAc,EAC1B,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,WAAW,EAAE,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,aAAa,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,KAAK,CAAC,WAAW,CAAC,CA+0BpB"}
@@ -13,6 +13,51 @@ import { MiddlewareExecutor } from './middleware.js';
13
13
  import { ResultStorage } from './result-storage.js';
14
14
  import { createReadResultTool } from '../tools/read-result.js';
15
15
  const DEFAULT_MAX_ITERATIONS = 50;
16
+ /**
17
+ * Normalizes the flexible reasoning config format to the API format.
18
+ *
19
+ * @param config - The reasoning config from AgentConfig
20
+ * @returns Normalized config object for API calls
21
+ *
22
+ * @example
23
+ * normalizeReasoningConfig(undefined) // { enabled: true } (default: enable reasoning)
24
+ * normalizeReasoningConfig(false) // { enabled: false }
25
+ * normalizeReasoningConfig('high') // { effort: 'high' }
26
+ * normalizeReasoningConfig({ effort: 'low', maxTokens: 1000 }) // { effort: 'low', max_tokens: 1000 }
27
+ */
28
+ function normalizeReasoningConfig(config) {
29
+ // undefined: Enable reasoning with default settings (let API choose effort level)
30
+ if (config === undefined) {
31
+ return { enabled: true };
32
+ }
33
+ // false: Explicitly disable reasoning
34
+ if (config === false) {
35
+ return { enabled: false };
36
+ }
37
+ // String shorthand: Convert to effort object
38
+ if (typeof config === 'string') {
39
+ return { effort: config };
40
+ }
41
+ // Full config object: Normalize field names
42
+ const normalized = {};
43
+ if (config.enabled !== undefined) {
44
+ normalized.enabled = config.enabled;
45
+ }
46
+ if (config.effort !== undefined) {
47
+ normalized.effort = config.effort;
48
+ }
49
+ if (config.maxTokens !== undefined) {
50
+ normalized.max_tokens = config.maxTokens;
51
+ }
52
+ if (config.exclude !== undefined) {
53
+ normalized.exclude = config.exclude;
54
+ }
55
+ // If the config object is empty (no fields set), enable reasoning with defaults
56
+ if (Object.keys(normalized).length === 0) {
57
+ return { enabled: true };
58
+ }
59
+ return normalized;
60
+ }
16
61
  /**
17
62
  * Schema for completion verification response.
18
63
  */
@@ -53,7 +98,8 @@ export function createAgent(config) {
53
98
  const resolveErrorMessage = createErrorMessageResolver(config.errorMessages);
54
99
  const maxIterations = config.maxIterations ?? DEFAULT_MAX_ITERATIONS;
55
100
  const temperature = config.temperature ?? 0.1;
56
- const reasoningEffort = config.reasoningEffort ?? 'high';
101
+ // Normalize reasoning config - undefined means don't send the parameter
102
+ const normalizedReasoning = normalizeReasoningConfig(config.reasoning);
57
103
  const contextLimitTokens = config.summarization?.contextLimitTokens ?? DEFAULT_CONTEXT_LIMIT_TOKENS;
58
104
  const summarizationEnabled = config.summarization?.enabled ?? true;
59
105
  const streamingEnabled = config.stream ?? true;
@@ -77,7 +123,7 @@ export function createAgent(config) {
77
123
  messages,
78
124
  tools: tools.length > 0 ? tools : undefined,
79
125
  temperature,
80
- reasoning_effort: reasoningEffort,
126
+ ...(normalizedReasoning && { reasoning: normalizedReasoning }),
81
127
  response_format: openAIResponseFormat,
82
128
  });
83
129
  return response;
@@ -142,7 +188,7 @@ export function createAgent(config) {
142
188
  messages,
143
189
  tools: tools.length > 0 ? tools : undefined,
144
190
  temperature,
145
- reasoning_effort: reasoningEffort,
191
+ ...(normalizedReasoning && { reasoning: normalizedReasoning }),
146
192
  stream: true,
147
193
  stream_options: { include_usage: true },
148
194
  response_format: openAIResponseFormat,
@@ -236,18 +282,40 @@ export function createAgent(config) {
236
282
  return null;
237
283
  }
238
284
  }
239
- async function attemptProcessMessage(userMessage, conversationHistory, context, callbacks, retryErrorTrace) {
285
+ /**
286
+ * Builds content parts for multimodal messages.
287
+ */
288
+ function buildContentParts(text, images) {
289
+ if (!images || images.length === 0) {
290
+ return undefined;
291
+ }
292
+ const parts = [{ type: 'text', text }];
293
+ for (const img of images) {
294
+ parts.push({
295
+ type: 'image_url',
296
+ image_url: {
297
+ url: img.url,
298
+ detail: img.detail,
299
+ },
300
+ });
301
+ }
302
+ return parts;
303
+ }
304
+ async function attemptProcessMessage(userMessage, conversationHistory, context, callbacks, retryErrorTrace, images) {
240
305
  const tools = convertFunctionDeclarationsToTools(toolExecutor.getToolDeclarations());
241
306
  const systemMessages = config.systemPrompts.map((content) => createSystemMessage(content));
242
307
  let currentHistory = [...conversationHistory];
243
308
  let currentMessage = userMessage;
309
+ let currentImages = images; // Track images for the current message (only used in first iteration)
244
310
  let iteration = 0;
245
311
  let latestUsage = {};
246
312
  let latestRequestId;
247
313
  let summarized = false;
314
+ // Build the user message with optional multimodal content
248
315
  const userChatMessage = {
249
316
  role: 'user',
250
317
  content: userMessage,
318
+ contentParts: buildContentParts(userMessage, images),
251
319
  timestamp: new Date(),
252
320
  };
253
321
  currentHistory.push(userChatMessage);
@@ -263,11 +331,13 @@ export function createAgent(config) {
263
331
  const historyForConversion = currentHistory[currentHistory.length - 1]?.role === 'user'
264
332
  ? currentHistory.slice(0, -1)
265
333
  : currentHistory;
334
+ // Only include images in the first iteration (subsequent iterations are follow-up text only)
335
+ const messageImages = iteration === 0 ? currentImages : undefined;
266
336
  const messages = [
267
337
  ...systemMessages,
268
338
  createAssistantMessage('I understand the current context. I am ready to help you with your requests.'),
269
339
  ...convertChatMessagesToOpenAI(historyForConversion),
270
- createUserMessage(currentMessage),
340
+ createUserMessage(currentMessage, messageImages),
271
341
  ];
272
342
  if (retryErrorTrace && iteration === 0) {
273
343
  messages.push(createSystemMessage(retryErrorTrace));
@@ -288,7 +358,7 @@ export function createAgent(config) {
288
358
  shouldSummarize(latestUsage.totalTokenCount, contextLimitTokens)) {
289
359
  callbacks.onSummarizationStart?.(currentHistory.length);
290
360
  logger.summarizationStart(currentHistory.length);
291
- const summaryResult = await summarizeConversation(currentHistory, client, config.summarization?.model || config.model, config.summarization || { enabled: true }, reasoningEffort, temperature, context.abortSignal);
361
+ const summaryResult = await summarizeConversation(currentHistory, client, config.summarization?.model || config.model, config.summarization || { enabled: true }, normalizedReasoning, temperature, context.abortSignal);
292
362
  if (!summaryResult.error && summaryResult.summary) {
293
363
  currentHistory = [createSummaryMessage(summaryResult.summary)];
294
364
  summarized = true;
@@ -518,7 +588,7 @@ export function createAgent(config) {
518
588
  // Retry all other errors
519
589
  return true;
520
590
  }
521
- async function chat(message, context, callbacks = {}) {
591
+ async function chat(message, context, callbacks = {}, options) {
522
592
  logger.chatStart(message, session.getHistory().length);
523
593
  const abortController = session.createAbortController();
524
594
  const contextWithAbort = {
@@ -526,6 +596,7 @@ export function createAgent(config) {
526
596
  abortSignal: context.abortSignal ?? abortController.signal,
527
597
  };
528
598
  let retryErrorTrace;
599
+ const images = options?.images;
529
600
  // Execute beforeChat middleware to potentially transform the message
530
601
  let processedMessage = message;
531
602
  if (middlewareExecutor.hasMiddleware()) {
@@ -538,7 +609,7 @@ export function createAgent(config) {
538
609
  }
539
610
  try {
540
611
  let result = await executeWithRetry(async () => {
541
- const attemptResult = await attemptProcessMessage(processedMessage, session.getHistory(), contextWithAbort, callbacks, retryErrorTrace);
612
+ const attemptResult = await attemptProcessMessage(processedMessage, session.getHistory(), contextWithAbort, callbacks, retryErrorTrace, images);
542
613
  return attemptResult;
543
614
  }, {
544
615
  config: retryConfig,
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,EACL,uBAAuB,EACvB,iCAAiC,EACjC,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,mBAAmB,GAAG,0OAA0O,CAAC;AAyCvQ,MAAM,UAAU,WAAW,CACzB,MAAgC;IAEhC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED,gCAAgC;IAChC,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,EAAE,YAAY,IAAI,8BAA8B,CAAC;IACzF,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,EAAE,eAAe,IAAI,iCAAiC,CAAC;IAElG,MAAM,MAAM,GAAG,sBAAsB,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,iBAAiB;KAC3B,CAAC,CAAC;IAEH,uDAAuD;IACvD,MAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,KAAK,KAAK,CAAC;IACrE,MAAM,aAAa,GAAG,oBAAoB,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjG,4EAA4E;IAC5E,MAAM,QAAQ,GAAkC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,IAAI,aAAa,EAAE,CAAC;QAClB,4EAA4E;QAC5E,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAgC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IACnC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAE7E,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,sBAAsB,CAAC;IACrE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC;IAC9C,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC;IACzD,MAAM,kBAAkB,GACtB,MAAM,CAAC,aAAa,EAAE,kBAAkB,IAAI,4BAA4B,CAAC;IAC3E,MAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,IAAI,IAAI,CAAC;IACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;IAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,qBAAqB,EAAE,cAAc,IAAI,uBAAuB,CAAC;IAC/F,MAAM,oBAAoB,GAAG,MAAM,CAAC,cAAc,CAAC;IACnD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAErE,mEAAmE;IACnE,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;QACrD,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,kBAAkB;QAC1B,IAAI,EAAE,yBAAyB;KAChC,CAAC,CAAC;IAEH,KAAK,UAAU,qBAAqB,CAClC,QAA8D,EAC9D,KAAmD,EACnD,WAAyB;QAEzB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACpD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,WAAW;YACX,gBAAgB,EAAE,eAAe;YACjC,eAAe,EAAE,oBAAoB;SACtC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,UAAU,qBAAqB,CAClC,QAA8D,EAC9D,KAAmD,EACnD,WAAyB;QASzB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAE3E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC;QACnD,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,IAAI,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAE7B,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,kBAAkB,CACvF,eAAsD,CAAC,SAA+B,EACtF,eAAsD,CAAC,iBAE3C,CACd,CAAC;QAEF,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,SAAS;YACT,QAAQ;YACR,eAAe;YACf,KAAK;YACL,SAAS,EAAE,QAAQ,CAAC,EAAE;SACvB,CAAC;IACJ,CAAC;IAED,SAAS,uBAAuB,CAC9B,GAAiC,EACjC,KAAuF;QAEvF,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC;QACzE,IAAI,KAAK,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI;YAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACvE,IAAI,KAAK,CAAC,QAAQ,EAAE,SAAS;YAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QACvF,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,iCAAiC,CACxC,GAAiC;QAEjC,MAAM,SAAS,GAA4D,EAAE,CAAC;QAC9E,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE;wBACR,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;wBAC3B,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;qBACtC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,UAAU,8BAA8B,CAC3C,QAA8D,EAC9D,KAAmD,EACnD,SAAyB,EACzB,WAAyB;QAEzB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAClD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,WAAW;YACX,gBAAgB,EAAE,eAAe;YACjC,MAAM,EAAE,IAAI;YACZ,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;YACvC,eAAe,EAAE,oBAAoB;SACtC,CAAC,CAAC;QAEH,IAAI,kBAAkB,GAAG,EAAE,CAAC;QAC5B,MAAM,2BAA2B,GAAsB,EAAE,CAAC;QAC1D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA2B,CAAC;QAChE,IAAI,UAA8C,CAAC;QACnD,IAAI,SAAS,GAAG,EAAE,CAAC;QAEnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;gBACb,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC;YACvB,CAAC;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;YACtC,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,MAAM,QAAQ,GAAG,KAA2C,CAAC;YAC7D,IAAI,QAAQ,CAAC,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC5E,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,iBAAsC,EAAE,CAAC;oBACrE,SAAS,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM,aAAa,GAAG,2BAA2B,CAAC,SAAS,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAChC,CAAC;oBACF,IAAI,aAAa,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;wBAC3D,MAAM,QAAQ,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;wBAC5D,2BAA2B,CAAC,aAAa,CAAC,GAAG;4BAC3C,GAAG,QAAQ;4BACX,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;yBAClD,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC1C,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC;YACtC,CAAC;YAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACrB,KAAK,MAAM,aAAa,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBAC7C,uBAAuB,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,iCAAiC,CAAC,oBAAoB,CAAC,CAAC;QAE1E,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAClD,SAAS,EACT,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS,CACjF,CAAC;QAEF,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,kBAAkB;YAC3B,SAAS;YACT,QAAQ;YACR,eAAe,EACb,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS;YAClF,KAAK,EAAE,UAAU;YACjB,SAAS;SACV,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,UAAU,mBAAmB,CAChC,QAA8D,EAC9D,YAA0B;QAE1B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACpD,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,QAAQ;gBACR,WAAW,EAAE,CAAC,EAAE,4CAA4C;gBAC5D,eAAe,EAAE,0BAA0B;aAC5C,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;YAC3D,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;YAC5E,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,OAAO,gBAAgB,CAAC,IAAI,CAAC;YAC/B,CAAC;YAED,yDAAyD;YACzD,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oDAAoD;YACpD,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,UAAU,qBAAqB,CAClC,WAAmB,EACnB,mBAAkC,EAClC,OAAyC,EACzC,SAAyB,EACzB,eAAwB;QAExB,MAAM,KAAK,GAAG,kCAAkC,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAErF,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE3F,IAAI,cAAc,GAAG,CAAC,GAAG,mBAAmB,CAAC,CAAC;QAC9C,IAAI,cAAc,GAAG,WAAW,CAAC;QACjC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,WAAW,GAAkB,EAAE,CAAC;QACpC,IAAI,eAAmC,CAAC;QACxC,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,MAAM,eAAe,GAAgB;YACnC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAErC,OAAO,SAAS,GAAG,aAAa,EAAE,CAAC;YACjC,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBACjC,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC1C,CAAC;YAED,SAAS,CAAC,gBAAgB,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;YAC3D,MAAM,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;YAE/C,8EAA8E;YAC9E,yFAAyF;YACzF,MAAM,oBAAoB,GACxB,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,KAAK,MAAM;gBACxD,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,cAAc,CAAC;YAErB,MAAM,QAAQ,GAAyD;gBACrE,GAAG,cAAc;gBACjB,sBAAsB,CACpB,8EAA8E,CAC/E;gBACD,GAAG,2BAA2B,CAAC,oBAAoB,CAAC;gBACpD,iBAAiB,CAAC,cAAc,CAAC;aAClC,CAAC;YAEF,IAAI,eAAe,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAEnE,MAAM,EACJ,OAAO,EAAE,YAAY,EACrB,SAAS,EACT,QAAQ,EACR,eAAe,EACf,KAAK,EACL,SAAS,GACV,GAAG,gBAAgB;gBAClB,CAAC,CAAC,MAAM,8BAA8B,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC;gBACvF,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAEtE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YAEjE,eAAe,GAAG,SAAS,CAAC;YAE5B,IAAI,KAAK,EAAE,CAAC;gBACV,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;gBAC9C,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC/B,SAAS,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;gBACvC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAEtC,IACE,oBAAoB;oBACpB,WAAW,CAAC,eAAe;oBAC3B,eAAe,CAAC,WAAW,CAAC,eAAe,EAAE,kBAAkB,CAAC,EAChE,CAAC;oBACD,SAAS,CAAC,oBAAoB,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBACxD,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEjD,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAC/C,cAAc,EACd,MAAM,EACN,MAAM,CAAC,aAAa,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,EAC3C,MAAM,CAAC,aAAa,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EACzC,eAAe,EACf,WAAW,EACX,OAAO,CAAC,WAAW,CACpB,CAAC;oBAEF,IAAI,CAAC,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;wBAClD,cAAc,GAAG,CAAC,oBAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/D,UAAU,GAAG,IAAI,CAAC;wBAClB,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;wBACtD,SAAS,CAAC,kBAAkB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;oBACtF,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,QAAQ,EAAE,CAAC;gBACb,SAAS,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACpD,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,aAAa,GAAG,qCAAqC,CAAC,SAAS,CAAC,CAAC;gBACvE,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;gBAEpC,SAAS,CAAC,eAAe,EAAE,CACzB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CACzE,CAAC;gBAEF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,gBAAgB,CACvD,aAAa,EACb,OAAO,EACP,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAC5C,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,CACrB,CAAC;gBAEF,MAAM,eAAe,GAAgB;oBACnC,IAAI,EAAE,WAAW;oBACjB,OAAO,EACL,YAAY,IAAI,wBAAwB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACzF,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,aAAa;oBACxB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,eAAe;oBAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;iBACrD,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAErC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;oBACzC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,YAAY,CAAC,0BAA0B,CAC/D,YAAY,CAAC,EAAE,EACf,YAAY,CAAC,YAAY,EACzB,YAAY,CAAC,MAAM,CACpB,CAAC;oBAEF,MAAM,aAAa,GAAgB;wBACjC,IAAI,EAAE,mBAAmB;wBACzB,OAAO;wBACP,SAAS,EAAE,IAAI,IAAI,EAAE;wBACrB,UAAU,EAAE,YAAY,CAAC,EAAE;qBAC5B,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACrC,CAAC;gBAED,cAAc,GAAG,2CAA2C,CAAC;gBAC7D,SAAS,EAAE,CAAC;gBACZ,SAAS;YACX,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACjB,iDAAiD;gBACjD,IAAI,cAAc,GAAY,SAAS,CAAC;gBACxC,IAAI,oBAAoB,GAAG,CAAC,CAAC;gBAC7B,IAAI,mBAAmB,GAAG,YAAY,CAAC;gBAEvC,IAAI,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBACpC,MAAM,oBAAoB,GAAG,WAAW,CAAC,WAAW,GAAG,CAAC,CAAC;oBACzD,OAAO,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;wBACpD,MAAM,gBAAgB,GAAG,gBAAgB,CACvC,mBAAmB,EACnB,oBAAoB,CAAC,MAAM,CAC5B,CAAC;wBAEF,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;4BAC7B,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC;4BACvC,MAAM;wBACR,CAAC;wBAED,oBAAoB;wBACpB,IAAI,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;4BACjD,qCAAqC;4BACrC,MAAM,CAAC,KAAK,CAAC,oCAAoC,oBAAoB,UAAU,CAAC,CAAC;4BACjF,MAAM,IAAI,UAAU,CAClB,mCAAmC,EACnC,+BAA+B,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC/F,KAAK,CACN,CAAC;wBACJ,CAAC;wBAED,uCAAuC;wBACvC,oBAAoB,EAAE,CAAC;wBACvB,OAAO,CAAC,IAAI,CACV,iDAAiD,oBAAoB,IAAI,oBAAoB,MAAM,CACpG,CAAC;wBAEF,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;wBAC7E,MAAM,eAAe,GAAG,IAAI,KAAK,CAC/B,GAAG,sBAAsB,8DAA8D,CACxF,CAAC;wBACF,eAAe,CAAC,IAAI,GAAG,yBAAyB,CAAC;wBACjD,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;wBAC/D,MAAM,aAAa,GAAyD;4BAC1E,GAAG,QAAQ;4BACX,sBAAsB,CAAC,mBAAmB,CAAC;4BAC3C,mBAAmB,CAAC,oBAAoB,CAAC;yBAC1C,CAAC;wBAEF,MAAM,WAAW,GAAG,gBAAgB;4BAClC,CAAC,CAAC,MAAM,8BAA8B,CAClC,aAAa,EACb,KAAK,EACL,SAAS,EACT,OAAO,CAAC,WAAW,CACpB;4BACH,CAAC,CAAC,MAAM,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;wBAE3E,mBAAmB,GAAG,WAAW,CAAC,OAAO,CAAC;wBAE1C,4BAA4B;wBAC5B,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;4BACtB,WAAW,GAAG,wBAAwB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;4BAC1D,SAAS,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;4BACvC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,8EAA8E;gBAC9E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3B,8FAA8F;oBAC9F,MAAM,oBAAoB,GAAgB;wBACxC,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,yCAAyC,mBAAmB,EAAE;wBACvE,SAAS,EAAE,IAAI,IAAI,EAAE;qBACtB,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAE1C,MAAM,oBAAoB,GAAyD;wBACjF,GAAG,cAAc;wBACjB,GAAG,2BAA2B,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,0CAA0C;wBACvG,sBAAsB,CAAC,mBAAmB,CAAC;wBAC3C,mBAAmB,CAAC,mBAAmB,CAAC;qBACzC,CAAC;oBAEF,MAAM,kBAAkB,GAAG,MAAM,mBAAmB,CAClD,oBAAoB,EACpB,OAAO,CAAC,WAAW,CACpB,CAAC;oBAEF,uEAAuE;oBACvE,IACE,kBAAkB;wBAClB,CAAC,kBAAkB,CAAC,QAAQ;wBAC5B,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAClC,CAAC;wBACD,OAAO,CAAC,GAAG,CACT,8DAA8D,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtG,CAAC;wBAEF,6EAA6E;wBAC7E,MAAM,uBAAuB,GAAgB;4BAC3C,IAAI,EAAE,WAAW;4BACjB,OAAO,EAAE,mBAAmB;4BAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;4BACrB,SAAS,EAAE,QAAQ;4BACnB,iBAAiB,EAAE,eAAe;4BAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;yBACrD,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;wBAE7C,4CAA4C;wBAC5C,MAAM,yBAAyB,GAAgB;4BAC7C,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;4BAC3C,SAAS,EAAE,IAAI,IAAI,EAAE;yBACtB,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;wBAE/C,yCAAyC;wBACzC,cAAc,GAAG,2DAA2D,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACpH,SAAS,EAAE,CAAC;wBACZ,SAAS;oBACX,CAAC;oBAED,sFAAsF;oBACtF,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,yBAAyB,GAAgB;4BAC7C,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE;4BACvE,SAAS,EAAE,IAAI,IAAI,EAAE;yBACtB,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBACjD,CAAC;yBAAM,CAAC;wBACN,qEAAqE;wBACrE,MAAM,0BAA0B,GAAgB;4BAC9C,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,8CAA8C;4BACvD,SAAS,EAAE,IAAI,IAAI,EAAE;yBACtB,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBAED,MAAM,gBAAgB,GAAgB;oBACpC,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,mBAAmB;oBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,eAAe;oBAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;iBACrD,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAEtC,MAAM,MAAM,GAAyB;oBACnC,OAAO,EAAE,mBAAmB;oBAC5B,cAAc;oBACd,SAAS,EAAE,QAAQ;wBACjB,CAAC,CAAC;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,eAAe;4BACxB,UAAU,EAAE,WAAW,CAAC,mBAAmB;yBAC5C;wBACH,CAAC,CAAC,SAAS;oBACb,mBAAmB,EAAE,cAAc;oBACnC,aAAa,EAAE,WAAW;oBAC1B,SAAS,EAAE,eAAe;oBAC1B,UAAU,EAAE,SAAS,GAAG,CAAC;oBACzB,UAAU;iBACX,CAAC;gBAEF,SAAS,CAAC,SAAS,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAC,SAAS,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC/C,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;gBAE/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;gBACnC,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,MAAM;QACR,CAAC;QAED,IAAI,SAAS,IAAI,aAAa,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAgB;gBACpC,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACtC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YAEnC,MAAM,MAAM,GAAgB;gBAC1B,OAAO,EAAE,cAAc;gBACvB,mBAAmB,EAAE,cAAc;gBACnC,aAAa,EAAE,WAAW;gBAC1B,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,SAAS;gBACrB,UAAU;aACX,CAAC;YAEF,SAAS,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;YAE/B,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,SAAS,eAAe,CAAC,KAAY;QACnC,2BAA2B;QAC3B,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,iDAAiD;QACjD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACzE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,kFAAkF;YAClF,+DAA+D;YAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,mCAAmC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAC5F,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,UAAU,IAAI,CACjB,OAAe,EACf,OAAyC,EACzC,YAA4B,EAAE;QAE9B,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACxD,MAAM,gBAAgB,GAAqC;YACzD,GAAG,OAAO;YACV,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,eAAe,CAAC,MAAM;SAC3D,CAAC;QAEF,IAAI,eAAmC,CAAC;QAExC,qEAAqE;QACrE,IAAI,gBAAgB,GAAG,OAAO,CAAC;QAC/B,IAAI,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC;YACvC,MAAM,iBAAiB,GAAmC;gBACxD,OAAO;gBACP,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;gBAC7B,WAAW,EAAE,gBAAgB;aAC9B,CAAC;YACF,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,MAAM,gBAAgB,CACjC,KAAK,IAAI,EAAE;gBACT,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAC/C,gBAAgB,EAChB,OAAO,CAAC,UAAU,EAAE,EACpB,gBAAgB,EAChB,SAAS,EACT,eAAe,CAChB,CAAC;gBACF,OAAO,aAAa,CAAC;YACvB,CAAC,EACD;gBACE,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,gBAAgB,CAAC,WAAW;gBACzC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBAChB,8EAA8E;oBAC9E,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC/C,sBAAsB;oBACtB,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChF,CAAC;gBACD,WAAW,EAAE,eAAe;aAC7B,CACF,CAAC;YAEF,mEAAmE;YACnE,IAAI,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC;gBACvC,MAAM,gBAAgB,GAAkC;oBACtD,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;oBAC7B,WAAW,EAAE,gBAAgB;oBAC7B,MAAM;iBACP,CAAC;gBACF,MAAM,GAAG,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;YACvE,CAAC;YAED,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAE/B,MAAM,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAEvF,6CAA6C;YAC7C,IAAI,kBAAkB,CAAC,aAAa,EAAE,IAAI,SAAS,YAAY,UAAU,EAAE,CAAC;gBAC1E,MAAM,kBAAkB,CAAC,cAAc,CAAC;oBACtC,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;oBAC7B,WAAW,EAAE,gBAAgB;oBAC7B,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;YAC1D,SAAS,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,EAAE,SAAS,YAAY,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;gBACxE,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,YAAY;gBAC3C,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,YAAY;gBACrB,mBAAmB,EAAE,OAAO,CAAC,UAAU,EAAE;gBACzC,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;gBACtC,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,KAAK;aAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,SAAS,KAAK;QACZ,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,SAAS,UAAU;QACjB,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC;IAC9B,CAAC;IAED,SAAS,UAAU,CAAC,OAAsB;QACxC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS,YAAY;QACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IACzB,CAAC;IAED,SAAS,aAAa;QACpB,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC;IAED,OAAO;QACL,IAAI;QACJ,KAAK;QACL,UAAU;QACV,UAAU;QACV,YAAY;QACZ,aAAa;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import OpenAI from 'openai';
2
- import type { ChatMessage, ReasoningDetail, FunctionDeclaration, UsageMetadata } from '../types/index.js';
2
+ import type { ChatMessage, ReasoningDetail, FunctionDeclaration, UsageMetadata, ImageInput } from '../types/index.js';
3
3
  export declare const ENCRYPTED_REASONING_MARKER = "[REASONING_ENCRYPTED]";
4
4
  export declare function convertChatMessagesToOpenAI(messages: ChatMessage[]): OpenAI.Chat.Completions.ChatCompletionMessageParam[];
5
5
  export declare function convertFunctionDeclarationsToTools(declarations: FunctionDeclaration[]): OpenAI.Chat.Completions.ChatCompletionTool[];
@@ -10,7 +10,15 @@ export declare function convertOpenAIToolCallsToFunctionCalls(toolCalls: OpenAI.
10
10
  }>;
11
11
  export declare function mapOpenAIUsageToMetadata(usage: OpenAI.CompletionUsage): UsageMetadata;
12
12
  export declare function createSystemMessage(content: string): OpenAI.Chat.Completions.ChatCompletionSystemMessageParam;
13
- export declare function createUserMessage(content: string): OpenAI.Chat.Completions.ChatCompletionUserMessageParam;
13
+ /**
14
+ * Creates a user message for the OpenAI API.
15
+ * Supports multimodal content with optional images.
16
+ *
17
+ * @param content - Text content of the message
18
+ * @param images - Optional array of images to include
19
+ * @returns OpenAI-compatible user message
20
+ */
21
+ export declare function createUserMessage(content: string, images?: ImageInput[]): OpenAI.Chat.Completions.ChatCompletionUserMessageParam;
14
22
  export declare function createAssistantMessage(content: string): OpenAI.Chat.Completions.ChatCompletionAssistantMessageParam;
15
23
  export interface NormalizedReasoning {
16
24
  displayText?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter-utils.d.ts","sourceRoot":"","sources":["../../src/core/openrouter-utils.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,aAAa,EACd,MAAM,mBAAmB,CAAC;AAG3B,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,WAAW,EAAE,GACtB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,CAiFtD;AAED,wBAAgB,kCAAkC,CAChD,YAAY,EAAE,mBAAmB,EAAE,GAClC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAS9C;AAED,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,6BAA6B,EAAE,GACjE,KAAK,CAAC;IACP,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC,CAqBD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,CAerF;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,gCAAgC,CAK1D;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,8BAA8B,CAKxD;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,CAK7D;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,eAAe,EAAE,CAAC;CACzC;AAED,wBAAgB,kBAAkB,CAChC,SAAS,CAAC,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,eAAe,EAAE,GACnC,mBAAmB,CAiCrB"}
1
+ {"version":3,"file":"openrouter-utils.d.ts","sourceRoot":"","sources":["../../src/core/openrouter-utils.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,UAAU,EACX,MAAM,mBAAmB,CAAC;AAa3B,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAyBlE,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,WAAW,EAAE,GACtB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,CAyFtD;AAED,wBAAgB,kCAAkC,CAChD,YAAY,EAAE,mBAAmB,EAAE,GAClC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAS9C;AAED,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,6BAA6B,EAAE,GACjE,KAAK,CAAC;IACP,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC,CAqBD;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,GAAG,aAAa,CAerF;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,gCAAgC,CAK1D;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,UAAU,EAAE,GACpB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,8BAA8B,CA0BxD;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,GACd,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,CAK7D;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,eAAe,EAAE,CAAC;CACzC;AAED,wBAAgB,kBAAkB,CAChC,SAAS,CAAC,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,eAAe,EAAE,GACnC,mBAAmB,CAiCrB"}
@@ -1,13 +1,43 @@
1
1
  import { ToolArgumentParseError } from './tool-validation.js';
2
2
  export const ENCRYPTED_REASONING_MARKER = '[REASONING_ENCRYPTED]';
3
+ /**
4
+ * Converts internal ChatMessage contentParts to OpenAI format.
5
+ */
6
+ function convertContentPartsToOpenAI(contentParts) {
7
+ if (!contentParts)
8
+ return [];
9
+ return contentParts.map((part) => {
10
+ if (part.type === 'text') {
11
+ return { type: 'text', text: part.text };
12
+ }
13
+ else {
14
+ return {
15
+ type: 'image_url',
16
+ image_url: {
17
+ url: part.image_url.url,
18
+ detail: part.image_url.detail,
19
+ },
20
+ };
21
+ }
22
+ });
23
+ }
3
24
  export function convertChatMessagesToOpenAI(messages) {
4
25
  const result = [];
5
26
  for (const message of messages) {
6
27
  if (message.role === 'user') {
7
- result.push({
8
- role: 'user',
9
- content: message.content,
10
- });
28
+ // Check if message has multimodal content
29
+ if (message.contentParts && message.contentParts.length > 0) {
30
+ result.push({
31
+ role: 'user',
32
+ content: convertContentPartsToOpenAI(message.contentParts),
33
+ });
34
+ }
35
+ else {
36
+ result.push({
37
+ role: 'user',
38
+ content: message.content,
39
+ });
40
+ }
11
41
  }
12
42
  else if (message.role === 'assistant') {
13
43
  const assistantMessage = {
@@ -131,10 +161,36 @@ export function createSystemMessage(content) {
131
161
  content,
132
162
  };
133
163
  }
134
- export function createUserMessage(content) {
164
+ /**
165
+ * Creates a user message for the OpenAI API.
166
+ * Supports multimodal content with optional images.
167
+ *
168
+ * @param content - Text content of the message
169
+ * @param images - Optional array of images to include
170
+ * @returns OpenAI-compatible user message
171
+ */
172
+ export function createUserMessage(content, images) {
173
+ // If no images, return simple text message
174
+ if (!images || images.length === 0) {
175
+ return {
176
+ role: 'user',
177
+ content,
178
+ };
179
+ }
180
+ // Build multipart content array with text first, then images
181
+ const parts = [{ type: 'text', text: content }];
182
+ for (const img of images) {
183
+ parts.push({
184
+ type: 'image_url',
185
+ image_url: {
186
+ url: img.url,
187
+ detail: img.detail,
188
+ },
189
+ });
190
+ }
135
191
  return {
136
192
  role: 'user',
137
- content,
193
+ content: parts,
138
194
  };
139
195
  }
140
196
  export function createAssistantMessage(content) {
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter-utils.js","sourceRoot":"","sources":["../../src/core/openrouter-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter-utils.js","sourceRoot":"","sources":["../../src/core/openrouter-utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,15 @@
1
1
  import OpenAI from 'openai';
2
2
  import type { ChatMessage, ReasoningEffort, SummarizationConfig } from '../types/index.js';
3
+ /**
4
+ * Normalized reasoning configuration for API calls.
5
+ * Same structure as defined in agent.ts but local to avoid circular deps.
6
+ */
7
+ interface NormalizedReasoningConfig {
8
+ enabled?: boolean;
9
+ effort?: ReasoningEffort;
10
+ max_tokens?: number;
11
+ exclude?: boolean;
12
+ }
3
13
  export interface SummarizationResult {
4
14
  summary: string;
5
15
  originalMessageCount: number;
@@ -7,8 +17,9 @@ export interface SummarizationResult {
7
17
  requestId?: string;
8
18
  error?: string;
9
19
  }
10
- export declare function summarizeConversation(conversationHistory: ChatMessage[], client: OpenAI, model: string, config: SummarizationConfig, reasoningEffort?: ReasoningEffort, temperature?: number, abortSignal?: AbortSignal): Promise<SummarizationResult>;
20
+ export declare function summarizeConversation(conversationHistory: ChatMessage[], client: OpenAI, model: string, config: SummarizationConfig, reasoning?: NormalizedReasoningConfig, temperature?: number, abortSignal?: AbortSignal): Promise<SummarizationResult>;
11
21
  export declare function createSummaryMessage(summary: string): ChatMessage;
12
22
  export declare function shouldSummarize(totalTokens: number, contextLimitTokens: number): boolean;
13
23
  export declare const DEFAULT_CONTEXT_LIMIT_TOKENS: number;
24
+ export {};
14
25
  //# sourceMappingURL=summarization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"summarization.d.ts","sourceRoot":"","sources":["../../src/core/summarization.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA6B3F,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,qBAAqB,CACzC,mBAAmB,EAAE,WAAW,EAAE,EAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,mBAAmB,EAC3B,eAAe,GAAE,eAAwB,EACzC,WAAW,GAAE,MAAY,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,mBAAmB,CAAC,CA0E9B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAMjE;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAExF;AAED,eAAO,MAAM,4BAA4B,QAAa,CAAC"}
1
+ {"version":3,"file":"summarization.d.ts","sourceRoot":"","sources":["../../src/core/summarization.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAM3F;;;GAGG;AACH,UAAU,yBAAyB;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAyBD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,qBAAqB,CACzC,mBAAmB,EAAE,WAAW,EAAE,EAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,mBAAmB,EAC3B,SAAS,CAAC,EAAE,yBAAyB,EACrC,WAAW,GAAE,MAAY,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,mBAAmB,CAAC,CA0E9B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAMjE;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAExF;AAED,eAAO,MAAM,4BAA4B,QAAa,CAAC"}
@@ -24,7 +24,7 @@ Do not include in the summary:
24
24
  - Side remarks
25
25
 
26
26
  Summarize the following conversation:`;
27
- export async function summarizeConversation(conversationHistory, client, model, config, reasoningEffort = 'high', temperature = 0.1, abortSignal) {
27
+ export async function summarizeConversation(conversationHistory, client, model, config, reasoning, temperature = 0.1, abortSignal) {
28
28
  try {
29
29
  if (abortSignal?.aborted) {
30
30
  throw new Error('Request aborted before processing');
@@ -45,7 +45,7 @@ export async function summarizeConversation(conversationHistory, client, model,
45
45
  model,
46
46
  messages,
47
47
  temperature,
48
- reasoning_effort: reasoningEffort,
48
+ ...(reasoning && { reasoning }),
49
49
  }), {
50
50
  config: retryConfig,
51
51
  abortSignal,
@@ -1 +1 @@
1
- {"version":3,"file":"summarization.js","sourceRoot":"","sources":["../../src/core/summarization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summarization.js","sourceRoot":"","sources":["../../src/core/summarization.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,7 +5,7 @@ export { createEvent } from './types/events.js';
5
5
  export { ENCRYPTED_REASONING_MARKER } from './core/openrouter-utils.js';
6
6
  export { AgentError, formatErrorTrace, isAbortError, AI_ERROR_CATEGORIES, formatAIError, } from './core/errors.js';
7
7
  export type { AgentErrorCode, AIErrorCategory } from './core/errors.js';
8
- export type { ReasoningDetail, ChatMessage, FunctionDeclaration, ToolExecutorContext, ToolDefinition, AgentConfig, ParallelExecutionConfig, RetryConfig, TimeoutConfig, ResultStorageConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, AgentCallbacks, AgentEventType, ThinkingEventData, UsageUpdateEventData, RetryEventData, ErrorEventData, CompleteEventData, MessageDeltaEventData, ReasoningDeltaEventData, AgentEvent, ResponseFormatConfig, Middleware, MiddlewareContext, BeforeChatContext, AfterChatContext, BeforeToolCallContext, AfterToolCallContext, ErrorContext, AgentDefinition, OrchestratorConfig, OrchestratorAgent, OrchestratorResult, SubAgentStartData, SubAgentCompleteData, OrchestratorCallbacks, } from './types/index.js';
8
+ export type { ReasoningDetail, ChatMessage, FunctionDeclaration, ToolExecutorContext, ToolDefinition, AgentConfig, ParallelExecutionConfig, RetryConfig, TimeoutConfig, ResultStorageConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, AgentCallbacks, AgentEventType, ThinkingEventData, UsageUpdateEventData, RetryEventData, ErrorEventData, CompleteEventData, MessageDeltaEventData, ReasoningDeltaEventData, AgentEvent, ResponseFormatConfig, ReasoningEffort, ReasoningConfig, Middleware, MiddlewareContext, BeforeChatContext, AfterChatContext, BeforeToolCallContext, AfterToolCallContext, ErrorContext, AgentDefinition, OrchestratorConfig, OrchestratorAgent, OrchestratorResult, SubAgentStartData, SubAgentCompleteData, OrchestratorCallbacks, ImageDetail, ImageInput, ChatOptions, TextContentPart, ImageContentPart, ContentPart, } from './types/index.js';
9
9
  export { DEFAULT_TOOL_EXECUTION_TIMEOUT_MS, DEFAULT_API_REQUEST_TIMEOUT_MS, DEFAULT_RESULT_STORAGE_SIZE_THRESHOLD, DEFAULT_RESULT_STORAGE_LINE_THRESHOLD, DEFAULT_RESULT_STORAGE_MAX_AGE_MS, } from './types/index.js';
10
10
  export { ToolExecutionTimeoutError } from './core/tool-executor.js';
11
11
  export { ResultStorage, formatBytes } from './core/result-storage.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExE,YAAY,EACV,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,oBAAoB,EAEpB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EAEZ,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAMpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACtE,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,mBAAmB,IAAI,oBAAoB,GAC5C,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,UAAU,GACX,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAElB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExE,YAAY,EACV,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,oBAAoB,EAEpB,eAAe,EACf,eAAe,EAEf,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EAEZ,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EAErB,WAAW,EACX,UAAU,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAMpE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACtE,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,mBAAmB,IAAI,oBAAoB,GAC5C,MAAM,0BAA0B,CAAC;AAOlC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,UAAU,GACX,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAElB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AA+C1B,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,+EAA+E;AAC/E,0CAA0C;AAC1C,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAQtE,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,6BAA6B;AAC7B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,UAAU,GACX,MAAM,kBAAkB,CAAC;AAE1B,2BAA2B;AAC3B,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB;AAClB,sEAAsE;AACtE,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAkB1B,uCAAuC;AACvC,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAyD1B,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,+EAA+E;AAC/E,0CAA0C;AAC1C,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAQtE,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,6BAA6B;AAC7B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,UAAU,GACX,MAAM,kBAAkB,CAAC;AAE1B,2BAA2B;AAC3B,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,kBAAkB;AAClB,sEAAsE;AACtE,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAkB1B,uCAAuC;AACvC,OAAO,EACL,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { JsonSchema7Type } from 'zod-to-json-schema';
2
2
  import type { ZodType } from 'zod';
3
- import type { FunctionCallResult } from './messages.js';
3
+ import type { FunctionCallResult, ImageDetail } from './messages.js';
4
4
  import type { Middleware } from './middleware.js';
5
5
  /**
6
6
  * Configuration for structured output response format.
@@ -96,7 +96,87 @@ export interface ErrorMessages {
96
96
  /** Error message when a tool execution times out */
97
97
  toolExecutionTimeout?: string;
98
98
  }
99
- export type ReasoningEffort = 'low' | 'medium' | 'high';
99
+ /**
100
+ * Image input for multimodal chat messages.
101
+ * Supports both URLs and base64 data URIs.
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * // URL-based image
106
+ * { url: 'https://example.com/image.png' }
107
+ *
108
+ * // Base64 data URI
109
+ * { url: 'data:image/png;base64,iVBORw0KGgo...', detail: 'high' }
110
+ * ```
111
+ */
112
+ export interface ImageInput {
113
+ /** URL or base64 data URI (e.g., 'data:image/png;base64,...') */
114
+ url: string;
115
+ /**
116
+ * Detail level for image processing.
117
+ * - 'auto': Let the model decide (default)
118
+ * - 'low': Fast, lower cost
119
+ * - 'high': Detailed analysis, higher cost
120
+ */
121
+ detail?: ImageDetail;
122
+ }
123
+ /**
124
+ * Options for agent.chat() method.
125
+ * Allows passing additional input types alongside the text message.
126
+ *
127
+ * @example
128
+ * ```typescript
129
+ * await agent.chat('What is in this image?', context, callbacks, {
130
+ * images: [{ url: 'https://example.com/photo.jpg' }]
131
+ * });
132
+ * ```
133
+ */
134
+ export interface ChatOptions {
135
+ /**
136
+ * Images to include with the message.
137
+ * Requires a vision-capable model (e.g., GPT-4o, Claude 3, Gemini Pro Vision).
138
+ */
139
+ images?: ImageInput[];
140
+ }
141
+ /**
142
+ * Reasoning effort levels for models that support reasoning.
143
+ * - 'none': Completely disable reasoning (for models that don't support it like Grok 3 Fast)
144
+ * - 'minimal': Very light reasoning
145
+ * - 'low': Light reasoning for simple tasks
146
+ * - 'medium': Balanced reasoning for moderately complex tasks
147
+ * - 'high': Deep reasoning for complex problems
148
+ * - 'xhigh': Very intense reasoning (~95% of effort budget)
149
+ */
150
+ export type ReasoningEffort = 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh';
151
+ /**
152
+ * Unified reasoning configuration for controlling model reasoning behavior.
153
+ * This uses OpenRouter's preferred `reasoning` object format.
154
+ */
155
+ export interface ReasoningConfig {
156
+ /**
157
+ * Explicitly enable or disable reasoning.
158
+ * When true without other options, uses the model's default reasoning behavior.
159
+ * When false, completely disables reasoning.
160
+ */
161
+ enabled?: boolean;
162
+ /**
163
+ * Effort level for reasoning.
164
+ * - 'none': Completely disable reasoning
165
+ * - 'minimal' to 'xhigh': Increasing levels of reasoning depth
166
+ */
167
+ effort?: ReasoningEffort;
168
+ /**
169
+ * Maximum tokens allocated for reasoning (for models that support it).
170
+ * Higher values allow more thorough reasoning but increase cost and latency.
171
+ */
172
+ maxTokens?: number;
173
+ /**
174
+ * Hide reasoning from response output.
175
+ * When true, the model still thinks internally but the reasoning is not included in the response.
176
+ * Useful to reduce response size while keeping reasoning benefits.
177
+ */
178
+ exclude?: boolean;
179
+ }
100
180
  export interface SummarizationConfig {
101
181
  enabled: boolean;
102
182
  /**
@@ -224,7 +304,31 @@ export interface AgentConfig<TAppContext = Record<string, unknown>> {
224
304
  model: string;
225
305
  baseURL?: string;
226
306
  temperature?: number;
227
- reasoningEffort?: ReasoningEffort;
307
+ /**
308
+ * Reasoning configuration for models that support reasoning.
309
+ *
310
+ * Accepts multiple formats for flexibility:
311
+ * - `undefined`: Don't send reasoning parameter (safest for model compatibility)
312
+ * - `false`: Explicitly disable reasoning (same as `{ effort: 'none' }`)
313
+ * - `ReasoningEffort` string: Shorthand for `{ effort: value }`
314
+ * - `ReasoningConfig` object: Full control with `effort`, `maxTokens`, `exclude`
315
+ *
316
+ * @example
317
+ * ```typescript
318
+ * // Grok 3 Fast (doesn't support reasoning) - MUST disable or omit
319
+ * createAgent({ reasoning: false });
320
+ *
321
+ * // OpenAI o3 (supports reasoning)
322
+ * createAgent({ reasoning: { effort: 'high', maxTokens: 2000 } });
323
+ *
324
+ * // Claude (hide reasoning from output)
325
+ * createAgent({ reasoning: { effort: 'medium', exclude: true } });
326
+ *
327
+ * // Shorthand for effort level
328
+ * createAgent({ reasoning: 'low' });
329
+ * ```
330
+ */
331
+ reasoning?: ReasoningConfig | ReasoningEffort | false;
228
332
  systemPrompts: string[];
229
333
  tools: ToolDefinition<TAppContext>[];
230
334
  maxIterations?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEN,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,EAAE,eAAe,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,mBAAmB,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACxE;;;;OAIG;IACH,UAAU,EAAE,WAAW,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAChE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,KACtC,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB;;;;GAIG;AACH,MAAM,WAAW,cAAc,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,oDAAoD;IACpD,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,eAAO,MAAM,2BAA2B,OAAO,CAAC;AAChD,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAChD,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qDAAqD;AACrD,eAAO,MAAM,iCAAiC,QAAS,CAAC;AACxD,kDAAkD;AAClD,eAAO,MAAM,8BAA8B,SAAU,CAAC;AAEtD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,qDAAqD;AACrD,eAAO,MAAM,qCAAqC,OAAO,CAAC;AAC1D,2DAA2D;AAC3D,eAAO,MAAM,qCAAqC,MAAM,CAAC;AACzD,iDAAiD;AACjD,eAAO,MAAM,iCAAiC,UAAU,CAAC;AAEzD;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,qBAAqB,CAAC,EAAE,uBAAuB,CAAC;IAChD,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC;;;;OAIG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;IACvC;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,SAAS,CAAC,EAAE;QACV,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,eAAe,EAAE,eAAe,EAAE,CAAC;QACpD,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,mBAAmB,EAAE,OAAO,eAAe,EAAE,WAAW,EAAE,CAAC;IAC3D,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,kBAAkB,CAAC;CAC5B"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAsIA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AA4BzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAChD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAoBlD,qDAAqD;AACrD,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC;AACxD,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,OAAO,CAAC;AAwCtD,qDAAqD;AACrD,MAAM,CAAC,MAAM,qCAAqC,GAAG,IAAI,CAAC;AAC1D,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,CAAC;AACzD,iDAAiD;AACjD,MAAM,CAAC,MAAM,iCAAiC,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAyNA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AA4BzC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAC5C,MAAM,CAAC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAChD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAoBlD,qDAAqD;AACrD,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC;AACxD,kDAAkD;AAClD,MAAM,CAAC,MAAM,8BAA8B,GAAG,OAAO,CAAC;AAwCtD,qDAAqD;AACrD,MAAM,CAAC,MAAM,qCAAqC,GAAG,IAAI,CAAC;AAC1D,2DAA2D;AAC3D,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,CAAC;AACzD,iDAAiD;AACjD,MAAM,CAAC,MAAM,iCAAiC,GAAG,OAAO,CAAC"}
@@ -1,5 +1,5 @@
1
- export type { ReasoningDetail, ChatMessageRole, ToolCall, ChatMessage, FunctionCallResult, } from './messages.js';
2
- export type { FunctionDeclaration, ToolExecutorContext, ToolExecutor, ToolDefinition, ErrorMessages, ReasoningEffort, SummarizationConfig, ParallelExecutionConfig, RetryConfig, TimeoutConfig, ResultStorageConfig, AgentConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, ExecutedToolCall, ResponseFormatConfig, } from './config.js';
1
+ export type { ReasoningDetail, ChatMessageRole, ToolCall, ChatMessage, FunctionCallResult, ImageDetail, TextContentPart, ImageContentPart, ContentPart, } from './messages.js';
2
+ export type { FunctionDeclaration, ToolExecutorContext, ToolExecutor, ToolDefinition, ErrorMessages, ReasoningEffort, ReasoningConfig, SummarizationConfig, ParallelExecutionConfig, RetryConfig, TimeoutConfig, ResultStorageConfig, AgentConfig, UsageMetadata, AgentResult, ToolCallStartData, ToolResultData, ExecutedToolCall, ResponseFormatConfig, ImageInput, ChatOptions, } from './config.js';
3
3
  export { DEFAULT_MAX_CONCURRENCY, DEFAULT_RETRY_MAX_ATTEMPTS, DEFAULT_RETRY_BASE_DELAY_MS, DEFAULT_RETRY_MAX_DELAY_MS, DEFAULT_RETRY_BACKOFF_MULTIPLIER, DEFAULT_TOOL_EXECUTION_TIMEOUT_MS, DEFAULT_API_REQUEST_TIMEOUT_MS, DEFAULT_RESULT_STORAGE_SIZE_THRESHOLD, DEFAULT_RESULT_STORAGE_LINE_THRESHOLD, DEFAULT_RESULT_STORAGE_MAX_AGE_MS, } from './config.js';
4
4
  export type { AgentCallbacks, AgentEventType, ThinkingEventData, MessageEventData, MessageDeltaEventData, ReasoningDeltaEventData, ToolCallStartEventData, ToolResultEventData, UsageUpdateEventData, SummarizationStartEventData, SummarizationEndEventData, IterationStartEventData, RetryEventData, ErrorEventData, CompleteEventData, AbortedEventData, SubAgentStartEventData, SubAgentCompleteEventData, EventDataMap, AgentEvent, } from './events.js';
5
5
  export { createEvent } from './events.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,eAAe,EACf,QAAQ,EACR,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,eAAe,EACf,QAAQ,EACR,WAAW,EACX,kBAAkB,EAElB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,YAAY,EACV,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EAEpB,UAAU,EACV,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,YAAY,EACZ,UAAU,GACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AA6BA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,aAAa,CAAC;AAyBrB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAsCA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,gCAAgC,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,qCAAqC,EACrC,qCAAqC,EACrC,iCAAiC,GAClC,MAAM,aAAa,CAAC;AAyBrB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
@@ -6,6 +6,37 @@ export interface ReasoningDetail {
6
6
  format: string;
7
7
  index: number;
8
8
  }
9
+ /**
10
+ * Detail level for image processing in vision models.
11
+ * - 'auto': Let the model decide based on image size
12
+ * - 'low': Fast, lower cost, good for simple images
13
+ * - 'high': Detailed analysis, higher cost
14
+ */
15
+ export type ImageDetail = 'auto' | 'low' | 'high';
16
+ /**
17
+ * Text content part for multimodal messages.
18
+ */
19
+ export interface TextContentPart {
20
+ type: 'text';
21
+ text: string;
22
+ }
23
+ /**
24
+ * Image content part for multimodal messages.
25
+ * Supports both URLs and base64 data URIs.
26
+ */
27
+ export interface ImageContentPart {
28
+ type: 'image_url';
29
+ image_url: {
30
+ /** URL or base64 data URI (e.g., 'data:image/png;base64,...') */
31
+ url: string;
32
+ /** Optional detail level for vision processing */
33
+ detail?: ImageDetail;
34
+ };
35
+ }
36
+ /**
37
+ * Union type for all content parts in multimodal messages.
38
+ */
39
+ export type ContentPart = TextContentPart | ImageContentPart;
9
40
  export type ChatMessageRole = 'user' | 'assistant' | 'system' | 'tool-call' | 'tool-call-results';
10
41
  export interface ToolCall {
11
42
  id: string;
@@ -14,7 +45,10 @@ export interface ToolCall {
14
45
  }
15
46
  export interface ChatMessage {
16
47
  role: ChatMessageRole;
48
+ /** Text content of the message */
17
49
  content: string;
50
+ /** Optional multimodal content parts (for messages with images) */
51
+ contentParts?: ContentPart[];
18
52
  timestamp: Date;
19
53
  toolCalls?: ToolCall[];
20
54
  toolCallId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,mBAAmB,CAAC;AAElG,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/types/messages.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE;QACT,iEAAiE;QACjE,GAAG,EAAE,MAAM,CAAC;QACZ,kDAAkD;QAClD,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAE7D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,mBAAmB,CAAC;AAElG,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "concevent-ai-agent-sdk",
3
- "version": "3.0.7",
3
+ "version": "3.1.0",
4
4
  "description": "Framework-agnostic AI Agent SDK with tool calling, conversation management, and automatic summarization",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -41,7 +41,7 @@
41
41
  "dependencies": {
42
42
  "ajv": "^8.17.1",
43
43
  "ajv-formats": "^3.0.1",
44
- "openai": "^4.77.0",
44
+ "openai": "^6.16.0",
45
45
  "zod": "^3.24.1",
46
46
  "zod-to-json-schema": "^3.24.1"
47
47
  },
@@ -59,6 +59,6 @@
59
59
  "vitest": "^2.1.8"
60
60
  },
61
61
  "engines": {
62
- "node": ">=18.0.0"
62
+ "node": ">=20.0.0"
63
63
  }
64
64
  }