@curie-agent/providers 0.2.5 → 0.3.3

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.
@@ -1,3 +1,65 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ /**
3
+ * Parse tool calls embedded in plain text for local models (e.g. Bielik, Mistral-family)
4
+ * that emit JSON instead of structured tool_calls in the API response.
5
+ *
6
+ * Recognises two formats:
7
+ * 1. <tool_call>{"name": "...", "arguments": {...}}</tool_call>
8
+ * 2. Bare JSON object {"name": "...", "arguments": {...}} (whole text or single line)
9
+ *
10
+ * Only matches objects whose "name" is in knownToolNames to avoid false positives.
11
+ */
12
+ function extractTextToolCalls(text, knownToolNames) {
13
+ const results = [];
14
+ function tryParse(raw) {
15
+ let obj;
16
+ try {
17
+ obj = JSON.parse(raw.trim());
18
+ }
19
+ catch {
20
+ return;
21
+ }
22
+ if (typeof obj !== 'object' || obj === null)
23
+ return;
24
+ const o = obj;
25
+ const name = o['name'];
26
+ if (typeof name !== 'string' || !knownToolNames.has(name))
27
+ return;
28
+ const rawArgs = o['arguments'] ?? o['parameters'] ?? {};
29
+ let input;
30
+ if (typeof rawArgs === 'string') {
31
+ try {
32
+ input = JSON.parse(rawArgs);
33
+ }
34
+ catch {
35
+ return;
36
+ }
37
+ }
38
+ else {
39
+ input = rawArgs;
40
+ }
41
+ results.push({ id: randomUUID(), name, input });
42
+ }
43
+ // 1. <tool_call> XML blocks
44
+ const xmlRe = /<tool_call>([\s\S]*?)<\/tool_call>/g;
45
+ let m;
46
+ while ((m = xmlRe.exec(text)) !== null) {
47
+ tryParse(m[1] ?? '');
48
+ }
49
+ if (results.length > 0)
50
+ return results;
51
+ // 2. Whole trimmed text as JSON
52
+ tryParse(text.trim());
53
+ if (results.length > 0)
54
+ return results;
55
+ // 3. Line-by-line (model may output other text + JSON on separate lines)
56
+ for (const line of text.split('\n')) {
57
+ const t = line.trim();
58
+ if (t.startsWith('{'))
59
+ tryParse(t);
60
+ }
61
+ return results;
62
+ }
1
63
  /**
2
64
  * Stream consumer for any OpenAI Chat Completions-compatible endpoint
3
65
  * (OpenAI standard models, Ollama, llama.cpp, vLLM, etc.).
@@ -8,115 +70,207 @@
8
70
  * tags and gemma4-style <|channel>thought\n...<channel|> blocks inside
9
71
  * content deltas are routed to thinking-delta events; accumulated
10
72
  * thinking is flushed as a single thinking-block at end.
73
+ *
74
+ * Supports request timeout (default 60s) and catches SDK parse errors
75
+ * mid-stream, yielding a 'stop' event rather than propagating.
11
76
  */
12
77
  export async function* streamOpenAICompatible(client, streamParams, signal, options) {
13
78
  const suppressThinking = options?.suppressThinking ?? false;
14
- const sdkStream = (await client.chat.completions.create(streamParams));
15
- const pendingTools = new Map();
16
- let lastUsage = null;
17
- let inThinkBlock = false;
18
- let accumulatedThinking = '';
19
- // Gemma4 thinking open tag: <|channel>thought\n close tag: <channel|>
20
- const GEMMA_OPEN = '<|channel>thought\n';
21
- const GEMMA_CLOSE = '<channel|>';
22
- for await (const chunk of sdkStream) {
23
- if (signal?.aborted)
24
- break;
25
- if (chunk.usage)
26
- lastUsage = chunk.usage;
27
- const choice = chunk.choices?.[0];
28
- if (!choice)
29
- continue;
30
- if (choice.delta?.content && typeof choice.delta.content === 'string') {
31
- // Process content through a position cursor so both tag formats share one state machine.
32
- let remaining = choice.delta.content;
33
- while (remaining.length > 0) {
34
- if (!inThinkBlock) {
35
- // Detect whichever opening tag appears first.
36
- const thinkIdx = remaining.indexOf('<think>');
37
- const gemmaIdx = remaining.indexOf(GEMMA_OPEN);
38
- let openIdx = -1;
39
- let openTag = '';
40
- if (thinkIdx !== -1 && (gemmaIdx === -1 || thinkIdx <= gemmaIdx)) {
41
- openIdx = thinkIdx;
42
- openTag = '<think>';
43
- }
44
- else if (gemmaIdx !== -1) {
45
- openIdx = gemmaIdx;
46
- openTag = GEMMA_OPEN;
47
- }
48
- if (openIdx === -1) {
49
- // No opening tag plain text.
50
- yield { type: 'text-delta', text: remaining };
51
- remaining = '';
52
- }
53
- else {
54
- if (openIdx > 0)
55
- yield { type: 'text-delta', text: remaining.slice(0, openIdx) };
56
- inThinkBlock = true;
57
- remaining = remaining.slice(openIdx + openTag.length);
79
+ const timeoutMs = options?.timeoutMs ?? 60_000;
80
+ // Create internal abort controller: fires on user abort OR timeout.
81
+ const abortCtrl = new AbortController();
82
+ function forwardUserAbort() { abortCtrl.abort(); }
83
+ // If already aborted, forward immediately (addEventListener won't fire for pre-aborted signals)
84
+ if (signal?.aborted) {
85
+ abortCtrl.abort();
86
+ }
87
+ else {
88
+ signal?.addEventListener('abort', forwardUserAbort, { once: true });
89
+ }
90
+ const timeoutId = setTimeout(() => abortCtrl.abort(new Error('Provider request timeout after ' + timeoutMs + 'ms')), timeoutMs);
91
+ try {
92
+ const sdkStream = (await client.chat.completions.create(streamParams));
93
+ const pendingTools = new Map();
94
+ let lastUsage = null;
95
+ let finishReason = null;
96
+ let inThinkBlock = false;
97
+ let accumulatedThinking = '';
98
+ let debugTextAccum = '';
99
+ let debugToolCallCount = 0;
100
+ const debugLog = process.env.DEBUG_PROVIDER ? (m) => console.log('[stream]', m) : null;
101
+ // Gemma4 thinking open tag: <|channel>thought\n close tag: <channel|>
102
+ const GEMMA_OPEN = '<|channel>thought\n';
103
+ const GEMMA_CLOSE = '<channel|>';
104
+ try {
105
+ for await (const chunk of sdkStream) {
106
+ if (abortCtrl.signal.aborted)
107
+ break;
108
+ if (chunk.usage)
109
+ lastUsage = chunk.usage;
110
+ const choice = chunk.choices?.[0];
111
+ if (!choice)
112
+ continue;
113
+ if (choice.delta?.content && typeof choice.delta.content === 'string') {
114
+ // Process content through a position cursor so both tag formats share one state machine.
115
+ let remaining = choice.delta.content;
116
+ while (remaining.length > 0) {
117
+ if (!inThinkBlock) {
118
+ // Detect whichever opening tag appears first.
119
+ const thinkIdx = remaining.indexOf('<think>');
120
+ const gemmaIdx = remaining.indexOf(GEMMA_OPEN);
121
+ let openIdx = -1;
122
+ let openTag = '';
123
+ if (thinkIdx !== -1 && (gemmaIdx === -1 || thinkIdx <= gemmaIdx)) {
124
+ openIdx = thinkIdx;
125
+ openTag = '<think>';
126
+ }
127
+ else if (gemmaIdx !== -1) {
128
+ openIdx = gemmaIdx;
129
+ openTag = GEMMA_OPEN;
130
+ }
131
+ if (openIdx === -1) {
132
+ // No opening tag — plain text.
133
+ debugTextAccum += remaining;
134
+ yield { type: 'text-delta', text: remaining };
135
+ remaining = '';
136
+ }
137
+ else {
138
+ if (openIdx > 0) {
139
+ debugTextAccum += remaining.slice(0, openIdx);
140
+ yield { type: 'text-delta', text: remaining.slice(0, openIdx) };
141
+ }
142
+ inThinkBlock = true;
143
+ remaining = remaining.slice(openIdx + openTag.length);
144
+ }
145
+ }
146
+ else {
147
+ // Inside a think block — look for either close tag.
148
+ const closeTag = remaining.includes('</think>') && (!remaining.includes(GEMMA_CLOSE) || remaining.indexOf('</think>') <= remaining.indexOf(GEMMA_CLOSE))
149
+ ? '</think>'
150
+ : remaining.includes(GEMMA_CLOSE)
151
+ ? GEMMA_CLOSE
152
+ : null;
153
+ const closeIdx = closeTag !== null ? remaining.indexOf(closeTag) : -1;
154
+ if (closeIdx === -1) {
155
+ // Still inside think block — no close tag yet.
156
+ if (!suppressThinking)
157
+ yield { type: 'thinking-delta', text: remaining };
158
+ accumulatedThinking += remaining;
159
+ remaining = '';
160
+ }
161
+ else {
162
+ const thinkText = remaining.slice(0, closeIdx);
163
+ if (!suppressThinking)
164
+ yield { type: 'thinking-delta', text: thinkText };
165
+ accumulatedThinking += thinkText;
166
+ inThinkBlock = false;
167
+ remaining = remaining.slice(closeIdx + closeTag.length);
168
+ }
169
+ }
58
170
  }
59
171
  }
60
- else {
61
- // Inside a think block look for either close tag.
62
- const closeTag = remaining.includes('</think>') && (!remaining.includes(GEMMA_CLOSE) || remaining.indexOf('</think>') <= remaining.indexOf(GEMMA_CLOSE))
63
- ? '</think>'
64
- : remaining.includes(GEMMA_CLOSE)
65
- ? GEMMA_CLOSE
66
- : null;
67
- const closeIdx = closeTag !== null ? remaining.indexOf(closeTag) : -1;
68
- if (closeIdx === -1) {
69
- // Still inside think block — no close tag yet.
70
- if (!suppressThinking)
71
- yield { type: 'thinking-delta', text: remaining };
72
- accumulatedThinking += remaining;
73
- remaining = '';
74
- }
75
- else {
76
- const thinkText = remaining.slice(0, closeIdx);
77
- if (!suppressThinking)
78
- yield { type: 'thinking-delta', text: thinkText };
79
- accumulatedThinking += thinkText;
80
- inThinkBlock = false;
81
- remaining = remaining.slice(closeIdx + closeTag.length);
172
+ // DeepSeek v2 / Qwen 3.6+: reasoning_content streams in a separate delta field
173
+ // (not wrapped in <thinking> tags inside content). Route directly to thinking-delta.
174
+ const rc = choice.delta?.reasoning_content;
175
+ if (rc) {
176
+ if (!suppressThinking)
177
+ yield { type: 'thinking-delta', text: rc };
178
+ accumulatedThinking += rc;
179
+ }
180
+ if (choice.finish_reason)
181
+ finishReason = choice.finish_reason;
182
+ if (choice.delta?.tool_calls) {
183
+ for (const tc of choice.delta.tool_calls) {
184
+ const idx = tc.index ?? 0;
185
+ if (tc.id) {
186
+ pendingTools.set(idx, { id: tc.id, name: tc.function?.name ?? '', inputStr: '' });
187
+ }
188
+ const pending = pendingTools.get(idx);
189
+ if (pending) {
190
+ pending.inputStr += tc.function?.arguments ?? '';
191
+ }
82
192
  }
83
193
  }
84
194
  }
85
195
  }
86
- if (choice.delta?.tool_calls) {
87
- for (const tc of choice.delta.tool_calls) {
88
- const idx = tc.index ?? 0;
89
- if (tc.id) {
90
- pendingTools.set(idx, { id: tc.id, name: tc.function?.name ?? '', inputStr: '' });
91
- }
92
- const pending = pendingTools.get(idx);
93
- if (pending) {
94
- pending.inputStr += tc.function?.arguments ?? '';
95
- }
196
+ catch (streamErr) {
197
+ // SDK threw during SSE iteration (parse error, connection reset, etc.).
198
+ // If it's our own abort, treat as clean stop. Otherwise surface the error.
199
+ if (abortCtrl.signal.aborted) {
200
+ yield { type: 'stop', reason: 'aborted' };
201
+ return;
96
202
  }
203
+ const err = streamErr;
204
+ const msg = err?.message ?? String(streamErr);
205
+ const status = streamErr?.status ?? streamErr?.response?.status;
206
+ const detail = status ? `HTTP ${status}: ${msg}` : msg;
207
+ yield { type: 'stop', reason: 'error', errorDetail: detail };
208
+ return;
97
209
  }
210
+ if (accumulatedThinking && !suppressThinking) {
211
+ yield { type: 'thinking-block', thinking: accumulatedThinking, signature: '' };
212
+ }
213
+ // Skip tool calls whose JSON was truncated by the output token limit —
214
+ // emitting them with empty inputs causes retry loops in the turn loop.
215
+ for (const [, pending] of pendingTools) {
216
+ let input = {};
217
+ let parseOk = true;
218
+ try {
219
+ if (pending.inputStr)
220
+ input = JSON.parse(pending.inputStr);
221
+ }
222
+ catch {
223
+ parseOk = false;
224
+ }
225
+ if (!parseOk && finishReason === 'length')
226
+ continue;
227
+ debugToolCallCount++;
228
+ yield { type: 'tool-call', id: pending.id, name: pending.name, input };
229
+ }
230
+ // Fallback: parse tool calls embedded in plain text.
231
+ // Local models (Bielik, Mistral-family on llama.cpp) often output JSON directly
232
+ // instead of the structured tool_calls API field.
233
+ if (pendingTools.size === 0 && streamParams.tools && streamParams.tools.length > 0) {
234
+ const toolNames = new Set(streamParams.tools.map(t => t.function.name));
235
+ for (const tc of extractTextToolCalls(debugTextAccum, toolNames)) {
236
+ debugToolCallCount++;
237
+ yield { type: 'tool-call', id: tc.id, name: tc.name, input: tc.input };
238
+ }
239
+ }
240
+ // Debug summary at end of stream
241
+ debugLog?.(`DONE: textLen=${debugTextAccum.trim().length}, toolCalls=${debugToolCallCount}, thinkingLen=${accumulatedThinking.length}`);
242
+ if (debugTextAccum.trim().length === 0 && debugToolCallCount === 0) {
243
+ debugLog?.('WARNING: model produced zero text and zero tool calls');
244
+ }
245
+ if (lastUsage) {
246
+ yield {
247
+ type: 'usage',
248
+ inputTokens: lastUsage.prompt_tokens ?? 0,
249
+ outputTokens: lastUsage.completion_tokens ?? 0,
250
+ };
251
+ }
252
+ else if (options?.onNoUsage) {
253
+ const estimated = options.onNoUsage(debugTextAccum.trim());
254
+ yield { type: 'usage', inputTokens: estimated.inputTokens, outputTokens: estimated.outputTokens };
255
+ }
256
+ yield { type: 'stop', reason: abortCtrl.signal.aborted ? 'aborted' : (finishReason === 'length' ? 'length' : 'stop') };
98
257
  }
99
- if (accumulatedThinking && !suppressThinking) {
100
- yield { type: 'thinking-block', thinking: accumulatedThinking, signature: '' };
101
- }
102
- for (const [, pending] of pendingTools) {
103
- let input = {};
104
- try {
105
- if (pending.inputStr)
106
- input = JSON.parse(pending.inputStr);
258
+ catch (sdkErr) {
259
+ // SDK threw during initial request (abort, connection refused, etc.)
260
+ if (abortCtrl.signal.aborted) {
261
+ yield { type: 'stop', reason: 'aborted' };
107
262
  }
108
- catch {
109
- /* empty input on parse failure */
263
+ else {
264
+ const err = sdkErr;
265
+ const msg = err?.message ?? String(sdkErr);
266
+ const status = sdkErr?.status ?? sdkErr?.response?.status;
267
+ const detail = status ? `HTTP ${status}: ${msg}` : msg;
268
+ yield { type: 'stop', reason: 'error', errorDetail: detail };
110
269
  }
111
- yield { type: 'tool-call', id: pending.id, name: pending.name, input };
112
270
  }
113
- if (lastUsage) {
114
- yield {
115
- type: 'usage',
116
- inputTokens: lastUsage.prompt_tokens ?? 0,
117
- outputTokens: lastUsage.completion_tokens ?? 0,
118
- };
271
+ finally {
272
+ signal?.removeEventListener('abort', forwardUserAbort);
273
+ clearTimeout(timeoutId);
119
274
  }
120
- yield { type: 'stop', reason: signal?.aborted ? 'aborted' : 'stop' };
121
275
  }
122
276
  //# sourceMappingURL=openai-compatible-stream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible-stream.js","sourceRoot":"","sources":["../../src/openai-compatible-stream.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,sBAAsB,CAC3C,MAAc,EACd,YAA+C,EAC/C,MAAoB,EACpB,OAAwC;IAExC,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,IAAI,KAAK,CAAC;IAC5D,MAAM,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,CAA8C,CAAC;IAEpH,MAAM,YAAY,GAAG,IAAI,GAAG,EAA0D,CAAC;IACvF,IAAI,SAAS,GAAkC,IAAI,CAAC;IACpD,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,mBAAmB,GAAG,EAAE,CAAC;IAE7B,uEAAuE;IACvE,MAAM,UAAU,GAAG,qBAAqB,CAAC;IACzC,MAAM,WAAW,GAAG,YAAY,CAAC;IAEjC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QACpC,IAAI,MAAM,EAAE,OAAO;YAAE,MAAM;QAE3B,IAAI,KAAK,CAAC,KAAK;YAAE,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;QAEzC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACtE,yFAAyF;YACzF,IAAI,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YAErC,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,8CAA8C;oBAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAE/C,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;oBACjB,IAAI,OAAO,GAAG,EAAE,CAAC;oBACjB,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC;wBACjE,OAAO,GAAG,QAAQ,CAAC;wBACnB,OAAO,GAAG,SAAS,CAAC;oBACtB,CAAC;yBAAM,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;wBAC3B,OAAO,GAAG,QAAQ,CAAC;wBACnB,OAAO,GAAG,UAAU,CAAC;oBACvB,CAAC;oBAED,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;wBACnB,+BAA+B;wBAC/B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wBAC9C,SAAS,GAAG,EAAE,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,IAAI,OAAO,GAAG,CAAC;4BAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;wBACjF,YAAY,GAAG,IAAI,CAAC;wBACpB,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;oBACxD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,oDAAoD;oBACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;wBACtJ,CAAC,CAAC,UAAU;wBACZ,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;4BACjC,CAAC,CAAC,WAAW;4BACb,CAAC,CAAC,IAAI,CAAC;oBAET,MAAM,QAAQ,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEtE,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;wBACpB,+CAA+C;wBAC/C,IAAI,CAAC,gBAAgB;4BAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wBACzE,mBAAmB,IAAI,SAAS,CAAC;wBACjC,SAAS,GAAG,EAAE,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;wBAC/C,IAAI,CAAC,gBAAgB;4BAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wBACzE,mBAAmB,IAAI,SAAS,CAAC;wBACjC,YAAY,GAAG,KAAK,CAAC;wBACrB,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAI,QAAmB,CAAC,MAAM,CAAC,CAAC;oBACtE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;YAC7B,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBACzC,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC1B,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBACV,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,CAAC;gBACnD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,mBAAmB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACjF,CAAC;IAED,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,KAAK,GAA4B,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,QAAQ;gBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;IACzE,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM;YACJ,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,SAAS,CAAC,aAAa,IAAI,CAAC;YACzC,YAAY,EAAE,SAAS,CAAC,iBAAiB,IAAI,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"openai-compatible-stream.js","sourceRoot":"","sources":["../../src/openai-compatible-stream.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EAKvB,MAAM,eAAe,CAAC;AAGvB,KAAK,kBAAkB,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAAC,MAAM,IAAI,IAAI,CAAA;CAAE,CAAC;AA2B5E,qBAAa,cAAe,YAAW,QAAQ;IAC7C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,MAAM,WAiBb;IACF,QAAQ,CAAC,YAAY,YAAY;IAEjC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAiB7C,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC;IAQnE,OAAO,CAAC,UAAU;IAkClB,OAAO,CAAC,eAAe;IAoFjB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QACjC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,MAAM,CAAC;YAQL,SAAS;YAqBT,cAAc;IAmBtB,QAAQ,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;YAQ7D,YAAY;YAqDZ,iBAAiB;IA4C/B,OAAO,CAAC,WAAW;IA4CnB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,kBAAkB;IAoD1B,OAAO,CAAC,mBAAmB;CAS5B"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EAKvB,MAAM,eAAe,CAAC;AAGvB,KAAK,kBAAkB,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAAC,MAAM,IAAI,IAAI,CAAA;CAAE,CAAC;AA2B5E,qBAAa,cAAe,YAAW,QAAQ;IAC7C,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,MAAM,WAiBb;IACF,QAAQ,CAAC,YAAY,YAAY;IAEjC,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAiB7C,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC;IAQnE,OAAO,CAAC,UAAU;IAoClB,OAAO,CAAC,eAAe;IAoFjB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QACjC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,MAAM,CAAC;YAQL,SAAS;YAqBT,cAAc;IAmBtB,QAAQ,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;YAQ7D,YAAY;YAqDZ,iBAAiB;IA4C/B,OAAO,CAAC,WAAW;IA4CnB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,kBAAkB;IAoD1B,OAAO,CAAC,mBAAmB;CAS5B"}
@@ -67,7 +67,7 @@ export class OpenAIProvider {
67
67
  const modelIsReasoning = isReasoningModel(model);
68
68
  const reasoningEffort = effortToReasoning(args.effort);
69
69
  const maxTokens = modelIsReasoning
70
- ? args.maxTokens ?? 16_384
70
+ ? args.maxTokens ?? 65_536
71
71
  : args.maxTokens;
72
72
  const messages = this.mapMessages(args.messages);
73
73
  const tools = args.tools ? this.mapTools(args.tools) : undefined;
@@ -84,10 +84,11 @@ export class OpenAIProvider {
84
84
  ...(modelIsReasoning && reasoningEffort ? { reasoning_effort: reasoningEffort } : {}),
85
85
  stream_options: { include_usage: true },
86
86
  };
87
+ const abortCtrl = new AbortController();
87
88
  return {
88
- iterable: streamOpenAICompatible(this.client, streamParams, args.signal),
89
+ iterable: streamOpenAICompatible(this.client, streamParams, args.signal ?? abortCtrl.signal),
89
90
  cancel() {
90
- // Chat Completions SDK doesn't expose a public cancel method.
91
+ abortCtrl.abort();
91
92
  },
92
93
  };
93
94
  }
@@ -192,7 +193,7 @@ export class OpenAIProvider {
192
193
  const response = await this.client.chat.completions.create({
193
194
  model,
194
195
  messages,
195
- max_tokens: 256,
196
+ max_tokens: 2048,
196
197
  temperature: 0,
197
198
  });
198
199
  return response.choices[0]?.message?.content?.trim() ?? '';
@@ -221,7 +222,7 @@ export class OpenAIProvider {
221
222
  const modelIsReasoning = isReasoningModel(model);
222
223
  const reasoningEffort = effortToReasoning(args.effort);
223
224
  const maxTokens = modelIsReasoning
224
- ? args.maxTokens ?? 16_384
225
+ ? args.maxTokens ?? 65_536
225
226
  : args.maxTokens;
226
227
  const messages = this.mapMessages(args.messages);
227
228
  const tools = args.tools ? this.mapTools(args.tools) : undefined;
@@ -336,7 +337,7 @@ export class OpenAIProvider {
336
337
  }));
337
338
  return {
338
339
  role: 'assistant',
339
- content: textParts.join('\n') || null,
340
+ content: textParts.join('\n') || '',
340
341
  ...(toolCalls.length > 0 ? { tool_calls: toolCalls } : {}),
341
342
  };
342
343
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAY5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,SAAS,iBAAiB,CAAC,MAAwB;IACjD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK,CAAC,CAAI,OAAO,KAAK,CAAC;QAC5B,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC/B,KAAK,MAAM,CAAC,CAAG,OAAO,MAAM,CAAC;QAC7B,KAAK,KAAK,CAAC,CAAI,OAAO,OAAO,CAAC;QAC9B,KAAK,MAAM,CAAC;QACZ,OAAO,CAAC,CAAO,OAAO,SAAS,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAwB;IACpD,MAAM,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,KAAK;QAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACpC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,kBAAkB,GAAG,2DAA2D,CAAC;AAEvF,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC;AAED,gEAAgE;AAEhE,MAAM,OAAO,cAAc;IAChB,IAAI,GAAG,QAAQ,CAAC;IAChB,MAAM,GAAG;QAChB,QAAQ;QACR,mBAAmB;QACnB,aAAa;QACb,wBAAwB;QACxB,IAAI;QACJ,SAAS;QACT,YAAY;QACZ,SAAS;QACT,oBAAoB;QACpB,IAAI;QACJ,SAAS;QACT,SAAS;QACT,aAAa;QACb,SAAS;QACT,cAAc;QACd,aAAa;KACd,CAAC;IACO,YAAY,GAAG,QAAQ,CAAC;IAEzB,MAAM,CAAS;IAEvB,YAAY,MAAe,EAAE,OAAgB;QAC3C,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAC/C,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;YACvB,MAAM,EAAE,WAAW;YACnB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,8DAA8D;IAE9D,MAAM,CAAC,IAAwB;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QAC9C,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAEO,UAAU,CAAC,IAAwB,EAAE,KAAa;QACxD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,SAAS,GAAG,gBAAgB;YAChC,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM;YAC1B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEjE,MAAM,WAAW,GAAwC,IAAI,CAAC,MAAM;YAClE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC;YACzD,CAAC,CAAC,QAAQ,CAAC;QAEb,MAAM,YAAY,GAAG;YACnB,KAAK;YACL,QAAQ,EAAE,WAAW;YACrB,MAAM,EAAE,IAAI;YACZ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,gBAAgB,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;SACH,CAAC;QAEvC,OAAO;YACL,QAAQ,EAAE,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC;YACxE,MAAM;gBACJ,8DAA8D;YAChE,CAAC;SACF,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,IAAwB,EAAE,KAAa;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5E,MAAM,UAAU,GAA4B;YAC1C,KAAK;YACL,KAAK,EAAE,UAAU;YACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,SAAS,EAAE;gBACT,GAAG,CAAC,eAAe,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;gBACzC,OAAO,EAAE,MAAM;aAChB;YACD,UAAU,EAAE,MAAM;YAClB,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,KAAK,SAAS,CAAC,CAAC,SAAS;YACvB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAiB,CAAsD,CAAC;YAE7H,MAAM,YAAY,GAAG,IAAI,GAAG,EAA4E,CAAC;YACzG,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAClC,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO;oBAAE,MAAM;gBAChC,MAAM,GAAG,GAAG,GAA8B,CAAC;gBAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;gBAEpC,IAAI,IAAI,KAAK,4BAA4B,EAAE,CAAC;oBAC1C,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC9D,CAAC;qBAAM,IAAI,IAAI,KAAK,uCAAuC,IAAI,IAAI,KAAK,0BAA0B,EAAE,CAAC;oBACnG,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;gBAClE,CAAC;qBAAM,IAAI,IAAI,KAAK,uCAAuC,EAAE,CAAC;oBAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;oBAC1C,IAAI,KAAK,GAA4B,EAAE,CAAC;oBACxC,IAAI,CAAC;wBAAC,IAAI,GAAG,CAAC,SAAS;4BAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;oBAC3F,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACvC,IAAI,QAAQ;wBAAE,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;gBACvC,CAAC;qBAAM,IAAI,IAAI,KAAK,4BAA4B,EAAE,CAAC;oBACjD,MAAM,IAAI,GAAG,GAAG,CAAC,IAA+B,CAAC;oBACjD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;wBAC1C,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE;4BAC9C,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;4BAClC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;4BAC7B,KAAK,EAAE,EAAE;yBACV,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBACzC,MAAM,IAAI,GAAG,GAAG,CAAC,QAAmC,CAAC;oBACrD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAgC,CAAC;oBAChD,IAAI,CAAC,EAAE,CAAC;wBACN,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;wBAC7C,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,0FAA0F;YAC1F,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YAC5F,CAAC;YAED,IAAI,cAAc,IAAI,eAAe,EAAE,CAAC;gBACtC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC;YACtF,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC5E,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,SAAS,EAAE;YACrB,MAAM;gBACJ,kEAAkE;YACpE,CAAC;SACF,CAAC;IACJ,CAAC;IAED,8DAA8D;IAE9D,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,IAI3B;QACC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/C,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,IAIvC;QACC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/C,MAAM,QAAQ,GAAwC;YACpD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;SAClC,CAAC;QACF,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACzD,KAAK;YACL,QAAQ;YACR,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,CAAC;SACf,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC7D,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,IAI5C;QACC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YAClD,KAAK;YACL,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAC1C,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,iBAAiB,EAAE,GAAG;YACtB,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,MAAM;SACZ,CAAC,CAAC;QACV,OAAQ,QAAqC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC3E,CAAC;IAED,8DAA8D;IAE9D,KAAK,CAAC,QAAQ,CAAC,IAA0B;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;QAC9C,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,IAA0B,EAAE,KAAa;QAClE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEvD,MAAM,SAAS,GAAG,gBAAgB;YAChC,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM;YAC1B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;QAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEjE,MAAM,WAAW,GAAwC,IAAI,CAAC,MAAM;YAClE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC;YACzD,CAAC,CAAC,QAAQ,CAAC;QAEb,MAAM,cAAc,GAAG;YACrB,KAAK;YACL,QAAQ,EAAE,WAAW;YACrB,MAAM,EAAE,KAAK;YACb,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,gBAAgB,IAAI,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;SACxC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,cAAqB,CAA0B,CAAC;QAE3G,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAE5C,MAAM,SAAS,GAAG,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE;YACtD,IAAI,KAAK,GAA4B,EAAE,CAAC;YACxC,IAAI,CAAC;gBAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS;oBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;YACpG,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAE7B,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK;YAC1B,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE;YAC/F,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YACjB,UAAU,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,MAAM,IAAI,MAAM,EAAE,aAAa,KAAK,eAAe,CAAC;gBACzF,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,EAAE,aAAa,KAAK,YAAY,CAAC,CAAC,CAAC,UAAU;oBACrD,CAAC,CAAC,MAAM,EAAE,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ;wBAC/C,CAAC,CAAC,MAAM,EAAE,aAAa,KAAK,gBAAgB,CAAC,CAAC,CAAC,gBAAgB;4BAC/D,CAAC,CAAC,MAAM;YACV,KAAK;YACL,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACxD,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,IAA0B,EAAE,KAAa;QACvE,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5E,MAAM,UAAU,GAA4B;YAC1C,KAAK;YACL,KAAK,EAAE,UAAU;YACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,UAAU,EAAE,MAAM;SACnB,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAiB,CAAuC,CAAC;QAE7G,MAAM,IAAI,GAAI,QAAQ,CAAC,WAAsB,IAAI,EAAE,CAAC;QAEpD,MAAM,WAAW,GAAI,QAAQ,CAAC,MAAgB,IAAI,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,WAAW;aAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;aAC7C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACV,IAAI,KAAK,GAA4B,EAAE,CAAC;YACxC,IAAI,CAAC;gBAAC,IAAI,EAAE,CAAC,SAAS;oBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC;YACjF,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,OAAiB,EAAE,IAAI,EAAE,EAAE,CAAC,IAAc,EAAE,KAAK,EAAE,CAAC;QACtE,CAAC,CAAC,CAAC;QAEL,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAsE,CAAC;QACjG,MAAM,KAAK,GAAG,QAAQ;YACpB,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,YAAY,IAAI,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,aAAa,IAAI,CAAC,EAAE;YACxF,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YACjB,UAAU,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;YACtD,KAAK;YACL,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACxD,CAAC;IACJ,CAAC;IAED,8DAA8D;IAEtD,WAAW,CAAC,QAA2B;QAC7C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACtB,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAiB;oBAC5B,YAAY,EAAG,CAA2B,CAAC,SAAS;iBACZ,CAAC;YAC7C,CAAC;YAED,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAClC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAuC,CAAC;YACnF,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAClD,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;qBACxB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;qBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACvD,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;qBACxB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;qBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;qBACxB,MAAM,CAAC,CAAC,CAAC,EAAuF,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC;qBACzH,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACT,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,IAAI,EAAE,UAAmB;oBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;iBAC/D,CAAC,CAAC,CAAC;gBAEN,OAAO;oBACL,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI;oBACrC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACb,CAAC;YAClD,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,QAAQ,CAAC,KAAuB;QACtC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,UAAU,EAAE,CAAC,CAAC,WAAsC;aACrD;SACF,CAAC,CAAC,CAAC;IACN,CAAC;IAED,8DAA8D;IAEtD,kBAAkB,CAAC,QAA2B;QACpD,MAAM,KAAK,GAA8B,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAG,CAA2B,CAAC,SAAS;oBAC/C,MAAM,EAAE,CAAC,CAAC,OAAiB;iBAC5B,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACzC,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,CAAC,CAAC,IAA4B;oBACpC,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC3B,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;yBACxB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;yBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpB,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO;yBACvB,MAAM,CAAC,CAAC,CAAC,EAAuF,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;oBAE7H,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,KAAK,CAAC,IAAI,CAAC;4BACT,IAAI,EAAE,WAAW;4BACjB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;4BACjE,MAAM,EAAE,WAAW;yBACpB,CAAC,CAAC;oBACL,CAAC;oBACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;wBAC1B,KAAK,CAAC,IAAI,CAAC;4BACT,IAAI,EAAE,eAAe;4BACrB,OAAO,EAAE,EAAE,CAAC,EAAE;4BACd,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC;yBACpC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO;yBACxB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;yBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpB,KAAK,CAAC,IAAI,CAAC;wBACT,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;qBAC9B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,mBAAmB,CAAC,KAAuB;QACjD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvB,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,UAAU,EAAE,CAAC,CAAC,WAAW;YACzB,MAAM,EAAE,IAAI;SACb,CAAC,CAAC,CAAC;IACN,CAAC;CACF"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ export declare class OpenRouterProvider implements Provider {
9
9
  readonly defaultModel = "anthropic/claude-sonnet-4-6";
10
10
  private client;
11
11
  private _baseUrl;
12
+ private _providerOrder;
12
13
  private _allModels;
13
- constructor(apiKey?: string, baseUrl?: string);
14
+ constructor(apiKey?: string, baseUrl?: string, providerOrder?: string[]);
14
15
  private _fetchModels;
15
16
  getModels(): Promise<string[]>;
16
17
  stream(args: ProviderStreamArgs): CancelableIterable<ProviderEvent>;
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../src/openrouter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EAIvB,MAAM,eAAe,CAAC;AAEvB,KAAK,kBAAkB,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAAC,MAAM,IAAI,IAAI,CAAA;CAAE,CAAC;AA8B5E,qBAAa,kBAAmB,YAAW,QAAQ;IACjD,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,YAAY,iCAAiC;IAEtD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAyB;gBAE/B,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;YAqB/B,YAAY;IAkBpB,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIpC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC;IA6H7D,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QACjC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBb,QAAQ,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA0D3E,OAAO,CAAC,WAAW;IA+CnB,OAAO,CAAC,QAAQ;CAUjB"}
1
+ {"version":3,"file":"openrouter.d.ts","sourceRoot":"","sources":["../../src/openrouter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EAIvB,MAAM,eAAe,CAAC;AAEvB,KAAK,kBAAkB,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAAC,MAAM,IAAI,IAAI,CAAA;CAAE,CAAC;AA8B5E,qBAAa,kBAAmB,YAAW,QAAQ;IACjD,QAAQ,CAAC,IAAI,gBAAgB;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,YAAY,iCAAiC;IAEtD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,UAAU,CAAyB;gBAE/B,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE;YAsBzD,YAAY;IAkBpB,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIpC,MAAM,CAAC,IAAI,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC;IA8H7D,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QACjC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBb,QAAQ,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IA2D3E,OAAO,CAAC,WAAW;IA+CnB,OAAO,CAAC,QAAQ;CAUjB"}
@@ -31,8 +31,9 @@ export class OpenRouterProvider {
31
31
  defaultModel = 'anthropic/claude-sonnet-4-6';
32
32
  client;
33
33
  _baseUrl;
34
+ _providerOrder;
34
35
  _allModels = null;
35
- constructor(apiKey, baseUrl) {
36
+ constructor(apiKey, baseUrl, providerOrder) {
36
37
  const resolvedKey = (apiKey && apiKey.length > 0)
37
38
  ? apiKey
38
39
  : process.env.OPENROUTER_API_KEY;
@@ -40,6 +41,7 @@ export class OpenRouterProvider {
40
41
  throw new Error('OpenRouterProvider: no API key (pass explicitly or set OPENROUTER_API_KEY).');
41
42
  }
42
43
  this._baseUrl = baseUrl || 'https://openrouter.ai/api/v1';
44
+ this._providerOrder = providerOrder;
43
45
  this.client = new OpenAI({
44
46
  apiKey: resolvedKey,
45
47
  baseURL: this._baseUrl,
@@ -87,8 +89,9 @@ export class OpenRouterProvider {
87
89
  stream: true,
88
90
  ...(tools ? { tools } : {}),
89
91
  ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
90
- ...(args.maxTokens ? { max_tokens: args.maxTokens } : {}),
92
+ max_tokens: args.maxTokens ?? 65536,
91
93
  ...(reasoning ? { reasoning } : {}),
94
+ ...(this._providerOrder && this._providerOrder.length > 0 ? { provider: { order: this._providerOrder } } : {}),
92
95
  stream_options: { include_usage: true },
93
96
  };
94
97
  let sdkStream = null;
@@ -189,7 +192,7 @@ export class OpenRouterProvider {
189
192
  const response = await this.client.chat.completions.create({
190
193
  model,
191
194
  messages,
192
- max_tokens: 256,
195
+ max_tokens: 2048,
193
196
  temperature: 0,
194
197
  });
195
198
  return response.choices[0]?.message?.content?.trim() ?? '';
@@ -208,8 +211,9 @@ export class OpenRouterProvider {
208
211
  stream: false,
209
212
  ...(tools ? { tools } : {}),
210
213
  ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
211
- ...(args.maxTokens ? { max_tokens: args.maxTokens } : {}),
214
+ max_tokens: args.maxTokens ?? 16384,
212
215
  ...(reasoning ? { reasoning } : {}),
216
+ ...(this._providerOrder && this._providerOrder.length > 0 ? { provider: { order: this._providerOrder } } : {}),
213
217
  });
214
218
  const choice = response.choices[0];
215
219
  const text = choice?.message?.content ?? '';