@owlmeans/llm 0.1.18-rc.40 → 0.1.18-rc.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -20,7 +20,7 @@ abstraction that resolves models from an inheritable policy.
20
20
  ## Installation
21
21
 
22
22
  ```bash
23
- bun add @owlmeans/llm@^0.1.18-rc.40 @owlmeans/llm-common@^0.1.18-rc.37
23
+ bun add @owlmeans/llm@^0.1.18-rc.41 @owlmeans/llm-common@^0.1.18-rc.37
24
24
  bun add @langchain/core @langchain/openai @langchain/anthropic # peer dependencies
25
25
  ```
26
26
 
@@ -185,7 +185,7 @@ This package ships embedded agent skills under `agent-meta/`. After installing y
185
185
  your project's skill store (`.agents/skills/`):
186
186
 
187
187
  ```sh
188
- npx @owlmeans/agent-skills@^0.1.18-rc.42
188
+ npx @owlmeans/agent-skills@^0.1.18-rc.43
189
189
  ```
190
190
 
191
191
  The embedded files are version-matched to this package release. Do not edit them
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 2,
3
3
  "package": "@owlmeans/llm",
4
- "version": "0.1.18-rc.40",
5
- "generatedAt": "2026-09-29T08:01:58.124Z",
4
+ "version": "0.1.18-rc.41",
5
+ "generatedAt": "2026-09-29T08:27:56.737Z",
6
6
  "canonicalRepo": "https://github.com/owlmeans/common",
7
7
  "entries": [
8
8
  {
@@ -8,7 +8,7 @@ user-invocable: false
8
8
  # @owlmeans/llm
9
9
 
10
10
  **Layer:** Core
11
- **Install:** `"@owlmeans/llm": "^0.1.18-rc.40"` in `dependencies` (plus the `@langchain/*` peers)
11
+ **Install:** `"@owlmeans/llm": "^0.1.18-rc.41"` in `dependencies` (plus the `@langchain/*` peers)
12
12
 
13
13
  The inference runtime. Everything provider-specific is a **plugin**; the model itself only owns the
14
14
  provider-independent parts (streaming discipline, retries, validation, observability). Serializable
@@ -31,7 +31,8 @@ symbol "because a test needs it".
31
31
  | `plugins`, `registerLlmPlugin`, `resolvePlugin`, `pluginOf`, `pluginFor` | The provider-plugin registry. Also at `@owlmeans/llm/plugins`. |
32
32
  | `anthropicPlugin`, `openAiPlugin`, `compatiblePlugin`, `openAiFamily` | Built-in providers; `openAiFamily` is the shared OpenAI-client behaviour to spread into a new plugin. |
33
33
  | `NO_SAMPLING_PREFIXES` / `rejectsSampling(model)` · `RESPONSES_API_PREFIXES` / `usesResponsesApi(model)` | Which families reject which sampling parameters — see the table below. Consumers pin presets against them. |
34
- | `effortSupportOf(config)` · `OPENAI_EFFORT_SUPPORT`, `ANTHROPIC_EFFORT_SUPPORT` · `REASONING_MIN_MAX_TOKENS` | Which `ModelConfig.effort` levels a model accepts — see "Fallback chains and provider effort". |
34
+ | `effortSupportOf(config)` · `OPENAI_EFFORT_SUPPORT`, `ANTHROPIC_MODEL_SUPPORT` / `anthropicSupportOf(model)` · `REASONING_MIN_MAX_TOKENS` | Which `ModelConfig.effort` levels a model accepts, and the per-family Anthropic facts beside them — see "Fallback chains and provider effort". |
35
+ | `ThinkingOff`, `thinkingOffFor(config)` · `rejectsForcedTool(model)` | The Anthropic off switch a config sends (`disabled`, `between_tools`, or none), and whether a model refuses a pinned `tool_choice`. |
35
36
  | `withRetry`, `registerFatalError`, `isFatalError`, `spectate`, `normalizeInput`, `parseJsonContent`, `coerceToSchema`, `resolveFallbacks`, `PROVIDER_NEUTRAL_FIELDS` | Helpers usable alongside a model. Also at `@owlmeans/llm/helpers`. |
36
37
  | `LlmError`, `LlmModelError`, `LlmMissconfiguredError`, `LlmPluginError`, `LlmRetryExceededError` | `ResilientError` family. `LlmModelError` is the RETRYABLE one. |
37
38
  | `mergePrompt`, `mergePolicy`, `resolveRole`, `effortPatch`, `freezeResults` | Execution merge helpers; `mergePrompt` unions skills and takes the deepest role; `freezeResults` deep-freezes a results view. |
@@ -47,8 +48,9 @@ symbol "because a test needs it".
47
48
  | `owns` / `family` | `instanceof` checks; a `family` change between rungs re-renders the prompt |
48
49
  | `refine` | the per-provider retry rebuild (budget doubling, reasoning shrink, effort climb) |
49
50
  | `effort` | which `ModelConfig.effort` levels a model accepts (`effortSupportOf(config)`) |
50
- | `structuredMode` | native `response_format` vs the forced-tool-call hack |
51
- | `toolChoice` / `responseFormat` | the provider-specific call shapes |
51
+ | `structuredMode` | native `response_format` vs a structured-output tool call |
52
+ | `toolChoice(toolName, config)` / `responseFormat` | the provider-specific call shapes; `config` is the ACTIVE rung's, so a model that refuses a pinned tool gets the automatic choice |
53
+ | `pinsTool(config)` / `strictTool(config, schema)` | whether `toolChoice` pins the tool (when not, `prepare` appends `toolCallInstruction`), and whether the tool goes `strict` |
52
54
  | `patchSystem` | how the composed system blocks are rendered and where their cache breakpoints go |
53
55
  | `patchCache` | the message-prefix cache marker |
54
56
  | `cacheKey` (via `ModelConfig.cacheKey`) | provider cache-routing hints such as OpenAI's `prompt_cache_key` |
@@ -265,9 +267,10 @@ bug: another provider's rung asked in the primary's `tool_choice` spelling is a
265
267
 
266
268
  **`ModelConfig.effort` (`ModelEffort`, `@owlmeans/llm-common`) is the provider's own knob** —
267
269
  OpenAI `reasoning.effort`, Anthropic `output_config.effort` — and not `ExecutionEffort`, which is
268
- this package's token-budget tier. Plugin tables are the authority (`OPENAI_EFFORT_SUPPORT`,
269
- `ANTHROPIC_EFFORT_SUPPORT`, verified 2026-09-23 against developers.openai.com/api/docs/models/* and
270
- platform.claude.com/docs/en/build-with-claude/effort):
270
+ this package's token-budget tier. Plugin tables are the authority (`OPENAI_EFFORT_SUPPORT` verified
271
+ 2026-09-23 against developers.openai.com/api/docs/models/*; `ANTHROPIC_MODEL_SUPPORT` verified
272
+ 2026-09-29 against platform.claude.com/docs/en/models/{sonnet-5-5,opus-5-5,fable-5-1}/whats-new-* and
273
+ build-with-claude/effort):
271
274
 
272
275
  | Model | Levels | Default |
273
276
  |---|---|---|
@@ -275,16 +278,49 @@ platform.claude.com/docs/en/build-with-claude/effort):
275
278
  | `gpt-6-astra` | low … max (`none` is a 400) | medium |
276
279
  | `gpt-5*` and older OpenAI | not sent — accepted sets vary per snapshot | — |
277
280
  | Claude Opus 5.5 | low … max | medium |
278
- | Claude Opus 5, Fable 5, Mythos 5, Opus 4.8/4.7, Sonnet 5 | low … max | high |
281
+ | Claude Sonnet 5.5, Opus 5, Fable 5.1/5, Mythos 5.1/5, Opus 4.8/4.7, Sonnet 5 | low … max | high |
279
282
  | Claude Mythos Preview, Opus 4.6, Sonnet 4.6 | low, medium, high, max (no xhigh) | high |
280
283
  | Claude Opus 4.5 | low, medium, high | high |
281
284
  | Claude Haiku 4.5, Sonnet 4.5 and older | field rejected — never sent | — |
282
285
 
283
286
  A declared level the model lacks is clamped DOWN to the nearest accepted one (never a 400); an
284
- undeclared effort is not sent at all (omitting it is how the default is asked for). Opus 5 accepts
285
- `thinking: disabled` only at `high` or below, so under `disableThinking` its levels stop there
286
- (`thinkingOffCeiling`); Sonnet 5 takes `disabled` at every level, and effort still governs every
287
- output token with thinking off.
287
+ undeclared effort is not sent at all (omitting it is how the default is asked for).
288
+
289
+ **The Anthropic families differ in three ways that are each a 400**, and `ANTHROPIC_MODEL_SUPPORT`
290
+ (first prefix match wins, so `claude-sonnet-5-5` sits above `claude-sonnet-5`) is where each fact
291
+ lives — never an inline check on one id:
292
+
293
+ | Family | Off switch under `disableThinking` | Effort beside it | Pinned `tool_choice` | Cache minimum |
294
+ |---|---|---|---|---|
295
+ | Sonnet 5.5 | `between_tools` (alone — `display`, `budget_tokens`, `block_binding` beside it are 400s) | low … high (`thinkingOffCeiling`) | 400 | 512 |
296
+ | Opus 5.5 | none: always thinks, nothing is sent, effort is the control | all | 400 | 512 |
297
+ | Fable 5.1, Mythos 5.1 | none | all | 400 | 512 |
298
+ | Fable 5, Mythos 5 | none | all | accepted | 512 |
299
+ | Opus 5 | `disabled` | low … high (`thinkingOffCeiling`) | accepted | 512 |
300
+ | Sonnet 5, Opus 4.8/4.7 | `disabled` | all | accepted | 1024 |
301
+ | Older models (Haiku 4.5, Sonnet 4.6, …) | none — they reason only when asked | per the effort table | accepted | 1024 |
302
+
303
+ `thinkingOffFor(config)` is the value `build` sends; `refine` carries it through `lc_kwargs` and
304
+ reads it back to keep the ceiling, so a climbed retry stops at `high` instead of answering 400. The
305
+ cache minimum is the default under a preset's own `cacheMinTokens`.
306
+
307
+ **Structured output on a model that refuses a pinned tool** (`rejectsForcedTool`): `toolChoice`
308
+ answers `{ type: 'auto' }`, `pinsTool` answers `false`, and `prepare` appends
309
+ `toolCallInstruction(toolName)` to the per-call payload after the JSON mention — the prompt is all
310
+ that asks for the call. The tool goes `strict: true` only when `isStrictSchema(schema)` (every object
311
+ closed with `additionalProperties: false`, basic types, scalar `enum`/`const`, `anyOf`/`allOf`, the
312
+ listed formats, `minItems` 0/1; no `$ref`, no length/pattern/numeric constraints, no `nullable`): a
313
+ strict schema outside that subset is a 400 no retry fixes, while a non-strict one is still checked by
314
+ the caller's validator. A reply with no tool call falls to the JSON-content fallback and otherwise
315
+ throws a retryable `null-output` — a failed attempt, never a crash. Every other model keeps the pin
316
+ and gets neither instruction nor `strict`.
317
+
318
+ **langchain reads a `thinking` it never sends.** `ChatAnthropic` keeps a `thinking: disabled` field
319
+ default, off the wire unless set, but its client-side parameter check reads it: an Opus 5/5.5 call
320
+ at `xhigh`/`max` with no `thinking` set threw "thinking.type=disabled is not supported" locally,
321
+ before any request — not a 400, so retried to exhaustion. `build` and `refine` therefore set that
322
+ unsent field to `adaptive` on a model whose absent field means adaptive (`thinksByDefault`: the 5
323
+ family, not Opus 4.8/4.7); the wire is unchanged.
288
324
 
289
325
  **Effort climbs on retries, one level per attempt of the rung** (`LlmRefineParams.rungAttempt`), from
290
326
  the rung's declared level — or its model's default once it has retried — to the model's ceiling. So
@@ -311,8 +347,9 @@ the idle deadline reads as a dead connection and retries from scratch
311
347
  `makeLlmModel` appends the literal `/no_think` to every request's prepared messages whenever the flag
312
348
  is set AND the plugin's `suppressesThinking(config)` does not answer `true` — the soft switch for
313
349
  models with no request-level control (Qwen3). The Anthropic plugin answers `true` only for
314
- `rejectsSampling(model)`, and for those puts `thinking: { type: 'disabled' }` on the request in
315
- `build`, which `refine` carries through `lc_kwargs` on every attempt. Below that line
350
+ `rejectsSampling(model)`, and for those puts the family's off switch (`thinkingOffFor`, the table
351
+ above) on the request in `build`, which `refine` carries through `lc_kwargs` on every attempt — on a
352
+ model that always thinks nothing is sent and the flag only keeps the directive out. Below that line
316
353
  (`claude-haiku-4-5`, `claude-sonnet-4-6`) and under any plugin declaring no hook the flag injects
317
354
  prompt text instead, so set it where the wire honours it. **A preset must set the flag on every
318
355
  adaptive Anthropic rung**: a same-provider `fallback` inherits it from the rung above, a rung that
@@ -338,6 +375,14 @@ Two diagnostics the above depends on:
338
375
  OpenAI reasoning models get it handled by shrinking the reasoning cap on retry (`plugins/openai.ts`);
339
376
  escalating `maxTokens` alone fixes neither family — the retry draws from an unchanged distribution.
340
377
 
378
+ **Every attempt is a fresh request over the caller's history.** A retry or a fallback rung re-sends
379
+ the same prepared messages; a failed attempt's reply is never appended. So the thinking-block
380
+ bindings of Opus 5.5, Sonnet 5.5 and Fable 5.1 (a block is read only by its own model, or a listed
381
+ successor; the API drops the rest, unbilled) cost nothing here. What they do bind is a CALLER that
382
+ carries assistant turns across `talk` calls: an edit before a replayed block (the system prompt, the
383
+ tools, an earlier message) is a 400 on accounts created on or after 2026-08-31, so such a
384
+ conversation stays append-only.
385
+
341
386
  ## Config precedence: a preset is a base, not a final word
342
387
 
343
388
  `createModel` layers four sources, lowest first: `presetOf(base.preset)` < `base` < `presetOf(override.preset)` < `override`.
@@ -375,7 +420,9 @@ bytes of a composed prompt and of a model's sent messages recorded before the re
375
420
  In `tests/model.spec.ts` the anthropic live
376
421
  suite is gated on `ANTHROPIC_SECRET` and self-skips with a printed reason without it, and the OpenRouter
377
422
  suite is disabled unconditionally: an aggregator on a separate account serving models no deployment runs,
378
- whose `402 requires more credits` reads as a failure of the code under test. `plugins.spec.ts` covers the
423
+ whose `402 requires more credits` reads as a failure of the code under test. `anthropic-families.spec.ts`
424
+ pins the per-family wire (thinking switch, effort ceiling, `tool_choice`, `strict`, cache minimum,
425
+ the retry on a text-only reply) through `ChatAnthropic.invocationParams`. `plugins.spec.ts` covers the
379
426
  `Compatible` provider offline.
380
427
 
381
428
  ## Depends On
package/build/consts.d.ts CHANGED
@@ -84,6 +84,12 @@ export declare const JSON_INSTRUCTION: string;
84
84
  * whole output budget on thinking and return empty content with `finish_reason="length"`.
85
85
  */
86
86
  export declare const NO_THINK_DIRECTIVE = "/no_think";
87
+ /**
88
+ * Appended to the prompt of `invoke`/`request` on a model that refuses a pinned tool: with
89
+ * `tool_choice: auto` the instruction is what asks for the call. Generic on purpose — it names
90
+ * only the tool.
91
+ */
92
+ export declare const toolCallInstruction: (toolName: string) => string;
87
93
  /** Tool name used for structured output when a schema carries no usable title/name. */
88
94
  export declare const DEFAULT_TOOL_NAME = "extract";
89
95
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEtE,mFAAmF;AACnF,eAAO,MAAM,WAAW,yBAAyB,CAAA;AAEjD,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,mCAAmC,CAAA;AAEjE,0FAA0F;AAC1F,eAAO,MAAM,cAAc,gCAAgC,CAAA;AAE3D,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,QAAgB,CAAA;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAAY,CAAA;AAE/C,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAA;AAEvC,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,EAAE,QAAe,CAAA;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAExC;;;;GAIG;AACH,eAAO,MAAM,eAAe,IAAI,CAAA;AAEhC;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAGkD,CAAA;AAE/E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAA;AAE7C,uFAAuF;AACvF,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YAAY,CAAA;AAE3C,8DAA8D;AAC9D,eAAO,MAAM,cAAc,2BAA2B,CAAA;AAEtD;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAKlE,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAErC,CAAA"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEtE,mFAAmF;AACnF,eAAO,MAAM,WAAW,yBAAyB,CAAA;AAEjD,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,mCAAmC,CAAA;AAEjE,0FAA0F;AAC1F,eAAO,MAAM,cAAc,gCAAgC,CAAA;AAE3D,6EAA6E;AAC7E,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,QAAgB,CAAA;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,MAAM,CAAA;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAAY,CAAA;AAE/C,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,IAAI,CAAA;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAA;AAEvC,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,EAAE,QAAe,CAAA;AAE/C;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAExC;;;;GAIG;AACH,eAAO,MAAM,eAAe,IAAI,CAAA;AAEhC;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAGkD,CAAA;AAE/E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,cAAc,CAAA;AAE7C;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,aAAc,MAAM,KAAG,MACoD,CAAA;AAE3G,uFAAuF;AACvF,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,YAAY,CAAA;AAE3C,8DAA8D;AAC9D,eAAO,MAAM,cAAc,2BAA2B,CAAA;AAEtD;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAKlE,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,EAErC,CAAA"}
package/build/consts.js CHANGED
@@ -86,6 +86,12 @@ export const JSON_INSTRUCTION = 'Respond with a single complete and valid JSON o
86
86
  * whole output budget on thinking and return empty content with `finish_reason="length"`.
87
87
  */
88
88
  export const NO_THINK_DIRECTIVE = '/no_think';
89
+ /**
90
+ * Appended to the prompt of `invoke`/`request` on a model that refuses a pinned tool: with
91
+ * `tool_choice: auto` the instruction is what asks for the call. Generic on purpose — it names
92
+ * only the tool.
93
+ */
94
+ export const toolCallInstruction = (toolName) => `Answer by calling the tool \`${toolName}\` with the complete result as its input. Do not reply in text.`;
89
95
  /** Tool name used for structured output when a schema carries no usable title/name. */
90
96
  export const DEFAULT_TOOL_NAME = 'extract';
91
97
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,mFAAmF;AACnF,MAAM,CAAC,MAAM,WAAW,GAAG,sBAAsB,CAAA;AAEjD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,gCAAgC,CAAA;AAEjE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,cAAc,GAAG,6BAA6B,CAAA;AAE3D,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,KAAK,CAAA;AAE/C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAEtC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAEvC,kFAAkF;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAa,IAAI,CAAA;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAA;AAEhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,6DAA6D;MACzF,gHAAgH;MAChH,iGAAiG;MACjG,2EAA2E,CAAA;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAA;AAE7C,uFAAuF;AACvF,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAA;AAE1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAA;AAEtD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8C;IACrE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;IAClD,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,EAAE;IAC9B,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE;IACjE,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE;CACjE,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAa;IACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS;CACrF,CAAA"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,mFAAmF;AACnF,MAAM,CAAC,MAAM,WAAW,GAAG,sBAAsB,CAAA;AAEjD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,gCAAgC,CAAA;AAEjE,0FAA0F;AAC1F,MAAM,CAAC,MAAM,cAAc,GAAG,6BAA6B,CAAA;AAE3D,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAEtC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,KAAK,CAAA;AAE/C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAA;AAEtC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAEvC,kFAAkF;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAa,IAAI,CAAA;AAE/C;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAExC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAA;AAEhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,6DAA6D;MACzF,gHAAgH;MAChH,iGAAiG;MACjG,2EAA2E,CAAA;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAA;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAgB,EAAU,EAAE,CAC9D,gCAAgC,QAAQ,iEAAiE,CAAA;AAE3G,uFAAuF;AACvF,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAA;AAE1C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,SAAS,CAAA;AAE3C,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAA;AAEtD;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAA8C;IACrE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;IAClD,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,EAAE;IAC9B,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE;IACjE,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE;CACjE,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAa;IACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS;CACrF,CAAA"}
package/build/index.d.ts CHANGED
@@ -9,7 +9,8 @@ export * from './inquiry/index.js';
9
9
  export * from './prompt/index.js';
10
10
  export type * from './plugins/types.js';
11
11
  export { plugins, registerLlmPlugin, pluginOf, pluginFor, resolvePlugin, effortSupportOf, } from './plugins/index.js';
12
- export { anthropicPlugin, ANTHROPIC_FAMILY, ANTHROPIC_EFFORT_SUPPORT, NO_SAMPLING_PREFIXES, rejectsSampling, } from './plugins/anthropic.js';
12
+ export { anthropicPlugin, ANTHROPIC_FAMILY, ANTHROPIC_MODEL_SUPPORT, anthropicSupportOf, NO_SAMPLING_PREFIXES, rejectsForcedTool, rejectsSampling, ThinkingOff, thinkingOffFor, } from './plugins/anthropic.js';
13
+ export type { AnthropicModelSupport } from './plugins/anthropic.js';
13
14
  export { compatiblePlugin } from './plugins/compatible.js';
14
15
  export { openAiPlugin, openAiFamily, OPENAI_FAMILY, OPENAI_EFFORT_SUPPORT, REASONING_MIN_MAX_TOKENS, RESPONSES_API_PREFIXES, usesResponsesApi, } from './plugins/openai.js';
15
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,mBAAmB,YAAY,CAAA;AAC/B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,mBAAmB,oBAAoB,CAAA;AACvC,OAAO,EACL,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,GAChF,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,eAAe,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,oBAAoB,EACjF,eAAe,GAChB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAC1F,sBAAsB,EAAE,gBAAgB,GACzC,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,mBAAmB,YAAY,CAAA;AAC/B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,mBAAmB,oBAAoB,CAAA;AACvC,OAAO,EACL,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,GAChF,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,eAAe,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,oBAAoB,EACpG,iBAAiB,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,GAChE,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAC1F,sBAAsB,EAAE,gBAAgB,GACzC,MAAM,qBAAqB,CAAA"}
package/build/index.js CHANGED
@@ -7,7 +7,7 @@ export * from './execution/index.js';
7
7
  export * from './inquiry/index.js';
8
8
  export * from './prompt/index.js';
9
9
  export { plugins, registerLlmPlugin, pluginOf, pluginFor, resolvePlugin, effortSupportOf, } from './plugins/index.js';
10
- export { anthropicPlugin, ANTHROPIC_FAMILY, ANTHROPIC_EFFORT_SUPPORT, NO_SAMPLING_PREFIXES, rejectsSampling, } from './plugins/anthropic.js';
10
+ export { anthropicPlugin, ANTHROPIC_FAMILY, ANTHROPIC_MODEL_SUPPORT, anthropicSupportOf, NO_SAMPLING_PREFIXES, rejectsForcedTool, rejectsSampling, ThinkingOff, thinkingOffFor, } from './plugins/anthropic.js';
11
11
  export { compatiblePlugin } from './plugins/compatible.js';
12
12
  export { openAiPlugin, openAiFamily, OPENAI_FAMILY, OPENAI_EFFORT_SUPPORT, REASONING_MIN_MAX_TOKENS, RESPONSES_API_PREFIXES, usesResponsesApi, } from './plugins/openai.js';
13
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAE3B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AAEjC,OAAO,EACL,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,GAChF,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,eAAe,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,oBAAoB,EACjF,eAAe,GAChB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAC1F,sBAAsB,EAAE,gBAAgB,GACzC,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAE3B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AAEjC,OAAO,EACL,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,GAChF,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,eAAe,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,oBAAoB,EACpG,iBAAiB,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,GAChE,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EACL,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAC1F,sBAAsB,EAAE,gBAAgB,GACzC,MAAM,qBAAqB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACuB,QAAQ,EAAE,eAAe,EAC1D,YAAY,EACb,MAAM,YAAY,CAAA;AAmDnB;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,sGAWtB,eAAe,aAAa,YAAY,KAAG,QAqf7C,CAAA"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACuB,QAAQ,EAAE,eAAe,EAC1D,YAAY,EACb,MAAM,YAAY,CAAA;AAmDnB;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,sGAWtB,eAAe,aAAa,YAAY,KAAG,QAkgB7C,CAAA"}
package/build/model.js CHANGED
@@ -9,7 +9,7 @@ import { withRetry } from './helpers/retry.js';
9
9
  import { spectate } from './helpers/spectate.js';
10
10
  import { idleTimeout, resolveOutputCap } from './utils/config.js';
11
11
  import { reportNull } from './utils/null-report.js';
12
- import { applyNoThink, dropBlankContent, ensureJsonMention, stripCacheMarkers } from './utils/prompt.js';
12
+ import { applyNoThink, dropBlankContent, ensureJsonMention, ensureToolCall, stripCacheMarkers } from './utils/prompt.js';
13
13
  import { rungAt, rungsOf } from './utils/rungs.js';
14
14
  import { resolveSchemaValidator, toToolName, unwrapNamed } from './utils/schema.js';
15
15
  import { streamWithDeadline } from './utils/stream.js';
@@ -84,10 +84,10 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
84
84
  * is the whole point: a prompt cache is a PREFIX match, so the bytes every call shares
85
85
  * have to be physically ahead of the bytes that differ.
86
86
  *
87
- * Rendered for one rung: the system blocks, cache markers and the thinking switch are
88
- * provider dialect, so a fallback on another provider needs its own rendering.
87
+ * Rendered for one rung: the system blocks, cache markers, the thinking switch and the tool
88
+ * instruction are provider dialect, so a fallback on another provider needs its own rendering.
89
89
  */
90
- const prepare = async (input, action, useCache, cacheMax, json, callSkills, { model, plugin, config }) => {
90
+ const prepare = async (input, action, useCache, cacheMax, json, callSkills, toolName, { model, plugin, config }) => {
91
91
  const msgs = normalizeInput(input);
92
92
  // The caller may hand back messages this pipeline marked on a PREVIOUS call — the
93
93
  // markers live on its own objects. The budget is per request, so clear them and
@@ -115,6 +115,9 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
115
115
  }
116
116
  if (json)
117
117
  ensureJsonMention(msgs);
118
+ // A model that refuses a pinned tool is asked for it in words; `toolChoice` sends `auto`.
119
+ if (toolName != null && plugin?.pinsTool?.(config) === false)
120
+ ensureToolCall(msgs, toolName);
118
121
  // The soft switch is for models with no request-level control; a plugin that sends the
119
122
  // real parameter must not also get the directive as prompt text.
120
123
  applyNoThink(msgs, config.disableThinking === true && plugin?.suppressesThinking?.(config) !== true);
@@ -135,13 +138,13 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
135
138
  * is enough — and it has to re-run rather than be cached per family, because the
136
139
  * markers live on the caller's message objects and each rendering clears the last one's.
137
140
  */
138
- const preparing = (input, action, useCache, cacheMax, json, callSkills) => {
141
+ const preparing = (input, action, useCache, cacheMax, json, callSkills, toolName) => {
139
142
  let prepared = null;
140
143
  return async (rung) => {
141
144
  const family = rung.plugin?.family;
142
145
  if (prepared == null || prepared.family !== family) {
143
146
  prepared = {
144
- family, msgs: await prepare(input, action, useCache, cacheMax, json, callSkills, rung),
147
+ family, msgs: await prepare(input, action, useCache, cacheMax, json, callSkills, toolName, rung),
145
148
  };
146
149
  }
147
150
  return prepared.msgs;
@@ -234,10 +237,19 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
234
237
  if (mode === StructuredMode.Native) {
235
238
  return refined.stream(msgs, { ...base, ...responseFormat && { response_format: responseFormat } });
236
239
  }
237
- // langchain converts the OpenAI-shaped tool DEFINITION for either provider, but the
238
- // `tool_choice` shape is NOT converted — the plugin supplies the right spelling.
240
+ // langchain converts the OpenAI-shaped tool DEFINITION (with `strict`) for either provider,
241
+ // but the `tool_choice` shape is NOT converted — the plugin supplies the right spelling, and
242
+ // for a model that refuses a pinned tool the automatic choice. A reply with no tool call
243
+ // then falls to the content fallback below and, failing that, is a null result retried.
239
244
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
240
- const bound = refined.bindTools([{ type: 'function', function: { name: toolName, description: '', parameters: innerSchema } }], { tool_choice: plugin?.toolChoice(toolName) ?? { type: 'function', function: { name: toolName } } });
245
+ const strict = plugin?.strictTool?.(active.config, innerSchema) === true;
246
+ const bound = refined.bindTools([{
247
+ type: 'function',
248
+ function: { name: toolName, description: '', parameters: innerSchema, ...(strict ? { strict } : {}) },
249
+ }], {
250
+ tool_choice: plugin?.toolChoice(toolName, active.config)
251
+ ?? { type: 'function', function: { name: toolName } },
252
+ });
241
253
  return bound.stream(msgs, base);
242
254
  };
243
255
  let piece = null;
@@ -358,9 +370,9 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
358
370
  },
359
371
  invoke: async (input, schema, { temperature, ref, filter, action, useCache = false, cacheMax = MAX_CACHE_BREAKPOINTS, skills, escalation, fatal, }) => {
360
372
  return await observeFailure(action, async () => {
361
- const prepared = preparing(input, action, useCache, cacheMax, true, skills);
362
373
  const { name, innerSchema, validate } = resolveSchemaValidator(ajv, schema);
363
374
  const toolName = toToolName(innerSchema.title ?? name);
375
+ const prepared = preparing(input, action, useCache, cacheMax, true, skills, toolName);
364
376
  const seed = ladderSeed(escalation);
365
377
  await prepared(rungAt(rungs, seed).rung);
366
378
  return await withRetry({ retries, outputErrors, fatal }, async (i) => {
@@ -402,9 +414,9 @@ export const makeLlmModel = ({ model, outputErrors = false, captureNull = false,
402
414
  },
403
415
  request: async (input, schema, { ref, filter, action, useCache = false, cacheMax = MAX_CACHE_BREAKPOINTS, skills, escalation, fatal, }) => {
404
416
  return await observeFailure(action, async () => {
405
- const prepared = preparing(input, action, useCache, cacheMax, true, skills);
406
417
  const { name, innerSchema, validate } = resolveSchemaValidator(ajv, schema);
407
418
  const toolName = toToolName(innerSchema.title ?? name);
419
+ const prepared = preparing(input, action, useCache, cacheMax, true, skills, toolName);
408
420
  const seed = ladderSeed(escalation);
409
421
  await prepared(rungAt(rungs, seed).rung);
410
422
  return await withRetry({ retries, outputErrors, fatal }, async (i) => {
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
@@ -14,35 +14,81 @@ import type { ModelConfig } from '../types.js';
14
14
  export declare const NO_SAMPLING_PREFIXES: string[];
15
15
  /** Whether this model id rejects `temperature`/`top_p`/`top_k`. */
16
16
  export declare const rejectsSampling: (model: string | undefined) => boolean;
17
+ /** The `thinking.type` a model takes to do no up-front thinking. */
18
+ export declare enum ThinkingOff {
19
+ Disabled = "disabled",
20
+ /** Claude Sonnet 5.5: no extended thinking, only the short notes between tool calls. */
21
+ BetweenTools = "between_tools"
22
+ }
23
+ /** What one Anthropic model family accepts, where the families differ in ways that are a 400. */
24
+ export interface AnthropicModelSupport extends EffortSupport {
25
+ /** Model-id prefix; the table below is first match wins, so a longer id comes first. */
26
+ prefix: string;
27
+ /**
28
+ * The `thinking.type` that turns up-front thinking off. `null`: the model always thinks and
29
+ * refuses every off switch, so the request sends no `thinking` and effort is the only control.
30
+ * Omitted: `disabled`.
31
+ */
32
+ thinkingOff?: ThinkingOff | null;
33
+ /** The highest effort the model accepts together with its off switch. */
34
+ thinkingOffCeiling?: ModelEffort;
35
+ /**
36
+ * An absent `thinking` field means adaptive thinking here (the 5 family). On Opus 4.8/4.7 it
37
+ * means none, so they are not marked.
38
+ */
39
+ thinksByDefault?: boolean;
40
+ /** `tool_choice` `any` / `tool` is a 400: only `auto` and `none` are accepted. */
41
+ rejectsForcedTool?: boolean;
42
+ /** The model's own minimum cacheable prefix, in tokens ({@link MIN_CACHEABLE_TOKENS} when omitted). */
43
+ cacheMinTokens?: number;
44
+ }
45
+ /**
46
+ * Per-family facts of the Anthropic models that take `output_config.effort`, first prefix
47
+ * match wins. From Anthropic's model pages (2026-09-29): `max` on every model below except Opus
48
+ * 4.5, `xhigh` only on the first eleven, `medium` the default on Opus 5.5 and `high` everywhere
49
+ * else. A model not listed (Haiku 4.5, Sonnet 4.5 and older) rejects the field, so it is never
50
+ * sent there — and takes forced tool use and every older thinking shape.
51
+ *
52
+ * - **Thinking off.** Opus 5 accepts `disabled` only at `high` or below. Sonnet 5.5 refuses
53
+ * `disabled` and takes `between_tools` instead, again only at `high` or below, with no other
54
+ * field beside it. Opus 5.5 and the Fable and Mythos 5 families always think: any off switch
55
+ * is a 400, so the request carries none.
56
+ * - **Forced tool use.** Opus 5.5, Sonnet 5.5, Fable 5.1 and Mythos 5.1 answer `tool_choice`
57
+ * `any`/`tool` with a 400; structured output asks them with `auto`, a prompt instruction naming
58
+ * the tool, and `strict` when the schema allows it.
59
+ * - **Cache minimum.** 512 tokens on the 5 family, 1024 on Sonnet 5 and Opus 4.8.
60
+ */
61
+ export declare const ANTHROPIC_MODEL_SUPPORT: ReadonlyArray<AnthropicModelSupport>;
62
+ /** The family entry of a model id, or `undefined` for a model the table does not know. */
63
+ export declare const anthropicSupportOf: (model: string | undefined) => AnthropicModelSupport | undefined;
17
64
  /**
18
65
  * Whether the request has to say, on the wire, that the model must not reason.
19
66
  *
20
67
  * The adaptive family reasons unless told otherwise: an absent `thinking` parameter means
21
68
  * "adaptive", and langchain forwards the parameter only when a caller sets it — so a config
22
- * that asks for no thinking is only honoured if the plugin sends `thinking: disabled` itself.
23
- * Silent reasoning is what the request pays for twice: its tokens bill as output, and the
24
- * summarised stream delivers them in bursts minutes apart, which an idle deadline reads as a
25
- * dead connection and retries from scratch. Older models reason only when asked and get nothing.
69
+ * that asks for no thinking is only honoured if the plugin sends the model's off switch itself
70
+ * ({@link thinkingOffFor}). Silent reasoning is what the request pays for twice: its tokens bill
71
+ * as output, and the summarised stream delivers them in bursts minutes apart, which an idle
72
+ * deadline reads as a dead connection and retries from scratch. Older models reason only when
73
+ * asked and get nothing.
74
+ *
75
+ * True also for a model that cannot be switched off: the switch is still the request's, never a
76
+ * prompt directive, and such a model is steered by effort alone.
26
77
  */
27
78
  export declare const suppressesThinking: (config: Pick<ModelConfig, 'model' | 'disableThinking'>) => boolean;
28
79
  /**
29
- * `output_config.effort` levels per model, first prefix match wins. From Anthropic's effort
30
- * page (2026-09-23): `max` on every model below except Opus 4.5, `xhigh` only on the first
31
- * seven, `medium` the default on Opus 5.5 and `high` everywhere else. A model not listed
32
- * (Haiku 4.5, Sonnet 4.5 and older) rejects the field, so it is never sent there.
33
- *
34
- * `thinkingOffCeiling`: Opus 5 accepts `thinking: disabled` only at `high` or below — the
35
- * combination with `xhigh`/`max` is a 400 — so a config that suppresses thinking stops there.
80
+ * The `thinking.type` this config puts on the wire to turn thinking off, or `undefined` when it
81
+ * sends none — because thinking was not turned off, or because the model refuses every off
82
+ * switch.
36
83
  */
37
- export declare const ANTHROPIC_EFFORT_SUPPORT: ReadonlyArray<EffortSupport & {
38
- prefix: string;
39
- thinkingOffCeiling?: ModelEffort;
40
- }>;
84
+ export declare const thinkingOffFor: (config: Pick<ModelConfig, 'model' | 'disableThinking'>) => ThinkingOff | undefined;
85
+ /** Whether this model id answers a pinned `tool_choice` with a 400. */
86
+ export declare const rejectsForcedTool: (model: string | undefined) => boolean;
41
87
  /**
42
88
  * The smallest output budget an always-reasoning model is given.
43
89
  *
44
90
  * The same models that took the sampling knobs away also think ADAPTIVELY unless the request
45
- * turns it off (`disableThinking` → `thinking: disabled`, see `suppressesThinking`), and by
91
+ * turns it off (`disableThinking` → the model's off switch, see `thinkingOffFor`), and by
46
92
  * default that thinking is not shown — it arrives as thinking blocks with empty text. Reasoning is billed against the same `max_tokens` as the answer, so a budget
47
93
  * sized for the answer alone can be spent entirely on thinking: the response is a well-formed
48
94
  * completion carrying no text at all, `stop_reason: "max_tokens"`, and every retry at the same
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/plugins/anthropic.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8C,MAAM,sBAAsB,CAAA;AAE9F,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAU9C;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,UAQhC,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,eAAe,UAAW,MAAM,GAAG,SAAS,KAAG,OACoB,CAAA;AAEhF;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,WAAY,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,iBAAiB,CAAC,KAAG,OAC1B,CAAA;AAMlE;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,EAAE,aAAa,CAClD,aAAa,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,WAAW,CAAA;CAAE,CAarE,CAAA;AA2CD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAE7C,eAAO,MAAM,gBAAgB,cAAc,CAAA;AA4D3C,eAAO,MAAM,eAAe,EAAE,SAyM7B,CAAA"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/plugins/anthropic.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAA8C,MAAM,sBAAsB,CAAA;AAE9F,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAW9C;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,UAQhC,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,eAAe,UAAW,MAAM,GAAG,SAAS,KAAG,OACoB,CAAA;AAMhF,oEAAoE;AACpE,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,wFAAwF;IACxF,YAAY,kBAAkB;CAC/B;AAED,iGAAiG;AACjG,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,wFAAwF;IACxF,MAAM,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAChC,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,WAAW,CAAA;IAChC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,uGAAuG;IACvG,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,qBAAqB,CAqCxE,CAAA;AAED,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,UAAW,MAAM,GAAG,SAAS,KAAG,qBAAqB,GAAG,SACY,CAAA;AAEnG;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,WAAY,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,iBAAiB,CAAC,KAAG,OAC1B,CAAA;AAElE;;;;GAIG;AACH,eAAO,MAAM,cAAc,WAAY,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,iBAAiB,CAAC,KAAG,WAAW,GAAG,SAOrG,CAAA;AAwBD,uEAAuE;AACvE,eAAO,MAAM,iBAAiB,UAAW,MAAM,GAAG,SAAS,KAAG,OACP,CAAA;AAiDvD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAA;AAE7C,eAAO,MAAM,gBAAgB,cAAc,CAAA;AA8D3C,eAAO,MAAM,eAAe,EAAE,SAkN7B,CAAA"}