@providerkit/core 0.17.1 → 0.20.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.
Files changed (68) hide show
  1. package/README.md +1 -0
  2. package/dist/auth/device.d.ts +34 -0
  3. package/dist/auth/device.d.ts.map +1 -0
  4. package/dist/auth/device.js +85 -0
  5. package/dist/auth/device.js.map +1 -0
  6. package/dist/auth/flows.d.ts +36 -0
  7. package/dist/auth/flows.d.ts.map +1 -0
  8. package/dist/auth/flows.js +392 -0
  9. package/dist/auth/flows.js.map +1 -0
  10. package/dist/auth/index.d.ts +5 -0
  11. package/dist/auth/index.d.ts.map +1 -0
  12. package/dist/auth/index.js +8 -0
  13. package/dist/auth/index.js.map +1 -0
  14. package/dist/auth/oauth.d.ts +92 -0
  15. package/dist/auth/oauth.d.ts.map +1 -0
  16. package/dist/auth/oauth.js +148 -0
  17. package/dist/auth/oauth.js.map +1 -0
  18. package/dist/auth/token-source.d.ts +30 -0
  19. package/dist/auth/token-source.d.ts.map +1 -0
  20. package/dist/auth/token-source.js +61 -0
  21. package/dist/auth/token-source.js.map +1 -0
  22. package/dist/context.d.ts.map +1 -1
  23. package/dist/context.js +17 -1
  24. package/dist/context.js.map +1 -1
  25. package/dist/errors.d.ts.map +1 -1
  26. package/dist/errors.js +3 -0
  27. package/dist/errors.js.map +1 -1
  28. package/dist/presets.d.ts +43 -5
  29. package/dist/presets.d.ts.map +1 -1
  30. package/dist/presets.js +44 -4
  31. package/dist/presets.js.map +1 -1
  32. package/dist/providers/anthropic.d.ts.map +1 -1
  33. package/dist/providers/anthropic.js +6 -1
  34. package/dist/providers/anthropic.js.map +1 -1
  35. package/dist/providers/factory.d.ts +8 -2
  36. package/dist/providers/factory.d.ts.map +1 -1
  37. package/dist/providers/factory.js +11 -4
  38. package/dist/providers/factory.js.map +1 -1
  39. package/dist/providers/gemini.d.ts.map +1 -1
  40. package/dist/providers/gemini.js +3 -0
  41. package/dist/providers/gemini.js.map +1 -1
  42. package/dist/providers/openai.d.ts +7 -1
  43. package/dist/providers/openai.d.ts.map +1 -1
  44. package/dist/providers/openai.js +6 -0
  45. package/dist/providers/openai.js.map +1 -1
  46. package/dist/providers/responses.d.ts +7 -1
  47. package/dist/providers/responses.d.ts.map +1 -1
  48. package/dist/providers/responses.js +48 -6
  49. package/dist/providers/responses.js.map +1 -1
  50. package/dist/types.d.ts +26 -0
  51. package/dist/types.d.ts.map +1 -1
  52. package/dist/types.js +13 -5
  53. package/dist/types.js.map +1 -1
  54. package/package.json +5 -1
  55. package/src/auth/device.ts +137 -0
  56. package/src/auth/flows.ts +526 -0
  57. package/src/auth/index.ts +7 -0
  58. package/src/auth/oauth.ts +226 -0
  59. package/src/auth/token-source.ts +76 -0
  60. package/src/context.ts +16 -1
  61. package/src/errors.ts +3 -0
  62. package/src/presets.ts +53 -6
  63. package/src/providers/anthropic.ts +10 -1
  64. package/src/providers/factory.ts +21 -6
  65. package/src/providers/gemini.ts +7 -0
  66. package/src/providers/openai.ts +12 -0
  67. package/src/providers/responses.ts +60 -6
  68. package/src/types.ts +49 -5
@@ -39,6 +39,27 @@ function reasoningEffort(model, effort) {
39
39
  function mapIncompleteReason(reason) {
40
40
  return reason === "content_filter" ? "content_filter" : "length";
41
41
  }
42
+ function isReplayedReasoning(item) {
43
+ return typeof item === "object" && item !== null && "type" in item && item.type === "reasoning";
44
+ }
45
+ /** The most encrypted reasoning one request carries back. Newest turns win. */
46
+ const MAX_REPLAY_BYTES = 8 * 1024 * 1024;
47
+ /** Which assistant messages get their reasoning replayed: this provider's own,
48
+ * newest first, until the cap. An older turn's reasoning is the cheapest to lose. */
49
+ function replayable(messages, provider) {
50
+ const keep = new Set();
51
+ let bytes = 0;
52
+ for (let i = messages.length - 1; i >= 0; i--) {
53
+ const message = messages[i];
54
+ if (message.role !== "assistant" || message.reasoningItems?.provider !== provider)
55
+ continue;
56
+ bytes += JSON.stringify(message.reasoningItems.items).length;
57
+ if (bytes > MAX_REPLAY_BYTES)
58
+ break;
59
+ keep.add(message);
60
+ }
61
+ return keep;
62
+ }
42
63
  function partsToResponses(content, provider) {
43
64
  if (typeof content === "string")
44
65
  return [{ type: "input_text", text: content }];
@@ -75,6 +96,7 @@ export function toResponsesInput(messages, provider = "openai-responses") {
75
96
  .filter((message) => message.role === "system")
76
97
  .map((message) => message.content)
77
98
  .join("\n\n");
99
+ const replayed = replayable(messages, provider);
78
100
  const input = [];
79
101
  for (const message of messages) {
80
102
  switch (message.role) {
@@ -98,12 +120,15 @@ export function toResponsesInput(messages, provider = "openai-responses") {
98
120
  });
99
121
  break;
100
122
  case "assistant": {
101
- // Reasoning is deliberately NOT replayed. This shape wants the ORIGINAL
102
- // reasoning item back — its `rs_…` id, and under `store: false` its
103
- // `encrypted_content` blob — and the seam carries neither, only the
104
- // plain summary text a caller renders. A synthesized reasoning item is
105
- // rejected; omitting it costs only the model re-deriving its own chain
106
- // of thought, which is what every stateless caller already lives with.
123
+ // `reasoning` (the summary a caller renders) is never replayed: this
124
+ // shape wants the ORIGINAL item back, `rs_…` id and `encrypted_content`
125
+ // blob included, and a synthesized one is rejected. `reasoningItems`
126
+ // are those originals, so they go back first, but only to the provider
127
+ // that made them. Without them the model re-derives its own chain of
128
+ // thought, which is what every stateless caller already lives with.
129
+ if (replayed.has(message)) {
130
+ input.push(...message.reasoningItems.items.filter(isReplayedReasoning));
131
+ }
107
132
  if (message.content) {
108
133
  input.push({
109
134
  type: "message",
@@ -199,6 +224,8 @@ export function createResponsesProvider(config) {
199
224
  };
200
225
  if (instructions)
201
226
  request.instructions = instructions;
227
+ if (config.replayReasoning)
228
+ request.include = ["reasoning.encrypted_content"];
202
229
  const maxTokens = opts.maxTokens ?? config.maxTokens;
203
230
  if (maxTokens !== undefined)
204
231
  request.max_output_tokens = maxTokens;
@@ -240,6 +267,9 @@ export function createResponsesProvider(config) {
240
267
  // conversation's turns across cache shards, and a re-sent prefix misses.
241
268
  if (opts.sessionId)
242
269
  request.prompt_cache_key = opts.sessionId;
270
+ const serviceTier = opts.serviceTier ?? config.serviceTier;
271
+ if (serviceTier)
272
+ request.service_tier = serviceTier;
243
273
  // Muse Contributor accepts only `auto`. `none` has an exact wire-level
244
274
  // equivalent: send no tools. Required/named choices stay explicit and let
245
275
  // the endpoint refuse a promise it cannot keep.
@@ -273,6 +303,10 @@ export function createResponsesProvider(config) {
273
303
  let sawToolCall = false;
274
304
  let wall;
275
305
  let produced = false;
306
+ const reasoningItems = [];
307
+ const reasoningChunk = () => reasoningItems.length
308
+ ? [{ type: "delta", reasoningItems: { provider: id, items: reasoningItems } }]
309
+ : [];
276
310
  for await (const data of streamSse({
277
311
  url: apiUrl(baseUrl, config.path ?? DEFAULT_PATH),
278
312
  headers: {
@@ -375,6 +409,12 @@ export function createResponsesProvider(config) {
375
409
  }
376
410
  case "response.output_item.done": {
377
411
  const item = event.item;
412
+ // Kept whole and emitted once, at the end of the turn: it is the
413
+ // backend's own record, and it only means something complete.
414
+ if (config.replayReasoning && item?.type === "reasoning") {
415
+ reasoningItems.push(item);
416
+ break;
417
+ }
378
418
  if (item?.type !== "function_call")
379
419
  break;
380
420
  const known = pendingFor(item.id, item.call_id);
@@ -437,6 +477,7 @@ export function createResponsesProvider(config) {
437
477
  if (response?.status === "failed" || response?.error) {
438
478
  throw streamError(id, response.error ?? { message: "response failed" });
439
479
  }
480
+ yield* reasoningChunk();
440
481
  if (response?.usage)
441
482
  yield usageChunk(response.usage);
442
483
  if (response?.status === "incomplete") {
@@ -455,6 +496,7 @@ export function createResponsesProvider(config) {
455
496
  case "response.incomplete": {
456
497
  // A turn that ran out of output tokens still billed for its input,
457
498
  // and this event carries usage in the same shape as `completed`.
499
+ yield* reasoningChunk();
458
500
  const usage = event.response?.usage;
459
501
  if (usage)
460
502
  yield usageChunk(usage);
@@ -1 +1 @@
1
- {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/providers/responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"responses.js","sourceRoot":"","sources":["../../src/providers/responses.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -90,6 +90,14 @@ export type ChatMessage = {
90
90
  * continuity across a tool round. Absent on every other dialect.
91
91
  */
92
92
  reasoningDetails?: unknown[];
93
+ /**
94
+ * The ChatGPT backend's own reasoning items, encrypted, riding back
95
+ * UNMODIFIED on the next turn so the model keeps its chain of thought.
96
+ * Tagged with the provider that made them: only that provider replays
97
+ * them, because another vendor (after a fallback) would reject them.
98
+ * Opaque, like `reasoningDetails`.
99
+ */
100
+ reasoningItems?: ReasoningItems;
93
101
  toolCalls?: ToolCall[];
94
102
  } | {
95
103
  role: "tool";
@@ -99,6 +107,11 @@ export type ChatMessage = {
99
107
  /** Images a tool hands back (a screenshot, a rendered chart). */
100
108
  images?: ImagePart[];
101
109
  };
110
+ /** Provider-owned reasoning items and the id of the provider that made them. */
111
+ export interface ReasoningItems {
112
+ provider: string;
113
+ items: unknown[];
114
+ }
102
115
  /** JSON Schema for an object — what every provider's tool contract wants. */
103
116
  export interface JsonObjectSchema {
104
117
  type: "object";
@@ -165,6 +178,8 @@ export interface ProviderChunk {
165
178
  /** OpenRouter's normalized reasoning payload — hand it back on the next
166
179
  * turn's assistant message verbatim. See ChatMessage.reasoningDetails. */
167
180
  reasoningDetails?: unknown[];
181
+ /** Once per turn, where a provider replays its reasoning. See ChatMessage.reasoningItems. */
182
+ reasoningItems?: ReasoningItems;
168
183
  toolCalls?: ToolCallDelta[];
169
184
  usage?: TokenUsage;
170
185
  finishReason?: FinishReason;
@@ -278,7 +293,16 @@ export interface StreamOptions {
278
293
  * so it refuses `false` rather than silently ignore it.
279
294
  */
280
295
  parallelToolCalls?: boolean;
296
+ /**
297
+ * Which service tier to buy this call on: `priority` is faster and costs
298
+ * more, `flex` is slower and costs less. Sent as `service_tier` on the
299
+ * OpenAI and Responses shapes. Anthropic and Gemini refuse it with an
300
+ * `invalid` error: Anthropic's own `service_tier` means something else, and
301
+ * Gemini has no such switch. Overrides the provider's own setting.
302
+ */
303
+ serviceTier?: ServiceTier;
281
304
  }
305
+ export type ServiceTier = "priority" | "flex";
282
306
  export interface Provider {
283
307
  readonly id: string;
284
308
  readonly model: string;
@@ -291,6 +315,8 @@ export interface Completion {
291
315
  reasoning: string;
292
316
  /** Present only where the provider sent one. See ChatMessage.reasoningDetails. */
293
317
  reasoningDetails?: unknown[];
318
+ /** Present only where the provider sent them. See ChatMessage.reasoningItems. */
319
+ reasoningItems?: ReasoningItems;
294
320
  usage: TokenUsage;
295
321
  finishReason: FinishReason | null;
296
322
  model: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -146,6 +146,7 @@ export async function drainStream(stream, model) {
146
146
  // a drained turn replays only half its own reasoning on the next round —
147
147
  // which is the failure `reasoningDetails` exists to prevent.
148
148
  let reasoningDetails;
149
+ let reasoningItems;
149
150
  let usage = EMPTY_USAGE;
150
151
  let finishReason = null;
151
152
  let source;
@@ -159,6 +160,8 @@ export async function drainStream(stream, model) {
159
160
  reasoning += chunk.reasoning;
160
161
  if (chunk.reasoningDetails?.length)
161
162
  reasoningDetails = chunk.reasoningDetails;
163
+ if (chunk.reasoningItems?.items.length)
164
+ reasoningItems = chunk.reasoningItems;
162
165
  }
163
166
  else if (chunk.type === "usage" && chunk.usage) {
164
167
  usage = chunk.usage;
@@ -171,6 +174,7 @@ export async function drainStream(stream, model) {
171
174
  text,
172
175
  reasoning,
173
176
  ...(reasoningDetails ? { reasoningDetails } : {}),
177
+ ...(reasoningItems ? { reasoningItems } : {}),
174
178
  usage,
175
179
  finishReason,
176
180
  model: source?.model ?? model,
@@ -193,12 +197,16 @@ export function stripReasoning(messages) {
193
197
  return messages.map((message) => {
194
198
  if (message.role !== "assistant")
195
199
  return message;
196
- if (message.reasoning === undefined && message.reasoningDetails === undefined)
200
+ if (message.reasoning === undefined &&
201
+ message.reasoningDetails === undefined &&
202
+ message.reasoningItems === undefined) {
197
203
  return message;
198
- // Both halves go. `reasoningDetails` is the same chain of thought in the
199
- // provider's own words, so leaving it behind carries into a thinking-off
200
- // turn exactly what stripping `reasoning` was meant to keep out.
201
- const { reasoning: _text, reasoningDetails: _payload, ...rest } = message;
204
+ }
205
+ // Every half goes. `reasoningDetails` and `reasoningItems` are the same
206
+ // chain of thought in the provider's own words, so leaving them behind
207
+ // carries into a thinking-off turn exactly what stripping `reasoning` was
208
+ // meant to keep out.
209
+ const { reasoning: _text, reasoningDetails: _payload, reasoningItems: _items, ...rest } = message;
202
210
  return rest;
203
211
  });
204
212
  }
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@providerkit/core",
3
- "version": "0.17.1",
3
+ "version": "0.20.0",
4
4
  "description": "The layer under your agent loop: one seam for every LLM provider, plus the failure handling you only learn in production.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -17,6 +17,10 @@
17
17
  "./jev": {
18
18
  "types": "./dist/jev.d.ts",
19
19
  "default": "./dist/jev.js"
20
+ },
21
+ "./auth": {
22
+ "types": "./dist/auth/index.d.ts",
23
+ "default": "./dist/auth/index.js"
20
24
  }
21
25
  },
22
26
  "types": "./dist/index.d.ts",
@@ -0,0 +1,137 @@
1
+ // RFC 8628 device authorization: the sign-in that shows a code instead of
2
+ // bouncing through a redirect. Kimi, GitHub Copilot, xAI and Meta all use it.
3
+ import { SignInError, authError, num, postToken, str, webUrl, type AuthHost } from "./oauth.ts";
4
+
5
+ /** RFC 8628: a `slow_down` answer adds this to the poll interval. */
6
+ const SLOW_DOWN_STEP_MS = 5000;
7
+ /** The poll never goes faster than this, whatever the vendor says. */
8
+ const MIN_INTERVAL_MS = 1000;
9
+ /** A vendor that leaves out `expires_in` gets this. */
10
+ const DEFAULT_EXPIRES_SEC = 900;
11
+
12
+ /** Where a vendor's device flow lives, and what it wants on the wire. */
13
+ export interface DeviceEndpoint {
14
+ /** POST here to get a user code. */
15
+ deviceUrl: string;
16
+ /** POST here, again and again, until the user approves. */
17
+ tokenUrl: string;
18
+ clientId: string;
19
+ /** Sent with the code request, for vendors that want scopes. */
20
+ scope?: string;
21
+ /** Extra fields on the code request only (xAI wants a `referrer`). */
22
+ extra?: Record<string, string>;
23
+ encode: "form" | "json";
24
+ }
25
+
26
+ /** What the user must do, and how long we keep asking. */
27
+ export interface DevicePrompt {
28
+ /** Show it as is: it must match what the vendor's page displays. */
29
+ userCode: string;
30
+ /** The approval page, with the code filled in when the vendor offers that. */
31
+ verificationUrl: string;
32
+ deviceCode: string;
33
+ intervalMs: number;
34
+ expiresAt: number;
35
+ }
36
+
37
+ /** Step 1: ask the vendor for a code the user can approve on the web. */
38
+ export async function requestDeviceCode(
39
+ host: AuthHost,
40
+ endpoint: DeviceEndpoint,
41
+ ): Promise<DevicePrompt> {
42
+ const body = await postToken(
43
+ host,
44
+ endpoint.deviceUrl,
45
+ {
46
+ client_id: endpoint.clientId,
47
+ ...(endpoint.scope ? { scope: endpoint.scope } : {}),
48
+ ...endpoint.extra,
49
+ },
50
+ { encode: endpoint.encode },
51
+ );
52
+ const userCode = str(body.user_code);
53
+ const deviceCode = str(body.device_code);
54
+ // The complete URL carries the code, so there is nothing to type.
55
+ const verificationUrl =
56
+ webUrl(str(body.verification_uri_complete)) ?? webUrl(str(body.verification_uri));
57
+ if (!userCode || !deviceCode || !verificationUrl) {
58
+ throw authError(
59
+ "device_response_invalid",
60
+ "The sign-in server's reply has no code, device code or http(s) approval page.",
61
+ );
62
+ }
63
+ return {
64
+ userCode,
65
+ verificationUrl,
66
+ deviceCode,
67
+ intervalMs: Math.max(MIN_INTERVAL_MS, (num(body.interval) ?? 5) * 1000),
68
+ expiresAt: Date.now() + (num(body.expires_in) ?? DEFAULT_EXPIRES_SEC) * 1000,
69
+ };
70
+ }
71
+
72
+ /**
73
+ * Step 2: poll until the user approves, and return the raw token body. Turning
74
+ * it into a credential is the caller's job, because the bodies differ: GitHub
75
+ * answers with a bare token and no expiry, Meta with an identity token that
76
+ * still has to be traded for a key.
77
+ */
78
+ export async function pollDeviceToken(
79
+ host: AuthHost,
80
+ endpoint: DeviceEndpoint,
81
+ prompt: DevicePrompt,
82
+ signal: AbortSignal,
83
+ ): Promise<Record<string, unknown>> {
84
+ let waitMs = prompt.intervalMs;
85
+ while (Date.now() < prompt.expiresAt) {
86
+ await sleep(waitMs, signal);
87
+ // Pending is the normal answer for most of the loop, and GitHub sends it
88
+ // as a 200 with an `error` field, so the body decides, never the status.
89
+ const body = await postToken(
90
+ host,
91
+ endpoint.tokenUrl,
92
+ {
93
+ client_id: endpoint.clientId,
94
+ device_code: prompt.deviceCode,
95
+ grant_type: "urn:ietf:params:oauth:grant-type:device_code",
96
+ },
97
+ { encode: endpoint.encode, allowErrorBody: true },
98
+ );
99
+ if (str(body.access_token)) return body;
100
+
101
+ switch (str(body.error)) {
102
+ case "authorization_pending":
103
+ break;
104
+ case "slow_down":
105
+ // Honour the longer of our step and an interval the server names.
106
+ waitMs = Math.max(waitMs + SLOW_DOWN_STEP_MS, (num(body.interval) ?? 0) * 1000);
107
+ break;
108
+ case "access_denied":
109
+ case "authorization_denied":
110
+ throw new SignInError("denied");
111
+ case "expired_token":
112
+ throw new SignInError("expired");
113
+ default:
114
+ throw authError(
115
+ "token_refused",
116
+ `The sign-in server refused the request: ${str(body.error_description) ?? str(body.error) ?? "no reason given"}`,
117
+ );
118
+ }
119
+ }
120
+ throw new SignInError("expired");
121
+ }
122
+
123
+ /** A delay that a cancelled sign-in cuts short. */
124
+ function sleep(ms: number, signal: AbortSignal): Promise<void> {
125
+ return new Promise((resolve, reject) => {
126
+ if (signal.aborted) return reject(new SignInError("cancelled"));
127
+ const onAbort = () => {
128
+ clearTimeout(timer);
129
+ reject(new SignInError("cancelled"));
130
+ };
131
+ const timer = setTimeout(() => {
132
+ signal.removeEventListener("abort", onAbort);
133
+ resolve();
134
+ }, ms);
135
+ signal.addEventListener("abort", onAbort, { once: true });
136
+ });
137
+ }