@oh-my-pi/pi-catalog 18.2.0 → 18.2.2
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/CHANGELOG.md +39 -0
- package/dist/types/compat/behavior.d.ts +11 -0
- package/dist/types/compat/cascade.d.ts +10 -0
- package/dist/types/compat/collapse.d.ts +8 -0
- package/dist/types/compat/resolve.d.ts +10 -0
- package/dist/types/compat/types.d.ts +21 -0
- package/dist/types/discovery/antigravity.d.ts +10 -1
- package/dist/types/model-thinking.d.ts +7 -0
- package/dist/types/provider-models/openai-compat.d.ts +2 -0
- package/dist/types/types.d.ts +36 -1
- package/package.json +4 -4
- package/src/build.ts +59 -0
- package/src/compat/axes.ts +15 -0
- package/src/compat/behavior.ts +22 -2
- package/src/compat/cascade.ts +27 -1
- package/src/compat/collapse.ts +100 -8
- package/src/compat/context-window.ts +11 -1
- package/src/compat/resolve.ts +56 -17
- package/src/compat/rules/README.md +3 -1
- package/src/compat/rules/classes/deepseek.kdl +9 -1
- package/src/compat/rules/classes/kimi.kdl +6 -0
- package/src/compat/rules/providers/alibaba-token-plan.kdl +16 -8
- package/src/compat/rules/providers/amazon-bedrock.kdl +30 -0
- package/src/compat/rules/providers/azure.kdl +6 -0
- package/src/compat/rules/providers/cerebras.kdl +10 -0
- package/src/compat/rules/providers/commandcode.kdl +20 -4
- package/src/compat/rules/providers/cursor.kdl +32 -0
- package/src/compat/rules/providers/deepseek.kdl +5 -5
- package/src/compat/rules/providers/devin.kdl +46 -0
- package/src/compat/rules/providers/google-vertex.kdl +15 -0
- package/src/compat/rules/providers/kimi-code.kdl +48 -0
- package/src/compat/rules/providers/meta.kdl +3 -0
- package/src/compat/rules/providers/muse-code.kdl +3 -0
- package/src/compat/rules/providers/openrouter.kdl +6 -0
- package/src/compat/rules/runtime/behavior.kdl +17 -0
- package/src/compat/rules/taxonomy/deepseek.kdl +5 -0
- package/src/compat/rules.json +1 -1
- package/src/compat/types.ts +23 -0
- package/src/discovery/antigravity.ts +80 -43
- package/src/discovery/devin.ts +22 -4
- package/src/identity/bundled.ts +4 -3
- package/src/model-cache.ts +154 -120
- package/src/model-thinking.ts +10 -7
- package/src/models.json +1 -1
- package/src/provider-models/bundled-references.ts +4 -3
- package/src/provider-models/cache-provider-id.ts +14 -8
- package/src/provider-models/ollama.ts +11 -31
- package/src/provider-models/openai-compat.ts +297 -37
- package/src/types.ts +38 -0
package/src/types.ts
CHANGED
|
@@ -327,6 +327,12 @@ export interface OpenAICompat {
|
|
|
327
327
|
* Default: auto-detected (DeepSeek reasoning models).
|
|
328
328
|
*/
|
|
329
329
|
disableReasoningOnToolChoice?: boolean;
|
|
330
|
+
/**
|
|
331
|
+
* Disable reasoning whenever the request advertises function tools.
|
|
332
|
+
* Use for model surfaces that reject every tools-plus-reasoning combination.
|
|
333
|
+
* Default: false.
|
|
334
|
+
*/
|
|
335
|
+
disableReasoningWithTools?: boolean;
|
|
330
336
|
/** OpenRouter-specific routing preferences. Only used when baseUrl points to OpenRouter. */
|
|
331
337
|
openRouterRouting?: OpenRouterRouting;
|
|
332
338
|
/** Vercel AI Gateway routing preferences. Only used when baseUrl points to Vercel AI Gateway. */
|
|
@@ -421,12 +427,24 @@ export interface OpenAICompat {
|
|
|
421
427
|
strictResponsesPairing?: boolean;
|
|
422
428
|
/** Whether the Responses API accepts the `detail: "original"` image hint. Default: auto-detected (false for GitHub Copilot, which rejects it with a 400). */
|
|
423
429
|
supportsImageDetailOriginal?: boolean;
|
|
430
|
+
/**
|
|
431
|
+
* Whether the Responses endpoint accepts `configuration_update` input items
|
|
432
|
+
* that change `reasoning.effort` mid-conversation while the request-level
|
|
433
|
+
* effort stays pinned for prompt caching (GPT-6 Astra). Default:
|
|
434
|
+
* rule-detected (`true` for `gpt-6-astra` on any host, `false` otherwise).
|
|
435
|
+
* Set `false` for custom `openai-responses` / `openai-codex-responses`
|
|
436
|
+
* endpoints that reject the item type with HTTP 400; effort changes are then
|
|
437
|
+
* sent as the top-level `reasoning.effort`.
|
|
438
|
+
*/
|
|
439
|
+
supportsConfigurationUpdate?: boolean;
|
|
424
440
|
/** Whether streamed reasoning deltas for the same field may repeat the full cumulative text snapshot. Default: false. */
|
|
425
441
|
reasoningDeltasMayBeCumulative?: boolean;
|
|
426
442
|
/** Strip leaked DeepSeek chat-template special tokens from visible content deltas. Default: auto-detected. */
|
|
427
443
|
stripDeepseekSpecialTokens?: boolean;
|
|
428
444
|
/** Heal leaked chat-template/tool-call/thinking markup from visible content deltas. Default: auto-detected. */
|
|
429
445
|
streamMarkupHealingPattern?: OpenAIStreamMarkupHealingPattern;
|
|
446
|
+
/** Whether this wire may revise already-streamed text (`stream-revision` axis). Unassigned: append-only. */
|
|
447
|
+
streamRevision?: "none" | "possible";
|
|
430
448
|
/** Treat an empty length-finished stream as a context-window error. Default: auto-detected. */
|
|
431
449
|
emptyLengthFinishIsContextError?: boolean;
|
|
432
450
|
/** Normalize tool call ids to OpenAI's 40-character limit. Default: auto-detected. */
|
|
@@ -599,6 +617,8 @@ export interface AnthropicCompat {
|
|
|
599
617
|
export interface BedrockCompat {
|
|
600
618
|
/** Whether this endpoint accepts no checkpoints, automatic caching, or explicit cachePoint blocks. */
|
|
601
619
|
promptCacheMode?: "none" | "automatic" | "explicit";
|
|
620
|
+
/** Whether this wire may revise already-streamed text (`stream-revision` axis). Unassigned: append-only. */
|
|
621
|
+
streamRevision?: "none" | "possible";
|
|
602
622
|
/** Whether explicit cachePoint blocks accept `ttl: "1h"`; omitted TTL means Bedrock's 5-minute default. */
|
|
603
623
|
supportsLongPromptCacheRetention?: boolean;
|
|
604
624
|
/**
|
|
@@ -623,6 +643,8 @@ export interface BedrockCompat {
|
|
|
623
643
|
/** Fully-resolved Bedrock Converse prompt-cache capabilities, materialized once by `buildModel`. */
|
|
624
644
|
export interface ResolvedBedrockCompat {
|
|
625
645
|
promptCacheMode: NonNullable<BedrockCompat["promptCacheMode"]>;
|
|
646
|
+
/** See {@link BedrockCompat.streamRevision}. */
|
|
647
|
+
streamRevision?: BedrockCompat["streamRevision"];
|
|
626
648
|
supportsLongPromptCacheRetention: boolean;
|
|
627
649
|
promptCacheMinimumTokens: number;
|
|
628
650
|
promptCacheMaximumCheckpoints: number;
|
|
@@ -688,6 +710,7 @@ export interface ResolvedOpenAISharedCompat {
|
|
|
688
710
|
filterReasoningHistory: boolean;
|
|
689
711
|
disableReasoningOnForcedToolChoice: boolean;
|
|
690
712
|
disableReasoningOnToolChoice: boolean;
|
|
713
|
+
disableReasoningWithTools?: boolean;
|
|
691
714
|
supportsToolChoice: boolean;
|
|
692
715
|
supportsForcedToolChoice: boolean;
|
|
693
716
|
supportsNamedToolChoice: boolean;
|
|
@@ -705,6 +728,8 @@ export interface ResolvedOpenAISharedCompat {
|
|
|
705
728
|
requiresAssistantContentForToolCalls: boolean;
|
|
706
729
|
stripDeepseekSpecialTokens: boolean;
|
|
707
730
|
streamMarkupHealingPattern?: OpenAIStreamMarkupHealingPattern;
|
|
731
|
+
/** See {@link OpenAICompat.streamRevision}. */
|
|
732
|
+
streamRevision?: OpenAICompat["streamRevision"];
|
|
708
733
|
/** See {@link OpenAICompat.streamFirstEventTimeoutMs}. */
|
|
709
734
|
streamFirstEventTimeoutMs?: number;
|
|
710
735
|
reasoningDeltasMayBeCumulative: boolean;
|
|
@@ -765,6 +790,7 @@ export type ResolvedOpenAICompat = ResolvedOpenAISharedCompat &
|
|
|
765
790
|
| "filterReasoningHistory"
|
|
766
791
|
| "disableReasoningOnForcedToolChoice"
|
|
767
792
|
| "disableReasoningOnToolChoice"
|
|
793
|
+
| "disableReasoningWithTools"
|
|
768
794
|
| "supportsToolChoice"
|
|
769
795
|
| "supportsForcedToolChoice"
|
|
770
796
|
| "supportsNamedToolChoice"
|
|
@@ -801,10 +827,12 @@ export type ResolvedOpenAICompat = ResolvedOpenAISharedCompat &
|
|
|
801
827
|
| "toolSchemaFlavor"
|
|
802
828
|
| "streamFirstEventTimeoutMs"
|
|
803
829
|
| "streamIdleTimeoutMs"
|
|
830
|
+
| "streamRevision"
|
|
804
831
|
| "cacheControlFormat"
|
|
805
832
|
| "thinkingKeep"
|
|
806
833
|
| "strictResponsesPairing"
|
|
807
834
|
| "supportsImageDetailOriginal"
|
|
835
|
+
| "supportsConfigurationUpdate"
|
|
808
836
|
| "stripImageInput"
|
|
809
837
|
| "thinkingLoopGuard"
|
|
810
838
|
| "whenThinking"
|
|
@@ -1168,6 +1196,16 @@ export interface Model<TApi extends Api = Api> {
|
|
|
1168
1196
|
gitlabDuoWorkflowRootNamespaceId?: string;
|
|
1169
1197
|
/** Cursor `max_mode` request flag returned by `GetUsableModels` for premium models that require max mode. */
|
|
1170
1198
|
cursorMaxMode?: boolean;
|
|
1199
|
+
/**
|
|
1200
|
+
* Per-wire-id `max_mode` markers for the members a collapsed Cursor row
|
|
1201
|
+
* routes to, recorded by `collapseVariants` from live `GetUsableModels`
|
|
1202
|
+
* rows. {@link cursorMaxMode} on a collapsed row is an OR across members,
|
|
1203
|
+
* so it cannot tell a `-low` route that needs no max mode from an Opus
|
|
1204
|
+
* `-fast` route that does; transports look the routed wire id up here
|
|
1205
|
+
* first. Absent on raw rows (their own `cursorMaxMode` already describes
|
|
1206
|
+
* their single wire id) and on bundled snapshots that predate discovery.
|
|
1207
|
+
*/
|
|
1208
|
+
cursorMaxModeRoutes?: Readonly<Record<string, boolean>>;
|
|
1171
1209
|
cost: ModelCost;
|
|
1172
1210
|
/** Premium Copilot requests charged per user-initiated request (defaults to 1). */
|
|
1173
1211
|
premiumMultiplier?: number;
|