@curie-agent/providers 0.2.3 → 0.2.5

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,18 +1,26 @@
1
1
  import OpenAI from 'openai';
2
+ import { streamOpenAICompatible } from './openai-compatible-stream.js';
2
3
  function effortToReasoning(effort) {
3
4
  switch (effort) {
4
5
  case 'low': return 'low';
5
6
  case 'medium': return 'medium';
6
7
  case 'high': return 'high';
7
- case 'max': return 'high';
8
+ case 'max': return 'xhigh';
8
9
  case 'auto':
9
10
  default: return undefined;
10
11
  }
11
12
  }
12
- const REASONING_MODEL_RE = /^(o1|o3)[-:]?(mini|medium|high|pro)?$/i;
13
+ function effortToReasoningObj(effort) {
14
+ const level = effortToReasoning(effort);
15
+ if (level)
16
+ return { effort: level };
17
+ return undefined;
18
+ }
19
+ const REASONING_MODEL_RE = /^(o1|o3|o4|gpt-5)[-\d:.]*(mini|medium|high|pro)?(-\d+)?$/i;
13
20
  function isReasoningModel(model) {
14
21
  return REASONING_MODEL_RE.test(model);
15
22
  }
23
+ // ─── Provider ────────────────────────────────────────────────
16
24
  export class OpenAIProvider {
17
25
  name = 'openai';
18
26
  models = [
@@ -25,6 +33,12 @@ export class OpenAIProvider {
25
33
  'o1-preview',
26
34
  'o3-mini',
27
35
  'o3-mini-2025-01-31',
36
+ 'o3',
37
+ 'o4-mini',
38
+ 'gpt-5.5',
39
+ 'gpt-5.5-pro',
40
+ 'gpt-5.4',
41
+ 'gpt-5.4-mini',
28
42
  'gpt-4-turbo',
29
43
  ];
30
44
  defaultModel = 'gpt-4o';
@@ -41,9 +55,15 @@ export class OpenAIProvider {
41
55
  ...(baseUrl ? { baseURL: baseUrl } : {}),
42
56
  });
43
57
  }
58
+ // ─── Stream ────────────────────────────────────────────────
44
59
  stream(args) {
45
- const self = this;
46
60
  const model = args.model || this.defaultModel;
61
+ if (isReasoningModel(model)) {
62
+ return this.streamResponses(args, model);
63
+ }
64
+ return this.streamChat(args, model);
65
+ }
66
+ streamChat(args, model) {
47
67
  const modelIsReasoning = isReasoningModel(model);
48
68
  const reasoningEffort = effortToReasoning(args.effort);
49
69
  const maxTokens = modelIsReasoning
@@ -64,75 +84,104 @@ export class OpenAIProvider {
64
84
  ...(modelIsReasoning && reasoningEffort ? { reasoning_effort: reasoningEffort } : {}),
65
85
  stream_options: { include_usage: true },
66
86
  };
67
- let sdkStream = null;
87
+ return {
88
+ iterable: streamOpenAICompatible(this.client, streamParams, args.signal),
89
+ cancel() {
90
+ // Chat Completions SDK doesn't expose a public cancel method.
91
+ },
92
+ };
93
+ }
94
+ streamResponses(args, model) {
95
+ const self = this;
96
+ const reasoningEffort = effortToReasoningObj(args.effort);
97
+ const inputItems = this.mapMessagesToInput(args.messages);
98
+ const tools = args.tools ? this.mapToolsToResponses(args.tools) : undefined;
99
+ const respParams = {
100
+ model,
101
+ input: inputItems,
102
+ ...(args.system ? { instructions: args.system } : {}),
103
+ ...(tools ? { tools } : {}),
104
+ ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
105
+ ...(args.maxTokens ? { max_output_tokens: args.maxTokens } : {}),
106
+ reasoning: {
107
+ ...(reasoningEffort ?? { effort: 'low' }),
108
+ summary: 'auto',
109
+ },
110
+ truncation: 'auto',
111
+ stream: true,
112
+ };
68
113
  async function* generator() {
69
- sdkStream = await self.client.chat.completions.create(streamParams);
114
+ const sdkStream = await self.client.responses.create(respParams);
70
115
  const pendingTools = new Map();
71
- let lastUsage = null;
72
- if (!sdkStream)
73
- return;
74
- for await (const chunk of sdkStream) {
75
- if (args.signal?.aborted) {
116
+ let lastUsageInput = 0;
117
+ let lastUsageOutput = 0;
118
+ for await (const raw of sdkStream) {
119
+ if (args.signal?.aborted)
76
120
  break;
121
+ const evt = raw;
122
+ const type = String(evt.type ?? '');
123
+ if (type === 'response.output_text.delta') {
124
+ yield { type: 'text-delta', text: String(evt.delta ?? '') };
77
125
  }
78
- if (chunk.usage) {
79
- lastUsage = chunk.usage;
126
+ else if (type === 'response.reasoning_summary_text.delta' || type === 'response.reasoning.delta') {
127
+ yield { type: 'thinking-delta', text: String(evt.delta ?? '') };
80
128
  }
81
- const choice = chunk.choices?.[0];
82
- if (!choice)
83
- continue;
84
- // Text deltas
85
- if (choice.delta?.content) {
86
- yield { type: 'text-delta', text: choice.delta.content };
129
+ else if (type === 'response.function_call_arguments.done') {
130
+ const idx = Number(evt.output_index ?? 0);
131
+ let input = {};
132
+ try {
133
+ if (evt.arguments)
134
+ input = JSON.parse(String(evt.arguments));
135
+ }
136
+ catch { /* empty */ }
137
+ const existing = pendingTools.get(idx);
138
+ if (existing)
139
+ existing.input = input;
87
140
  }
88
- // Tool call deltas
89
- if (choice.delta?.tool_calls) {
90
- for (const tc of choice.delta.tool_calls) {
91
- const idx = tc.index ?? 0;
92
- if (tc.id) {
93
- pendingTools.set(idx, { id: tc.id, name: tc.function?.name ?? '', inputStr: '' });
94
- }
95
- const pending = pendingTools.get(idx);
96
- if (pending) {
97
- pending.inputStr += tc.function?.arguments ?? '';
98
- }
141
+ else if (type === 'response.output_item.added') {
142
+ const item = evt.item;
143
+ if (item && item.type === 'function_call') {
144
+ pendingTools.set(Number(evt.output_index ?? 0), {
145
+ callId: String(item.call_id ?? ''),
146
+ name: String(item.name ?? ''),
147
+ input: {},
148
+ });
99
149
  }
100
150
  }
101
- }
102
- // Resolve any pending tool calls
103
- for (const [, pending] of pendingTools) {
104
- let input = {};
105
- try {
106
- if (pending.inputStr) {
107
- input = JSON.parse(pending.inputStr);
151
+ else if (type === 'response.completed') {
152
+ const resp = evt.response;
153
+ const u = resp.usage;
154
+ if (u) {
155
+ lastUsageInput = Number(u.input_tokens ?? 0);
156
+ lastUsageOutput = Number(u.output_tokens ?? 0);
108
157
  }
109
158
  }
110
- catch { /* empty input on parse failure */ }
111
- yield { type: 'tool-call', id: pending.id, name: pending.name, input };
112
159
  }
113
- // Emit usage
114
- if (lastUsage) {
115
- yield {
116
- type: 'usage',
117
- inputTokens: lastUsage.prompt_tokens ?? 0,
118
- outputTokens: lastUsage.completion_tokens ?? 0,
119
- };
160
+ // Flush buffered tool calls in stream order so the TUI renders them as one grouped block.
161
+ for (const [, pending] of pendingTools) {
162
+ yield { type: 'tool-call', id: pending.callId, name: pending.name, input: pending.input };
163
+ }
164
+ if (lastUsageInput || lastUsageOutput) {
165
+ yield { type: 'usage', inputTokens: lastUsageInput, outputTokens: lastUsageOutput };
120
166
  }
121
167
  yield { type: 'stop', reason: args.signal?.aborted ? 'aborted' : 'stop' };
122
168
  }
123
169
  return {
124
170
  iterable: generator(),
125
171
  cancel() {
126
- // The OpenAI Node.js SDK doesn't expose a public cancel method on the
127
- // async iterable. The signal.aborted check inside the generator loop
128
- // will break on the next iteration, but there's no way to
129
- // synchronously abort the underlying HTTP request.
130
- // The abort signal is still passed through streamParams, so the SDK
131
- // may honor it internally.
172
+ // Responses API stream cancellation via abort signal in the loop.
132
173
  },
133
174
  };
134
175
  }
176
+ // ─── Check ─────────────────────────────────────────────────
135
177
  async check(prompt, args) {
178
+ const model = args?.model || this.defaultModel;
179
+ if (isReasoningModel(model)) {
180
+ return this.checkResponses(prompt, args);
181
+ }
182
+ return this.checkChat(prompt, args);
183
+ }
184
+ async checkChat(prompt, args) {
136
185
  const model = args?.model || this.defaultModel;
137
186
  const messages = [
138
187
  { role: 'user', content: prompt },
@@ -148,8 +197,27 @@ export class OpenAIProvider {
148
197
  });
149
198
  return response.choices[0]?.message?.content?.trim() ?? '';
150
199
  }
200
+ async checkResponses(prompt, args) {
201
+ const model = args?.model || this.defaultModel;
202
+ const response = await this.client.responses.create({
203
+ model,
204
+ input: [{ role: 'user', content: prompt }],
205
+ ...(args?.system ? { instructions: args.system } : {}),
206
+ max_output_tokens: 256,
207
+ temperature: 0,
208
+ truncation: 'auto',
209
+ });
210
+ return response?.output_text?.trim() ?? '';
211
+ }
212
+ // ─── Complete ──────────────────────────────────────────────
151
213
  async complete(args) {
152
214
  const model = args.model || this.defaultModel;
215
+ if (isReasoningModel(model)) {
216
+ return this.completeResponses(args, model);
217
+ }
218
+ return this.completeChat(args, model);
219
+ }
220
+ async completeChat(args, model) {
153
221
  const modelIsReasoning = isReasoningModel(model);
154
222
  const reasoningEffort = effortToReasoning(args.effort);
155
223
  const maxTokens = modelIsReasoning
@@ -160,7 +228,7 @@ export class OpenAIProvider {
160
228
  const allMessages = args.system
161
229
  ? [{ role: 'system', content: args.system }, ...messages]
162
230
  : messages;
163
- const response = await this.client.chat.completions.create({
231
+ const responseParams = {
164
232
  model,
165
233
  messages: allMessages,
166
234
  stream: false,
@@ -169,22 +237,18 @@ export class OpenAIProvider {
169
237
  ...(maxTokens ? { max_completion_tokens: maxTokens } : {}),
170
238
  ...(modelIsReasoning && reasoningEffort ? { reasoning_effort: reasoningEffort } : {}),
171
239
  stream_options: { include_usage: true },
172
- });
240
+ };
241
+ const response = await this.client.chat.completions.create(responseParams);
173
242
  const choice = response.choices[0];
174
243
  const text = choice?.message?.content ?? '';
175
244
  const toolCalls = choice?.message?.tool_calls?.map(tc => {
176
245
  let input = {};
177
246
  try {
178
- if (tc.function?.arguments) {
247
+ if (tc.function?.arguments)
179
248
  input = JSON.parse(tc.function.arguments);
180
- }
181
249
  }
182
- catch { /* empty input on parse failure */ }
183
- return {
184
- id: tc.id ?? '',
185
- name: tc.function?.name ?? '',
186
- input,
187
- };
250
+ catch { /* empty */ }
251
+ return { id: tc.id ?? '', name: tc.function?.name ?? '', input };
188
252
  }).filter(tc => tc.id) ?? [];
189
253
  const usage = response.usage
190
254
  ? { inputTokens: response.usage.prompt_tokens, outputTokens: response.usage.completion_tokens }
@@ -193,17 +257,54 @@ export class OpenAIProvider {
193
257
  text: text.trim(),
194
258
  stopReason: (choice?.finish_reason === 'stop' || choice?.finish_reason === 'function_call')
195
259
  ? 'stop'
196
- : choice?.finish_reason === 'tool_calls'
197
- ? 'tool_use'
198
- : choice?.finish_reason === 'length'
199
- ? 'length'
200
- : choice?.finish_reason === 'content_filter'
201
- ? 'content_filter'
260
+ : choice?.finish_reason === 'tool_calls' ? 'tool_use'
261
+ : choice?.finish_reason === 'length' ? 'length'
262
+ : choice?.finish_reason === 'content_filter' ? 'content_filter'
202
263
  : 'stop',
203
264
  usage,
204
265
  toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
205
266
  };
206
267
  }
268
+ async completeResponses(args, model) {
269
+ const reasoningEffort = effortToReasoningObj(args.effort);
270
+ const inputItems = this.mapMessagesToInput(args.messages);
271
+ const tools = args.tools ? this.mapToolsToResponses(args.tools) : undefined;
272
+ const respParams = {
273
+ model,
274
+ input: inputItems,
275
+ ...(args.system ? { instructions: args.system } : {}),
276
+ ...(tools ? { tools } : {}),
277
+ ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
278
+ ...(args.maxTokens ? { max_output_tokens: args.maxTokens } : {}),
279
+ ...(reasoningEffort ? { reasoning: reasoningEffort } : {}),
280
+ truncation: 'auto',
281
+ };
282
+ const response = await this.client.responses.create(respParams);
283
+ const text = response.output_text ?? '';
284
+ const outputItems = response.output ?? [];
285
+ const toolCalls = outputItems
286
+ .filter(item => item.type === 'function_call')
287
+ .map((fc) => {
288
+ let input = {};
289
+ try {
290
+ if (fc.arguments)
291
+ input = JSON.parse(fc.arguments);
292
+ }
293
+ catch { /* empty */ }
294
+ return { id: fc.call_id, name: fc.name, input };
295
+ });
296
+ const usageObj = response.usage;
297
+ const usage = usageObj
298
+ ? { inputTokens: usageObj.input_tokens ?? 0, outputTokens: usageObj.output_tokens ?? 0 }
299
+ : undefined;
300
+ return {
301
+ text: text.trim(),
302
+ stopReason: toolCalls.length > 0 ? 'tool_use' : 'stop',
303
+ usage,
304
+ toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
305
+ };
306
+ }
307
+ // ─── Chat Completions mappers ──────────────────────────────
207
308
  mapMessages(messages) {
208
309
  return messages.map((m) => {
209
310
  if (m.role === 'tool') {
@@ -231,10 +332,7 @@ export class OpenAIProvider {
231
332
  .map(c => ({
232
333
  id: c.id,
233
334
  type: 'function',
234
- function: {
235
- name: c.name,
236
- arguments: JSON.stringify(c.input),
237
- },
335
+ function: { name: c.name, arguments: JSON.stringify(c.input) },
238
336
  }));
239
337
  return {
240
338
  role: 'assistant',
@@ -255,5 +353,68 @@ export class OpenAIProvider {
255
353
  },
256
354
  }));
257
355
  }
356
+ // ─── Responses API mappers ─────────────────────────────────
357
+ mapMessagesToInput(messages) {
358
+ const items = [];
359
+ for (const m of messages) {
360
+ if (m.role === 'tool') {
361
+ items.push({
362
+ type: 'function_call_output',
363
+ call_id: m.toolUseId,
364
+ output: m.content,
365
+ });
366
+ }
367
+ else if (typeof m.content === 'string') {
368
+ items.push({
369
+ role: m.role,
370
+ content: m.content,
371
+ });
372
+ }
373
+ else if (Array.isArray(m.content)) {
374
+ if (m.role === 'assistant') {
375
+ const textParts = m.content
376
+ .filter((c) => c.type === 'text')
377
+ .map(c => c.text);
378
+ const toolUses = m.content
379
+ .filter((c) => c.type === 'tool-use');
380
+ if (textParts.length > 0) {
381
+ items.push({
382
+ role: 'assistant',
383
+ type: 'message',
384
+ content: textParts.map((t) => ({ type: 'output_text', text: t })),
385
+ status: 'completed',
386
+ });
387
+ }
388
+ for (const tu of toolUses) {
389
+ items.push({
390
+ type: 'function_call',
391
+ call_id: tu.id,
392
+ name: tu.name,
393
+ arguments: JSON.stringify(tu.input),
394
+ });
395
+ }
396
+ }
397
+ else {
398
+ const textParts = m.content
399
+ .filter((c) => c.type === 'text')
400
+ .map(c => c.text);
401
+ items.push({
402
+ role: 'user',
403
+ content: textParts.join('\n'),
404
+ });
405
+ }
406
+ }
407
+ }
408
+ return items;
409
+ }
410
+ mapToolsToResponses(tools) {
411
+ return tools.map((t) => ({
412
+ type: 'function',
413
+ name: t.name,
414
+ description: t.description,
415
+ parameters: t.inputSchema,
416
+ strict: null,
417
+ }));
418
+ }
258
419
  }
259
420
  //# sourceMappingURL=openai.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"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"}
@@ -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,EAGvB,MAAM,eAAe,CAAC;AAEvB,KAAK,kBAAkB,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAAC,MAAM,IAAI,IAAI,CAAA;CAAE,CAAC;AAmB5E,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;IA0F7D,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;IAwD3E,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,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,4 +1,14 @@
1
1
  import OpenAI from 'openai';
2
+ function effortToReasoning(effort) {
3
+ switch (effort) {
4
+ case 'low': return { effort: 'low' };
5
+ case 'medium': return { effort: 'medium' };
6
+ case 'high': return { effort: 'high' };
7
+ case 'max': return { effort: 'xhigh' };
8
+ case 'auto':
9
+ default: return undefined;
10
+ }
11
+ }
2
12
  const FALLBACK_MODELS = [
3
13
  'anthropic/claude-opus-4-7',
4
14
  'anthropic/claude-sonnet-4-6',
@@ -70,6 +80,7 @@ export class OpenRouterProvider {
70
80
  const allMessages = args.system
71
81
  ? [{ role: 'system', content: args.system }, ...messages]
72
82
  : messages;
83
+ const reasoning = effortToReasoning(args.effort);
73
84
  const streamParams = {
74
85
  model,
75
86
  messages: allMessages,
@@ -77,6 +88,7 @@ export class OpenRouterProvider {
77
88
  ...(tools ? { tools } : {}),
78
89
  ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
79
90
  ...(args.maxTokens ? { max_tokens: args.maxTokens } : {}),
91
+ ...(reasoning ? { reasoning } : {}),
80
92
  stream_options: { include_usage: true },
81
93
  };
82
94
  let sdkStream = null;
@@ -85,6 +97,7 @@ export class OpenRouterProvider {
85
97
  if (!sdkStream)
86
98
  return;
87
99
  const pendingTools = new Map();
100
+ const thinkingBlocks = new Map();
88
101
  let lastUsage = null;
89
102
  for await (const chunk of sdkStream) {
90
103
  if (args.signal?.aborted) {
@@ -96,6 +109,33 @@ export class OpenRouterProvider {
96
109
  const choice = chunk.choices?.[0];
97
110
  if (!choice)
98
111
  continue;
112
+ // OpenRouter reasoning_details (not in OpenAI SDK types, cast to any).
113
+ const rawDelta = choice.delta;
114
+ const reasoningDetails = rawDelta?.reasoning_details;
115
+ if (reasoningDetails?.length) {
116
+ for (const rd of reasoningDetails) {
117
+ if (rd.type !== 'reasoning.text')
118
+ continue;
119
+ const idx = rd.index ?? 0;
120
+ if (!thinkingBlocks.has(idx)) {
121
+ thinkingBlocks.set(idx, { thinking: '', signature: '' });
122
+ }
123
+ const tb = thinkingBlocks.get(idx);
124
+ if (rd.text) {
125
+ tb.thinking += rd.text;
126
+ yield { type: 'thinking-delta', text: rd.text };
127
+ }
128
+ if (rd.signature)
129
+ tb.signature = rd.signature;
130
+ }
131
+ }
132
+ else {
133
+ // No more reasoning_details — flush any pending thinking blocks.
134
+ for (const [, tb] of thinkingBlocks) {
135
+ yield { type: 'thinking-block', thinking: tb.thinking, signature: tb.signature };
136
+ }
137
+ thinkingBlocks.clear();
138
+ }
99
139
  if (choice.delta?.content) {
100
140
  yield { type: 'text-delta', text: choice.delta.content };
101
141
  }
@@ -161,6 +201,7 @@ export class OpenRouterProvider {
161
201
  const allMessages = args.system
162
202
  ? [{ role: 'system', content: args.system }, ...messages]
163
203
  : messages;
204
+ const reasoning = effortToReasoning(args.effort);
164
205
  const response = await this.client.chat.completions.create({
165
206
  model,
166
207
  messages: allMessages,
@@ -168,6 +209,7 @@ export class OpenRouterProvider {
168
209
  ...(tools ? { tools } : {}),
169
210
  ...(args.temperature !== undefined ? { temperature: args.temperature } : {}),
170
211
  ...(args.maxTokens ? { max_tokens: args.maxTokens } : {}),
212
+ ...(reasoning ? { reasoning } : {}),
171
213
  });
172
214
  const choice = response.choices[0];
173
215
  const text = choice?.message?.content ?? '';
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../src/openrouter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../src/openrouter.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,9 @@ export interface ToolDefinition {
10
10
  export type ProviderEvent = {
11
11
  type: 'text-delta';
12
12
  text: string;
13
+ } | {
14
+ type: 'thinking-delta';
15
+ text: string;
13
16
  } | {
14
17
  type: 'thinking-block';
15
18
  thinking: string;