diff --git a/CHANGELOG.md b/CHANGELOG.md index 1bc5c8f..d629ade 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- Refresh the static capability snapshot to `command-code@1.88.0`, which drops image input for `xiaomi/mimo-v2.5` and publishes no other metadata change. Add reviewed display pricing for the newly advertised `moonshotai/Kimi-K3.1-Pro` at $2 input / $10 output / $0.2 cache read per million tokens with no cache-write charge, verified against the official pricing page on 2026-10-23; the CLI does not publish capability metadata for it yet, so it keeps conservative text-only, non-reasoning defaults with a 65,536-token output limit until the snapshot catches up. Retire `xiaomi/mimo-v2.5` and `xiaomi/mimo-v2.5-pro`, which neither the API nor the pricing page lists anymore, and drop their display prices. The reviewed snapshot covers all 93 advertised models. + ## 0.7.9 - 2026-10-22 - Pin the capability snapshot to `command-code@1.87.2`, covering all 94 advertised models; the `x-command-code-version` header sent on the generate fallback reports that CLI version. diff --git a/README.md b/README.md index aeaf458..f36b489 100644 --- a/README.md +++ b/README.md @@ -151,7 +151,7 @@ The following environment variables are intended for tests, local mocks, and com ## Image input -The provider advertises image input only for models marked with the `image` input modality in the official Command Code CLI model catalog. The capability snapshot currently follows `command-code@1.87.2`; unknown models default to text-only until their upstream metadata is reviewed. A daily GitHub Actions job synchronizes the CLI version, image capabilities, reasoning flags, reasoning efforts, and model-specific output limits with the latest published CLI package, also dropping manual effort overrides that upstream has published itself, and opens or updates a reviewable pull request when they change. Pricing remains manually reviewed because temporary promotions and long-context tiers require explicit review. +The provider advertises image input only for models marked with the `image` input modality in the official Command Code CLI model catalog. The capability snapshot currently follows `command-code@1.88.0`; unknown models default to text-only until their upstream metadata is reviewed. A daily GitHub Actions job synchronizes the CLI version, image capabilities, reasoning flags, reasoning efforts, and model-specific output limits with the latest published CLI package, also dropping manual effort overrides that upstream has published itself, and opens or updates a reviewable pull request when they change. Pricing remains manually reviewed because temporary promotions and long-context tiers require explicit review. For vision-capable models, Pi's native provider adapters forward image blocks from user messages and tool results using the documented OpenAI or Anthropic message schema. Unknown and text-only models remain marked text-only in Pi. diff --git a/src/commandcode-catalog.ts b/src/commandcode-catalog.ts index 1b7aa79..4500564 100644 --- a/src/commandcode-catalog.ts +++ b/src/commandcode-catalog.ts @@ -1,4 +1,4 @@ -export const COMMAND_CODE_CLI_VERSION = "1.87.2" +export const COMMAND_CODE_CLI_VERSION = "1.88.0" export type CommandCodeInputType = "text" | "image" export type CommandCodeReasoningEffort = @@ -11,7 +11,7 @@ export type CommandCodeReasoningEffort = | "max" /** - * Generated from command-code@1.87.2 by `npm run sync:commandcode-catalog`. + * Generated from command-code@1.88.0 by `npm run sync:commandcode-catalog`. * Do not edit manually. */ export const MODEL_INPUT_MODALITIES: Readonly> = { @@ -81,7 +81,6 @@ export const MODEL_INPUT_MODALITIES: Readonly> = { "mistral/mistral-large-4": { input: 1.36, output: 4.18, cacheRead: 0.14, cacheWrite: 0 }, "tencent/hy3-paid": { input: 0.14, output: 0.58, cacheRead: 0.035, cacheWrite: 0 }, "tencent/hy4-preview": { input: 0.834, output: 2.501, cacheRead: 0.042, cacheWrite: 0 }, + "moonshotai/Kimi-K3.1-Pro": { input: 2, output: 10, cacheRead: 0.2, cacheWrite: 0 }, "moonshotai/Kimi-K3": { input: 3, output: 15, cacheRead: 0.3, cacheWrite: 0 }, "moonshotai/Kimi-K2.7-Code": { input: 0.95, output: 4, cacheRead: 0.19, cacheWrite: 0 }, "moonshotai/Kimi-K2.7-Code-Highspeed": { @@ -171,8 +172,6 @@ export const MODEL_COSTS: Readonly> = { "stepfun/Step-3.7-Flash": { input: 0.2, output: 1.15, cacheRead: 0.04, cacheWrite: 0 }, "stepfun/Step-3.5-Flash": { input: 0.09, output: 0.3, cacheRead: 0.02, cacheWrite: 0 }, // Permanent discounted rates. - "xiaomi/mimo-v2.5-pro": { input: 0.435, output: 0.87, cacheRead: 0.0036, cacheWrite: 0 }, - "xiaomi/mimo-v2.5": { input: 0.14, output: 0.28, cacheRead: 0.0028, cacheWrite: 0 }, "xiaomi/mimo-v2.6-pro": { input: 0.435, output: 0.87, cacheRead: 0.0036, cacheWrite: 0 }, "xiaomi/mimo-v2.6-pro-ultraspeed": { input: 4.35, diff --git a/tests/fixtures/commandcode-model-ids.json b/tests/fixtures/commandcode-model-ids.json index d1d8dd0..cbc7283 100644 --- a/tests/fixtures/commandcode-model-ids.json +++ b/tests/fixtures/commandcode-model-ids.json @@ -1,5 +1,5 @@ { - "fetchedAt": "2026-10-22T20:38:00.785Z", + "fetchedAt": "2026-10-23T20:45:35.357Z", "source": "https://api.commandcode.ai/provider/v1/models", "modelIds": [ "claude-sonnet-5-5", @@ -30,6 +30,7 @@ "deepseek/deepseek-v4-flash-fast", "deepseek/deepseek-v4.1-flash", "deepseek/deepseek-v4.1-flash-fast", + "moonshotai/Kimi-K3.1-Pro", "moonshotai/Kimi-K3", "moonshotai/Kimi-K2.7-Code", "moonshotai/Kimi-K2.7-Code-Highspeed", @@ -50,8 +51,6 @@ "xiaomi/mimo-v2.6-pro", "xiaomi/mimo-v2.6-pro-ultraspeed", "xiaomi/mimo-v2.6-flash", - "xiaomi/mimo-v2.5-pro", - "xiaomi/mimo-v2.5", "Qwen/Qwen3.8-Omni-Flash", "Qwen/Qwen3.8-Max-Prime", "Qwen/Qwen3.8-Max-0902", diff --git a/tests/fixtures/commandcode-pricing.json b/tests/fixtures/commandcode-pricing.json index 0b5a75b..dae9a90 100644 --- a/tests/fixtures/commandcode-pricing.json +++ b/tests/fixtures/commandcode-pricing.json @@ -1,5 +1,5 @@ { - "verifiedAt": "2026-10-22", + "verifiedAt": "2026-10-23", "source": "https://commandcode.ai/docs/resources/pricing-limits", "tierPolicy": "Use request-wide input tiers; the highest threshold exceeded by input plus cache tokens applies to the full request.", "tiers": { @@ -29,6 +29,7 @@ "mistral/mistral-large-4": [1.36, 4.18, 0.14, 0], "tencent/hy3-paid": [0.14, 0.58, 0.035, 0], "tencent/hy4-preview": [0.834, 2.501, 0.042, 0], + "moonshotai/Kimi-K3.1-Pro": [2, 10, 0.2, 0], "moonshotai/Kimi-K3": [3, 15, 0.3, 0], "moonshotai/Kimi-K2.7-Code": [0.95, 4, 0.19, 0], "moonshotai/Kimi-K2.7-Code-Highspeed": [1.9, 8, 0.38, 0], @@ -66,8 +67,6 @@ "stepfun/Step-5-Preview": [1, 2.7, 0.05, 0], "stepfun/Step-3.7-Flash": [0.2, 1.15, 0.04, 0], "stepfun/Step-3.5-Flash": [0.09, 0.3, 0.02, 0], - "xiaomi/mimo-v2.5-pro": [0.435, 0.87, 0.0036, 0], - "xiaomi/mimo-v2.5": [0.14, 0.28, 0.0028, 0], "xiaomi/mimo-v2.6-pro": [0.435, 0.87, 0.0036, 0], "xiaomi/mimo-v2.6-pro-ultraspeed": [4.35, 8.7, 0.036, 0], "xiaomi/mimo-v2.6-flash": [0.14, 0.28, 0.0028, 0], diff --git a/tests/test-pricing.ts b/tests/test-pricing.ts index 37007d6..94a536e 100644 --- a/tests/test-pricing.ts +++ b/tests/test-pricing.ts @@ -166,10 +166,10 @@ describe("MODEL_COSTS pricing overlay", () => { cacheRead: 0.5, cacheWrite: 3.13, }) - assertCost("xiaomi/mimo-v2.5-pro", { - input: 0.435, - output: 0.87, - cacheRead: 0.0036, + assertCost("moonshotai/Kimi-K3.1-Pro", { + input: 2, + output: 10, + cacheRead: 0.2, cacheWrite: 0, }) assertCost("MiniMaxAI/MiniMax-M2.5", { @@ -397,7 +397,7 @@ describe("MODEL_COSTS pricing overlay", () => { it("tracks pricing provenance", () => { assert.equal(PRICING_SOURCE_URL, "https://commandcode.ai/docs/resources/pricing-limits") - assert.equal(PRICING_LAST_VERIFIED, "2026-10-22") + assert.equal(PRICING_LAST_VERIFIED, "2026-10-23") }) it("fails once temporary pricing needs review", () => {