@cherrystudio/provider-registry 0.1.1 → 0.1.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/README.md CHANGED
@@ -145,6 +145,18 @@ The three `data/*.json` files are generated. Edit `src/creators/` or `src/provid
145
145
  and run the generator; never hand-edit catalog data. Contributor instructions and
146
146
  architecture documentation live in this package's source repository.
147
147
 
148
+ To refresh one canonical model and its provider offers while retaining unrelated
149
+ catalog rows, use `--model` (repeat it for multiple models). This also regenerates
150
+ the source-owned provider configuration and capability indexes:
151
+
152
+ ```bash
153
+ pnpm --filter @cherrystudio/provider-registry exec tsx scripts/generate-catalog.ts --write --model gemini-4-argon
154
+ pnpm exec oxfmt --write packages/provider-registry/data/*.json packages/provider-registry/src/patterns/*.gen.ts
155
+ ```
156
+
157
+ The selected model must exist in the newly generated catalog; unknown IDs fail
158
+ without writing artifacts. Omit `--model` for the usual full upstream refresh.
159
+
148
160
  From the monorepo root:
149
161
 
150
162
  ```bash
package/data/models.json CHANGED
@@ -9697,6 +9697,68 @@
9697
9697
  "wireDialect": "effort"
9698
9698
  }
9699
9699
  },
9700
+ {
9701
+ "capabilities": [
9702
+ "reasoning",
9703
+ "function-call",
9704
+ "image-recognition",
9705
+ "audio-recognition",
9706
+ "video-recognition",
9707
+ "structured-output",
9708
+ "file-input"
9709
+ ],
9710
+ "contextWindow": 1048576,
9711
+ "family": "gemini-4",
9712
+ "id": "gemini-4-argon",
9713
+ "inputModalities": ["text", "image", "audio", "video"],
9714
+ "maxOutputTokens": 1048576,
9715
+ "metadata": {},
9716
+ "name": "Gemini 4 Argon",
9717
+ "outputModalities": ["text"],
9718
+ "ownedBy": "google",
9719
+ "parameterSupport": {
9720
+ "frequencyPenalty": false,
9721
+ "maxTokens": true,
9722
+ "presencePenalty": false,
9723
+ "stopSequences": true,
9724
+ "systemMessage": true,
9725
+ "temperature": {
9726
+ "supported": false
9727
+ },
9728
+ "topK": {
9729
+ "supported": false
9730
+ },
9731
+ "topP": {
9732
+ "supported": false
9733
+ }
9734
+ },
9735
+ "pricing": {
9736
+ "cacheRead": {
9737
+ "currency": "USD",
9738
+ "perMillionTokens": 0.1
9739
+ },
9740
+ "input": {
9741
+ "currency": "USD",
9742
+ "perMillionTokens": 2
9743
+ },
9744
+ "output": {
9745
+ "currency": "USD",
9746
+ "perMillionTokens": 10
9747
+ }
9748
+ },
9749
+ "reasoning": {
9750
+ "controls": [
9751
+ {
9752
+ "default": "medium",
9753
+ "kind": "effort",
9754
+ "values": ["low", "medium", "high"]
9755
+ }
9756
+ ],
9757
+ "defaultEffort": "medium",
9758
+ "supportedEfforts": ["low", "medium", "high"],
9759
+ "wireDialect": "effort"
9760
+ }
9761
+ },
9700
9762
  {
9701
9763
  "capabilities": ["embedding"],
9702
9764
  "contextWindow": 8192,
@@ -22690,5 +22752,5 @@
22690
22752
  "ownedBy": "zhipu"
22691
22753
  }
22692
22754
  ],
22693
- "version": "1820f779a1cc60bd"
22755
+ "version": "d3224fba2d04d51e"
22694
22756
  }
@@ -12757,6 +12757,25 @@
12757
12757
  },
12758
12758
  "providerId": "gateway"
12759
12759
  },
12760
+ {
12761
+ "apiModelId": "google/gemini-4-argon",
12762
+ "modelId": "gemini-4-argon",
12763
+ "pricing": {
12764
+ "cacheRead": {
12765
+ "currency": "USD",
12766
+ "perMillionTokens": 0.1
12767
+ },
12768
+ "input": {
12769
+ "currency": "USD",
12770
+ "perMillionTokens": 2
12771
+ },
12772
+ "output": {
12773
+ "currency": "USD",
12774
+ "perMillionTokens": 10
12775
+ }
12776
+ },
12777
+ "providerId": "gateway"
12778
+ },
12760
12779
  {
12761
12780
  "apiModelId": "google/gemini-omni-flash-preview",
12762
12781
  "modelId": "gemini-omni-flash-preview",
@@ -25959,6 +25978,44 @@
25959
25978
  }
25960
25979
  }
25961
25980
  },
25981
+ {
25982
+ "apiModelId": "google/gemini-4-argon",
25983
+ "modelId": "gemini-4-argon",
25984
+ "pricing": {
25985
+ "cacheRead": {
25986
+ "currency": "USD",
25987
+ "perMillionTokens": 0.1
25988
+ },
25989
+ "cacheWrite": {
25990
+ "currency": "USD",
25991
+ "perMillionTokens": 0.1875
25992
+ },
25993
+ "input": {
25994
+ "currency": "USD",
25995
+ "perMillionTokens": 2
25996
+ },
25997
+ "output": {
25998
+ "currency": "USD",
25999
+ "perMillionTokens": 10
26000
+ }
26001
+ },
26002
+ "providerId": "openrouter",
26003
+ "reasoningContracts": {
26004
+ "openai-chat-completions": {
26005
+ "support": {
26006
+ "controls": [
26007
+ {
26008
+ "default": "medium",
26009
+ "kind": "effort",
26010
+ "values": ["high", "medium", "low"]
26011
+ }
26012
+ ],
26013
+ "defaultEffort": "medium",
26014
+ "supportedEfforts": ["high", "medium", "low"]
26015
+ }
26016
+ }
26017
+ }
26018
+ },
25962
26019
  {
25963
26020
  "apiModelId": "~google/gemini-flash-latest",
25964
26021
  "modelId": "gemini-flash-latest",
@@ -40560,6 +40617,25 @@
40560
40617
  },
40561
40618
  "providerId": "vertexai"
40562
40619
  },
40620
+ {
40621
+ "apiModelId": "gemini-4-argon",
40622
+ "modelId": "gemini-4-argon",
40623
+ "pricing": {
40624
+ "cacheRead": {
40625
+ "currency": "USD",
40626
+ "perMillionTokens": 0.1
40627
+ },
40628
+ "input": {
40629
+ "currency": "USD",
40630
+ "perMillionTokens": 2
40631
+ },
40632
+ "output": {
40633
+ "currency": "USD",
40634
+ "perMillionTokens": 10
40635
+ }
40636
+ },
40637
+ "providerId": "vertexai"
40638
+ },
40563
40639
  {
40564
40640
  "apiModelId": "gemini-embedding-001",
40565
40641
  "modelId": "gemini-embedding-001",
@@ -41086,5 +41162,5 @@
41086
41162
  "providerId": "zhipu"
41087
41163
  }
41088
41164
  ],
41089
- "version": "b5d75fe20ff361b6"
41165
+ "version": "c6967aa97b477b01"
41090
41166
  }
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_bundled_models = require("./bundled-models-uS9C7ldF.cjs");
3
- const require_bundled_provider_models = require("./bundled-provider-models-CT2Ha5w2.cjs");
2
+ const require_bundled_models = require("./bundled-models-CKAIAajx.cjs");
3
+ const require_bundled_provider_models = require("./bundled-provider-models-Di8bps1n.cjs");
4
4
  const require_bundled_providers = require("./bundled-providers-Bv_iM9AO.cjs");
5
5
  //#region src/bundled-catalog.ts
6
6
  const bundledCatalog = {
@@ -1,5 +1,5 @@
1
- import { t as bundledModels } from "./bundled-models--P3b6A6o.mjs";
2
- import { t as bundledProviderModels } from "./bundled-provider-models-y-RYjBUH.mjs";
1
+ import { t as bundledModels } from "./bundled-models-ANrcKQ2h.mjs";
2
+ import { t as bundledProviderModels } from "./bundled-provider-models-DKmCgFge.mjs";
3
3
  import { t as bundledProviders } from "./bundled-providers-BcszhEy2.mjs";
4
4
  //#region src/bundled-catalog.ts
5
5
  const bundledCatalog = {
@@ -10535,6 +10535,73 @@ const bundledModels = ModelListSchema.parse({
10535
10535
  "wireDialect": "effort"
10536
10536
  }
10537
10537
  },
10538
+ {
10539
+ "capabilities": [
10540
+ "reasoning",
10541
+ "function-call",
10542
+ "image-recognition",
10543
+ "audio-recognition",
10544
+ "video-recognition",
10545
+ "structured-output",
10546
+ "file-input"
10547
+ ],
10548
+ "contextWindow": 1048576,
10549
+ "family": "gemini-4",
10550
+ "id": "gemini-4-argon",
10551
+ "inputModalities": [
10552
+ "text",
10553
+ "image",
10554
+ "audio",
10555
+ "video"
10556
+ ],
10557
+ "maxOutputTokens": 1048576,
10558
+ "metadata": {},
10559
+ "name": "Gemini 4 Argon",
10560
+ "outputModalities": ["text"],
10561
+ "ownedBy": "google",
10562
+ "parameterSupport": {
10563
+ "frequencyPenalty": false,
10564
+ "maxTokens": true,
10565
+ "presencePenalty": false,
10566
+ "stopSequences": true,
10567
+ "systemMessage": true,
10568
+ "temperature": { "supported": false },
10569
+ "topK": { "supported": false },
10570
+ "topP": { "supported": false }
10571
+ },
10572
+ "pricing": {
10573
+ "cacheRead": {
10574
+ "currency": "USD",
10575
+ "perMillionTokens": .1
10576
+ },
10577
+ "input": {
10578
+ "currency": "USD",
10579
+ "perMillionTokens": 2
10580
+ },
10581
+ "output": {
10582
+ "currency": "USD",
10583
+ "perMillionTokens": 10
10584
+ }
10585
+ },
10586
+ "reasoning": {
10587
+ "controls": [{
10588
+ "default": "medium",
10589
+ "kind": "effort",
10590
+ "values": [
10591
+ "low",
10592
+ "medium",
10593
+ "high"
10594
+ ]
10595
+ }],
10596
+ "defaultEffort": "medium",
10597
+ "supportedEfforts": [
10598
+ "low",
10599
+ "medium",
10600
+ "high"
10601
+ ],
10602
+ "wireDialect": "effort"
10603
+ }
10604
+ },
10538
10605
  {
10539
10606
  "capabilities": ["embedding"],
10540
10607
  "contextWindow": 8192,
@@ -25214,7 +25281,7 @@ const bundledModels = ModelListSchema.parse({
25214
25281
  "ownedBy": "zhipu"
25215
25282
  }
25216
25283
  ],
25217
- version: "1820f779a1cc60bd"
25284
+ version: "d3224fba2d04d51e"
25218
25285
  });
25219
25286
  //#endregion
25220
25287
  export { bundledModels as t };
@@ -10534,6 +10534,73 @@ const bundledModels = require("./model-kwW2vWDI.cjs").ModelListSchema.parse({
10534
10534
  "wireDialect": "effort"
10535
10535
  }
10536
10536
  },
10537
+ {
10538
+ "capabilities": [
10539
+ "reasoning",
10540
+ "function-call",
10541
+ "image-recognition",
10542
+ "audio-recognition",
10543
+ "video-recognition",
10544
+ "structured-output",
10545
+ "file-input"
10546
+ ],
10547
+ "contextWindow": 1048576,
10548
+ "family": "gemini-4",
10549
+ "id": "gemini-4-argon",
10550
+ "inputModalities": [
10551
+ "text",
10552
+ "image",
10553
+ "audio",
10554
+ "video"
10555
+ ],
10556
+ "maxOutputTokens": 1048576,
10557
+ "metadata": {},
10558
+ "name": "Gemini 4 Argon",
10559
+ "outputModalities": ["text"],
10560
+ "ownedBy": "google",
10561
+ "parameterSupport": {
10562
+ "frequencyPenalty": false,
10563
+ "maxTokens": true,
10564
+ "presencePenalty": false,
10565
+ "stopSequences": true,
10566
+ "systemMessage": true,
10567
+ "temperature": { "supported": false },
10568
+ "topK": { "supported": false },
10569
+ "topP": { "supported": false }
10570
+ },
10571
+ "pricing": {
10572
+ "cacheRead": {
10573
+ "currency": "USD",
10574
+ "perMillionTokens": .1
10575
+ },
10576
+ "input": {
10577
+ "currency": "USD",
10578
+ "perMillionTokens": 2
10579
+ },
10580
+ "output": {
10581
+ "currency": "USD",
10582
+ "perMillionTokens": 10
10583
+ }
10584
+ },
10585
+ "reasoning": {
10586
+ "controls": [{
10587
+ "default": "medium",
10588
+ "kind": "effort",
10589
+ "values": [
10590
+ "low",
10591
+ "medium",
10592
+ "high"
10593
+ ]
10594
+ }],
10595
+ "defaultEffort": "medium",
10596
+ "supportedEfforts": [
10597
+ "low",
10598
+ "medium",
10599
+ "high"
10600
+ ],
10601
+ "wireDialect": "effort"
10602
+ }
10603
+ },
10537
10604
  {
10538
10605
  "capabilities": ["embedding"],
10539
10606
  "contextWindow": 8192,
@@ -25213,7 +25280,7 @@ const bundledModels = require("./model-kwW2vWDI.cjs").ModelListSchema.parse({
25213
25280
  "ownedBy": "zhipu"
25214
25281
  }
25215
25282
  ],
25216
- version: "1820f779a1cc60bd"
25283
+ version: "d3224fba2d04d51e"
25217
25284
  });
25218
25285
  //#endregion
25219
25286
  Object.defineProperty(exports, "bundledModels", {
@@ -1,3 +1,3 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_bundled_models = require("./bundled-models-uS9C7ldF.cjs");
2
+ const require_bundled_models = require("./bundled-models-CKAIAajx.cjs");
3
3
  exports.bundledModels = require_bundled_models.bundledModels;
@@ -1,2 +1,2 @@
1
- import { t as bundledModels } from "./bundled-models--P3b6A6o.mjs";
1
+ import { t as bundledModels } from "./bundled-models-ANrcKQ2h.mjs";
2
2
  export { bundledModels };
@@ -10982,6 +10982,25 @@ const bundledProviderModels = ProviderModelListSchema.parse({
10982
10982
  },
10983
10983
  "providerId": "gateway"
10984
10984
  },
10985
+ {
10986
+ "apiModelId": "google/gemini-4-argon",
10987
+ "modelId": "gemini-4-argon",
10988
+ "pricing": {
10989
+ "cacheRead": {
10990
+ "currency": "USD",
10991
+ "perMillionTokens": .1
10992
+ },
10993
+ "input": {
10994
+ "currency": "USD",
10995
+ "perMillionTokens": 2
10996
+ },
10997
+ "output": {
10998
+ "currency": "USD",
10999
+ "perMillionTokens": 10
11000
+ }
11001
+ },
11002
+ "providerId": "gateway"
11003
+ },
10985
11004
  {
10986
11005
  "apiModelId": "google/gemini-omni-flash-preview",
10987
11006
  "modelId": "gemini-omni-flash-preview",
@@ -23372,6 +23391,46 @@ const bundledProviderModels = ProviderModelListSchema.parse({
23372
23391
  "providerId": "openrouter",
23373
23392
  "reasoningContracts": { "openai-chat-completions": { "support": { "controls": [] } } }
23374
23393
  },
23394
+ {
23395
+ "apiModelId": "google/gemini-4-argon",
23396
+ "modelId": "gemini-4-argon",
23397
+ "pricing": {
23398
+ "cacheRead": {
23399
+ "currency": "USD",
23400
+ "perMillionTokens": .1
23401
+ },
23402
+ "cacheWrite": {
23403
+ "currency": "USD",
23404
+ "perMillionTokens": .1875
23405
+ },
23406
+ "input": {
23407
+ "currency": "USD",
23408
+ "perMillionTokens": 2
23409
+ },
23410
+ "output": {
23411
+ "currency": "USD",
23412
+ "perMillionTokens": 10
23413
+ }
23414
+ },
23415
+ "providerId": "openrouter",
23416
+ "reasoningContracts": { "openai-chat-completions": { "support": {
23417
+ "controls": [{
23418
+ "default": "medium",
23419
+ "kind": "effort",
23420
+ "values": [
23421
+ "high",
23422
+ "medium",
23423
+ "low"
23424
+ ]
23425
+ }],
23426
+ "defaultEffort": "medium",
23427
+ "supportedEfforts": [
23428
+ "high",
23429
+ "medium",
23430
+ "low"
23431
+ ]
23432
+ } } }
23433
+ },
23375
23434
  {
23376
23435
  "apiModelId": "~google/gemini-flash-latest",
23377
23436
  "modelId": "gemini-flash-latest",
@@ -37090,6 +37149,25 @@ const bundledProviderModels = ProviderModelListSchema.parse({
37090
37149
  },
37091
37150
  "providerId": "vertexai"
37092
37151
  },
37152
+ {
37153
+ "apiModelId": "gemini-4-argon",
37154
+ "modelId": "gemini-4-argon",
37155
+ "pricing": {
37156
+ "cacheRead": {
37157
+ "currency": "USD",
37158
+ "perMillionTokens": .1
37159
+ },
37160
+ "input": {
37161
+ "currency": "USD",
37162
+ "perMillionTokens": 2
37163
+ },
37164
+ "output": {
37165
+ "currency": "USD",
37166
+ "perMillionTokens": 10
37167
+ }
37168
+ },
37169
+ "providerId": "vertexai"
37170
+ },
37093
37171
  {
37094
37172
  "apiModelId": "gemini-embedding-001",
37095
37173
  "modelId": "gemini-embedding-001",
@@ -37576,7 +37654,7 @@ const bundledProviderModels = ProviderModelListSchema.parse({
37576
37654
  "providerId": "zhipu"
37577
37655
  }
37578
37656
  ],
37579
- version: "b5d75fe20ff361b6"
37657
+ version: "c6967aa97b477b01"
37580
37658
  });
37581
37659
  //#endregion
37582
37660
  export { bundledProviderModels as t };
@@ -10981,6 +10981,25 @@ const bundledProviderModels = require("./provider-models-BjKC53mr.cjs").Provider
10981
10981
  },
10982
10982
  "providerId": "gateway"
10983
10983
  },
10984
+ {
10985
+ "apiModelId": "google/gemini-4-argon",
10986
+ "modelId": "gemini-4-argon",
10987
+ "pricing": {
10988
+ "cacheRead": {
10989
+ "currency": "USD",
10990
+ "perMillionTokens": .1
10991
+ },
10992
+ "input": {
10993
+ "currency": "USD",
10994
+ "perMillionTokens": 2
10995
+ },
10996
+ "output": {
10997
+ "currency": "USD",
10998
+ "perMillionTokens": 10
10999
+ }
11000
+ },
11001
+ "providerId": "gateway"
11002
+ },
10984
11003
  {
10985
11004
  "apiModelId": "google/gemini-omni-flash-preview",
10986
11005
  "modelId": "gemini-omni-flash-preview",
@@ -23371,6 +23390,46 @@ const bundledProviderModels = require("./provider-models-BjKC53mr.cjs").Provider
23371
23390
  "providerId": "openrouter",
23372
23391
  "reasoningContracts": { "openai-chat-completions": { "support": { "controls": [] } } }
23373
23392
  },
23393
+ {
23394
+ "apiModelId": "google/gemini-4-argon",
23395
+ "modelId": "gemini-4-argon",
23396
+ "pricing": {
23397
+ "cacheRead": {
23398
+ "currency": "USD",
23399
+ "perMillionTokens": .1
23400
+ },
23401
+ "cacheWrite": {
23402
+ "currency": "USD",
23403
+ "perMillionTokens": .1875
23404
+ },
23405
+ "input": {
23406
+ "currency": "USD",
23407
+ "perMillionTokens": 2
23408
+ },
23409
+ "output": {
23410
+ "currency": "USD",
23411
+ "perMillionTokens": 10
23412
+ }
23413
+ },
23414
+ "providerId": "openrouter",
23415
+ "reasoningContracts": { "openai-chat-completions": { "support": {
23416
+ "controls": [{
23417
+ "default": "medium",
23418
+ "kind": "effort",
23419
+ "values": [
23420
+ "high",
23421
+ "medium",
23422
+ "low"
23423
+ ]
23424
+ }],
23425
+ "defaultEffort": "medium",
23426
+ "supportedEfforts": [
23427
+ "high",
23428
+ "medium",
23429
+ "low"
23430
+ ]
23431
+ } } }
23432
+ },
23374
23433
  {
23375
23434
  "apiModelId": "~google/gemini-flash-latest",
23376
23435
  "modelId": "gemini-flash-latest",
@@ -37089,6 +37148,25 @@ const bundledProviderModels = require("./provider-models-BjKC53mr.cjs").Provider
37089
37148
  },
37090
37149
  "providerId": "vertexai"
37091
37150
  },
37151
+ {
37152
+ "apiModelId": "gemini-4-argon",
37153
+ "modelId": "gemini-4-argon",
37154
+ "pricing": {
37155
+ "cacheRead": {
37156
+ "currency": "USD",
37157
+ "perMillionTokens": .1
37158
+ },
37159
+ "input": {
37160
+ "currency": "USD",
37161
+ "perMillionTokens": 2
37162
+ },
37163
+ "output": {
37164
+ "currency": "USD",
37165
+ "perMillionTokens": 10
37166
+ }
37167
+ },
37168
+ "providerId": "vertexai"
37169
+ },
37092
37170
  {
37093
37171
  "apiModelId": "gemini-embedding-001",
37094
37172
  "modelId": "gemini-embedding-001",
@@ -37575,7 +37653,7 @@ const bundledProviderModels = require("./provider-models-BjKC53mr.cjs").Provider
37575
37653
  "providerId": "zhipu"
37576
37654
  }
37577
37655
  ],
37578
- version: "b5d75fe20ff361b6"
37656
+ version: "c6967aa97b477b01"
37579
37657
  });
37580
37658
  //#endregion
37581
37659
  Object.defineProperty(exports, "bundledProviderModels", {
@@ -1,3 +1,3 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_bundled_provider_models = require("./bundled-provider-models-CT2Ha5w2.cjs");
2
+ const require_bundled_provider_models = require("./bundled-provider-models-Di8bps1n.cjs");
3
3
  exports.bundledProviderModels = require_bundled_provider_models.bundledProviderModels;
@@ -1,2 +1,2 @@
1
- import { t as bundledProviderModels } from "./bundled-provider-models-y-RYjBUH.mjs";
1
+ import { t as bundledProviderModels } from "./bundled-provider-models-DKmCgFge.mjs";
2
2
  export { bundledProviderModels };
package/dist/index.cjs CHANGED
@@ -903,6 +903,20 @@ const REASONING_FAMILY_RULES = [
903
903
  { pattern: "deepseek-chat" },
904
904
  { pattern: "deepseek-v(?:[4-9]\\d*|[1-9]\\d{1,})(?:\\.\\d+)?(?:-[\\w]+)*(?=$|[:/])" },
905
905
  { pattern: "deepseek-v3\\.2-speciale" },
906
+ {
907
+ pattern: "^gemini-4(?:[.-]|$)",
908
+ wireDialect: "effort",
909
+ template: true
910
+ },
911
+ {
912
+ pattern: "^gemini-4-argon(?:$|[ @:-])",
913
+ effort: [
914
+ "low",
915
+ "medium",
916
+ "high"
917
+ ],
918
+ toggle: false
919
+ },
906
920
  {
907
921
  pattern: "^gemini-2",
908
922
  wireDialect: "budget",
@@ -1431,6 +1445,7 @@ const SERVER_TOOL_FUNCTION_MIXING_MODEL_IDS = [
1431
1445
  "gemini-3-flash-preview",
1432
1446
  "gemini-3-pro-image",
1433
1447
  "gemini-3-pro-image-preview",
1448
+ "gemini-4-argon",
1434
1449
  "gemini-flash-latest",
1435
1450
  "gemini-pro-latest"
1436
1451
  ];
@@ -1497,6 +1512,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1497
1512
  "gemini-3-flash-preview",
1498
1513
  "gemini-3-pro-image",
1499
1514
  "gemini-3-pro-image-preview",
1515
+ "gemini-4-argon",
1500
1516
  "gemini-flash-latest",
1501
1517
  "gemini-flash-lite-latest",
1502
1518
  "gemini-pro-latest",
@@ -1579,6 +1595,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1579
1595
  "gemini-3-flash-preview",
1580
1596
  "gemini-3-pro-image",
1581
1597
  "gemini-3-pro-image-preview",
1598
+ "gemini-4-argon",
1582
1599
  "gemini-flash-latest",
1583
1600
  "gemini-flash-lite-latest",
1584
1601
  "gemini-pro-latest"
@@ -1623,6 +1640,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1623
1640
  "gemini-3-flash-preview",
1624
1641
  "gemini-3-pro-image",
1625
1642
  "gemini-3-pro-image-preview",
1643
+ "gemini-4-argon",
1626
1644
  "gemini-flash-latest",
1627
1645
  "gemini-flash-lite-latest",
1628
1646
  "gemini-pro-latest",
@@ -1715,6 +1733,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1715
1733
  "gemini-3-flash-preview",
1716
1734
  "gemini-3-pro-image",
1717
1735
  "gemini-3-pro-image-preview",
1736
+ "gemini-4-argon",
1718
1737
  "gemini-flash-latest",
1719
1738
  "gemini-flash-lite-latest",
1720
1739
  "gemini-pro-latest"
@@ -1749,11 +1768,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1749
1768
  "glm-5-maas",
1750
1769
  "glm-5-turbo"
1751
1770
  ] },
1752
- deepseek: { "web-search": [
1753
- "deepseek-flash",
1754
- "deepseek-flash-latest",
1755
- "deepseek-v4-pro"
1756
- ] },
1771
+ deepseek: { "web-search": ["deepseek-flash", "deepseek-v4-pro"] },
1757
1772
  "new-api": {
1758
1773
  "web-search": [
1759
1774
  "claude-haiku-4-5",
@@ -2065,6 +2080,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2065
2080
  "gemini-3-flash-preview",
2066
2081
  "gemini-3-pro-image",
2067
2082
  "gemini-3-pro-image-preview",
2083
+ "gemini-4-argon",
2068
2084
  "gemini-flash-latest",
2069
2085
  "gemini-flash-lite-latest",
2070
2086
  "gemini-pro-latest"
@@ -2095,6 +2111,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2095
2111
  "gemini-3-flash-preview",
2096
2112
  "gemini-3-pro-image",
2097
2113
  "gemini-3-pro-image-preview",
2114
+ "gemini-4-argon",
2098
2115
  "gemini-flash-latest",
2099
2116
  "gemini-flash-lite-latest",
2100
2117
  "gemini-pro-latest"
@@ -2134,6 +2151,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2134
2151
  "gemini-3-flash-preview",
2135
2152
  "gemini-3-pro-image",
2136
2153
  "gemini-3-pro-image-preview",
2154
+ "gemini-4-argon",
2137
2155
  "gemini-flash-latest",
2138
2156
  "gemini-flash-lite-latest",
2139
2157
  "gemini-pro-latest"
@@ -2164,6 +2182,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2164
2182
  "gemini-3-flash-preview",
2165
2183
  "gemini-3-pro-image",
2166
2184
  "gemini-3-pro-image-preview",
2185
+ "gemini-4-argon",
2167
2186
  "gemini-flash-latest",
2168
2187
  "gemini-flash-lite-latest",
2169
2188
  "gemini-pro-latest"
@@ -2500,6 +2519,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2500
2519
  "grok-4-3",
2501
2520
  "grok-4-5",
2502
2521
  "grok-4-6",
2522
+ "grok-4-7",
2503
2523
  "grok-4-fast",
2504
2524
  "kimi-k2",
2505
2525
  "kimi-k2-5",
package/dist/index.mjs CHANGED
@@ -901,6 +901,20 @@ const REASONING_FAMILY_RULES = [
901
901
  { pattern: "deepseek-chat" },
902
902
  { pattern: "deepseek-v(?:[4-9]\\d*|[1-9]\\d{1,})(?:\\.\\d+)?(?:-[\\w]+)*(?=$|[:/])" },
903
903
  { pattern: "deepseek-v3\\.2-speciale" },
904
+ {
905
+ pattern: "^gemini-4(?:[.-]|$)",
906
+ wireDialect: "effort",
907
+ template: true
908
+ },
909
+ {
910
+ pattern: "^gemini-4-argon(?:$|[ @:-])",
911
+ effort: [
912
+ "low",
913
+ "medium",
914
+ "high"
915
+ ],
916
+ toggle: false
917
+ },
904
918
  {
905
919
  pattern: "^gemini-2",
906
920
  wireDialect: "budget",
@@ -1429,6 +1443,7 @@ const SERVER_TOOL_FUNCTION_MIXING_MODEL_IDS = [
1429
1443
  "gemini-3-flash-preview",
1430
1444
  "gemini-3-pro-image",
1431
1445
  "gemini-3-pro-image-preview",
1446
+ "gemini-4-argon",
1432
1447
  "gemini-flash-latest",
1433
1448
  "gemini-pro-latest"
1434
1449
  ];
@@ -1495,6 +1510,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1495
1510
  "gemini-3-flash-preview",
1496
1511
  "gemini-3-pro-image",
1497
1512
  "gemini-3-pro-image-preview",
1513
+ "gemini-4-argon",
1498
1514
  "gemini-flash-latest",
1499
1515
  "gemini-flash-lite-latest",
1500
1516
  "gemini-pro-latest",
@@ -1577,6 +1593,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1577
1593
  "gemini-3-flash-preview",
1578
1594
  "gemini-3-pro-image",
1579
1595
  "gemini-3-pro-image-preview",
1596
+ "gemini-4-argon",
1580
1597
  "gemini-flash-latest",
1581
1598
  "gemini-flash-lite-latest",
1582
1599
  "gemini-pro-latest"
@@ -1621,6 +1638,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1621
1638
  "gemini-3-flash-preview",
1622
1639
  "gemini-3-pro-image",
1623
1640
  "gemini-3-pro-image-preview",
1641
+ "gemini-4-argon",
1624
1642
  "gemini-flash-latest",
1625
1643
  "gemini-flash-lite-latest",
1626
1644
  "gemini-pro-latest",
@@ -1713,6 +1731,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1713
1731
  "gemini-3-flash-preview",
1714
1732
  "gemini-3-pro-image",
1715
1733
  "gemini-3-pro-image-preview",
1734
+ "gemini-4-argon",
1716
1735
  "gemini-flash-latest",
1717
1736
  "gemini-flash-lite-latest",
1718
1737
  "gemini-pro-latest"
@@ -1747,11 +1766,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
1747
1766
  "glm-5-maas",
1748
1767
  "glm-5-turbo"
1749
1768
  ] },
1750
- deepseek: { "web-search": [
1751
- "deepseek-flash",
1752
- "deepseek-flash-latest",
1753
- "deepseek-v4-pro"
1754
- ] },
1769
+ deepseek: { "web-search": ["deepseek-flash", "deepseek-v4-pro"] },
1755
1770
  "new-api": {
1756
1771
  "web-search": [
1757
1772
  "claude-haiku-4-5",
@@ -2063,6 +2078,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2063
2078
  "gemini-3-flash-preview",
2064
2079
  "gemini-3-pro-image",
2065
2080
  "gemini-3-pro-image-preview",
2081
+ "gemini-4-argon",
2066
2082
  "gemini-flash-latest",
2067
2083
  "gemini-flash-lite-latest",
2068
2084
  "gemini-pro-latest"
@@ -2093,6 +2109,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2093
2109
  "gemini-3-flash-preview",
2094
2110
  "gemini-3-pro-image",
2095
2111
  "gemini-3-pro-image-preview",
2112
+ "gemini-4-argon",
2096
2113
  "gemini-flash-latest",
2097
2114
  "gemini-flash-lite-latest",
2098
2115
  "gemini-pro-latest"
@@ -2132,6 +2149,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2132
2149
  "gemini-3-flash-preview",
2133
2150
  "gemini-3-pro-image",
2134
2151
  "gemini-3-pro-image-preview",
2152
+ "gemini-4-argon",
2135
2153
  "gemini-flash-latest",
2136
2154
  "gemini-flash-lite-latest",
2137
2155
  "gemini-pro-latest"
@@ -2162,6 +2180,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2162
2180
  "gemini-3-flash-preview",
2163
2181
  "gemini-3-pro-image",
2164
2182
  "gemini-3-pro-image-preview",
2183
+ "gemini-4-argon",
2165
2184
  "gemini-flash-latest",
2166
2185
  "gemini-flash-lite-latest",
2167
2186
  "gemini-pro-latest"
@@ -2498,6 +2517,7 @@ const ELIGIBLE_MODEL_IDS = new Map(Object.entries({
2498
2517
  "grok-4-3",
2499
2518
  "grok-4-5",
2500
2519
  "grok-4-6",
2520
+ "grok-4-7",
2501
2521
  "grok-4-fast",
2502
2522
  "kimi-k2",
2503
2523
  "kimi-k2-5",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cherrystudio/provider-registry",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Cross-platform AI provider and model catalogs, schemas, and lookup utilities",
5
5
  "homepage": "https://github.com/CherryHQ/cherry-studio#readme",
6
6
  "bugs": {