From 50e5c911a260b92f8ca7c4b1ac57da32d8f4a1e4 Mon Sep 17 00:00:00 2001 From: zverev Date: Fri, 16 Oct 2026 21:06:44 +0300 Subject: [PATCH 1/2] feat(models): refresh Command Code catalog to 1.83.0 Synchronize the static capability snapshot with command-code@1.83.0. Add image input, reasoning, and selectable low/medium/high efforts for meta/muse-spark-open and nvidia/nemotron-3.5-super-vl. Publish reasoning for the free stealth/cat-jam:free preview with low/medium/high/xhigh/max efforts and a 131,072-token output limit. Retire inclusionai/ling-3.0-flash-sante:free: drop its reasoning, efforts, output limit, and display-price entry now that the API no longer advertises it. Display prices were re-checked against the official page and are unchanged; the reviewed snapshot now covers 92 advertised models. --- CHANGELOG.md | 2 ++ README.md | 2 +- src/commandcode-catalog.ts | 15 +++++++++++---- src/pricing.ts | 1 - tests/fixtures/commandcode-model-ids.json | 3 +-- tests/fixtures/commandcode-pricing.json | 1 - tests/test-pricing.ts | 3 +-- 7 files changed, 16 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e08df45..3c5c007 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- Refresh the static capability snapshot to `command-code@1.83.0`: add image input, reasoning, and selectable `low`/`medium`/`high` efforts for `meta/muse-spark-open` and `nvidia/nemotron-3.5-super-vl`; publish reasoning for the free `stealth/cat-jam:free` preview with `low`/`medium`/`high`/`xhigh`/`max` efforts and a 131,072-token output limit. Retire `inclusionai/ling-3.0-flash-sante:free` and drop its reasoning, efforts, output limit, and display-price entry now that the API no longer advertises it. No prices changed; the reviewed snapshot now covers all 92 advertised models. + ## 0.7.8 - 2026-10-15 - Redact sensitive text in direct stream errors and normalized context-overflow messages before returning them to the host. This closes two error-reporting paths that did not use the shared redactor; it is defensive hardening, not a claim of a confirmed credential leak ([#155](https://github.com/patlux/pi-commandcode-provider/pull/155)). diff --git a/README.md b/README.md index fb383e4..34a32da 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.82.4`; 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.83.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 c2ce71b..8c5e08f 100644 --- a/src/commandcode-catalog.ts +++ b/src/commandcode-catalog.ts @@ -1,4 +1,4 @@ -export const COMMAND_CODE_CLI_VERSION = "1.82.4" +export const COMMAND_CODE_CLI_VERSION = "1.83.0" export type CommandCodeInputType = "text" | "image" export type CommandCodeReasoningEffort = @@ -11,7 +11,7 @@ export type CommandCodeReasoningEffort = | "max" /** - * Generated from command-code@1.82.4 by `npm run sync:commandcode-catalog`. + * Generated from command-code@1.83.0 by `npm run sync:commandcode-catalog`. * Do not edit manually. */ export const MODEL_INPUT_MODALITIES: Readonly> = { @@ -52,6 +52,7 @@ export const MODEL_INPUT_MODALITIES: Readonly> = { "gpt-6-luna": true, "gpt-6-sol": true, "gpt-6.1-sol": true, - "inclusionai/ling-3.0-flash-sante:free": true, "inclusionai/ling-3.1-flash": true, "meituan/LongCat-2.0": true, "meta/muse-spark-1.1": true, @@ -128,6 +129,7 @@ export const MODEL_REASONING: Readonly> = { "meta/muse-spark-1.2-contributor": true, "meta/muse-spark-1.3": true, "meta/muse-spark-1.3-contributor": true, + "meta/muse-spark-open": true, "meta/muse-wonder-1.0": true, "MiniMaxAI/MiniMax-M3": true, "mistral/mistral-large-4": true, @@ -135,6 +137,7 @@ export const MODEL_REASONING: Readonly> = { "moonshotai/Kimi-K2.7-Code-Highspeed": true, "moonshotai/Kimi-K3": true, "nvidia/nemotron-3-ultra-550b-a55b": true, + "nvidia/nemotron-3.5-super-vl": true, "poolside/laguna-s-2.1-free": true, "Qwen/Qwen3.6-Max-Preview": true, "Qwen/Qwen3.6-Plus": true, @@ -148,6 +151,7 @@ export const MODEL_REASONING: Readonly> = { "Qwen/Qwen3.8-Max-Prime": true, "Qwen/Qwen3.8-Omni-Flash": true, "sakana/fugu-ultra": true, + "stealth/cat-jam:free": true, "stealth/glyph-cluster:free": true, "stepfun/Step-3.5-Flash": true, "stepfun/Step-3.7-Flash": true, @@ -206,10 +210,12 @@ export const MODEL_EFFORTS: Readonly> = { - "inclusionai/ling-3.0-flash-sante:free": 32_768, "inclusionai/ling-3.1-flash": 32_768, "mistral/mistral-large-4": 262_144, "poolside/laguna-s-2.1-free": 32_768, "Qwen/Qwen3.8-27B": 32_768, "Qwen/Qwen3.8-Max-Prime": 131_072, "Qwen/Qwen3.8-Omni-Flash": 131_072, + "stealth/cat-jam:free": 131_072, "stealth/glyph-cluster:free": 256_000, "z-ai/glm-5.3-flash": 131_072, "z-ai/glm-5.3-flashx": 131_072, diff --git a/src/pricing.ts b/src/pricing.ts index 0dbeae5..24c9f0b 100644 --- a/src/pricing.ts +++ b/src/pricing.ts @@ -39,7 +39,6 @@ export const ZERO_MODEL_COST: CommandCodeModelCost = { */ export const MODEL_COSTS: Readonly> = { // Free models - "inclusionai/ling-3.0-flash-sante:free": { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, // Free while the stealth preview lasts; no fixed expiry is published. "stealth/cat-jam:free": { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, "poolside/laguna-s-2.1-free": { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }, diff --git a/tests/fixtures/commandcode-model-ids.json b/tests/fixtures/commandcode-model-ids.json index 7ad6931..0f9b907 100644 --- a/tests/fixtures/commandcode-model-ids.json +++ b/tests/fixtures/commandcode-model-ids.json @@ -1,5 +1,5 @@ { - "fetchedAt": "2026-10-15T20:58:52.909Z", + "fetchedAt": "2026-10-16T17:58:44.197Z", "source": "https://api.commandcode.ai/provider/v1/models", "modelIds": [ "claude-sonnet-5-5", @@ -82,7 +82,6 @@ "stealth/glyph-cluster:free", "stealth/cat-jam:free", "poolside/laguna-s-2.1-free", - "inclusionai/ling-3.0-flash-sante:free", "inclusionai/ling-3.1-flash", "meta/muse-spark-1.1", "meta/muse-spark-1.2", diff --git a/tests/fixtures/commandcode-pricing.json b/tests/fixtures/commandcode-pricing.json index 033e8ab..1cecfda 100644 --- a/tests/fixtures/commandcode-pricing.json +++ b/tests/fixtures/commandcode-pricing.json @@ -21,7 +21,6 @@ "xai/grok-4.7": [[200000, 4, 12, 1, 0]] }, "costs": { - "inclusionai/ling-3.0-flash-sante:free": [0, 0, 0, 0], "stealth/cat-jam:free": [0, 0, 0, 0], "poolside/laguna-s-2.1-free": [0, 0, 0, 0], "stealth/glyph-cluster:free": [0, 0, 0, 0], diff --git a/tests/test-pricing.ts b/tests/test-pricing.ts index 7b4c39e..cf0b472 100644 --- a/tests/test-pricing.ts +++ b/tests/test-pricing.ts @@ -30,7 +30,6 @@ const pricingFixture = JSON.parse(await readFile(pricingFixtureUrl, "utf-8")) as const freeModels = new Set([ "poolside/laguna-s-2.1-free", "stealth/glyph-cluster:free", - "inclusionai/ling-3.0-flash-sante:free", "stealth/cat-jam:free", ]) @@ -55,7 +54,7 @@ function assertCost( describe("MODEL_COSTS pricing overlay", () => { it("covers the current Command Code model catalog snapshot", () => { assert.equal(fixture.source, "https://api.commandcode.ai/provider/v1/models") - assert.match(fixture.fetchedAt, /^2026-10-15T/) + assert.match(fixture.fetchedAt, /^2026-10-16T/) const catalogIds = [...fixture.modelIds].sort() const pricedIds = Object.keys(MODEL_COSTS).sort() From 5e343b45088db353b41c8dcbdc9a33834feae0f3 Mon Sep 17 00:00:00 2001 From: zverev Date: Fri, 16 Oct 2026 21:08:48 +0300 Subject: [PATCH 2/2] docs: correct the Ling 3.0 retirement wording Ling 3.0 never had selectable reasoning efforts, and the retired free entry is the only change to MODEL_COSTS. Fix both statements in the changelog. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c5c007..6ffbf98 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ## Unreleased -- Refresh the static capability snapshot to `command-code@1.83.0`: add image input, reasoning, and selectable `low`/`medium`/`high` efforts for `meta/muse-spark-open` and `nvidia/nemotron-3.5-super-vl`; publish reasoning for the free `stealth/cat-jam:free` preview with `low`/`medium`/`high`/`xhigh`/`max` efforts and a 131,072-token output limit. Retire `inclusionai/ling-3.0-flash-sante:free` and drop its reasoning, efforts, output limit, and display-price entry now that the API no longer advertises it. No prices changed; the reviewed snapshot now covers all 92 advertised models. +- Refresh the static capability snapshot to `command-code@1.83.0`: add image input, reasoning, and selectable `low`/`medium`/`high` efforts for `meta/muse-spark-open` and `nvidia/nemotron-3.5-super-vl`; publish reasoning for the free `stealth/cat-jam:free` preview with `low`/`medium`/`high`/`xhigh`/`max` efforts and a 131,072-token output limit. Retire `inclusionai/ling-3.0-flash-sante:free` and drop its reasoning flag, output limit, and display-price entry now that the API no longer advertises it. No prices changed; the reviewed snapshot now covers all 92 advertised models. ## 0.7.8 - 2026-10-15