@stll/ai-catalog 0.6.0 → 0.6.1
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 +14 -3
- package/dist/benchmark-frontier.d.ts +1 -1
- package/dist/benchmarks.d.ts +1 -1
- package/dist/benchmarks.js +1 -1
- package/dist/{index-pC8aWAxm.d.ts → index-CfFuexGD.d.ts} +24 -4
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/{src-DaH9EEfe.js → src-D8TLQU2R.js} +19 -4
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -24,9 +24,20 @@ The package contains data and validation only. It does not read environment
|
|
|
24
24
|
variables, store credentials, or initialize provider SDKs.
|
|
25
25
|
|
|
26
26
|
Model rates are committed in `src/model-rates.gen.ts` so application startup
|
|
27
|
-
never depends on a pricing service.
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
never depends on a pricing service. Rates and capabilities regenerate from
|
|
28
|
+
reduced, committed models.dev and OpenRouter inputs in `upstream/`:
|
|
29
|
+
|
|
30
|
+
```sh
|
|
31
|
+
bun --filter @stll/ai-catalog gen:rates --from-snapshot
|
|
32
|
+
bun --filter @stll/ai-catalog gen:capabilities --from-snapshot
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
`--check` verifies these outputs offline, with network fetches blocked.
|
|
36
|
+
To refresh both inputs and outputs from upstream, run `gen:rates --refresh`,
|
|
37
|
+
then `gen:capabilities --from-snapshot`. The scheduled catalog check maintains
|
|
38
|
+
one refresh pull request for both snapshots.
|
|
39
|
+
`gen:capabilities --refresh` rejects before fetching or writing: rates owns the
|
|
40
|
+
shared upstream refresh, and capabilities reads those refreshed inputs.
|
|
30
41
|
The snapshot covers text input/output, cache reads/writes, and context tiers.
|
|
31
42
|
Audio pricing is deliberately excluded because Stella does not route audio
|
|
32
43
|
model input; an unknown models.dev cost field fails generation.
|
package/dist/benchmarks.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { T as OfferedBYOKModelId } from "./index-
|
|
1
|
+
import { T as OfferedBYOKModelId } from "./index-CfFuexGD.js";
|
|
2
2
|
import { ModelBenchmarkMeasurement } from "./benchmark-frontier.js";
|
|
3
3
|
//#region src/benchmark-sources.d.ts
|
|
4
4
|
export declare const MODEL_BENCHMARK_NAME = "Text Arena";
|
package/dist/benchmarks.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as getModelRate, G as
|
|
1
|
+
import { D as getModelRate, G as MODEL_RATE_UNITS_PER_USD, K as getStandardModelRate } from "./src-D8TLQU2R.js";
|
|
2
2
|
//#region src/benchmark-sources.ts
|
|
3
3
|
const MODEL_BENCHMARK_NAME = "Text Arena";
|
|
4
4
|
const MODEL_BENCHMARK_LICENCE = "CC BY 4.0";
|
|
@@ -478,6 +478,26 @@ declare const RETAINED_MODELS_DEV_RATE_ENTRIES: {
|
|
|
478
478
|
* map is empty whenever upstream covers every offered ID.
|
|
479
479
|
*/
|
|
480
480
|
declare const MODELS_DEV_RATE_SOURCE_ALIASES: {};
|
|
481
|
+
type ModelsDevCostField = "cache_read" | "cache_write" | "input" | "output";
|
|
482
|
+
type ReviewedModelRateCorrection = {
|
|
483
|
+
field: ModelsDevCostField;
|
|
484
|
+
/** The exact upstream USD value being corrected; any other value fails. */
|
|
485
|
+
upstreamUsd: number;
|
|
486
|
+
/** The provider-published USD price per million tokens. */
|
|
487
|
+
correctedUsd: number;
|
|
488
|
+
/** Why the upstream value is wrong. Dated. */
|
|
489
|
+
reason: string;
|
|
490
|
+
sourceUrl: string;
|
|
491
|
+
};
|
|
492
|
+
/**
|
|
493
|
+
* Reviewed corrections where models.dev disagrees with the provider's own
|
|
494
|
+
* published price, keyed by `<models.dev provider>:<models.dev model ID>`.
|
|
495
|
+
* Each entry pins the exact upstream value it replaces, so generation fails
|
|
496
|
+
* once models.dev changes that value (fixed or changed again) and the entry
|
|
497
|
+
* must be deleted or re-reviewed. Generation also rejects an entry whose
|
|
498
|
+
* source no rated model uses.
|
|
499
|
+
*/
|
|
500
|
+
declare const MODELS_DEV_RATE_CORRECTIONS: Readonly<Record<string, readonly ReviewedModelRateCorrection[]>>;
|
|
481
501
|
//#endregion
|
|
482
502
|
//#region src/capabilities-overrides.d.ts
|
|
483
503
|
/**
|
|
@@ -771,10 +791,10 @@ declare const MODEL_TEMPERATURE_POLICIES: {
|
|
|
771
791
|
readonly "google/gemini-3.1-pro-preview": "emit";
|
|
772
792
|
readonly "google/gemini-3.5-flash": "emit";
|
|
773
793
|
readonly "google/gemini-3.1-flash-lite": "emit";
|
|
774
|
-
readonly "anthropic/claude-sonnet-5.5": "
|
|
794
|
+
readonly "anthropic/claude-sonnet-5.5": "omit";
|
|
775
795
|
readonly "anthropic/claude-sonnet-5": "omit";
|
|
776
|
-
readonly "anthropic/claude-opus-5": "
|
|
777
|
-
readonly "anthropic/claude-opus-4.8": "
|
|
796
|
+
readonly "anthropic/claude-opus-5": "omit";
|
|
797
|
+
readonly "anthropic/claude-opus-4.8": "omit";
|
|
778
798
|
readonly "anthropic/claude-sonnet-4.6": "emit";
|
|
779
799
|
readonly "openai/gpt-5.5": "omit";
|
|
780
800
|
readonly "openai/gpt-5.4-mini": "omit";
|
|
@@ -1718,4 +1738,4 @@ declare const DEFAULT_CONTEXT_WINDOW_TOKENS = 128000;
|
|
|
1718
1738
|
*/
|
|
1719
1739
|
declare const getContextWindowTokens: (modelId: string) => number;
|
|
1720
1740
|
//#endregion
|
|
1721
|
-
export { MODEL_IMAGE_INPUT_CAPABILITIES as $, ResolvedReasoningEffort as A, getModelImageInputCapability as B, ModelDisplayMetadata as C, RECOMMENDED_CHAT_MODELS as D, REASONING_EFFORTS as E, TanStackAIProvider as F, isBYOKProviderRoleSupported as G, getModelReasoningEfforts as H, TemperaturePolicy as I, resolveReasoningEffort as J, isChatPdfAttachmentModelSupported as K, getContextWindowTokens as L, StreamingToolUseSupport as M, TANSTACK_AI_PROVIDERS as N, ReasoningEffort as O, TEMPERATURE_POLICIES as P, MODEL_DEFAULT_REASONING_EFFORTS as Q, getModelDefaultReasoningEffort as R, MODEL_STREAMING_TOOL_USE as S, OfferedBYOKModelId as T, getOutputTokenLimit as U, getModelRate as V, isBYOKModelRoleSupported as W, shouldEmitTemperature as X, resolveWorkingBYOKModelForRole as Y, supportsStreamingToolUse as Z, ImageInputCapability as _,
|
|
1741
|
+
export { MODEL_IMAGE_INPUT_CAPABILITIES as $, ResolvedReasoningEffort as A, getModelImageInputCapability as B, ModelDisplayMetadata as C, RECOMMENDED_CHAT_MODELS as D, REASONING_EFFORTS as E, TanStackAIProvider as F, isBYOKProviderRoleSupported as G, getModelReasoningEfforts as H, TemperaturePolicy as I, resolveReasoningEffort as J, isChatPdfAttachmentModelSupported as K, getContextWindowTokens as L, StreamingToolUseSupport as M, TANSTACK_AI_PROVIDERS as N, ReasoningEffort as O, TEMPERATURE_POLICIES as P, MODEL_DEFAULT_REASONING_EFFORTS as Q, getModelDefaultReasoningEffort as R, MODEL_STREAMING_TOOL_USE as S, OfferedBYOKModelId as T, getOutputTokenLimit as U, getModelRate as V, isBYOKModelRoleSupported as W, shouldEmitTemperature as X, resolveWorkingBYOKModelForRole as Y, supportsStreamingToolUse as Z, ImageInputCapability as _, ModelRate as _t, BYOKProvider as a, CAPABILITY_OVERRIDES as at, MODEL_DISPLAY_METADATA as b, resolveModelRate as bt, BYOK_MODEL_OPTIONS as c, ImageInputOverride as ct, DEFAULT_CONTEXT_WINDOW_TOKENS as d, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER as dt, MODEL_OUTPUT_TOKEN_LIMITS as et, DEFAULT_MODELS as f, MODELS_DEV_RATE_SOURCE_ALIASES as ft, IMAGE_INPUT_CAPABILITIES as g, MODEL_RATE_UNITS_PER_USD as gt, FirstPartyModelProvider as h, MODEL_RATES as ht, BYOKModelIdByProvider as i, DocumentInputOverride as it, STREAMING_TOOL_USE_SUPPORTS as j, ResolveReasoningEffortOptions as k, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS as l, ImageInputOverrides as lt, FIRST_PARTY_MODEL_PROVIDERS as m, RETAINED_MODELS_DEV_RATE_ENTRIES as mt, AI_PROVIDERS as n, MODEL_TEMPERATURE_POLICIES as nt, BYOK_DEFAULT_MODELS as o, CapabilityOverride as ot, FALLBACK_CHAT_MODEL_BY_PROVIDER as p, ModelsDevRateProvider as pt, normalizeModelCatalogId as q, ANTHROPIC_ADAPTIVE_THINKING_MODELS as r, DOCUMENT_INPUT_OVERRIDES as rt, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS as s, IMAGE_INPUT_OVERRIDES as st, AIProvider as t, MODEL_REASONING_EFFORTS as tt, CONTEXT_WINDOW_TOKENS as u, MODELS_DEV_RATE_CORRECTIONS as ut, MODEL_CATALOG_ID_ALIASES as v, ModelRateAmounts as vt, ModelRole as w, MODEL_ROLES as x, MODEL_CATALOG_PROVIDER_KIND as y, getStandardModelRate as yt, getModelDisplayMetadata as z };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as MODEL_IMAGE_INPUT_CAPABILITIES, A as ResolvedReasoningEffort, B as getModelImageInputCapability, C as ModelDisplayMetadata, D as RECOMMENDED_CHAT_MODELS, E as REASONING_EFFORTS, F as TanStackAIProvider, G as isBYOKProviderRoleSupported, H as getModelReasoningEfforts, I as TemperaturePolicy, J as resolveReasoningEffort, K as isChatPdfAttachmentModelSupported, L as getContextWindowTokens, M as StreamingToolUseSupport, N as TANSTACK_AI_PROVIDERS, O as ReasoningEffort, P as TEMPERATURE_POLICIES, Q as MODEL_DEFAULT_REASONING_EFFORTS, R as getModelDefaultReasoningEffort, S as MODEL_STREAMING_TOOL_USE, T as OfferedBYOKModelId, U as getOutputTokenLimit, V as getModelRate, W as isBYOKModelRoleSupported, X as shouldEmitTemperature, Y as resolveWorkingBYOKModelForRole, Z as supportsStreamingToolUse, _ as ImageInputCapability, _t as
|
|
2
|
-
export { AIProvider, AI_PROVIDERS, ANTHROPIC_ADAPTIVE_THINKING_MODELS, BYOKModelIdByProvider, BYOKProvider, BYOK_DEFAULT_MODELS, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, BYOK_MODEL_OPTIONS, CAPABILITY_OVERRIDES, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, CONTEXT_WINDOW_TOKENS, type CapabilityOverride, DEFAULT_CONTEXT_WINDOW_TOKENS, DEFAULT_MODELS, DOCUMENT_INPUT_OVERRIDES, type DocumentInputOverride, FALLBACK_CHAT_MODEL_BY_PROVIDER, FIRST_PARTY_MODEL_PROVIDERS, FirstPartyModelProvider, IMAGE_INPUT_CAPABILITIES, IMAGE_INPUT_OVERRIDES, ImageInputCapability, type ImageInputOverride, type ImageInputOverrides, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, MODELS_DEV_RATE_SOURCE_ALIASES, MODEL_CATALOG_ID_ALIASES, MODEL_CATALOG_PROVIDER_KIND, MODEL_DEFAULT_REASONING_EFFORTS, MODEL_DISPLAY_METADATA, MODEL_IMAGE_INPUT_CAPABILITIES, MODEL_OUTPUT_TOKEN_LIMITS, MODEL_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_STREAMING_TOOL_USE, MODEL_TEMPERATURE_POLICIES, ModelDisplayMetadata, type ModelRate, type ModelRateAmounts, ModelRole, type ModelsDevRateProvider, OfferedBYOKModelId, REASONING_EFFORTS, RECOMMENDED_CHAT_MODELS, RETAINED_MODELS_DEV_RATE_ENTRIES, ReasoningEffort, ResolveReasoningEffortOptions, ResolvedReasoningEffort, STREAMING_TOOL_USE_SUPPORTS, StreamingToolUseSupport, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, TanStackAIProvider, TemperaturePolicy, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelImageInputCapability, getModelRate, getModelReasoningEfforts, getOutputTokenLimit, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature, supportsStreamingToolUse };
|
|
1
|
+
import { $ as MODEL_IMAGE_INPUT_CAPABILITIES, A as ResolvedReasoningEffort, B as getModelImageInputCapability, C as ModelDisplayMetadata, D as RECOMMENDED_CHAT_MODELS, E as REASONING_EFFORTS, F as TanStackAIProvider, G as isBYOKProviderRoleSupported, H as getModelReasoningEfforts, I as TemperaturePolicy, J as resolveReasoningEffort, K as isChatPdfAttachmentModelSupported, L as getContextWindowTokens, M as StreamingToolUseSupport, N as TANSTACK_AI_PROVIDERS, O as ReasoningEffort, P as TEMPERATURE_POLICIES, Q as MODEL_DEFAULT_REASONING_EFFORTS, R as getModelDefaultReasoningEffort, S as MODEL_STREAMING_TOOL_USE, T as OfferedBYOKModelId, U as getOutputTokenLimit, V as getModelRate, W as isBYOKModelRoleSupported, X as shouldEmitTemperature, Y as resolveWorkingBYOKModelForRole, Z as supportsStreamingToolUse, _ as ImageInputCapability, _t as ModelRate, a as BYOKProvider, at as CAPABILITY_OVERRIDES, b as MODEL_DISPLAY_METADATA, bt as resolveModelRate, c as BYOK_MODEL_OPTIONS, ct as ImageInputOverride, d as DEFAULT_CONTEXT_WINDOW_TOKENS, dt as MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, et as MODEL_OUTPUT_TOKEN_LIMITS, f as DEFAULT_MODELS, ft as MODELS_DEV_RATE_SOURCE_ALIASES, g as IMAGE_INPUT_CAPABILITIES, gt as MODEL_RATE_UNITS_PER_USD, h as FirstPartyModelProvider, ht as MODEL_RATES, i as BYOKModelIdByProvider, it as DocumentInputOverride, j as STREAMING_TOOL_USE_SUPPORTS, k as ResolveReasoningEffortOptions, l as CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, lt as ImageInputOverrides, m as FIRST_PARTY_MODEL_PROVIDERS, mt as RETAINED_MODELS_DEV_RATE_ENTRIES, n as AI_PROVIDERS, nt as MODEL_TEMPERATURE_POLICIES, o as BYOK_DEFAULT_MODELS, ot as CapabilityOverride, p as FALLBACK_CHAT_MODEL_BY_PROVIDER, pt as ModelsDevRateProvider, q as normalizeModelCatalogId, r as ANTHROPIC_ADAPTIVE_THINKING_MODELS, rt as DOCUMENT_INPUT_OVERRIDES, s as BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, st as IMAGE_INPUT_OVERRIDES, t as AIProvider, tt as MODEL_REASONING_EFFORTS, u as CONTEXT_WINDOW_TOKENS, ut as MODELS_DEV_RATE_CORRECTIONS, v as MODEL_CATALOG_ID_ALIASES, vt as ModelRateAmounts, w as ModelRole, x as MODEL_ROLES, y as MODEL_CATALOG_PROVIDER_KIND, yt as getStandardModelRate, z as getModelDisplayMetadata } from "./index-CfFuexGD.js";
|
|
2
|
+
export { AIProvider, AI_PROVIDERS, ANTHROPIC_ADAPTIVE_THINKING_MODELS, BYOKModelIdByProvider, BYOKProvider, BYOK_DEFAULT_MODELS, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, BYOK_MODEL_OPTIONS, CAPABILITY_OVERRIDES, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, CONTEXT_WINDOW_TOKENS, type CapabilityOverride, DEFAULT_CONTEXT_WINDOW_TOKENS, DEFAULT_MODELS, DOCUMENT_INPUT_OVERRIDES, type DocumentInputOverride, FALLBACK_CHAT_MODEL_BY_PROVIDER, FIRST_PARTY_MODEL_PROVIDERS, FirstPartyModelProvider, IMAGE_INPUT_CAPABILITIES, IMAGE_INPUT_OVERRIDES, ImageInputCapability, type ImageInputOverride, type ImageInputOverrides, MODELS_DEV_RATE_CORRECTIONS, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, MODELS_DEV_RATE_SOURCE_ALIASES, MODEL_CATALOG_ID_ALIASES, MODEL_CATALOG_PROVIDER_KIND, MODEL_DEFAULT_REASONING_EFFORTS, MODEL_DISPLAY_METADATA, MODEL_IMAGE_INPUT_CAPABILITIES, MODEL_OUTPUT_TOKEN_LIMITS, MODEL_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_STREAMING_TOOL_USE, MODEL_TEMPERATURE_POLICIES, ModelDisplayMetadata, type ModelRate, type ModelRateAmounts, ModelRole, type ModelsDevRateProvider, OfferedBYOKModelId, REASONING_EFFORTS, RECOMMENDED_CHAT_MODELS, RETAINED_MODELS_DEV_RATE_ENTRIES, ReasoningEffort, ResolveReasoningEffortOptions, ResolvedReasoningEffort, STREAMING_TOOL_USE_SUPPORTS, StreamingToolUseSupport, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, TanStackAIProvider, TemperaturePolicy, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelImageInputCapability, getModelRate, getModelReasoningEfforts, getOutputTokenLimit, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature, supportsStreamingToolUse };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { A as isBYOKModelRoleSupported, B as IMAGE_INPUT_OVERRIDES, C as getContextWindowTokens, D as getModelRate, E as getModelImageInputCapability, F as resolveWorkingBYOKModelForRole, G as
|
|
2
|
-
export { AI_PROVIDERS, ANTHROPIC_ADAPTIVE_THINKING_MODELS, BYOK_DEFAULT_MODELS, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, BYOK_MODEL_OPTIONS, CAPABILITY_OVERRIDES, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, CONTEXT_WINDOW_TOKENS, DEFAULT_CONTEXT_WINDOW_TOKENS, DEFAULT_MODELS, DOCUMENT_INPUT_OVERRIDES, FALLBACK_CHAT_MODEL_BY_PROVIDER, FIRST_PARTY_MODEL_PROVIDERS, IMAGE_INPUT_CAPABILITIES, IMAGE_INPUT_OVERRIDES, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, MODELS_DEV_RATE_SOURCE_ALIASES, MODEL_CATALOG_ID_ALIASES, MODEL_CATALOG_PROVIDER_KIND, MODEL_DEFAULT_REASONING_EFFORTS, MODEL_DISPLAY_METADATA, MODEL_IMAGE_INPUT_CAPABILITIES, MODEL_OUTPUT_TOKEN_LIMITS, MODEL_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_STREAMING_TOOL_USE, MODEL_TEMPERATURE_POLICIES, REASONING_EFFORTS, RECOMMENDED_CHAT_MODELS, RETAINED_MODELS_DEV_RATE_ENTRIES, STREAMING_TOOL_USE_SUPPORTS, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelImageInputCapability, getModelRate, getModelReasoningEfforts, getOutputTokenLimit, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature, supportsStreamingToolUse };
|
|
1
|
+
import { $ as MODEL_TEMPERATURE_POLICIES, A as isBYOKModelRoleSupported, B as IMAGE_INPUT_OVERRIDES, C as getContextWindowTokens, D as getModelRate, E as getModelImageInputCapability, F as resolveWorkingBYOKModelForRole, G as MODEL_RATE_UNITS_PER_USD, H as MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, I as shouldEmitTemperature, J as MODEL_RATES, K as getStandardModelRate, L as supportsStreamingToolUse, M as isChatPdfAttachmentModelSupported, N as normalizeModelCatalogId, O as getModelReasoningEfforts, P as resolveReasoningEffort, Q as MODEL_REASONING_EFFORTS, R as DOCUMENT_INPUT_OVERRIDES, S as TEMPERATURE_POLICIES, T as getModelDisplayMetadata, U as MODELS_DEV_RATE_SOURCE_ALIASES, V as MODELS_DEV_RATE_CORRECTIONS, W as RETAINED_MODELS_DEV_RATE_ENTRIES, X as MODEL_IMAGE_INPUT_CAPABILITIES, Y as MODEL_DEFAULT_REASONING_EFFORTS, Z as MODEL_OUTPUT_TOKEN_LIMITS, _ as MODEL_STREAMING_TOOL_USE, a as BYOK_MODEL_OPTIONS, b as STREAMING_TOOL_USE_SUPPORTS, c as DEFAULT_CONTEXT_WINDOW_TOKENS, d as FIRST_PARTY_MODEL_PROVIDERS, f as IMAGE_INPUT_CAPABILITIES, g as MODEL_ROLES, h as MODEL_DISPLAY_METADATA, i as BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, j as isBYOKProviderRoleSupported, k as getOutputTokenLimit, l as DEFAULT_MODELS, m as MODEL_CATALOG_PROVIDER_KIND, n as ANTHROPIC_ADAPTIVE_THINKING_MODELS, o as CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, p as MODEL_CATALOG_ID_ALIASES, q as resolveModelRate, r as BYOK_DEFAULT_MODELS, s as CONTEXT_WINDOW_TOKENS, t as AI_PROVIDERS, u as FALLBACK_CHAT_MODEL_BY_PROVIDER, v as REASONING_EFFORTS, w as getModelDefaultReasoningEffort, x as TANSTACK_AI_PROVIDERS, y as RECOMMENDED_CHAT_MODELS, z as CAPABILITY_OVERRIDES } from "./src-D8TLQU2R.js";
|
|
2
|
+
export { AI_PROVIDERS, ANTHROPIC_ADAPTIVE_THINKING_MODELS, BYOK_DEFAULT_MODELS, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS, BYOK_MODEL_OPTIONS, CAPABILITY_OVERRIDES, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS, CONTEXT_WINDOW_TOKENS, DEFAULT_CONTEXT_WINDOW_TOKENS, DEFAULT_MODELS, DOCUMENT_INPUT_OVERRIDES, FALLBACK_CHAT_MODEL_BY_PROVIDER, FIRST_PARTY_MODEL_PROVIDERS, IMAGE_INPUT_CAPABILITIES, IMAGE_INPUT_OVERRIDES, MODELS_DEV_RATE_CORRECTIONS, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER, MODELS_DEV_RATE_SOURCE_ALIASES, MODEL_CATALOG_ID_ALIASES, MODEL_CATALOG_PROVIDER_KIND, MODEL_DEFAULT_REASONING_EFFORTS, MODEL_DISPLAY_METADATA, MODEL_IMAGE_INPUT_CAPABILITIES, MODEL_OUTPUT_TOKEN_LIMITS, MODEL_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_STREAMING_TOOL_USE, MODEL_TEMPERATURE_POLICIES, REASONING_EFFORTS, RECOMMENDED_CHAT_MODELS, RETAINED_MODELS_DEV_RATE_ENTRIES, STREAMING_TOOL_USE_SUPPORTS, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelImageInputCapability, getModelRate, getModelReasoningEfforts, getOutputTokenLimit, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature, supportsStreamingToolUse };
|
|
@@ -616,10 +616,10 @@ const MODEL_TEMPERATURE_POLICIES = {
|
|
|
616
616
|
"google/gemini-3.1-pro-preview": "emit",
|
|
617
617
|
"google/gemini-3.5-flash": "emit",
|
|
618
618
|
"google/gemini-3.1-flash-lite": "emit",
|
|
619
|
-
"anthropic/claude-sonnet-5.5": "
|
|
619
|
+
"anthropic/claude-sonnet-5.5": "omit",
|
|
620
620
|
"anthropic/claude-sonnet-5": "omit",
|
|
621
|
-
"anthropic/claude-opus-5": "
|
|
622
|
-
"anthropic/claude-opus-4.8": "
|
|
621
|
+
"anthropic/claude-opus-5": "omit",
|
|
622
|
+
"anthropic/claude-opus-4.8": "omit",
|
|
623
623
|
"anthropic/claude-sonnet-4.6": "emit",
|
|
624
624
|
"openai/gpt-5.5": "omit",
|
|
625
625
|
"openai/gpt-5.4-mini": "omit",
|
|
@@ -1176,6 +1176,21 @@ const RETAINED_MODELS_DEV_RATE_ENTRIES = {
|
|
|
1176
1176
|
* map is empty whenever upstream covers every offered ID.
|
|
1177
1177
|
*/
|
|
1178
1178
|
const MODELS_DEV_RATE_SOURCE_ALIASES = defineRateSourceAliases({});
|
|
1179
|
+
/**
|
|
1180
|
+
* Reviewed corrections where models.dev disagrees with the provider's own
|
|
1181
|
+
* published price, keyed by `<models.dev provider>:<models.dev model ID>`.
|
|
1182
|
+
* Each entry pins the exact upstream value it replaces, so generation fails
|
|
1183
|
+
* once models.dev changes that value (fixed or changed again) and the entry
|
|
1184
|
+
* must be deleted or re-reviewed. Generation also rejects an entry whose
|
|
1185
|
+
* source no rated model uses.
|
|
1186
|
+
*/
|
|
1187
|
+
const MODELS_DEV_RATE_CORRECTIONS = { "anthropic:claude-sonnet-5-5": [{
|
|
1188
|
+
field: "cache_read",
|
|
1189
|
+
upstreamUsd: .1,
|
|
1190
|
+
correctedUsd: .2,
|
|
1191
|
+
reason: "2026-10-07: models.dev lists half the provider cache-read price",
|
|
1192
|
+
sourceUrl: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview"
|
|
1193
|
+
}] };
|
|
1179
1194
|
//#endregion
|
|
1180
1195
|
//#region src/capabilities-overrides.ts
|
|
1181
1196
|
const CAPABILITY_OVERRIDES = {};
|
|
@@ -2193,4 +2208,4 @@ const DEFAULT_CONTEXT_WINDOW_TOKENS = 128e3;
|
|
|
2193
2208
|
*/
|
|
2194
2209
|
const getContextWindowTokens = (modelId) => CONTEXT_WINDOW_TOKENS_BY_ID[normalizeModelCatalogId(modelId)] ?? 128e3;
|
|
2195
2210
|
//#endregion
|
|
2196
|
-
export { isBYOKModelRoleSupported as A, IMAGE_INPUT_OVERRIDES as B, getContextWindowTokens as C, getModelRate as D, getModelImageInputCapability as E, resolveWorkingBYOKModelForRole as F,
|
|
2211
|
+
export { MODEL_TEMPERATURE_POLICIES as $, isBYOKModelRoleSupported as A, IMAGE_INPUT_OVERRIDES as B, getContextWindowTokens as C, getModelRate as D, getModelImageInputCapability as E, resolveWorkingBYOKModelForRole as F, MODEL_RATE_UNITS_PER_USD as G, MODELS_DEV_RATE_PROVIDER_BY_CATALOG_PROVIDER as H, shouldEmitTemperature as I, MODEL_RATES as J, getStandardModelRate as K, supportsStreamingToolUse as L, isChatPdfAttachmentModelSupported as M, normalizeModelCatalogId as N, getModelReasoningEfforts as O, resolveReasoningEffort as P, MODEL_REASONING_EFFORTS as Q, DOCUMENT_INPUT_OVERRIDES as R, TEMPERATURE_POLICIES as S, getModelDisplayMetadata as T, MODELS_DEV_RATE_SOURCE_ALIASES as U, MODELS_DEV_RATE_CORRECTIONS as V, RETAINED_MODELS_DEV_RATE_ENTRIES as W, MODEL_IMAGE_INPUT_CAPABILITIES as X, MODEL_DEFAULT_REASONING_EFFORTS as Y, MODEL_OUTPUT_TOKEN_LIMITS as Z, MODEL_STREAMING_TOOL_USE as _, BYOK_MODEL_OPTIONS as a, STREAMING_TOOL_USE_SUPPORTS as b, DEFAULT_CONTEXT_WINDOW_TOKENS as c, FIRST_PARTY_MODEL_PROVIDERS as d, IMAGE_INPUT_CAPABILITIES as f, MODEL_ROLES as g, MODEL_DISPLAY_METADATA as h, BYOK_DOCUMENT_INPUT_MODEL_OPTIONS as i, isBYOKProviderRoleSupported as j, getOutputTokenLimit as k, DEFAULT_MODELS as l, MODEL_CATALOG_PROVIDER_KIND as m, ANTHROPIC_ADAPTIVE_THINKING_MODELS as n, CHAT_PDF_ATTACHMENT_MODEL_OPTIONS as o, MODEL_CATALOG_ID_ALIASES as p, resolveModelRate as q, BYOK_DEFAULT_MODELS as r, CONTEXT_WINDOW_TOKENS as s, AI_PROVIDERS as t, FALLBACK_CHAT_MODEL_BY_PROVIDER as u, REASONING_EFFORTS as v, getModelDefaultReasoningEffort as w, TANSTACK_AI_PROVIDERS as x, RECOMMENDED_CHAT_MODELS as y, CAPABILITY_OVERRIDES as z };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stll/ai-catalog",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "Provider-neutral AI model roles, capabilities, and curated model metadata.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -45,8 +45,8 @@
|
|
|
45
45
|
"clean": "git clean -xdf dist .cache .turbo node_modules",
|
|
46
46
|
"build": "tsdown",
|
|
47
47
|
"gen:benchmarks": "bun ../scripts/src/model-catalog-benchmarks-gen.ts",
|
|
48
|
-
"gen:capabilities": "bun ../scripts/src/model-catalog-capabilities-gen.ts",
|
|
49
|
-
"gen:rates": "bun ../scripts/src/model-catalog-rates-gen.ts",
|
|
48
|
+
"gen:capabilities": "bun --preload ../../scripts/offline-network-preload.ts ../scripts/src/model-catalog-capabilities-gen.ts",
|
|
49
|
+
"gen:rates": "bun --preload ../../scripts/offline-network-preload.ts ../scripts/src/model-catalog-rates-gen.ts",
|
|
50
50
|
"pack:dry-run": "bun pm pack --dry-run",
|
|
51
51
|
"test": "bun test src",
|
|
52
52
|
"test:property": "bun test --preload @stll/property-testing/preload $(grep -rlE 'fc\\.assert|assertProperty' src --include='*.test.ts')",
|