crosscheck-mcp 0.2.18 → 0.2.20

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.
@@ -44,8 +44,8 @@ var pricing_default = {
44
44
  _meta: {
45
45
  currency: "USD",
46
46
  unit: "per_1k_tokens",
47
- updated_at: "2026-08-04",
48
- notes: "Prices reflect public list pricing per provider. cached_per_1k applies to prompt tokens served from prompt-cache (Anthropic) or input-cache (OpenAI) when supported. Update when providers change rates. Missing models fall back to cost=0 with estimated=true. 2026-06-07: removed decommissioned gemini-2.0-flash / gemini-2.0-flash-lite (Google returns 404) and replaced the low-tier lite model with gemini-2.5-flash-lite. 2026-06-08: bumped the default Anthropic model to claude-opus-4-8. Kept gemini-2.5-pro as the Gemini default (gemini-3.1-pro-preview measured ~2.2x the cost at $2/$12 per M \u2014 output-token dominated by ~1.5k thinking tokens \u2014 so not worth it for a 1-of-4 panel voice). 2026-06-09: corrected rates verified against live provider pricing pages \u2014 gemini-2.5-pro output $5->$10/M; gemini-2.5-flash $0.15/$0.60 -> $0.30/$2.50; gpt-5 $5/$15 -> $1.25/$10 (cached $0.125); grok-4-latest input $5->$3/M (legacy grok-4 tier). Anthropic opus/sonnet/haiku rates confirmed unchanged. Older/unused models (gpt-4o, o1, o3, grok-3) not all re-verified. 2026-07-02: added claude-fable-5 as the optional reasoning-upgrade model (used only for the lead reasoning seat when the operator bumps a heavy task). 2026-07-04: set claude-fable-5 to its real pay-as-you-go API price effective 2026-07-07 \u2014 $10/M input ($0.01/1k), $50/M output ($0.05/1k), cached at 10% of input ($0.001/1k). Dropped the estimated flag. Note: Fable 5 is cheaper than opus-4-8 on both input and output. 2026-07-09: Google retired gemini-2.5-pro AND gemini-3-pro-preview (both now 404 'no longer available'). Moved the Gemini default to gemini-3.1-pro-preview ($2/M in, $12/M out, cache $0.20/M \u2014 the newest working pro; note it's a preview and may need another bump) and added gemini-3.5-flash ($1.50/M in, $9/M out, cache $0.15/M \u2014 GA) to the low/cheap tier. Removed the dead gemini-2.5-pro rate. IMPORTANT: gemini-3.x are heavy thinking models \u2014 thoughtsTokenCount (billed as output) is now folded into completion_tokens in the adapter, so cost reflects reasoning tokens. 2026-07-13: bumped the default OpenAI model to gpt-5.5 ($5/M in, $30/M out, cached $0.50/M \u2014 verified live). Note gpt-5.5 is markedly pricier than gpt-5 ($1.25/$10): ~4x input, 3x output. Kept gpt-5 in the table for cost lookups on pinned installs. 2026-07-16: added gpt-5.6 at the Sol (flagship) tier \u2014 $5/M in, $30/M out, cached $0.50/M (cache-write $6.25/M not modeled). gpt-5.6 is the second premium voice for the max-reasoning co-reasoner (runs alongside claude-fable-5 when an OpenAI key is set). Terra/Luna tiers not added (unused). 2026-07-17: added Moonshot AI (Kimi) provider with kimi-k3, base URL https://api.moonshot.ai/v1. Confirmed real rates \u2014 $3.00/M input (cache miss, $0.003/1k), $15.00/M output ($0.015/1k), $0.30/M cache-hit input ($0.0003/1k); 1M-token context. Kimi K3 is reasoning-class (temperature must be 1; uses max_completion_tokens). 2026-07-24: added claude-opus-5 ($5/M in, $25/M out, cached $0.50/M -- 10% of input, matching this table's existing cache-discount ratio) and made it the default anthropic model (was claude-opus-4-8). Fable 5 remains the reasoning-upgrade/super-mode target, unchanged. 2026-08-04: added Alibaba Cloud Qwen provider (OpenAI-compatible, DashScope international endpoint https://dashscope-intl.aliyuncs.com/compatible-mode/v1) with default model qwen3.8-max -- confirmed business pricing $2.00/M input ($0.002/1k), $6.00/M output ($0.006/1k), cache estimated at 10% of input ($0.0002/1k, not independently confirmed). Also added qwen3.7-max as a fallback tier at $1.25/M in ($0.00125/1k) / $3.75/M out ($0.00375/1k). Note: the model string initially configured (qwen-v3.8 / qwen-v3.7) does not exist on DashScope and 404s -- live-probed the real key against qwen3.8-max, qwen3.7-max, qwen3-max, qwen-max, and qwen-plus, all of which work; corrected the default and pricing keys to qwen3.8-max/qwen3.7-max and fixed QWEN_MODEL in both .env files to match. Qwen's Max tier is a standard instruct model, not reasoning-class -- normal temperature/max_tokens handling."
47
+ updated_at: "2026-09-06",
48
+ notes: "Prices reflect public list pricing per provider. cached_per_1k applies to prompt tokens served from prompt-cache (Anthropic) or input-cache (OpenAI) when supported. Update when providers change rates. Missing models fall back to cost=0 with estimated=true. 2026-06-07: removed decommissioned gemini-2.0-flash / gemini-2.0-flash-lite (Google returns 404) and replaced the low-tier lite model with gemini-2.5-flash-lite. 2026-06-08: bumped the default Anthropic model to claude-opus-4-8. Kept gemini-2.5-pro as the Gemini default (gemini-3.1-pro-preview measured ~2.2x the cost at $2/$12 per M \u2014 output-token dominated by ~1.5k thinking tokens \u2014 so not worth it for a 1-of-4 panel voice). 2026-06-09: corrected rates verified against live provider pricing pages \u2014 gemini-2.5-pro output $5->$10/M; gemini-2.5-flash $0.15/$0.60 -> $0.30/$2.50; gpt-5 $5/$15 -> $1.25/$10 (cached $0.125); grok-4-latest input $5->$3/M (legacy grok-4 tier). Anthropic opus/sonnet/haiku rates confirmed unchanged. Older/unused models (gpt-4o, o1, o3, grok-3) not all re-verified. 2026-07-02: added claude-fable-5 as the optional reasoning-upgrade model (used only for the lead reasoning seat when the operator bumps a heavy task). 2026-07-04: set claude-fable-5 to its real pay-as-you-go API price effective 2026-07-07 \u2014 $10/M input ($0.01/1k), $50/M output ($0.05/1k), cached at 10% of input ($0.001/1k). Dropped the estimated flag. Note: Fable 5 is cheaper than opus-4-8 on both input and output. 2026-07-09: Google retired gemini-2.5-pro AND gemini-3-pro-preview (both now 404 'no longer available'). Moved the Gemini default to gemini-3.1-pro-preview ($2/M in, $12/M out, cache $0.20/M \u2014 the newest working pro; note it's a preview and may need another bump) and added gemini-3.5-flash ($1.50/M in, $9/M out, cache $0.15/M \u2014 GA) to the low/cheap tier. Removed the dead gemini-2.5-pro rate. IMPORTANT: gemini-3.x are heavy thinking models \u2014 thoughtsTokenCount (billed as output) is now folded into completion_tokens in the adapter, so cost reflects reasoning tokens. 2026-07-13: bumped the default OpenAI model to gpt-5.5 ($5/M in, $30/M out, cached $0.50/M \u2014 verified live). Note gpt-5.5 is markedly pricier than gpt-5 ($1.25/$10): ~4x input, 3x output. Kept gpt-5 in the table for cost lookups on pinned installs. 2026-07-16: added gpt-5.6 at the Sol (flagship) tier \u2014 $5/M in, $30/M out, cached $0.50/M (cache-write $6.25/M not modeled). gpt-5.6 is the second premium voice for the max-reasoning co-reasoner (runs alongside claude-fable-5 when an OpenAI key is set). Terra/Luna tiers not added (unused). 2026-07-17: added Moonshot AI (Kimi) provider with kimi-k3, base URL https://api.moonshot.ai/v1. Confirmed real rates \u2014 $3.00/M input (cache miss, $0.003/1k), $15.00/M output ($0.015/1k), $0.30/M cache-hit input ($0.0003/1k); 1M-token context. Kimi K3 is reasoning-class (temperature must be 1; uses max_completion_tokens). 2026-07-24: added claude-opus-5 ($5/M in, $25/M out, cached $0.50/M -- 10% of input, matching this table's existing cache-discount ratio) and made it the default anthropic model (was claude-opus-4-8). Fable 5 remains the reasoning-upgrade/super-mode target, unchanged. 2026-08-04: added Alibaba Cloud Qwen provider (OpenAI-compatible, DashScope international endpoint https://dashscope-intl.aliyuncs.com/compatible-mode/v1) with default model qwen3.8-max -- confirmed business pricing $2.00/M input ($0.002/1k), $6.00/M output ($0.006/1k), cache estimated at 10% of input ($0.0002/1k, not independently confirmed). Also added qwen3.7-max as a fallback tier at $1.25/M in ($0.00125/1k) / $3.75/M out ($0.00375/1k). Note: the model string initially configured (qwen-v3.8 / qwen-v3.7) does not exist on DashScope and 404s -- live-probed the real key against qwen3.8-max, qwen3.7-max, qwen3-max, qwen-max, and qwen-plus, all of which work; corrected the default and pricing keys to qwen3.8-max/qwen3.7-max and fixed QWEN_MODEL in both .env files to match. Qwen's Max tier is a standard instruct model, not reasoning-class -- normal temperature/max_tokens handling. 2026-09-06: added gpt-6-astra at published list rates ($10/$50 per Mtok, $1/Mtok cache read; the $12.50/Mtok cache-WRITE rate has no field in this schema and is not modelled). gemini-3.8-flash now carries Google's published paid-tier rates ($0.75/$3.75/$0.075 per Mtok). THESE DOUBLE ON 2027-01-01 ($1.50/$7.50/$0.15) and this schema has no effective-date support, so they must be updated by hand on that date or every Gemini cost will read half of actual. claude-fable-5-1 now carries published rates ($10/$50/$0.25 per Mtok). Note its cache-read rate is 4x cheaper than claude-fable-5's, so the two must not be assumed to track each other. No inferred rows remain. All three were previously absent, which silently recorded their cost as $0."
49
49
  },
50
50
  anthropic: {
51
51
  "claude-opus-4-5": {
@@ -97,6 +97,11 @@ var pricing_default = {
97
97
  prompt_per_1k: 8e-4,
98
98
  completion_per_1k: 4e-3,
99
99
  cached_per_1k: 8e-5
100
+ },
101
+ "claude-fable-5-1": {
102
+ prompt_per_1k: 0.01,
103
+ completion_per_1k: 0.05,
104
+ cached_per_1k: 25e-5
100
105
  }
101
106
  },
102
107
  openai: {
@@ -149,6 +154,11 @@ var pricing_default = {
149
154
  prompt_per_1k: 11e-4,
150
155
  completion_per_1k: 44e-4,
151
156
  cached_per_1k: 55e-5
157
+ },
158
+ "gpt-6-astra": {
159
+ prompt_per_1k: 0.01,
160
+ completion_per_1k: 0.05,
161
+ cached_per_1k: 1e-3
152
162
  }
153
163
  },
154
164
  xai: {
@@ -188,6 +198,11 @@ var pricing_default = {
188
198
  prompt_per_1k: 1e-4,
189
199
  completion_per_1k: 4e-4,
190
200
  cached_per_1k: 25e-6
201
+ },
202
+ "gemini-3.8-flash": {
203
+ prompt_per_1k: 75e-5,
204
+ completion_per_1k: 375e-5,
205
+ cached_per_1k: 75e-6
191
206
  }
192
207
  },
193
208
  mistral: {
@@ -423,7 +438,13 @@ var PROVIDER_CAPS = {
423
438
  family: "openai_chat",
424
439
  system_role: "inline",
425
440
  supports_temperature: "model",
426
- reasoning_prefixes: ["gpt-5", "o1", "o3", "o4"]
441
+ // gpt-6 added 2026-09-06: GPT-6 Astra rejects `max_tokens` outright
442
+ // ("Unsupported parameter ... use max_completion_tokens"), which is a 400,
443
+ // NOT a model-access failure — so the fallback chain correctly declines to
444
+ // fire and the provider silently drops out of the panel instead. Reasoning
445
+ // -class routing is what selects max_completion_tokens and omits
446
+ // temperature, so the prefix is the fix.
447
+ reasoning_prefixes: ["gpt-5", "gpt-6", "o1", "o3", "o4"]
427
448
  },
428
449
  xai: { family: "openai_chat", system_role: "inline", supports_temperature: true },
429
450
  mistral: { family: "openai_chat", system_role: "inline", supports_temperature: true },
@@ -1233,18 +1254,24 @@ async function sendOpenAICompatible(args) {
1233
1254
  // src/providers/registry.ts
1234
1255
  var DEFAULT_MODELS = {
1235
1256
  anthropic: "claude-opus-5",
1236
- // gpt-5.5 is not enabled on every OpenAI account/project (some are still
1237
- // capped at gpt-5) — gpt-5 is the safer, more broadly available default
1238
- // until a user/org explicitly opts into 5.5 via `crosscheck models set`.
1239
- openai: "gpt-5",
1257
+ openai: "gpt-5.6-sol",
1240
1258
  xai: "grok-4-latest",
1241
1259
  mistral: "mistral-large-latest",
1242
1260
  groq: "llama-3.3-70b-versatile",
1243
1261
  deepseek: "deepseek-chat",
1244
- gemini: "gemini-3.1-pro-preview",
1262
+ gemini: "gemini-3.8-flash",
1245
1263
  kimi: "kimi-k3",
1246
1264
  qwen: "qwen3.8-max"
1247
1265
  };
1266
+ var DEFAULT_FALLBACKS = {
1267
+ // gpt-5.6 requires a billing-enabled account and is excluded from the free
1268
+ // tier, so gpt-5 remains the broadly-available floor. One hop, not a
1269
+ // ladder — an intermediate 5.5 step would just be another model to reason
1270
+ // about.
1271
+ openai: ["gpt-5"],
1272
+ // 3.8 Flash is recent enough that some projects won't have it yet.
1273
+ gemini: ["gemini-3.1-pro-preview"]
1274
+ };
1248
1275
  var MODEL_ENV_VARS = {
1249
1276
  anthropic: "ANTHROPIC_MODEL",
1250
1277
  openai: "OPENAI_MODEL",
@@ -1262,7 +1289,11 @@ function parseFallbackModels(raw) {
1262
1289
  }
1263
1290
  function fallbackModelsFor(env, provider) {
1264
1291
  const envVar = MODEL_ENV_VARS[provider];
1265
- return envVar ? parseFallbackModels(env[`${envVar}_FALLBACKS`]) : [];
1292
+ const fromEnv = envVar ? parseFallbackModels(env[`${envVar}_FALLBACKS`]) : [];
1293
+ if (fromEnv.length > 0) return fromEnv;
1294
+ const pinned = envVar ? env[envVar] : void 0;
1295
+ if (pinned && pinned !== DEFAULT_MODELS[provider]) return [];
1296
+ return DEFAULT_FALLBACKS[provider] ?? [];
1266
1297
  }
1267
1298
  function buildProviders(opts) {
1268
1299
  const out = {};
@@ -1353,7 +1384,7 @@ var import_zod = require("zod");
1353
1384
 
1354
1385
  // src/server-meta.ts
1355
1386
  var SERVER_NAME = "crosscheck-agent";
1356
- var SERVER_VERSION = true ? "0.2.18" : "0.0.0-dev";
1387
+ var SERVER_VERSION = true ? "0.2.20" : "0.0.0-dev";
1357
1388
 
1358
1389
  // src/tools/audit.ts
1359
1390
  var import_node_fs4 = require("fs");
@@ -2923,7 +2954,7 @@ function numberOrNull(v) {
2923
2954
  var import_node_perf_hooks = require("perf_hooks");
2924
2955
 
2925
2956
  // src/core/co-reason.ts
2926
- var CO_REASON_MODEL = "gpt-5.6";
2957
+ var CO_REASON_MODEL = "gpt-5.6-sol";
2927
2958
  var CO_REASON_PROVIDER = "openai";
2928
2959
  var CO_REASON_LABEL = "GPT-5.6";
2929
2960
  function pickCoReasoner(providers, upgradeRequested) {
@@ -4281,8 +4312,10 @@ var SUPER_MODELS = {
4281
4312
  // on it succeeded as recently as 2026-08-30 — so it is an unlisted alias
4282
4313
  // rather than a dead id.
4283
4314
  xai: [DEFAULT_MODELS["xai"]],
4284
- // 3.8 Flash verified present; the previous default as fallback.
4285
- gemini: ["gemini-3.8-flash", DEFAULT_MODELS["gemini"]],
4315
+ // 3.8 Flash is now BOTH the everyday default and the super pick for Gemini,
4316
+ // so this can no longer borrow DEFAULT_MODELS as its fallback — that would
4317
+ // repeat the same model and retry one that just failed. Named explicitly.
4318
+ gemini: ["gemini-3.8-flash", "gemini-3.1-pro-preview"],
4286
4319
  kimi: [DEFAULT_MODELS["kimi"]],
4287
4320
  qwen: [DEFAULT_MODELS["qwen"]]
4288
4321
  };
@@ -11753,7 +11786,7 @@ var CHECK_INTERVAL_SECONDS = 3 * 24 * 60 * 60;
11753
11786
  var DEFAULT_PACKAGE = "crosscheck-cli";
11754
11787
  var FETCH_TIMEOUT_MS = 3e3;
11755
11788
  function engineVersion() {
11756
- return true ? "0.2.18" : "0.0.0-dev";
11789
+ return true ? "0.2.20" : "0.0.0-dev";
11757
11790
  }
11758
11791
  function defaultUpdateCachePath() {
11759
11792
  const base = process.env["CROSSCHECK_DATA_DIR"] || import_node_path12.default.join(import_node_os2.default.homedir() || import_node_os2.default.tmpdir(), ".crosscheck");