@stll/ai-catalog 0.1.13 → 0.2.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.
package/dist/index.d.ts CHANGED
@@ -454,8 +454,8 @@ export declare const MODEL_REASONING_EFFORTS: {
454
454
  readonly "gemini-3.1-flash-lite": readonly ["minimal", "low", "medium", "high"];
455
455
  readonly "openai/gpt-6-astra": readonly ["low", "medium", "high", "xhigh", "max"];
456
456
  readonly "openai/gpt-5.6-sol": readonly ["none", "low", "medium", "high", "xhigh", "max"];
457
- readonly "openai/gpt-5.6-luna": readonly ["none", "low", "medium", "high", "xhigh", "max"];
458
457
  readonly "openai/gpt-5.6-terra": readonly ["none", "low", "medium", "high", "xhigh", "max"];
458
+ readonly "openai/gpt-5.6-luna": readonly ["none", "low", "medium", "high", "xhigh", "max"];
459
459
  readonly "google/gemini-3.8-flash": readonly ["low", "medium", "high"];
460
460
  readonly "google/gemini-3.7-flash": readonly ["low", "medium", "high"];
461
461
  readonly "google/gemini-3.6-flash": readonly ["minimal", "low", "medium", "high"];
@@ -514,8 +514,8 @@ export declare const MODEL_DEFAULT_REASONING_EFFORTS: {
514
514
  readonly "gemini-3.1-flash-lite": null;
515
515
  readonly "openai/gpt-6-astra": "medium";
516
516
  readonly "openai/gpt-5.6-sol": "medium";
517
- readonly "openai/gpt-5.6-luna": "medium";
518
517
  readonly "openai/gpt-5.6-terra": "medium";
518
+ readonly "openai/gpt-5.6-luna": "medium";
519
519
  readonly "google/gemini-3.8-flash": "medium";
520
520
  readonly "google/gemini-3.7-flash": "medium";
521
521
  readonly "google/gemini-3.6-flash": "medium";
@@ -574,8 +574,8 @@ export declare const MODEL_TEMPERATURE_POLICIES: {
574
574
  readonly "gemini-3.1-flash-lite": "emit";
575
575
  readonly "openai/gpt-6-astra": "omit";
576
576
  readonly "openai/gpt-5.6-sol": "omit";
577
- readonly "openai/gpt-5.6-luna": "omit";
578
577
  readonly "openai/gpt-5.6-terra": "omit";
578
+ readonly "openai/gpt-5.6-luna": "omit";
579
579
  readonly "google/gemini-3.8-flash": "omit";
580
580
  readonly "google/gemini-3.7-flash": "omit";
581
581
  readonly "google/gemini-3.6-flash": "omit";
@@ -634,6 +634,8 @@ export declare const MODEL_ROLES: readonly ["fast", "chat", "reasoning", "pdf"];
634
634
  export type ModelRole = (typeof MODEL_ROLES)[number];
635
635
  export declare const TEMPERATURE_POLICIES: readonly ["emit", "omit"];
636
636
  export type TemperaturePolicy = (typeof TEMPERATURE_POLICIES)[number];
637
+ export declare const STREAMING_TOOL_USE_SUPPORTS: readonly ["supported", "unsupported"];
638
+ export type StreamingToolUseSupport = (typeof STREAMING_TOOL_USE_SUPPORTS)[number];
637
639
  export declare const AI_PROVIDERS: readonly ["google", "openrouter", "openai", "azure_foundry", "anthropic", "bedrock", "mistral", "openai_compatible", "huggingface"];
638
640
  export type AIProvider = (typeof AI_PROVIDERS)[number];
639
641
  declare const AI_PROVIDER_ADAPTER_KIND: {
@@ -1025,7 +1027,7 @@ export declare const getModelDisplayMetadata: (modelId: string) => ModelDisplayM
1025
1027
  */
1026
1028
  export declare const BYOK_DOCUMENT_INPUT_MODEL_OPTIONS: {
1027
1029
  readonly google: readonly ["gemini-3.8-flash", "gemini-3.7-flash", "gemini-3.6-flash", "gemini-3.5-flash-lite", "gemini-3.1-pro-preview", "gemini-3.5-flash", "gemini-3.1-flash-lite"];
1028
- readonly openrouter: readonly ["openai/gpt-6-astra", "openai/gpt-5.6-sol", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "google/gemini-3.8-flash", "google/gemini-3.7-flash", "google/gemini-3.6-flash", "google/gemini-3.5-flash-lite", "google/gemini-3.1-pro-preview", "google/gemini-3.5-flash", "google/gemini-3.1-flash-lite", "anthropic/claude-sonnet-5", "anthropic/claude-opus-5", "anthropic/claude-opus-4.8", "anthropic/claude-sonnet-4.6", "openai/gpt-5.5", "openai/gpt-5.4-mini"];
1030
+ readonly openrouter: readonly ["openai/gpt-6-astra", "openai/gpt-5.6-sol", "openai/gpt-5.6-terra", "openai/gpt-5.6-luna", "google/gemini-3.8-flash", "google/gemini-3.7-flash", "google/gemini-3.6-flash", "google/gemini-3.5-flash-lite", "google/gemini-3.1-pro-preview", "google/gemini-3.5-flash", "google/gemini-3.1-flash-lite", "anthropic/claude-sonnet-5", "anthropic/claude-opus-5", "anthropic/claude-opus-4.8", "anthropic/claude-sonnet-4.6", "openai/gpt-5.5", "openai/gpt-5.4-mini"];
1029
1031
  readonly openai: readonly ["gpt-6-astra", "gpt-5.6", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-5.5", "gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gpt-5.2"];
1030
1032
  readonly anthropic: readonly ["claude-sonnet-5", "claude-fable-5-1", "claude-fable-5", "claude-opus-5", "claude-opus-4-8", "claude-opus-4-7", "claude-sonnet-4-6", "claude-opus-4-6", "claude-haiku-4-5-20251001"];
1031
1033
  readonly bedrock: readonly ["us.anthropic.claude-sonnet-4-5-20250929-v1:0", "us.anthropic.claude-haiku-4-5-20251001-v1:0", "us.amazon.nova-pro-v1:0", "us.amazon.nova-lite-v1:0"];
@@ -1056,7 +1058,7 @@ export declare const isBYOKModelRoleSupported: ({ provider, modelId, role }: {
1056
1058
  export declare const CHAT_PDF_ATTACHMENT_MODEL_OPTIONS: {
1057
1059
  readonly mistral: readonly ["mistral-medium-latest", "mistral-small-latest"];
1058
1060
  readonly google: readonly ["gemini-3.8-flash", "gemini-3.7-flash", "gemini-3.6-flash", "gemini-3.5-flash-lite", "gemini-3.1-pro-preview", "gemini-3.5-flash", "gemini-3.1-flash-lite"];
1059
- readonly openrouter: readonly ["openai/gpt-6-astra", "openai/gpt-5.6-sol", "openai/gpt-5.6-luna", "openai/gpt-5.6-terra", "google/gemini-3.8-flash", "google/gemini-3.7-flash", "google/gemini-3.6-flash", "google/gemini-3.5-flash-lite", "google/gemini-3.1-pro-preview", "google/gemini-3.5-flash", "google/gemini-3.1-flash-lite", "anthropic/claude-sonnet-5", "anthropic/claude-opus-5", "anthropic/claude-opus-4.8", "anthropic/claude-sonnet-4.6", "openai/gpt-5.5", "openai/gpt-5.4-mini"];
1061
+ readonly openrouter: readonly ["openai/gpt-6-astra", "openai/gpt-5.6-sol", "openai/gpt-5.6-terra", "openai/gpt-5.6-luna", "google/gemini-3.8-flash", "google/gemini-3.7-flash", "google/gemini-3.6-flash", "google/gemini-3.5-flash-lite", "google/gemini-3.1-pro-preview", "google/gemini-3.5-flash", "google/gemini-3.1-flash-lite", "anthropic/claude-sonnet-5", "anthropic/claude-opus-5", "anthropic/claude-opus-4.8", "anthropic/claude-sonnet-4.6", "openai/gpt-5.5", "openai/gpt-5.4-mini"];
1060
1062
  readonly openai: readonly ["gpt-6-astra", "gpt-5.6", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-5.5", "gpt-5.4", "gpt-5.4-mini", "gpt-5.4-nano", "gpt-5.2"];
1061
1063
  readonly anthropic: readonly ["claude-sonnet-5", "claude-fable-5-1", "claude-fable-5", "claude-opus-5", "claude-opus-4-8", "claude-opus-4-7", "claude-sonnet-4-6", "claude-opus-4-6", "claude-haiku-4-5-20251001"];
1062
1064
  readonly bedrock: readonly ["us.anthropic.claude-sonnet-4-5-20250929-v1:0", "us.anthropic.claude-haiku-4-5-20251001-v1:0", "us.amazon.nova-pro-v1:0", "us.amazon.nova-lite-v1:0"];
@@ -1146,6 +1148,81 @@ export declare const normalizeModelCatalogId: (modelId: string) => string;
1146
1148
  * a runtime string.
1147
1149
  */
1148
1150
  export declare const shouldEmitTemperature: (modelId: string) => boolean;
1151
+ /**
1152
+ * Whether a model accepts tool use on a streaming request.
1153
+ *
1154
+ * Every tool-carrying request stella sends is a stream, and structured
1155
+ * output is a forced tool call, so `"unsupported"` withdraws both: the
1156
+ * provider answers such a request with a fatal stream error rather than a
1157
+ * degraded result. models.dev does not publish this, so the map is
1158
+ * hand-declared here rather than in the generated `capabilities.gen.ts`,
1159
+ * and it is total over the offered catalog: a new model forces a decision.
1160
+ *
1161
+ * Consumers must go through `supportsStreamingToolUse`.
1162
+ */
1163
+ export declare const MODEL_STREAMING_TOOL_USE: {
1164
+ readonly "gemini-3.8-flash": "supported";
1165
+ readonly "gemini-3.7-flash": "supported";
1166
+ readonly "gemini-3.6-flash": "supported";
1167
+ readonly "gemini-3.5-flash-lite": "supported";
1168
+ readonly "gemini-3.1-pro-preview": "supported";
1169
+ readonly "gemini-3.5-flash": "supported";
1170
+ readonly "gemini-3.1-flash-lite": "supported";
1171
+ readonly "openai/gpt-6-astra": "supported";
1172
+ readonly "openai/gpt-5.6-sol": "supported";
1173
+ readonly "openai/gpt-5.6-terra": "supported";
1174
+ readonly "openai/gpt-5.6-luna": "supported";
1175
+ readonly "google/gemini-3.8-flash": "supported";
1176
+ readonly "google/gemini-3.7-flash": "supported";
1177
+ readonly "google/gemini-3.6-flash": "supported";
1178
+ readonly "google/gemini-3.5-flash-lite": "supported";
1179
+ readonly "google/gemini-3.1-pro-preview": "supported";
1180
+ readonly "google/gemini-3.5-flash": "supported";
1181
+ readonly "google/gemini-3.1-flash-lite": "supported";
1182
+ readonly "anthropic/claude-sonnet-5": "supported";
1183
+ readonly "anthropic/claude-opus-5": "supported";
1184
+ readonly "anthropic/claude-opus-4.8": "supported";
1185
+ readonly "anthropic/claude-sonnet-4.6": "supported";
1186
+ readonly "openai/gpt-5.5": "supported";
1187
+ readonly "openai/gpt-5.4-mini": "supported";
1188
+ readonly "gpt-6-astra": "supported";
1189
+ readonly "gpt-5.6": "supported";
1190
+ readonly "gpt-5.6-terra": "supported";
1191
+ readonly "gpt-5.6-luna": "supported";
1192
+ readonly "gpt-5.5": "supported";
1193
+ readonly "gpt-5.4": "supported";
1194
+ readonly "gpt-5.4-mini": "supported";
1195
+ readonly "gpt-5.4-nano": "supported";
1196
+ readonly "gpt-5.2": "supported";
1197
+ readonly "claude-sonnet-5": "supported";
1198
+ readonly "claude-fable-5-1": "supported";
1199
+ readonly "claude-fable-5": "supported";
1200
+ readonly "claude-opus-5": "supported";
1201
+ readonly "claude-opus-4-8": "supported";
1202
+ readonly "claude-opus-4-7": "supported";
1203
+ readonly "claude-sonnet-4-6": "supported";
1204
+ readonly "claude-opus-4-6": "supported";
1205
+ readonly "claude-haiku-4-5-20251001": "supported";
1206
+ readonly "us.anthropic.claude-sonnet-4-5-20250929-v1:0": "supported";
1207
+ readonly "us.anthropic.claude-haiku-4-5-20251001-v1:0": "supported";
1208
+ readonly "us.amazon.nova-pro-v1:0": "supported";
1209
+ readonly "us.amazon.nova-lite-v1:0": "supported";
1210
+ readonly "us.amazon.nova-micro-v1:0": "supported";
1211
+ readonly "openai.gpt-oss-120b-1:0": "supported";
1212
+ readonly "openai.gpt-oss-20b-1:0": "supported";
1213
+ readonly "us.deepseek.r1-v1:0": "unsupported";
1214
+ readonly "mistral-large-latest": "supported";
1215
+ readonly "mistral-medium-latest": "supported";
1216
+ readonly "mistral-small-latest": "supported";
1217
+ };
1218
+ /**
1219
+ * Whether stella may send tools (or a structured-output schema) to this
1220
+ * model on a streaming request. Unlisted ids resolve to `true`: custom
1221
+ * deployments and env overrides are overwhelmingly tool-capable, and
1222
+ * withdrawing tools from an uncatalogued model would silently strip the
1223
+ * agent loop rather than fail where it can be seen.
1224
+ */
1225
+ export declare const supportsStreamingToolUse: (modelId: string) => boolean;
1149
1226
  /**
1150
1227
  * Declared reasoning-effort values for a model ID, or `null` when the
1151
1228
  * model has no effort control or is not catalogued (custom deployments,
package/dist/index.js CHANGED
@@ -17,8 +17,8 @@ const MODEL_DOCUMENT_INPUT_OPTIONS = {
17
17
  openrouter: [
18
18
  "openai/gpt-6-astra",
19
19
  "openai/gpt-5.6-sol",
20
- "openai/gpt-5.6-luna",
21
20
  "openai/gpt-5.6-terra",
21
+ "openai/gpt-5.6-luna",
22
22
  "google/gemini-3.8-flash",
23
23
  "google/gemini-3.7-flash",
24
24
  "google/gemini-3.6-flash",
@@ -124,7 +124,7 @@ const MODEL_REASONING_EFFORTS = {
124
124
  "xhigh",
125
125
  "max"
126
126
  ],
127
- "openai/gpt-5.6-luna": [
127
+ "openai/gpt-5.6-terra": [
128
128
  "none",
129
129
  "low",
130
130
  "medium",
@@ -132,7 +132,7 @@ const MODEL_REASONING_EFFORTS = {
132
132
  "xhigh",
133
133
  "max"
134
134
  ],
135
- "openai/gpt-5.6-terra": [
135
+ "openai/gpt-5.6-luna": [
136
136
  "none",
137
137
  "low",
138
138
  "medium",
@@ -382,8 +382,8 @@ const MODEL_DEFAULT_REASONING_EFFORTS = {
382
382
  "gemini-3.1-flash-lite": null,
383
383
  "openai/gpt-6-astra": "medium",
384
384
  "openai/gpt-5.6-sol": "medium",
385
- "openai/gpt-5.6-luna": "medium",
386
385
  "openai/gpt-5.6-terra": "medium",
386
+ "openai/gpt-5.6-luna": "medium",
387
387
  "google/gemini-3.8-flash": "medium",
388
388
  "google/gemini-3.7-flash": "medium",
389
389
  "google/gemini-3.6-flash": "medium",
@@ -442,8 +442,8 @@ const MODEL_TEMPERATURE_POLICIES = {
442
442
  "gemini-3.1-flash-lite": "emit",
443
443
  "openai/gpt-6-astra": "omit",
444
444
  "openai/gpt-5.6-sol": "omit",
445
- "openai/gpt-5.6-luna": "omit",
446
445
  "openai/gpt-5.6-terra": "omit",
446
+ "openai/gpt-5.6-luna": "omit",
447
447
  "google/gemini-3.8-flash": "omit",
448
448
  "google/gemini-3.7-flash": "omit",
449
449
  "google/gemini-3.6-flash": "omit",
@@ -924,6 +924,7 @@ const MODEL_ROLES = [
924
924
  "pdf"
925
925
  ];
926
926
  const TEMPERATURE_POLICIES = ["emit", "omit"];
927
+ const STREAMING_TOOL_USE_SUPPORTS = ["supported", "unsupported"];
927
928
  const AI_PROVIDERS = [
928
929
  "google",
929
930
  "openrouter",
@@ -1493,6 +1494,82 @@ const MODEL_TEMPERATURE_POLICY_BY_ID = MODEL_TEMPERATURE_POLICIES;
1493
1494
  * a runtime string.
1494
1495
  */
1495
1496
  const shouldEmitTemperature = (modelId) => MODEL_TEMPERATURE_POLICY_BY_ID[normalizeModelCatalogId(modelId)] === "emit";
1497
+ /**
1498
+ * Whether a model accepts tool use on a streaming request.
1499
+ *
1500
+ * Every tool-carrying request stella sends is a stream, and structured
1501
+ * output is a forced tool call, so `"unsupported"` withdraws both: the
1502
+ * provider answers such a request with a fatal stream error rather than a
1503
+ * degraded result. models.dev does not publish this, so the map is
1504
+ * hand-declared here rather than in the generated `capabilities.gen.ts`,
1505
+ * and it is total over the offered catalog: a new model forces a decision.
1506
+ *
1507
+ * Consumers must go through `supportsStreamingToolUse`.
1508
+ */
1509
+ const MODEL_STREAMING_TOOL_USE = {
1510
+ "gemini-3.8-flash": "supported",
1511
+ "gemini-3.7-flash": "supported",
1512
+ "gemini-3.6-flash": "supported",
1513
+ "gemini-3.5-flash-lite": "supported",
1514
+ "gemini-3.1-pro-preview": "supported",
1515
+ "gemini-3.5-flash": "supported",
1516
+ "gemini-3.1-flash-lite": "supported",
1517
+ "openai/gpt-6-astra": "supported",
1518
+ "openai/gpt-5.6-sol": "supported",
1519
+ "openai/gpt-5.6-terra": "supported",
1520
+ "openai/gpt-5.6-luna": "supported",
1521
+ "google/gemini-3.8-flash": "supported",
1522
+ "google/gemini-3.7-flash": "supported",
1523
+ "google/gemini-3.6-flash": "supported",
1524
+ "google/gemini-3.5-flash-lite": "supported",
1525
+ "google/gemini-3.1-pro-preview": "supported",
1526
+ "google/gemini-3.5-flash": "supported",
1527
+ "google/gemini-3.1-flash-lite": "supported",
1528
+ "anthropic/claude-sonnet-5": "supported",
1529
+ "anthropic/claude-opus-5": "supported",
1530
+ "anthropic/claude-opus-4.8": "supported",
1531
+ "anthropic/claude-sonnet-4.6": "supported",
1532
+ "openai/gpt-5.5": "supported",
1533
+ "openai/gpt-5.4-mini": "supported",
1534
+ "gpt-6-astra": "supported",
1535
+ "gpt-5.6": "supported",
1536
+ "gpt-5.6-terra": "supported",
1537
+ "gpt-5.6-luna": "supported",
1538
+ "gpt-5.5": "supported",
1539
+ "gpt-5.4": "supported",
1540
+ "gpt-5.4-mini": "supported",
1541
+ "gpt-5.4-nano": "supported",
1542
+ "gpt-5.2": "supported",
1543
+ "claude-sonnet-5": "supported",
1544
+ "claude-fable-5-1": "supported",
1545
+ "claude-fable-5": "supported",
1546
+ "claude-opus-5": "supported",
1547
+ "claude-opus-4-8": "supported",
1548
+ "claude-opus-4-7": "supported",
1549
+ "claude-sonnet-4-6": "supported",
1550
+ "claude-opus-4-6": "supported",
1551
+ "claude-haiku-4-5-20251001": "supported",
1552
+ "us.anthropic.claude-sonnet-4-5-20250929-v1:0": "supported",
1553
+ "us.anthropic.claude-haiku-4-5-20251001-v1:0": "supported",
1554
+ "us.amazon.nova-pro-v1:0": "supported",
1555
+ "us.amazon.nova-lite-v1:0": "supported",
1556
+ "us.amazon.nova-micro-v1:0": "supported",
1557
+ "openai.gpt-oss-120b-1:0": "supported",
1558
+ "openai.gpt-oss-20b-1:0": "supported",
1559
+ "us.deepseek.r1-v1:0": "unsupported",
1560
+ "mistral-large-latest": "supported",
1561
+ "mistral-medium-latest": "supported",
1562
+ "mistral-small-latest": "supported"
1563
+ };
1564
+ const MODEL_STREAMING_TOOL_USE_BY_ID = MODEL_STREAMING_TOOL_USE;
1565
+ /**
1566
+ * Whether stella may send tools (or a structured-output schema) to this
1567
+ * model on a streaming request. Unlisted ids resolve to `true`: custom
1568
+ * deployments and env overrides are overwhelmingly tool-capable, and
1569
+ * withdrawing tools from an uncatalogued model would silently strip the
1570
+ * agent loop rather than fail where it can be seen.
1571
+ */
1572
+ const supportsStreamingToolUse = (modelId) => MODEL_STREAMING_TOOL_USE_BY_ID[normalizeModelCatalogId(modelId)] !== "unsupported";
1496
1573
  const MODEL_REASONING_EFFORTS_BY_ID = MODEL_REASONING_EFFORTS;
1497
1574
  /**
1498
1575
  * Declared reasoning-effort values for a model ID, or `null` when the
@@ -1638,4 +1715,4 @@ const DEFAULT_CONTEXT_WINDOW_TOKENS = 128e3;
1638
1715
  */
1639
1716
  const getContextWindowTokens = (modelId) => CONTEXT_WINDOW_TOKENS_BY_ID[normalizeModelCatalogId(modelId)] ?? 128e3;
1640
1717
  //#endregion
1641
- 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, 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_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_TEMPERATURE_POLICIES, REASONING_EFFORTS, RETAINED_MODELS_DEV_RATE_ENTRIES, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelRate, getModelReasoningEfforts, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature };
1718
+ 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, 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_RATES, MODEL_RATE_UNITS_PER_USD, MODEL_REASONING_EFFORTS, MODEL_ROLES, MODEL_STREAMING_TOOL_USE, MODEL_TEMPERATURE_POLICIES, REASONING_EFFORTS, RETAINED_MODELS_DEV_RATE_ENTRIES, STREAMING_TOOL_USE_SUPPORTS, TANSTACK_AI_PROVIDERS, TEMPERATURE_POLICIES, getContextWindowTokens, getModelDefaultReasoningEffort, getModelDisplayMetadata, getModelRate, getModelReasoningEfforts, getStandardModelRate, isBYOKModelRoleSupported, isBYOKProviderRoleSupported, isChatPdfAttachmentModelSupported, normalizeModelCatalogId, resolveModelRate, resolveReasoningEffort, resolveWorkingBYOKModelForRole, shouldEmitTemperature, supportsStreamingToolUse };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stll/ai-catalog",
3
- "version": "0.1.13",
3
+ "version": "0.2.0",
4
4
  "description": "Provider-neutral AI model roles, capabilities, and curated model metadata.",
5
5
  "keywords": [
6
6
  "ai",