@roo-code/types 1.53.0 → 1.55.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.
package/dist/index.cjs CHANGED
@@ -69,6 +69,7 @@ __export(index_exports, {
69
69
  PROVIDER_SETTINGS_KEYS: () => PROVIDER_SETTINGS_KEYS,
70
70
  RooCodeEventName: () => RooCodeEventName,
71
71
  SECRET_STATE_KEYS: () => SECRET_STATE_KEYS,
72
+ SINGLE_FILE_READ_MODELS: () => SINGLE_FILE_READ_MODELS,
72
73
  TaskCommandName: () => TaskCommandName,
73
74
  TaskStatus: () => TaskStatus,
74
75
  TelemetryEventName: () => TelemetryEventName,
@@ -116,6 +117,8 @@ __export(index_exports, {
116
117
  experimentIdsSchema: () => experimentIdsSchema,
117
118
  experimentsSchema: () => experimentsSchema,
118
119
  extendedReasoningEffortsSchema: () => extendedReasoningEffortsSchema,
120
+ featherlessDefaultModelId: () => featherlessDefaultModelId,
121
+ featherlessModels: () => featherlessModels,
119
122
  fireworksDefaultModelId: () => fireworksDefaultModelId,
120
123
  fireworksModels: () => fireworksModels,
121
124
  followUpDataSchema: () => followUpDataSchema,
@@ -194,8 +197,11 @@ __export(index_exports, {
194
197
  rooCodeEventsSchema: () => rooCodeEventsSchema,
195
198
  rooCodeSettingsSchema: () => rooCodeSettingsSchema,
196
199
  rooCodeTelemetryEventSchema: () => rooCodeTelemetryEventSchema,
200
+ rooDefaultModelId: () => rooDefaultModelId,
201
+ rooModels: () => rooModels,
197
202
  sambaNovaDefaultModelId: () => sambaNovaDefaultModelId,
198
203
  sambaNovaModels: () => sambaNovaModels,
204
+ shouldUseSingleFileRead: () => shouldUseSingleFileRead,
199
205
  staticAppPropertiesSchema: () => staticAppPropertiesSchema,
200
206
  suggestionItemSchema: () => suggestionItemSchema,
201
207
  taskCommandSchema: () => taskCommandSchema,
@@ -687,7 +693,9 @@ var providerNames = [
687
693
  "sambanova",
688
694
  "zai",
689
695
  "fireworks",
690
- "io-intelligence"
696
+ "featherless",
697
+ "io-intelligence",
698
+ "roo"
691
699
  ];
692
700
  var providerNamesSchema = import_zod8.z.enum(providerNames);
693
701
  var providerSettingsEntrySchema = import_zod8.z.object({
@@ -869,10 +877,16 @@ var zaiSchema = apiModelIdProviderModelSchema.extend({
869
877
  var fireworksSchema = apiModelIdProviderModelSchema.extend({
870
878
  fireworksApiKey: import_zod8.z.string().optional()
871
879
  });
880
+ var featherlessSchema = apiModelIdProviderModelSchema.extend({
881
+ featherlessApiKey: import_zod8.z.string().optional()
882
+ });
872
883
  var ioIntelligenceSchema = apiModelIdProviderModelSchema.extend({
873
884
  ioIntelligenceModelId: import_zod8.z.string().optional(),
874
885
  ioIntelligenceApiKey: import_zod8.z.string().optional()
875
886
  });
887
+ var rooSchema = apiModelIdProviderModelSchema.extend({
888
+ // No additional fields needed - uses cloud authentication
889
+ });
876
890
  var defaultSchema = import_zod8.z.object({
877
891
  apiProvider: import_zod8.z.undefined()
878
892
  });
@@ -907,7 +921,9 @@ var providerSettingsSchemaDiscriminated = import_zod8.z.discriminatedUnion("apiP
907
921
  sambaNovaSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("sambanova") })),
908
922
  zaiSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("zai") })),
909
923
  fireworksSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("fireworks") })),
924
+ featherlessSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("featherless") })),
910
925
  ioIntelligenceSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("io-intelligence") })),
926
+ rooSchema.merge(import_zod8.z.object({ apiProvider: import_zod8.z.literal("roo") })),
911
927
  defaultSchema
912
928
  ]);
913
929
  var providerSettingsSchema = import_zod8.z.object({
@@ -942,7 +958,9 @@ var providerSettingsSchema = import_zod8.z.object({
942
958
  ...sambaNovaSchema.shape,
943
959
  ...zaiSchema.shape,
944
960
  ...fireworksSchema.shape,
961
+ ...featherlessSchema.shape,
945
962
  ...ioIntelligenceSchema.shape,
963
+ ...rooSchema.shape,
946
964
  ...codebaseIndexProviderSchema.shape
947
965
  });
948
966
  var providerSettingsWithIdSchema = providerSettingsSchema.extend({ id: import_zod8.z.string().optional() });
@@ -1428,6 +1446,7 @@ var SECRET_STATE_KEYS = [
1428
1446
  "openAiNativeApiKey",
1429
1447
  "cerebrasApiKey",
1430
1448
  "deepSeekApiKey",
1449
+ "doubaoApiKey",
1431
1450
  "moonshotApiKey",
1432
1451
  "mistralApiKey",
1433
1452
  "unboundApiKey",
@@ -1443,7 +1462,9 @@ var SECRET_STATE_KEYS = [
1443
1462
  "codebaseIndexMistralApiKey",
1444
1463
  "huggingFaceApiKey",
1445
1464
  "sambaNovaApiKey",
1465
+ "zaiApiKey",
1446
1466
  "fireworksApiKey",
1467
+ "featherlessApiKey",
1447
1468
  "ioIntelligenceApiKey"
1448
1469
  ];
1449
1470
  var isSecretStateKey = (key) => SECRET_STATE_KEYS.includes(key);
@@ -1664,6 +1685,21 @@ var mcpExecutionStatusSchema = import_zod16.z.discriminatedUnion("status", [
1664
1685
  })
1665
1686
  ]);
1666
1687
 
1688
+ // src/single-file-read-models.ts
1689
+ var SINGLE_FILE_READ_MODELS = /* @__PURE__ */ new Set(["roo/sonic"]);
1690
+ function shouldUseSingleFileRead(modelId) {
1691
+ if (SINGLE_FILE_READ_MODELS.has(modelId)) {
1692
+ return true;
1693
+ }
1694
+ const patterns = Array.from(SINGLE_FILE_READ_MODELS);
1695
+ for (const pattern of patterns) {
1696
+ if (pattern.endsWith("*") && modelId.startsWith(pattern.slice(0, -1))) {
1697
+ return true;
1698
+ }
1699
+ }
1700
+ return false;
1701
+ }
1702
+
1667
1703
  // src/task.ts
1668
1704
  var import_zod17 = require("zod");
1669
1705
  var TaskStatus = /* @__PURE__ */ ((TaskStatus2) => {
@@ -4219,6 +4255,18 @@ var vscodeLlmModels = {
4219
4255
  supportsToolCalling: true,
4220
4256
  maxInputTokens: 81638
4221
4257
  },
4258
+ "claude-4-sonnet": {
4259
+ contextWindow: 128e3,
4260
+ supportsImages: true,
4261
+ supportsPromptCache: false,
4262
+ inputPrice: 0,
4263
+ outputPrice: 0,
4264
+ family: "claude-sonnet-4",
4265
+ version: "claude-sonnet-4",
4266
+ name: "Claude Sonnet 4",
4267
+ supportsToolCalling: true,
4268
+ maxInputTokens: 111836
4269
+ },
4222
4270
  "gemini-2.0-flash-001": {
4223
4271
  contextWindow: 127827,
4224
4272
  supportsImages: true,
@@ -4232,7 +4280,7 @@ var vscodeLlmModels = {
4232
4280
  maxInputTokens: 127827
4233
4281
  },
4234
4282
  "gemini-2.5-pro": {
4235
- contextWindow: 63830,
4283
+ contextWindow: 128e3,
4236
4284
  supportsImages: true,
4237
4285
  supportsPromptCache: false,
4238
4286
  inputPrice: 0,
@@ -4241,10 +4289,10 @@ var vscodeLlmModels = {
4241
4289
  version: "gemini-2.5-pro-preview-03-25",
4242
4290
  name: "Gemini 2.5 Pro (Preview)",
4243
4291
  supportsToolCalling: true,
4244
- maxInputTokens: 63830
4292
+ maxInputTokens: 108637
4245
4293
  },
4246
4294
  "o4-mini": {
4247
- contextWindow: 111446,
4295
+ contextWindow: 128e3,
4248
4296
  supportsImages: false,
4249
4297
  supportsPromptCache: false,
4250
4298
  inputPrice: 0,
@@ -4253,10 +4301,10 @@ var vscodeLlmModels = {
4253
4301
  version: "o4-mini-2025-04-16",
4254
4302
  name: "o4-mini (Preview)",
4255
4303
  supportsToolCalling: true,
4256
- maxInputTokens: 111446
4304
+ maxInputTokens: 111452
4257
4305
  },
4258
4306
  "gpt-4.1": {
4259
- contextWindow: 111446,
4307
+ contextWindow: 128e3,
4260
4308
  supportsImages: true,
4261
4309
  supportsPromptCache: false,
4262
4310
  inputPrice: 0,
@@ -4265,7 +4313,31 @@ var vscodeLlmModels = {
4265
4313
  version: "gpt-4.1-2025-04-14",
4266
4314
  name: "GPT-4.1 (Preview)",
4267
4315
  supportsToolCalling: true,
4268
- maxInputTokens: 111446
4316
+ maxInputTokens: 111452
4317
+ },
4318
+ "gpt-5-mini": {
4319
+ contextWindow: 128e3,
4320
+ supportsImages: true,
4321
+ supportsPromptCache: false,
4322
+ inputPrice: 0,
4323
+ outputPrice: 0,
4324
+ family: "gpt-5-mini",
4325
+ version: "gpt-5-mini",
4326
+ name: "GPT-5 mini (Preview)",
4327
+ supportsToolCalling: true,
4328
+ maxInputTokens: 108637
4329
+ },
4330
+ "gpt-5": {
4331
+ contextWindow: 128e3,
4332
+ supportsImages: true,
4333
+ supportsPromptCache: false,
4334
+ inputPrice: 0,
4335
+ outputPrice: 0,
4336
+ family: "gpt-5",
4337
+ version: "gpt-5",
4338
+ name: "GPT-5 (Preview)",
4339
+ supportsToolCalling: true,
4340
+ maxInputTokens: 108637
4269
4341
  }
4270
4342
  };
4271
4343
 
@@ -4580,6 +4652,70 @@ var fireworksModels = {
4580
4652
  description: "OpenAI gpt-oss-120b: Production-grade, general-purpose model that fits on a single H100 GPU. Features complex reasoning, configurable effort, full chain-of-thought transparency, and supports function calling, tool use, and structured outputs."
4581
4653
  }
4582
4654
  };
4655
+
4656
+ // src/providers/roo.ts
4657
+ var rooDefaultModelId = "roo/sonic";
4658
+ var rooModels = {
4659
+ "roo/sonic": {
4660
+ maxTokens: 16384,
4661
+ contextWindow: 262144,
4662
+ supportsImages: false,
4663
+ supportsPromptCache: true,
4664
+ inputPrice: 0,
4665
+ outputPrice: 0,
4666
+ description: "A stealth reasoning model that is blazing fast and excels at agentic coding, accessible for free through Roo Code Cloud for a limited time. (Note: prompts and completions are logged by the model creator and used to improve the model.)"
4667
+ }
4668
+ };
4669
+
4670
+ // src/providers/featherless.ts
4671
+ var featherlessModels = {
4672
+ "deepseek-ai/DeepSeek-V3-0324": {
4673
+ maxTokens: 4096,
4674
+ contextWindow: 32678,
4675
+ supportsImages: false,
4676
+ supportsPromptCache: false,
4677
+ inputPrice: 0,
4678
+ outputPrice: 0,
4679
+ description: "DeepSeek V3 0324 model."
4680
+ },
4681
+ "deepseek-ai/DeepSeek-R1-0528": {
4682
+ maxTokens: 4096,
4683
+ contextWindow: 32678,
4684
+ supportsImages: false,
4685
+ supportsPromptCache: false,
4686
+ inputPrice: 0,
4687
+ outputPrice: 0,
4688
+ description: "DeepSeek R1 0528 model."
4689
+ },
4690
+ "moonshotai/Kimi-K2-Instruct": {
4691
+ maxTokens: 4096,
4692
+ contextWindow: 32678,
4693
+ supportsImages: false,
4694
+ supportsPromptCache: false,
4695
+ inputPrice: 0,
4696
+ outputPrice: 0,
4697
+ description: "Kimi K2 Instruct model."
4698
+ },
4699
+ "openai/gpt-oss-120b": {
4700
+ maxTokens: 4096,
4701
+ contextWindow: 32678,
4702
+ supportsImages: false,
4703
+ supportsPromptCache: false,
4704
+ inputPrice: 0,
4705
+ outputPrice: 0,
4706
+ description: "GPT-OSS 120B model."
4707
+ },
4708
+ "Qwen/Qwen3-Coder-480B-A35B-Instruct": {
4709
+ maxTokens: 4096,
4710
+ contextWindow: 32678,
4711
+ supportsImages: false,
4712
+ supportsPromptCache: false,
4713
+ inputPrice: 0,
4714
+ outputPrice: 0,
4715
+ description: "Qwen3 Coder 480B A35B Instruct model."
4716
+ }
4717
+ };
4718
+ var featherlessDefaultModelId = "deepseek-ai/DeepSeek-R1-0528";
4583
4719
  // Annotate the CommonJS export names for ESM import in node:
4584
4720
  0 && (module.exports = {
4585
4721
  ANTHROPIC_DEFAULT_MAX_TOKENS,
@@ -4631,6 +4767,7 @@ var fireworksModels = {
4631
4767
  PROVIDER_SETTINGS_KEYS,
4632
4768
  RooCodeEventName,
4633
4769
  SECRET_STATE_KEYS,
4770
+ SINGLE_FILE_READ_MODELS,
4634
4771
  TaskCommandName,
4635
4772
  TaskStatus,
4636
4773
  TelemetryEventName,
@@ -4678,6 +4815,8 @@ var fireworksModels = {
4678
4815
  experimentIdsSchema,
4679
4816
  experimentsSchema,
4680
4817
  extendedReasoningEffortsSchema,
4818
+ featherlessDefaultModelId,
4819
+ featherlessModels,
4681
4820
  fireworksDefaultModelId,
4682
4821
  fireworksModels,
4683
4822
  followUpDataSchema,
@@ -4756,8 +4895,11 @@ var fireworksModels = {
4756
4895
  rooCodeEventsSchema,
4757
4896
  rooCodeSettingsSchema,
4758
4897
  rooCodeTelemetryEventSchema,
4898
+ rooDefaultModelId,
4899
+ rooModels,
4759
4900
  sambaNovaDefaultModelId,
4760
4901
  sambaNovaModels,
4902
+ shouldUseSingleFileRead,
4761
4903
  staticAppPropertiesSchema,
4762
4904
  suggestionItemSchema,
4763
4905
  taskCommandSchema,