zelari-code 1.38.0 → 1.41.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.
@@ -10,7 +10,7 @@
10
10
  */
11
11
  import { PROVIDERS, resolveApiKey, getKeyStorePath, getOAuthToken, isOAuthProvider, setApiKey, maskKey, } from './keyStore.js';
12
12
  import { getProviderConfig, getProviderConfigPath, setActiveProviderId, setModelForProvider, setThinkingForProvider, setCustomEndpoint, clearCustomEndpoint, getCustomEndpoint, } from './providerConfig.js';
13
- import { getCachedModels, discoverModelsForProvider, } from './modelDiscovery.js';
13
+ import { getCachedModels, getStaticFallbackModels, discoverModelsForProvider, } from './modelDiscovery.js';
14
14
  import { getCurrentVersion } from './updater.js';
15
15
  import { parseThinkingSpec, isValidThinkingInput, thinkingCapabilityFor, } from './thinking.js';
16
16
  /** True when argv requests --print-config. */
@@ -195,6 +195,12 @@ export function buildDesktopConfigSnapshot() {
195
195
  const providers = PROVIDERS.map((p) => {
196
196
  const cached = getCachedModels(p.id);
197
197
  const models = cached?.models.map((m) => m.id) ?? [];
198
+ if (models.length === 0) {
199
+ for (const m of getStaticFallbackModels(p.id)) {
200
+ if (!models.includes(m.id))
201
+ models.push(m.id);
202
+ }
203
+ }
198
204
  const defaultModel = config.modelByProvider[p.id] ?? '';
199
205
  if (defaultModel && !models.includes(defaultModel)) {
200
206
  models.unshift(defaultModel);
@@ -218,7 +224,7 @@ export function buildDesktopConfigSnapshot() {
218
224
  hasRefreshToken: Boolean(stored?.refreshToken),
219
225
  oauthSupported: isOAuthProvider(p.id),
220
226
  thinking: config.thinkingByProvider[p.id] ?? 'auto',
221
- thinkingCapability: thinkingCapabilityFor(p.id),
227
+ thinkingCapability: thinkingCapabilityFor(p.id, defaultModel),
222
228
  };
223
229
  });
224
230
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"desktopConfig.js","sourceRoot":"","sources":["../../src/cli/desktopConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"desktopConfig.js","sourceRoot":"","sources":["../../src/cli/desktopConfig.ts"],"names":[],"mappings":"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"}
@@ -1620,9 +1620,151 @@ var init_keyStore = __esm({
1620
1620
  }
1621
1621
  });
1622
1622
 
1623
+ // src/cli/thinkingCapability.ts
1624
+ function thinkingCapabilityFor(id, model) {
1625
+ const base = PROVIDER_THINKING_CAPABILITY[id] ?? {};
1626
+ const efforts = effortLevelsFor(id, model);
1627
+ const budget = supportsBudget(id, model);
1628
+ return {
1629
+ ...base,
1630
+ effort: efforts.length > 0 || Boolean(base.effort),
1631
+ budget,
1632
+ efforts: efforts.length > 0 ? efforts : void 0
1633
+ };
1634
+ }
1635
+ function effortLevelsFor(id, model) {
1636
+ const m = (model ?? "").trim();
1637
+ switch (id) {
1638
+ case "grok":
1639
+ case "openai-compatible":
1640
+ case "custom":
1641
+ if (grokHasXhigh(m)) return [...BASE_EFFORTS, "xhigh"];
1642
+ return [...BASE_EFFORTS];
1643
+ case "chatgpt":
1644
+ if (gptHasMax(m)) return [...BASE_EFFORTS, "xhigh", "max"];
1645
+ if (gptHasXhigh(m)) return [...BASE_EFFORTS, "xhigh"];
1646
+ return [...BASE_EFFORTS];
1647
+ case "deepseek":
1648
+ return ["high", "max"];
1649
+ case "minimax":
1650
+ return [...BASE_EFFORTS];
1651
+ case "glm":
1652
+ if (glmHasEffortScale(m)) return ["low", "high", "max"];
1653
+ return [];
1654
+ case "anthropic":
1655
+ if (claudeHasXhigh(m)) return ["high", "xhigh", "max"];
1656
+ if (claudeHasMax(m)) return ["high", "max"];
1657
+ return [];
1658
+ default:
1659
+ return [];
1660
+ }
1661
+ }
1662
+ function supportsBudget(id, model) {
1663
+ if (id === "anthropic") return true;
1664
+ if (id === "glm") return !glmHasEffortScale(model);
1665
+ return Boolean(PROVIDER_THINKING_CAPABILITY[id]?.budget);
1666
+ }
1667
+ function grokHasXhigh(model) {
1668
+ const v = parseDottedVersion(model, /grok[-_]?(\d+)(?:[.-](\d+))?/i);
1669
+ if (!v) return false;
1670
+ return v.major > 4 || v.major === 4 && v.minor >= 6;
1671
+ }
1672
+ function gptHasXhigh(model) {
1673
+ const v = parseDottedVersion(model, /gpt[-_]?(\d+)(?:[.-](\d+))?/i);
1674
+ if (!v) return false;
1675
+ return v.major > 5 || v.major === 5 && v.minor >= 4;
1676
+ }
1677
+ function gptHasMax(model) {
1678
+ const v = parseDottedVersion(model, /gpt[-_]?(\d+)(?:[.-](\d+))?/i);
1679
+ if (!v) return false;
1680
+ return v.major > 5 || v.major === 5 && v.minor >= 6;
1681
+ }
1682
+ function claudeHasMax(model) {
1683
+ const v = parseClaudeVersion(model);
1684
+ if (!v) return false;
1685
+ return v.major > 4 || v.major === 4 && v.minor >= 6;
1686
+ }
1687
+ function claudeHasXhigh(model) {
1688
+ const v = parseClaudeVersion(model);
1689
+ if (!v) return false;
1690
+ if (v.major >= 5) return true;
1691
+ return v.major === 4 && v.minor >= 7;
1692
+ }
1693
+ function glmHasEffortScale(model) {
1694
+ const v = parseDottedVersion(model ?? "", /glm[-_]?(\d+)(?:[.-](\d+))?/i);
1695
+ if (!v) return false;
1696
+ return v.major >= 5;
1697
+ }
1698
+ function parseDottedVersion(model, re) {
1699
+ const m = re.exec(model);
1700
+ if (!m) return null;
1701
+ return {
1702
+ major: Number.parseInt(m[1], 10),
1703
+ minor: m[2] ? Number.parseInt(m[2], 10) : 0
1704
+ };
1705
+ }
1706
+ function parseClaudeVersion(model) {
1707
+ const m = /claude-(?:sonnet|opus|haiku)[-_]?(\d+)(?:[.-](\d+))?/i.exec(model);
1708
+ if (!m) return null;
1709
+ return {
1710
+ major: Number.parseInt(m[1], 10),
1711
+ minor: m[2] ? Number.parseInt(m[2], 10) : 0
1712
+ };
1713
+ }
1714
+ var THINKING_EFFORTS, BASE_EFFORTS, PROVIDER_THINKING_CAPABILITY;
1715
+ var init_thinkingCapability = __esm({
1716
+ "src/cli/thinkingCapability.ts"() {
1717
+ "use strict";
1718
+ THINKING_EFFORTS = [
1719
+ "low",
1720
+ "medium",
1721
+ "high",
1722
+ "xhigh",
1723
+ "max"
1724
+ ];
1725
+ BASE_EFFORTS = ["low", "medium", "high"];
1726
+ PROVIDER_THINKING_CAPABILITY = {
1727
+ "openai-compatible": { effort: true },
1728
+ grok: { effort: true },
1729
+ chatgpt: { effort: true },
1730
+ anthropic: { budget: true },
1731
+ glm: { budget: true },
1732
+ deepseek: { effort: true },
1733
+ minimax: { effort: true },
1734
+ custom: { effort: true }
1735
+ };
1736
+ }
1737
+ });
1738
+
1623
1739
  // src/cli/thinking.ts
1624
- function thinkingCapabilityFor(id) {
1625
- return PROVIDER_THINKING_CAPABILITY[id] ?? {};
1740
+ function clampEffort(id, model, requested) {
1741
+ const native = effortLevelsFor(id, model);
1742
+ if (native.includes(requested)) {
1743
+ return { effort: requested, clamped: false };
1744
+ }
1745
+ if (native.length === 0) {
1746
+ return {
1747
+ effort: requested,
1748
+ clamped: true,
1749
+ note: `thinking '${requested}' is not supported for provider "${id}"`
1750
+ };
1751
+ }
1752
+ const want = EFFORT_RANK[requested];
1753
+ let best = native[0];
1754
+ let bestDist = Math.abs(EFFORT_RANK[best] - want);
1755
+ for (const level of native) {
1756
+ const dist = Math.abs(EFFORT_RANK[level] - want);
1757
+ if (dist < bestDist || dist === bestDist && EFFORT_RANK[level] > EFFORT_RANK[best]) {
1758
+ best = level;
1759
+ bestDist = dist;
1760
+ }
1761
+ }
1762
+ const label = model ? `${id}/${model}` : id;
1763
+ return {
1764
+ effort: best,
1765
+ clamped: true,
1766
+ note: `'${requested}' is not native on ${label} \u2014 using '${best}'`
1767
+ };
1626
1768
  }
1627
1769
  function stringifyThinkingSpec(spec) {
1628
1770
  if (spec === "auto") return "auto";
@@ -1634,7 +1776,9 @@ function parseThinkingSpec(raw) {
1634
1776
  const s = (raw ?? "").trim().toLowerCase();
1635
1777
  if (!s || s === "auto") return "auto";
1636
1778
  if (s === "off") return { kind: "off" };
1637
- if (s === "low" || s === "medium" || s === "high") return { kind: "effort", effort: s };
1779
+ if (THINKING_EFFORTS.includes(s)) {
1780
+ return { kind: "effort", effort: s };
1781
+ }
1638
1782
  const m = /^budget:(\d+)$/.exec(s);
1639
1783
  if (m) {
1640
1784
  const n = Number.parseInt(m[1], 10);
@@ -1644,15 +1788,19 @@ function parseThinkingSpec(raw) {
1644
1788
  }
1645
1789
  function isValidThinkingInput(raw) {
1646
1790
  const s = raw.trim().toLowerCase();
1647
- if (s === "auto" || s === "off" || s === "low" || s === "medium" || s === "high") return true;
1791
+ if (s === "auto" || s === "off") return true;
1792
+ if (THINKING_EFFORTS.includes(s)) return true;
1648
1793
  return /^budget:\d+$/.test(s) && Number.parseInt(s.slice(7), 10) > 0;
1649
1794
  }
1650
1795
  function degrade(note) {
1651
1796
  return { patch: {}, degraded: true, note };
1652
1797
  }
1653
- function translateOpenAiCompatibleThinking(providerId, spec) {
1798
+ function withClampNote(patch, clamped, note) {
1799
+ return { patch, degraded: false, note: clamped ? note : void 0 };
1800
+ }
1801
+ function translateOpenAiCompatibleThinking(providerId, spec, model) {
1654
1802
  if (spec === "auto") return { patch: {}, degraded: false };
1655
- const cap3 = thinkingCapabilityFor(providerId);
1803
+ const cap3 = thinkingCapabilityFor(providerId, model);
1656
1804
  switch (spec.kind) {
1657
1805
  case "off":
1658
1806
  if (providerId === "deepseek" || providerId === "glm") {
@@ -1660,20 +1808,40 @@ function translateOpenAiCompatibleThinking(providerId, spec) {
1660
1808
  }
1661
1809
  if (cap3.effort) return { patch: { reasoning_effort: "low" }, degraded: false };
1662
1810
  return degrade(`thinking 'off' is not supported for provider "${providerId}"`);
1663
- case "effort":
1664
- if (!cap3.effort) {
1811
+ case "effort": {
1812
+ if (!cap3.effort && !cap3.efforts?.length) {
1665
1813
  return degrade(`thinking 'effort' is not supported for provider "${providerId}"`);
1666
1814
  }
1815
+ const resolved = clampEffort(providerId, model, spec.effort);
1667
1816
  if (providerId === "deepseek") {
1668
- return {
1669
- patch: {
1817
+ return withClampNote(
1818
+ {
1670
1819
  thinking: { type: "enabled" },
1671
- reasoning_effort: spec.effort === "high" ? "max" : "high"
1820
+ reasoning_effort: resolved.effort === "max" ? "max" : "high"
1672
1821
  },
1673
- degraded: false
1674
- };
1822
+ resolved.clamped,
1823
+ resolved.note
1824
+ );
1675
1825
  }
1676
- return { patch: { reasoning_effort: spec.effort }, degraded: false };
1826
+ if (providerId === "glm") {
1827
+ if (!glmHasEffortScale(model)) {
1828
+ return degrade(`thinking 'effort' is not supported for GLM ${model || "4.x"} \u2014 use budget:N`);
1829
+ }
1830
+ return withClampNote(
1831
+ {
1832
+ thinking: { type: "enabled" },
1833
+ reasoning_effort: resolved.effort
1834
+ },
1835
+ resolved.clamped,
1836
+ resolved.note
1837
+ );
1838
+ }
1839
+ return withClampNote(
1840
+ { reasoning_effort: resolved.effort },
1841
+ resolved.clamped,
1842
+ resolved.note
1843
+ );
1844
+ }
1677
1845
  case "budget":
1678
1846
  if (!cap3.budget) {
1679
1847
  return degrade(`thinking 'budget' is not supported for provider "${providerId}"`);
@@ -1684,18 +1852,24 @@ function translateOpenAiCompatibleThinking(providerId, spec) {
1684
1852
  };
1685
1853
  }
1686
1854
  }
1687
- function translateResponsesThinking(spec) {
1855
+ function translateResponsesThinking(spec, model) {
1688
1856
  if (spec === "auto") return { patch: {}, degraded: false };
1689
1857
  switch (spec.kind) {
1690
1858
  case "off":
1691
1859
  return { patch: { reasoning: { effort: "minimal" } }, degraded: false };
1692
- case "effort":
1693
- return { patch: { reasoning: { effort: spec.effort } }, degraded: false };
1860
+ case "effort": {
1861
+ const resolved = clampEffort("chatgpt", model, spec.effort);
1862
+ return withClampNote(
1863
+ { reasoning: { effort: resolved.effort } },
1864
+ resolved.clamped,
1865
+ resolved.note
1866
+ );
1867
+ }
1694
1868
  case "budget":
1695
- return degrade('thinking "budget" is not supported for chatgpt \u2014 use low/medium/high');
1869
+ return degrade('thinking "budget" is not supported for chatgpt \u2014 use low/medium/high/xhigh/max');
1696
1870
  }
1697
1871
  }
1698
- function translateAnthropicThinking(spec) {
1872
+ function translateAnthropicThinking(spec, model) {
1699
1873
  if (spec === "auto") return { patch: {}, degraded: false };
1700
1874
  switch (spec.kind) {
1701
1875
  case "off":
@@ -1705,23 +1879,31 @@ function translateAnthropicThinking(spec) {
1705
1879
  patch: { thinking: { type: "enabled", budget_tokens: spec.budgetTokens } },
1706
1880
  degraded: false
1707
1881
  };
1708
- case "effort":
1709
- return degrade('thinking "effort" is not supported for anthropic \u2014 use budget:N');
1882
+ case "effort": {
1883
+ const levels = effortLevelsFor("anthropic", model);
1884
+ if (levels.length === 0) {
1885
+ return degrade('thinking "effort" is not supported for this Claude model \u2014 use budget:N');
1886
+ }
1887
+ const resolved = clampEffort("anthropic", model, spec.effort);
1888
+ return withClampNote(
1889
+ { output_config: { effort: resolved.effort } },
1890
+ resolved.clamped,
1891
+ resolved.note
1892
+ );
1893
+ }
1710
1894
  }
1711
1895
  }
1712
- var PROVIDER_THINKING_CAPABILITY;
1896
+ var EFFORT_RANK;
1713
1897
  var init_thinking = __esm({
1714
1898
  "src/cli/thinking.ts"() {
1715
1899
  "use strict";
1716
- PROVIDER_THINKING_CAPABILITY = {
1717
- "openai-compatible": { effort: true },
1718
- "grok": { effort: true },
1719
- "chatgpt": { effort: true },
1720
- "anthropic": { budget: true },
1721
- "glm": { budget: true },
1722
- "deepseek": { effort: true },
1723
- "minimax": { effort: true },
1724
- "custom": { effort: true }
1900
+ init_thinkingCapability();
1901
+ EFFORT_RANK = {
1902
+ low: 1,
1903
+ medium: 2,
1904
+ high: 3,
1905
+ xhigh: 4,
1906
+ max: 5
1725
1907
  };
1726
1908
  }
1727
1909
  });
@@ -1914,14 +2096,14 @@ var init_providerConfig = __esm({
1914
2096
  DEFAULTS = {
1915
2097
  activeProviderId: "openai-compatible",
1916
2098
  modelByProvider: {
1917
- // grok-4.5: flagship; reasoning_effort defaults to "high" on the xAI API
1918
- "openai-compatible": "grok-4.5",
2099
+ // grok-4.6: flagship; native reasoning_effort includes xhigh
2100
+ "openai-compatible": "grok-4.6",
1919
2101
  "minimax": "MiniMax-M2.5",
1920
2102
  "glm": "glm-4.6",
1921
- "grok": "grok-4.5",
2103
+ "grok": "grok-4.6",
1922
2104
  "deepseek": "deepseek-v4-pro",
1923
- "chatgpt": "gpt-5.2-codex",
1924
- "anthropic": "claude-sonnet-4-5",
2105
+ "chatgpt": "gpt-5.6-codex",
2106
+ "anthropic": "claude-sonnet-4-6",
1925
2107
  "custom": ""
1926
2108
  },
1927
2109
  thinkingByProvider: {
@@ -1948,6 +2130,7 @@ __export(modelDiscovery_exports, {
1948
2130
  getCachedModels: () => getCachedModels,
1949
2131
  getDiscoveredModelIds: () => getDiscoveredModelIds,
1950
2132
  getModelsFilePath: () => getModelsFilePath,
2133
+ getStaticFallbackModels: () => getStaticFallbackModels,
1951
2134
  isModelsCacheStale: () => isModelsCacheStale,
1952
2135
  loadModelsRegistry: () => loadModelsRegistry,
1953
2136
  pickDefaultModel: () => pickDefaultModel
@@ -1955,6 +2138,9 @@ __export(modelDiscovery_exports, {
1955
2138
  import { promises as fs3, existsSync as existsSync4, readFileSync as readFileSync4 } from "node:fs";
1956
2139
  import { homedir } from "node:os";
1957
2140
  import path5 from "node:path";
2141
+ function getStaticFallbackModels(provider) {
2142
+ return STATIC_FALLBACKS[provider] ? [...STATIC_FALLBACKS[provider]] : [];
2143
+ }
1958
2144
  async function resolveDiscoveryBaseUrl(provider, options) {
1959
2145
  if (options.baseUrl) return options.baseUrl;
1960
2146
  const { getCustomEndpoint: getCustomEndpoint2 } = await Promise.resolve().then(() => (init_providerConfig(), providerConfig_exports));
@@ -2090,10 +2276,6 @@ async function discoverModelsForProvider(provider, options = {}) {
2090
2276
  const headers2 = await resolveDiscoveryHeaders(provider, authToken);
2091
2277
  response = await fetchImpl(url2, { method: "GET", headers: headers2 });
2092
2278
  } catch (err) {
2093
- const fallback = STATIC_FALLBACKS[provider];
2094
- if (fallback) {
2095
- return cacheFallback(provider, baseUrl, fallback, options, `network: ${err instanceof Error ? err.message : String(err)}`);
2096
- }
2097
2279
  throw new ModelDiscoveryError(
2098
2280
  `Network error contacting ${url2}: ${err instanceof Error ? err.message : String(err)}`,
2099
2281
  "network_error"
@@ -2101,10 +2283,6 @@ async function discoverModelsForProvider(provider, options = {}) {
2101
2283
  }
2102
2284
  if (!response.ok) {
2103
2285
  const body = await response.text().catch(() => "");
2104
- const fallback = STATIC_FALLBACKS[provider];
2105
- if (fallback) {
2106
- return cacheFallback(provider, baseUrl, fallback, options, `HTTP ${response.status}: ${body.slice(0, 80)}`);
2107
- }
2108
2286
  throw new ModelDiscoveryError(
2109
2287
  `HTTP ${response.status} from ${url2}: ${body.slice(0, 200)}`,
2110
2288
  `http_${response.status}`
@@ -2114,10 +2292,6 @@ async function discoverModelsForProvider(provider, options = {}) {
2114
2292
  try {
2115
2293
  json2 = await response.json();
2116
2294
  } catch (err) {
2117
- const fallback = STATIC_FALLBACKS[provider];
2118
- if (fallback) {
2119
- return cacheFallback(provider, baseUrl, fallback, options, "invalid_json");
2120
- }
2121
2295
  throw new ModelDiscoveryError(
2122
2296
  `Invalid JSON from ${url2}: ${err instanceof Error ? err.message : String(err)}`,
2123
2297
  "invalid_json"
@@ -2125,10 +2299,6 @@ async function discoverModelsForProvider(provider, options = {}) {
2125
2299
  }
2126
2300
  const models = provider === "anthropic" ? parseAnthropicModelsResponse(json2) : parseOpenAIModelsResponse(json2, baseUrl);
2127
2301
  if (models.length === 0) {
2128
- const fallback = STATIC_FALLBACKS[provider];
2129
- if (fallback) {
2130
- return cacheFallback(provider, baseUrl, fallback, options, "empty_response");
2131
- }
2132
2302
  throw new ModelDiscoveryError(
2133
2303
  `Provider ${provider} returned 0 models \u2014 refusing to overwrite cache`,
2134
2304
  "empty_response"
@@ -2148,22 +2318,6 @@ async function discoverModelsForProvider(provider, options = {}) {
2148
2318
  }
2149
2319
  return entry;
2150
2320
  }
2151
- async function cacheFallback(provider, baseUrl, models, options, lastError) {
2152
- const entry = {
2153
- models,
2154
- fetchedAt: Date.now(),
2155
- baseUrl,
2156
- lastError
2157
- };
2158
- if (!options.skipCacheWrite) {
2159
- const file2 = getModelsFilePath();
2160
- await readModifyWriteRegistry((current) => {
2161
- current[provider] = entry;
2162
- return current;
2163
- }, file2);
2164
- }
2165
- return entry;
2166
- }
2167
2321
  function discoverModelsInBackground(provider, options = {}) {
2168
2322
  discoverModelsForProvider(provider, options).catch((err) => {
2169
2323
  if (err instanceof ModelDiscoveryError && options.onError) {
@@ -2201,6 +2355,9 @@ var init_modelDiscovery = __esm({
2201
2355
  };
2202
2356
  STATIC_FALLBACKS = {
2203
2357
  chatgpt: [
2358
+ { id: "gpt-5.6-codex", displayName: "GPT-5.6 Codex" },
2359
+ { id: "gpt-5.6", displayName: "GPT-5.6" },
2360
+ { id: "gpt-5.4", displayName: "GPT-5.4" },
2204
2361
  { id: "gpt-5.2-codex", displayName: "GPT-5.2 Codex" },
2205
2362
  { id: "gpt-5.2", displayName: "GPT-5.2" },
2206
2363
  { id: "gpt-5.1-codex", displayName: "GPT-5.1 Codex" },
@@ -2209,9 +2366,19 @@ var init_modelDiscovery = __esm({
2209
2366
  { id: "o4-mini", displayName: "o4-mini" }
2210
2367
  ],
2211
2368
  anthropic: [
2369
+ { id: "claude-opus-4-7", displayName: "Claude Opus 4.7" },
2212
2370
  { id: "claude-opus-4-6", displayName: "Claude Opus 4.6" },
2371
+ { id: "claude-sonnet-4-6", displayName: "Claude Sonnet 4.6" },
2213
2372
  { id: "claude-sonnet-4-5", displayName: "Claude Sonnet 4.5" },
2214
2373
  { id: "claude-haiku-4-5", displayName: "Claude Haiku 4.5" }
2374
+ ],
2375
+ grok: [
2376
+ { id: "grok-4.6", displayName: "Grok 4.6" },
2377
+ { id: "grok-4.5", displayName: "Grok 4.5" }
2378
+ ],
2379
+ glm: [
2380
+ { id: "glm-5.3", displayName: "GLM-5.3" },
2381
+ { id: "glm-4.6", displayName: "GLM-4.6" }
2215
2382
  ]
2216
2383
  };
2217
2384
  writeChain = Promise.resolve();
@@ -28257,7 +28424,7 @@ function openaiCompatibleProvider(config2) {
28257
28424
  if (thinking.thinking) body.thinking = { type: thinking.thinking };
28258
28425
  if (thinking.reasoningEffort) body.reasoning_effort = thinking.reasoningEffort;
28259
28426
  } else if (thinkingSpec !== "auto") {
28260
- const t = translateOpenAiCompatibleThinking(config2.providerId, thinkingSpec);
28427
+ const t = translateOpenAiCompatibleThinking(config2.providerId, thinkingSpec, config2.model);
28261
28428
  if (t.degraded) {
28262
28429
  console.warn(`[thinking] ${t.note ?? "unsupported"} \u2014 falling back to provider default.`);
28263
28430
  } else {
@@ -28791,7 +28958,7 @@ function anthropicMessagesProvider(config2) {
28791
28958
  }
28792
28959
  const thinkingSpec = config2.thinking ?? "auto";
28793
28960
  if (thinkingSpec !== "auto") {
28794
- const t = translateAnthropicThinking(thinkingSpec);
28961
+ const t = translateAnthropicThinking(thinkingSpec, config2.model);
28795
28962
  if (t.degraded) console.warn(`[thinking] ${t.note ?? "unsupported"} \u2014 falling back to provider default.`);
28796
28963
  else Object.assign(body, t.patch);
28797
28964
  }
@@ -29003,7 +29170,7 @@ function chatgptResponsesProvider(config2) {
29003
29170
  }
29004
29171
  const thinkingSpec = config2.thinking ?? "auto";
29005
29172
  if (thinkingSpec !== "auto") {
29006
- const t = translateResponsesThinking(thinkingSpec);
29173
+ const t = translateResponsesThinking(thinkingSpec, config2.model);
29007
29174
  if (t.degraded) console.warn(`[thinking] ${t.note ?? "unsupported"} \u2014 falling back to provider default.`);
29008
29175
  else Object.assign(body, t.patch);
29009
29176
  }
@@ -42783,9 +42950,9 @@ var init_oauthDesktop = __esm({
42783
42950
  init_chatgptOAuth();
42784
42951
  init_anthropicOAuth();
42785
42952
  DEFAULT_MODELS = {
42786
- grok: "grok-4.5",
42787
- chatgpt: "gpt-5.2-codex",
42788
- anthropic: "claude-sonnet-4-5"
42953
+ grok: "grok-4.6",
42954
+ chatgpt: "gpt-5.6-codex",
42955
+ anthropic: "claude-sonnet-4-6"
42789
42956
  };
42790
42957
  }
42791
42958
  });
@@ -43045,12 +43212,12 @@ function handleModelSet(ctx, model) {
43045
43212
  }
43046
43213
  function handleEffortShow(ctx) {
43047
43214
  const id = ctx.activeProviderSpec.id;
43048
- const cap3 = thinkingCapabilityFor(id);
43215
+ const cap3 = thinkingCapabilityFor(id, ctx.activeModel);
43049
43216
  const current = stringifyThinkingSpec(getThinkingForProvider(id));
43050
43217
  const options = [
43051
43218
  "auto",
43052
43219
  "off",
43053
- ...cap3.effort ? ["low", "medium", "high"] : [],
43220
+ ...cap3.efforts ?? (cap3.effort ? ["low", "medium", "high"] : []),
43054
43221
  ...cap3.budget ? ["budget:<tokens>"] : []
43055
43222
  ];
43056
43223
  appendSystem(
@@ -43063,7 +43230,7 @@ function handleEffortSet(ctx, raw) {
43063
43230
  if (!isValidThinkingInput(raw)) {
43064
43231
  appendSystem(
43065
43232
  ctx.setMessages,
43066
- `[effort] invalid spec "${raw}" \u2014 use auto | off | low | medium | high | budget:<tokens>`
43233
+ `[effort] invalid spec "${raw}" \u2014 use auto | off | low | medium | high | xhigh | max | budget:<tokens>`
43067
43234
  );
43068
43235
  return;
43069
43236
  }
@@ -43624,6 +43791,11 @@ function buildDesktopConfigSnapshot() {
43624
43791
  const providers = PROVIDERS.map((p3) => {
43625
43792
  const cached2 = getCachedModels(p3.id);
43626
43793
  const models = cached2?.models.map((m) => m.id) ?? [];
43794
+ if (models.length === 0) {
43795
+ for (const m of getStaticFallbackModels(p3.id)) {
43796
+ if (!models.includes(m.id)) models.push(m.id);
43797
+ }
43798
+ }
43627
43799
  const defaultModel = config2.modelByProvider[p3.id] ?? "";
43628
43800
  if (defaultModel && !models.includes(defaultModel)) {
43629
43801
  models.unshift(defaultModel);
@@ -43647,7 +43819,7 @@ function buildDesktopConfigSnapshot() {
43647
43819
  hasRefreshToken: Boolean(stored?.refreshToken),
43648
43820
  oauthSupported: isOAuthProvider(p3.id),
43649
43821
  thinking: config2.thinkingByProvider[p3.id] ?? "auto",
43650
- thinkingCapability: thinkingCapabilityFor(p3.id)
43822
+ thinkingCapability: thinkingCapabilityFor(p3.id, defaultModel)
43651
43823
  };
43652
43824
  });
43653
43825
  return {