typebulb 0.49.3 → 0.51.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 (39) hide show
  1. package/README.md +21 -12
  2. package/SKILL.md +23 -14
  3. package/dist/agents/claude/client.js +196 -168
  4. package/dist/agents/codex/client.js +196 -168
  5. package/dist/agents/pi/client.js +197 -169
  6. package/dist/ai/aiProvider.d.ts +5 -1
  7. package/dist/ai/aiProvider.d.ts.map +1 -1
  8. package/dist/ai/aiProvider.js.map +1 -1
  9. package/dist/ai/aiProviders.d.ts +4 -1
  10. package/dist/ai/aiProviders.d.ts.map +1 -1
  11. package/dist/ai/aiProviders.js +1 -2
  12. package/dist/ai/aiProviders.js.map +1 -1
  13. package/dist/ai/protocol.d.ts +5 -3
  14. package/dist/ai/protocol.d.ts.map +1 -1
  15. package/dist/ai/protocol.js +2 -2
  16. package/dist/ai/protocol.js.map +1 -1
  17. package/dist/ai/providers/anthropic.d.ts.map +1 -1
  18. package/dist/ai/providers/anthropic.js +9 -6
  19. package/dist/ai/providers/anthropic.js.map +1 -1
  20. package/dist/ai/providers/gemini.d.ts +3 -2
  21. package/dist/ai/providers/gemini.d.ts.map +1 -1
  22. package/dist/ai/providers/gemini.js +13 -6
  23. package/dist/ai/providers/gemini.js.map +1 -1
  24. package/dist/ai/providers/openAI.d.ts +2 -1
  25. package/dist/ai/providers/openAI.d.ts.map +1 -1
  26. package/dist/ai/providers/openAI.js +6 -3
  27. package/dist/ai/providers/openAI.js.map +1 -1
  28. package/dist/ai/providers/openRouter.d.ts +2 -1
  29. package/dist/ai/providers/openRouter.d.ts.map +1 -1
  30. package/dist/ai/providers/openRouter.js +16 -3
  31. package/dist/ai/providers/openRouter.js.map +1 -1
  32. package/dist/dts/tbTypings.js +4 -4
  33. package/dist/index.js +67 -37
  34. package/dist/render.js +114 -86
  35. package/dist/resolver/packageRef.d.ts.map +1 -1
  36. package/dist/resolver/packageRef.js +3 -2
  37. package/dist/resolver/packageRef.js.map +1 -1
  38. package/dist/servers.js +27 -9
  39. package/package.json +1 -1
@@ -1,8 +1,12 @@
1
1
  import type { ChatMessageDto, UpstreamErrorDto, EffortLevel, ChatStreamPieceDto, ChatResponseDto, ProviderResponseDto, ProviderStreamEventDto, StreamErrorCode } from './protocol.js';
2
- /** Options for building chat request payloads */
2
+ /** Options for building chat request payloads. `maxOutputTokens` is a hard cap on the response
3
+ * (reasoning included, since it bills as output) — each provider writes it to its own field, the
4
+ * way `effort` is translated, because the field name is payload-shaped and only the provider
5
+ * knows the shape. */
3
6
  export type ChatRequestOpts = {
4
7
  effort?: EffortLevel;
5
8
  webSearch?: boolean;
9
+ maxOutputTokens?: number;
6
10
  } | undefined;
7
11
  /**
8
12
  * Error thrown by provider stream parsing when the provider or server reports an error.
@@ -1 +1 @@
1
- {"version":3,"file":"aiProvider.d.ts","sourceRoot":"","sources":["../../ai/src/aiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EAChB,MAAM,eAAe,CAAA;AAEtB,iDAAiD;AACjD,MAAM,MAAM,eAAe,GAAG;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAAA;AAEvF;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,IAAI,EAAE,eAAe;aACrB,SAAS,EAAE,OAAO;gBAFlC,OAAO,EAAE,MAAM,EACC,IAAI,GAAE,eAA2B,EACjC,SAAS,GAAE,OAAe;CAI7C;AAED;;;GAGG;AACH,8BAAsB,UAAU;IAC9B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAChD,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAI9B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM;IAIjD,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAE9E,QAAQ,CAAC,YAAY,CACnB,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,OAAO;IAEV,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAM/D,QAAQ,CAAC,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;IAE9E;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,GAAG,IAAI;IAKzE,SAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,GAAG,IAAI;IAIpG,wDAAwD;IACxD,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,SAAS,SAAS,GAAG;QAC/E,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;QAC1B,oBAAoB,EAAE,cAAc,EAAE,CAAA;KACvC;IAQD;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAsB7E;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAyBjD,OAAO,CAAC,mBAAmB;CAe5B"}
1
+ {"version":3,"file":"aiProvider.d.ts","sourceRoot":"","sources":["../../ai/src/aiProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EAChB,MAAM,eAAe,CAAA;AAEtB;;;uBAGuB;AACvB,MAAM,MAAM,eAAe,GACzB;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAA;AAErF;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,IAAI,EAAE,eAAe;aACrB,SAAS,EAAE,OAAO;gBAFlC,OAAO,EAAE,MAAM,EACC,IAAI,GAAE,eAA2B,EACjC,SAAS,GAAE,OAAe;CAI7C;AAED;;;GAGG;AACH,8BAAsB,UAAU;IAC9B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAChD,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IACxC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAI9B;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM;IAIjD,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAE9E,QAAQ,CAAC,YAAY,CACnB,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,OAAO;IAEV,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAM/D,QAAQ,CAAC,yBAAyB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;IAE9E;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,GAAG,IAAI;IAKzE,SAAS,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,GAAG,kBAAkB,GAAG,IAAI;IAIpG,wDAAwD;IACxD,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,SAAS,SAAS,GAAG;QAC/E,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;QAC1B,oBAAoB,EAAE,cAAc,EAAE,CAAA;KACvC;IAQD;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAsB7E;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAyBjD,OAAO,CAAC,mBAAmB;CAe5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"aiProvider.js","sourceRoot":"","sources":["../../ai/src/aiProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aiProvider.js","sourceRoot":"","sources":["../../ai/src/aiProvider.ts"],"names":[],"mappings":"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"}
@@ -16,9 +16,12 @@ export interface SendAIRequestOpts {
16
16
  stream: boolean;
17
17
  effort?: EffortLevel;
18
18
  webSearch?: boolean;
19
+ /** Hard cap on response tokens (reasoning included). Replaces the old `modifyPayload` hook, which
20
+ * wrote a chat-completions `max_tokens` and so silently failed to bind on the OpenAI Responses
21
+ * API and Gemini — the two whose payloads name it differently. */
22
+ maxOutputTokens?: number;
19
23
  origin?: string;
20
24
  signal?: AbortSignal;
21
- modifyPayload?: (payload: Record<string, unknown>) => void;
22
25
  }
23
26
  /**
24
27
  * Join an operation path onto a base URL, **preserving the base's path prefix**.
@@ -1 +1 @@
1
- {"version":3,"file":"aiProviders.d.ts","sourceRoot":"","sources":["../../ai/src/aiProviders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAmB5C,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,UAAU,CAMlE;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;CAC3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,uCAAuC;AACvC,wBAAsB,aAAa,CACjC,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,QAAQ,CAAC,CAqBnB;AAED;;;uCAGuC;AACvC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,uEAAuE;AACvE,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAYvC"}
1
+ {"version":3,"file":"aiProviders.d.ts","sourceRoot":"","sources":["../../ai/src/aiProviders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAmB5C,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,UAAU,CAMlE;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;uEAEmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,uCAAuC;AACvC,wBAAsB,aAAa,CACjC,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,QAAQ,CAAC,CAmBnB;AAED;;;uCAGuC;AACvC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,uEAAuE;AACvE,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAYvC"}
@@ -41,8 +41,7 @@ export async function sendAIRequest(provider, opts) {
41
41
  const path = spec.getPath(provider.model, opts.stream);
42
42
  const url = joinUrl(provider.baseUrl, path);
43
43
  const headers = spec.buildHeaders(provider.apiKey, opts.origin);
44
- const payload = spec.buildPayload(opts.messages, provider.model, { effort: opts.effort, webSearch: opts.webSearch }, opts.stream);
45
- opts.modifyPayload?.(payload);
44
+ const payload = spec.buildPayload(opts.messages, provider.model, { effort: opts.effort, webSearch: opts.webSearch, maxOutputTokens: opts.maxOutputTokens }, opts.stream);
46
45
  return fetch(url, {
47
46
  method: 'POST',
48
47
  headers,
@@ -1 +1 @@
1
- {"version":3,"file":"aiProviders.js","sourceRoot":"","sources":["../../ai/src/aiProviders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aiProviders.js","sourceRoot":"","sources":["../../ai/src/aiProviders.ts"],"names":[],"mappings":"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"}
@@ -46,13 +46,15 @@ export interface StreamErrorDto extends Required<StreamErrorPayload> {
46
46
  * runtime. `ollama` is the zero-config preset; `openai-compat` is the generic form. See
47
47
  * runtime-specs/TB-Custom-Providers.md. */
48
48
  export type ProviderProtocol = 'openai' | 'anthropic' | 'openrouter' | 'gemini' | 'ollama' | 'openai-compat';
49
- /** Reasoning effort hint: 0 (minimal) – 3 (high). 0 minimizes reasoning, mapped to each provider's
49
+ /** Reasoning effort hint: 0 (minimal) – 4 (xhigh). 0 minimizes reasoning, mapped to each provider's
50
50
  * least rung — OpenAI/OpenRouter `none` (`minimal` is model-gated, so `none` is the robust floor),
51
51
  * Gemini `thinkingBudget: 0`, Anthropic no-thinking on Opus (or `low` where thinking can't be
52
- * disabled). Higher levels are `low`/`medium`/`high`. Omitting is the model's own *default*, not
52
+ * disabled). Higher levels are `low`/`medium`/`high`, then 4 = the rung above high where the vendor
53
+ * has one (OpenAI/OpenRouter `xhigh`, Anthropic `max`) and `high` where it doesn't (Gemini) — a
54
+ * missing rung clamps, never errors. Omitting is the model's own *default*, not
53
55
  * "off" — a native-default reasoner (GPT-5.6: medium) then thinks and bills invisibly. 0 floors to
54
56
  * the lowest available thinking only on always-thinking models. */
55
- export type EffortLevel = 0 | 1 | 2 | 3;
57
+ export type EffortLevel = 0 | 1 | 2 | 3 | 4;
56
58
  /** Narrow an untrusted number to the dial, or `undefined` if it isn't one. 0 is a valid level, so a
57
59
  * falsy check would silently coerce minimal to "omit" — which buys the provider default, not off. */
58
60
  export declare const asEffort: (v: number | undefined | null) => EffortLevel | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../ai/src/protocol.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;AAEtD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAA;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAGD,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,0IAA0I;AAC1I,MAAM,WAAW,mBAAmB;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAE/D,yHAAyH;AACzH,MAAM,WAAW,sBAAsB;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAIlE,6CAA6C;AAC7C,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,kBAAkB,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvG,wEAAwE;AACxE,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,eAAe,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,QAAQ,CAAC,kBAAkB,CAAC;IAClE,IAAI,EAAE,OAAO,CAAA;CACd;AAED;;;4CAG4C;AAC5C,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAe,CAAA;AAE5G;;;;;oEAKoE;AACpE,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEvC;sGACsG;AACtG,eAAO,MAAM,QAAQ,GAAI,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,KAAG,WAAW,GAAG,SACR,CAAA;AAE9D;;0EAE0E;AAC1E,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,KAAG,WACI,CAAA;AAE5C;;+FAE+F;AAC/F,MAAM,MAAM,OAAO,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvC;;qGAEqG;AACrG,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAA;AAElD,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAA;IAChB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAA;IACpB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAA;IACpB,0GAA0G;IAC1G,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../ai/src/protocol.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAA;AAEtD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAA;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAGD,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,0IAA0I;AAC1I,MAAM,WAAW,mBAAmB;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAE/D,yHAAyH;AACzH,MAAM,WAAW,sBAAsB;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE;AAIlE,6CAA6C;AAC7C,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,kBAAkB,GAAG,aAAa,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvG,wEAAwE;AACxE,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,eAAe,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,QAAQ,CAAC,kBAAkB,CAAC;IAClE,IAAI,EAAE,OAAO,CAAA;CACd;AAED;;;4CAG4C;AAC5C,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAe,CAAA;AAE5G;;;;;;;oEAOoE;AACpE,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAE3C;sGACsG;AACtG,eAAO,MAAM,QAAQ,GAAI,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,KAAG,WAAW,GAAG,SACR,CAAA;AAE9D;;0EAE0E;AAC1E,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM,KAAG,WACI,CAAA;AAE5C;;+FAE+F;AAC/F,MAAM,MAAM,OAAO,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvC;;qGAEqG;AACrG,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAA;AAElD,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAA;IAChB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAA;IACpB,8CAA8C;IAC9C,YAAY,EAAE,MAAM,CAAA;IACpB,0GAA0G;IAC1G,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB"}
@@ -1,9 +1,9 @@
1
1
  // ── Chat types (shared across all providers) ─────────────────────────
2
2
  /** Narrow an untrusted number to the dial, or `undefined` if it isn't one. 0 is a valid level, so a
3
3
  * falsy check would silently coerce minimal to "omit" — which buys the provider default, not off. */
4
- export const asEffort = (v) => v != null && v >= 0 && v <= 3 ? v : undefined;
4
+ export const asEffort = (v) => v != null && v >= 0 && v <= 4 ? v : undefined;
5
5
  /** Pull a stored number onto the dial. Unlike `asEffort`, an out-of-range value is capped rather than
6
6
  * dropped — for persisted settings, where the nearest level beats falling back to a provider default.
7
7
  * The upper bound must track the dial's top if a level is ever added. */
8
- export const clampEffort = (v) => Math.max(0, Math.min(v, 3));
8
+ export const clampEffort = (v) => Math.max(0, Math.min(v, 4));
9
9
  //# sourceMappingURL=protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../ai/src/protocol.ts"],"names":[],"mappings":"AAAA,wEAAwE;AAqExE;sGACsG;AACtG,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAA4B,EAA2B,EAAE,CAChF,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAgB,CAAC,CAAC,CAAC,SAAS,CAAA;AAE9D;;0EAE0E;AAC1E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAS,EAAe,EAAE,CACpD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgB,CAAA"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../ai/src/protocol.ts"],"names":[],"mappings":"AAAA,wEAAwE;AAuExE;sGACsG;AACtG,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAA4B,EAA2B,EAAE,CAChF,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAgB,CAAC,CAAC,CAAC,SAAS,CAAA;AAE9D;;0EAE0E;AAC1E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAS,EAAe,EAAE,CACpD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/anthropic.ts"],"names":[],"mappings":"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"}
@@ -19,13 +19,13 @@ export class AnthropicProvider extends AIProvider {
19
19
  const { system, conversationMessages } = this.extractSystemMessages(messages);
20
20
  const payload = {
21
21
  model,
22
- max_tokens: this.getMaxTokens(model),
22
+ // A cap never raises the model's own ceiling, so the smaller of the two wins.
23
+ max_tokens: Math.min(this.getMaxTokens(model), opts?.maxOutputTokens ?? Infinity),
23
24
  // Breakpoints on the final two messages cache the conversation prefix (extends each turn)
24
25
  messages: this.withTailMessagesCached(conversationMessages),
25
26
  stream
26
27
  };
27
- // Enable web search by default, can be disabled via opts.webSearch = false
28
- if (opts?.webSearch !== false) {
28
+ if (opts?.webSearch === true) {
29
29
  payload.tools = [{ type: 'web_search_20250305', name: 'web_search' }];
30
30
  }
31
31
  if (system) {
@@ -39,7 +39,8 @@ export class AnthropicProvider extends AIProvider {
39
39
  // 0 = minimal: thinking off, via the explicit `thinking.disabled` switch. Omitting `thinking`
40
40
  // is NOT off — 4.6/4.7/4.8 default to no-thinking, but the 5 family thinks by default, so
41
41
  // silence bought thinking there anyway, and hid it (`display` defaults to 'omitted').
42
- // `disabled` is rejected above effort `high`, which the 0–3 dial never reaches.
42
+ // `disabled` is rejected above effort `high`. The dial now reaches `max` (4), but only ever
43
+ // pairs `disabled` with effort `low` below, so the two can't collide.
43
44
  if (depth === 0) {
44
45
  if (!this.alwaysThinks(model))
45
46
  payload.thinking = { type: 'disabled' };
@@ -49,7 +50,8 @@ export class AnthropicProvider extends AIProvider {
49
50
  const effortMap = {
50
51
  1: 'low',
51
52
  2: 'medium',
52
- 3: 'high'
53
+ 3: 'high',
54
+ 4: 'max'
53
55
  };
54
56
  // display defaults to 'omitted' on Fable 5 / Mythos 5 / Opus 4.7+ / Sonnet 5 (a silent change from
55
57
  // Opus 4.6 / Sonnet 4.6, which defaulted to 'summarized') — thinking still happens and is billed,
@@ -64,7 +66,8 @@ export class AnthropicProvider extends AIProvider {
64
66
  const budgetMap = {
65
67
  1: 2048,
66
68
  2: 4096,
67
- 3: 8192
69
+ 3: 8192,
70
+ 4: 16384
68
71
  };
69
72
  payload.thinking = {
70
73
  type: 'enabled',
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../ai/src/providers/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../ai/src/providers/anthropic.ts"],"names":[],"mappings":"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"}
@@ -70,8 +70,9 @@ export declare class GeminiProvider extends AIProvider {
70
70
  /** Major.minor from a versioned model name (`gemini-3.5-flash` → 3.5); null for aliases. */
71
71
  private geminiVersion;
72
72
  /** Dial → level, clamped to the family's supported enum: `minimal` is 3.5+; earlier 3.x floors at
73
- * `low`. (gemini-3-pro-preview's low|high-only enum would need a wider clamp, but Google retired
74
- * the model — 404 verified 2026-07-15.) */
73
+ * `low`. Gemini has no rung above `high`, so the dial's 4 clamps down to it — clamping, never a
74
+ * 400, is the rule for a missing rung. (gemini-3-pro-preview's low|high-only enum would need a
75
+ * wider clamp, but Google retired the model — 404 verified 2026-07-15.) */
75
76
  private thinkingLevelFor;
76
77
  private isGeminiResponse;
77
78
  /** Split a candidate's parts into answer text and thought (reasoning) summaries — Gemini marks
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/gemini.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,9 @@ export class GeminiProvider extends AIProvider {
5
5
  this.providerName = 'Gemini';
6
6
  this.defaultBaseUrl = 'https://generativelanguage.googleapis.com';
7
7
  this.path = '/v1beta/models';
8
- this.budgetMap = { 0: 0, 1: 1024, 2: 8192, 3: -1 };
8
+ // 4 repeats 3's `-1`: dynamic already means "think maximally", so the dial's top rung has nowhere
9
+ // higher to go on 2.5-era models — the clamp, expressed in the table.
10
+ this.budgetMap = { 0: 0, 1: 1024, 2: 8192, 3: -1, 4: -1 };
9
11
  }
10
12
  // ── Request building ─────────────────────────────────────────────
11
13
  getPath(model, stream) {
@@ -26,8 +28,7 @@ export class GeminiProvider extends AIProvider {
26
28
  parts: [{ text: m.content }]
27
29
  }));
28
30
  const payload = { contents };
29
- // Enable search grounding by default, can be disabled via opts.webSearch = false
30
- if (opts?.webSearch !== false) {
31
+ if (opts?.webSearch === true) {
31
32
  payload.tools = [{ google_search: {} }];
32
33
  }
33
34
  if (system) {
@@ -51,6 +52,11 @@ export class GeminiProvider extends AIProvider {
51
52
  thinkingConfig: effort === 0 ? dial : { includeThoughts: true, ...dial },
52
53
  };
53
54
  }
55
+ // Gemini nests it under generationConfig — merged rather than assigned, so it survives
56
+ // alongside a thinkingConfig set above (and creates the object when effort was omitted).
57
+ if (opts?.maxOutputTokens !== undefined) {
58
+ payload.generationConfig = { ...payload.generationConfig, maxOutputTokens: opts.maxOutputTokens };
59
+ }
54
60
  return payload;
55
61
  }
56
62
  parseError(errorText, status) {
@@ -112,10 +118,11 @@ export class GeminiProvider extends AIProvider {
112
118
  return m ? Number(m[1]) : null;
113
119
  }
114
120
  /** Dial → level, clamped to the family's supported enum: `minimal` is 3.5+; earlier 3.x floors at
115
- * `low`. (gemini-3-pro-preview's low|high-only enum would need a wider clamp, but Google retired
116
- * the model — 404 verified 2026-07-15.) */
121
+ * `low`. Gemini has no rung above `high`, so the dial's 4 clamps down to it — clamping, never a
122
+ * 400, is the rule for a missing rung. (gemini-3-pro-preview's low|high-only enum would need a
123
+ * wider clamp, but Google retired the model — 404 verified 2026-07-15.) */
117
124
  thinkingLevelFor(version, effort) {
118
- const level = ['minimal', 'low', 'medium', 'high'][effort];
125
+ const level = ['minimal', 'low', 'medium', 'high', 'high'][effort];
119
126
  return level === 'minimal' && version < 3.5 ? 'low' : level;
120
127
  }
121
128
  isGeminiResponse(json) {
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../ai/src/providers/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../ai/src/providers/gemini.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAwB,MAAM,kBAAkB,CAAA;AAsFxF,MAAM,OAAO,cAAe,SAAQ,UAAU;IAA9C;;QACqB,iBAAY,GAAG,QAAQ,CAAA;QACjC,mBAAc,GAAG,2CAA2C,CAAA;QAC5D,SAAI,GAAG,gBAAgB,CAAA;QAEhC,kGAAkG;QAClG,sEAAsE;QACrD,cAAS,GAAgC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAA;IAkLpG,CAAC;IAhLC,oEAAoE;IAE3D,OAAO,CAAC,KAAa,EAAE,MAAe;QAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,iBAAiB,CAAA;QACnE,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3C,OAAO,kBAAkB,KAAK,IAAI,MAAM,GAAG,UAAU,EAAE,CAAA;IACzD,CAAC;IAED,YAAY,CAAC,MAAc;QACzB,OAAO;YACL,cAAc,EAAE,kBAAkB;YAClC,gBAAgB,EAAE,MAAM;SACzB,CAAA;IACH,CAAC;IAED,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,IAAqB,EACrB,OAAgB;QAEhB,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAEnF,MAAM,QAAQ,GAAoB,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/D,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;YAC/C,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC7B,CAAC,CAAC,CAAA;QAEH,MAAM,OAAO,GAAyB,EAAE,QAAQ,EAAE,CAAA;QAElD,IAAI,IAAI,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAA;QACzC,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,iBAAiB,GAAG;gBAC1B,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;aAC1B,CAAA;QACH,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,4FAA4F;YAC5F,+FAA+F;YAC/F,8FAA8F;YAC9F,0FAA0F;YAC1F,mFAAmF;YACnF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,IAAI,GAAyB,OAAO,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC;gBACjE,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;gBAC3D,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;YAC9C,OAAO,CAAC,gBAAgB,GAAG;gBACzB,cAAc,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE;aACzE,CAAA;QACH,CAAC;QAED,uFAAuF;QACvF,yFAAyF;QACzF,IAAI,IAAI,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;YACxC,OAAO,CAAC,gBAAgB,GAAG,EAAE,GAAG,OAAO,CAAC,gBAAgB,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,CAAA;QACnG,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAEQ,UAAU,CAAC,SAAiB,EAAE,MAAc;QACnD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,EAAE,OAAO,EAAE,QAAQ,MAAM,EAAE,EAAE,CAAA;QACtC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YAEpC,mEAAmE;YACnE,uCAAuC;YACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBACpC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK;gBAClB,CAAC,CAAC,MAAM,EAAE,KAAK,CAAA;YAEjB,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC7C,OAAO;oBACL,OAAO,EAAE,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC9D,IAAI,EAAE,QAAQ,CAAC,MAAM;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE;iBAChC,CAAA;YACH,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAA;YACpC,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,oEAAoE;IAEpE,yBAAyB,CAAC,IAAyB;QACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC7B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAA;QACzE,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,EAAE,CAAA;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,CAAA;QAEvD,IAAI,MAAM,GAA8B,UAAU,CAAA;QAClD,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;YAClC,MAAM,GAAG,aAAa,CAAA;QACxB,CAAC;aAAM,IAAI,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;YACtE,MAAM,GAAG,QAAQ,CAAA;QACnB,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACzB,CAAC;IAES,wBAAwB,CAAC,IAA4B;QAC7D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACrC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;IACvD,CAAC;IAED,oEAAoE;IAEpE,4FAA4F;IACpF,aAAa,CAAC,KAAa;QACjC,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAChD,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAChC,CAAC;IAED;;;gFAG4E;IACpE,gBAAgB,CAAC,OAAe,EAAE,MAAmB;QAC3D,MAAM,KAAK,GAAI,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAW,CAAC,MAAM,CAAC,CAAA;QAC7E,OAAO,KAAK,KAAK,SAAS,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;IAC7D,CAAC;IAEO,gBAAgB,CAAC,IAAa;QACpC,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;YACxB,IAAI,KAAK,IAAI;YACb,YAAY,IAAI,IAAI;YACpB,KAAK,CAAC,OAAO,CAAE,IAA0B,CAAC,UAAU,CAAC,CACtD,CAAA;IACH,CAAC;IAED;sGACkG;IAC1F,YAAY,CAAC,QAA2B;QAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAA;QACtD,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAA;QACrB,IAAI,IAAI,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,CAAA;QAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,SAAQ;YACxB,IAAI,IAAI,CAAC,OAAO;gBAAE,SAAS,IAAI,IAAI,CAAC,IAAI,CAAA;;gBACnC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAA;QACxB,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,SAAS,EAAE,SAAS,EAAE,SAAS,IAAI,SAAS,EAAE,CAAA;IACvE,CAAC;IAEO,gBAAgB,CAAC,IAAa;QACpC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC;YACpE,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAA;YAC9C,MAAM,IAAI,mBAAmB,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;CACF"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import type { ChatMessageDto, ChatStreamPieceDto, ChatResponseDto, ProviderResponseDto, ProviderStreamEventDto } from '../protocol.js';
5
5
  import { AIProvider, type ChatRequestOpts } from '../aiProvider.js';
6
- export type OpenAIReasoningEffort = 'none' | 'low' | 'medium' | 'high';
6
+ export type OpenAIReasoningEffort = 'none' | 'low' | 'medium' | 'high' | 'xhigh';
7
7
  export type OpenAIReasoningSummary = 'auto' | 'concise' | 'detailed';
8
8
  export interface OpenAIWebSearchTool {
9
9
  type: 'web_search';
@@ -12,6 +12,7 @@ export type OpenAITool = OpenAIWebSearchTool;
12
12
  export interface OpenAIResponsesApiRequestDto {
13
13
  model: string;
14
14
  input: string;
15
+ max_output_tokens?: number;
15
16
  reasoning?: {
16
17
  effort: OpenAIReasoningEffort;
17
18
  summary?: OpenAIReasoningSummary;
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,8 @@ export class OpenAIProvider extends AIProvider {
10
10
  0: 'none',
11
11
  1: 'low',
12
12
  2: 'medium',
13
- 3: 'high'
13
+ 3: 'high',
14
+ 4: 'xhigh'
14
15
  };
15
16
  }
16
17
  // ── Request building ─────────────────────────────────────────────
@@ -29,8 +30,7 @@ export class OpenAIProvider extends AIProvider {
29
30
  input,
30
31
  stream
31
32
  };
32
- // Enable web search by default, can be disabled via opts.webSearch = false
33
- if (opts?.webSearch !== false) {
33
+ if (opts?.webSearch === true) {
34
34
  payload.tools = [{ type: 'web_search' }];
35
35
  }
36
36
  if (opts?.effort !== undefined) {
@@ -38,6 +38,9 @@ export class OpenAIProvider extends AIProvider {
38
38
  // `summary: 'auto'` requests a reasoning summary; at `none` there's no reasoning to summarize.
39
39
  payload.reasoning = effort === 'none' ? { effort } : { effort, summary: 'auto' };
40
40
  }
41
+ if (opts?.maxOutputTokens !== undefined) {
42
+ payload.max_output_tokens = opts.maxOutputTokens;
43
+ }
41
44
  return payload;
42
45
  }
43
46
  // ── Response parsing ─────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openAI.js","sourceRoot":"","sources":["../../../ai/src/providers/openAI.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,9 @@ export type OpenRouterRequestPayload = {
15
15
  model: string;
16
16
  messages: ChatMessageDto[];
17
17
  stream: boolean;
18
+ max_tokens?: number;
18
19
  reasoning?: {
19
- effort: 'none' | 'low' | 'medium' | 'high';
20
+ effort: 'none' | 'low' | 'medium' | 'high' | 'xhigh';
20
21
  };
21
22
  plugins?: OpenRouterWebPlugin[];
22
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"openRouter.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,mCAAmC;AACnC,UAAU,mBAAmB;IAC3B,EAAE,EAAE,KAAK,CAAA;IACT,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iCAAiC;AACjC,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAA;KAAE,CAAA;IAC1D,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,SAAS,CAAC,QAAQ,CAAC,YAAY,gBAAe;IAO9C,QAAQ,CAAC,cAAc,2BAA0B;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAIlD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAKzB;IAID,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAkBrE,YAAY,CACV,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,wBAAwB;CAqB5B"}
1
+ {"version":3,"file":"openRouter.d.ts","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAE9D,mCAAmC;AACnC,UAAU,mBAAmB;IAC3B,EAAE,EAAE,KAAK,CAAA;IACT,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,iCAAiC;AACjC,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;IACpE,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,kBAAmB,SAAQ,uBAAuB;IAC7D,SAAS,CAAC,QAAQ,CAAC,YAAY,gBAAe;IAO9C,QAAQ,CAAC,cAAc,2BAA0B;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAA6B;IAQlD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAMzB;IAID,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAkBrE,YAAY,CACV,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,eAAe,EACrB,MAAM,EAAE,OAAO,GACd,wBAAwB;CA8B5B"}
@@ -12,12 +12,17 @@ export class OpenRouterProvider extends ChatCompletionsProvider {
12
12
  this.defaultBaseUrl = 'https://openrouter.ai';
13
13
  this.path = '/api/v1/chat/completions';
14
14
  // 0 → `none` (reasoning off): OpenRouter normalizes this across providers, and it's the robust floor
15
- // (its `minimal` isn't supported by every underlying model, e.g. gpt-5.4-mini).
15
+ // (its `minimal` isn't supported by every underlying model, e.g. gpt-5.4-mini). 4 → `xhigh`: the
16
+ // enum is protocol-wide but support is PER MODEL (`reasoning.supported_efforts` on GET /v1/models —
17
+ // gemini-3.5-flash tops out at `high`), and OpenRouter doesn't document what an unsupported value
18
+ // does. Curate rows against that field; this is the one provider where clamp-never-error rests on
19
+ // the catalog rather than on this map.
16
20
  this.effortMap = {
17
21
  0: 'none',
18
22
  1: 'low',
19
23
  2: 'medium',
20
- 3: 'high'
24
+ 3: 'high',
25
+ 4: 'xhigh'
21
26
  };
22
27
  }
23
28
  // ── Request building ─────────────────────────────────────────────
@@ -42,7 +47,12 @@ export class OpenRouterProvider extends ChatCompletionsProvider {
42
47
  messages,
43
48
  stream
44
49
  };
45
- // Web search disabled for OpenRouter - $0.02/request via Exa.ai is expensive
50
+ // Off by default: a bare `web` plugin auto-selects the model's NATIVE search, which bills the
51
+ // vendor's search fee *and* the retrieved results as input tokens. Measured 2026-08 over one
52
+ // question, search off→on: luna $0.0003→$0.0171 (70→17k input tokens), sonnet-5 $0.0015→$0.0400,
53
+ // grok-4.5 $0.0012→$0.0477, gemini-3.6-flash $0.0059→$0.0343. Gemini is the outlier because
54
+ // grounding retrieves server-side (input barely moves, ~$0.028 flat); everyone else pays twice,
55
+ // so the bill scales with the model's *input* rate, not any flat search price.
46
56
  if (opts?.webSearch === true) {
47
57
  payload.plugins = [{ id: 'web' }];
48
58
  }
@@ -52,6 +62,9 @@ export class OpenRouterProvider extends ChatCompletionsProvider {
52
62
  effort: this.effortMap[effort]
53
63
  };
54
64
  }
65
+ if (opts?.maxOutputTokens !== undefined) {
66
+ payload.max_tokens = opts.maxOutputTokens;
67
+ }
55
68
  return payload;
56
69
  }
57
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openRouter.js","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAiB9D,MAAM,OAAO,kBAAmB,SAAQ,uBAAuB;IAA/D;;QACqB,iBAAY,GAAG,YAAY,CAAA;QAC9C,6FAA6F;QAC7F,iGAAiG;QACjG,gGAAgG;QAChG,gGAAgG;QAChG,iGAAiG;QACjG,uGAAuG;QAC9F,mBAAc,GAAG,uBAAuB,CAAA;QACxC,SAAI,GAAW,0BAA0B,CAAA;QAElD,qGAAqG;QACrG,gFAAgF;QAC/D,cAAS,GAA4D;YACpF,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,KAAK;YACR,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,MAAM;SACV,CAAA;IAgDH,CAAC;IA9CC,oEAAoE;IAEpE,YAAY,CAAC,MAAc,EAAE,MAAe;QAC1C,MAAM,OAAO,GAA2B;YACtC,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,UAAU;SACtB,CAAA;QAED,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,cAAc,CAAC,GAAG,MAAM,CAAA;YAChC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAA;YAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,IAAqB,EACrB,MAAe;QAEf,MAAM,OAAO,GAA6B;YACxC,KAAK;YACL,QAAQ;YACR,MAAM;SACP,CAAA;QAED,6EAA6E;QAC7E,IAAI,IAAI,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,SAAS,GAAG;gBAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aAC/B,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"openRouter.js","sourceRoot":"","sources":["../../../ai/src/providers/openRouter.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAkB9D,MAAM,OAAO,kBAAmB,SAAQ,uBAAuB;IAA/D;;QACqB,iBAAY,GAAG,YAAY,CAAA;QAC9C,6FAA6F;QAC7F,iGAAiG;QACjG,gGAAgG;QAChG,gGAAgG;QAChG,iGAAiG;QACjG,uGAAuG;QAC9F,mBAAc,GAAG,uBAAuB,CAAA;QACxC,SAAI,GAAW,0BAA0B,CAAA;QAElD,qGAAqG;QACrG,iGAAiG;QACjG,oGAAoG;QACpG,kGAAkG;QAClG,kGAAkG;QAClG,uCAAuC;QACtB,cAAS,GAAsE;YAC9F,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,KAAK;YACR,CAAC,EAAE,QAAQ;YACX,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,OAAO;SACX,CAAA;IAyDH,CAAC;IAvDC,oEAAoE;IAEpE,YAAY,CAAC,MAAc,EAAE,MAAe;QAC1C,MAAM,OAAO,GAA2B;YACtC,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,WAAW,EAAE,MAAM;YACnB,cAAc,EAAE,kBAAkB;YAClC,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,UAAU;SACtB,CAAA;QAED,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,cAAc,CAAC,GAAG,MAAM,CAAA;YAChC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAA;YAC3B,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAA;QAC5B,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,YAAY,CACV,QAA0B,EAC1B,KAAa,EACb,IAAqB,EACrB,MAAe;QAEf,MAAM,OAAO,GAA6B;YACxC,KAAK;YACL,QAAQ;YACR,MAAM;SACP,CAAA;QAED,8FAA8F;QAC9F,6FAA6F;QAC7F,iGAAiG;QACjG,4FAA4F;QAC5F,gGAAgG;QAChG,+EAA+E;QAC/E,IAAI,IAAI,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;YAC7B,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,SAAS,GAAG;gBAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aAC/B,CAAA;QACH,CAAC;QAED,IAAI,IAAI,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;YACxC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,CAAA;QAC3C,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
@@ -35,11 +35,11 @@ const insight = `
35
35
  const aiOptions = `options: {
36
36
  messages: Array<{ role: "user" | "assistant"; content: string }>;
37
37
  system?: string;
38
- /** Reasoning effort: 0=minimal, 1=low, 2=med, 3=high. Mapped to each provider's native mechanism (OpenAI/OpenRouter reasoning effort, Gemini thinking level, Anthropic adaptive thinking). 0 reaches the vendor's explicit off switch, and floors to a little thinking only on always-thinking models. Pin 1 (low) for most work; pick 0 deliberately, when you want the raw model or latency is the constraint. Omitting is NOT off — it buys the model's own default (medium on GPT-5.6), which reasons and bills invisibly. Ignored on the courtesy model, which runs at the level Typebulb sets. */
39
- effort?: 0 | 1 | 2 | 3;
38
+ /** Reasoning effort: 0=minimal, 1=low, 2=med, 3=high, 4=xhigh. Mapped to each provider's native mechanism (OpenAI/OpenRouter reasoning effort, Gemini thinking level, Anthropic adaptive thinking). 0 reaches the vendor's explicit off switch, and floors to a little thinking only on always-thinking models. 4 reaches the rung above high where the vendor has one (OpenAI/OpenRouter xhigh, Anthropic max) and clamps to high where it doesn't (Gemini) — never an error. Pin 1 (low) for most work; pick 0 deliberately, when you want the raw model or latency is the constraint. Omitting is NOT off — it buys the model's own default (medium on GPT-5.6), which reasons and bills invisibly. Ignored on the courtesy model, which runs at the level Typebulb sets. */
39
+ effort?: 0 | 1 | 2 | 3 | 4;
40
40
  provider?: string;
41
41
  model?: string;
42
- /** Enable/disable web search. Default: on for BYOK, always off for free model. */
42
+ /** Give the model a web-search tool, billed to the user's key. Off by default; the free model never searches. */
43
43
  webSearch?: boolean;
44
44
  /** Abort the request. On abort the promise rejects / the stream ends. */
45
45
  signal?: AbortSignal;
@@ -70,7 +70,7 @@ const ai = `
70
70
  * Streaming counterpart of \`tb.ai()\`. Yields \`{ kind: "text" | "reasoning", text }\` deltas
71
71
  * as they arrive; break the loop (or abort \`signal\`) to cancel and stop the upstream.
72
72
  *
73
- * \`kind: "reasoning"\` deltas only arrive when you pass \`effort: 1-3\` AND use a
73
+ * \`kind: "reasoning"\` deltas only arrive when you pass \`effort: 1-4\` AND use a
74
74
  * thinking-capable model; otherwise the stream is \`text\`-only.
75
75
  *
76
76
  * @example