@roo-code/types 1.25.0 → 1.26.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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/providers/anthropic.ts","../../src/providers/bedrock.ts","../../src/providers/chutes.ts","../../src/providers/deepseek.ts","../../src/providers/gemini.ts","../../src/providers/glama.ts","../../src/providers/groq.ts","../../src/providers/lite-llm.ts","../../src/providers/lm-studio.ts","../../src/providers/mistral.ts","../../src/providers/openai.ts","../../src/providers/openrouter.ts","../../src/providers/requesty.ts","../../src/providers/unbound.ts","../../src/providers/vertex.ts","../../src/providers/vscode-llm.ts","../../src/providers/xai.ts","../../src/codebase-index.ts","../../src/cloud.ts","../../src/global-settings.ts","../../src/type-fu.ts","../../src/provider-settings.ts","../../src/model.ts","../../src/history.ts","../../src/experiment.ts","../../src/telemetry.ts","../../src/message.ts","../../src/mode.ts","../../src/tool.ts","../../src/vscode.ts","../../src/ipc.ts","../../src/terminal.ts"],"sourcesContent":["export * from \"./providers/index.js\"\n\nexport * from \"./api.js\"\nexport * from \"./codebase-index.js\"\nexport * from \"./cloud.js\"\nexport * from \"./experiment.js\"\nexport * from \"./global-settings.js\"\nexport * from \"./history.js\"\nexport * from \"./ipc.js\"\nexport * from \"./message.js\"\nexport * from \"./mode.js\"\nexport * from \"./model.js\"\nexport * from \"./provider-settings.js\"\nexport * from \"./telemetry.js\"\nexport * from \"./terminal.js\"\nexport * from \"./tool.js\"\nexport * from \"./type-fu.js\"\nexport * from \"./vscode.js\"\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.anthropic.com/en/docs/about-claude/models\n\nexport type AnthropicModelId = keyof typeof anthropicModels\nexport const anthropicDefaultModelId: AnthropicModelId = \"claude-sonnet-4-20250514\"\n\nexport const anthropicModels = {\n\t\"claude-sonnet-4-20250514\": {\n\t\tmaxTokens: 64_000, // Overridden to 8k if `enableReasoningEffort` is false.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-opus-4-20250514\": {\n\t\tmaxTokens: 32_000, // Overridden to 8k if `enableReasoningEffort` is false.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0, // $15 per million input tokens\n\t\toutputPrice: 75.0, // $75 per million output tokens\n\t\tcacheWritesPrice: 18.75, // $18.75 per million tokens\n\t\tcacheReadsPrice: 1.5, // $1.50 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet-20250219:thinking\": {\n\t\tmaxTokens: 128_000, // Unlocked by passing `beta` flag to the model. Otherwise, it's 64k.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet-20250219\": {\n\t\tmaxTokens: 8192, // Since we already have a `:thinking` virtual model we aren't setting `supportsReasoningBudget: true` here.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t},\n\t\"claude-3-5-sonnet-20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t},\n\t\"claude-3-5-haiku-20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 5.0,\n\t\tcacheWritesPrice: 1.25,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"claude-3-opus-20240229\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-haiku-20240307\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t\tcacheWritesPrice: 0.3,\n\t\tcacheReadsPrice: 0.03,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const ANTHROPIC_DEFAULT_MAX_TOKENS = 8192\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html\n\nexport type BedrockModelId = keyof typeof bedrockModels\n\nexport const bedrockDefaultModelId: BedrockModelId = \"anthropic.claude-sonnet-4-20250514-v1:0\"\n\nexport const bedrockDefaultPromptRouterModelId: BedrockModelId = \"anthropic.claude-3-sonnet-20240229-v1:0\"\n\n// March, 12 2025 - updated prices to match US-West-2 list price shown at\n// https://aws.amazon.com/bedrock/pricing, including older models that are part\n// of the default prompt routers AWS enabled for GA of the promot router\n// feature.\nexport const bedrockModels = {\n\t\"amazon.nova-pro-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 3.2,\n\t\tcacheWritesPrice: 0.8, // per million tokens\n\t\tcacheReadsPrice: 0.2, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"amazon.nova-pro-latency-optimized-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 4.0,\n\t\tcacheWritesPrice: 1.0, // per million tokens\n\t\tcacheReadsPrice: 0.25, // per million tokens\n\t\tdescription: \"Amazon Nova Pro with latency optimized inference\",\n\t},\n\t\"amazon.nova-lite-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.06,\n\t\toutputPrice: 0.24,\n\t\tcacheWritesPrice: 0.06, // per million tokens\n\t\tcacheReadsPrice: 0.015, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"amazon.nova-micro-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.035,\n\t\toutputPrice: 0.14,\n\t\tcacheWritesPrice: 0.035, // per million tokens\n\t\tcacheReadsPrice: 0.00875, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"anthropic.claude-sonnet-4-20250514-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-opus-4-20250514-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-7-sonnet-20250219-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-sonnet-20241022-v2:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-haiku-20241022-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 4.0,\n\t\tcacheWritesPrice: 1.0,\n\t\tcacheReadsPrice: 0.08,\n\t\tminTokensPerCachePoint: 2048,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-sonnet-20240620-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t},\n\t\"anthropic.claude-3-opus-20240229-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t},\n\t\"anthropic.claude-3-sonnet-20240229-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t},\n\t\"anthropic.claude-3-haiku-20240307-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t},\n\t\"anthropic.claude-2-1-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 8.0,\n\t\toutputPrice: 24.0,\n\t\tdescription: \"Claude 2.1\",\n\t},\n\t\"anthropic.claude-2-0-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 8.0,\n\t\toutputPrice: 24.0,\n\t\tdescription: \"Claude 2.0\",\n\t},\n\t\"anthropic.claude-instant-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 2.4,\n\t\tdescription: \"Claude Instant\",\n\t},\n\t\"deepseek.r1-v1:0\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.35,\n\t\toutputPrice: 5.4,\n\t},\n\t\"meta.llama3-3-70b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.3 Instruct (70B)\",\n\t},\n\t\"meta.llama3-2-90b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.2 Instruct (90B)\",\n\t},\n\t\"meta.llama3-2-11b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.16,\n\t\toutputPrice: 0.16,\n\t\tdescription: \"Llama 3.2 Instruct (11B)\",\n\t},\n\t\"meta.llama3-2-3b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.15,\n\t\tdescription: \"Llama 3.2 Instruct (3B)\",\n\t},\n\t\"meta.llama3-2-1b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.1,\n\t\tdescription: \"Llama 3.2 Instruct (1B)\",\n\t},\n\t\"meta.llama3-1-405b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.4,\n\t\toutputPrice: 2.4,\n\t\tdescription: \"Llama 3.1 Instruct (405B)\",\n\t},\n\t\"meta.llama3-1-70b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.1 Instruct (70B)\",\n\t},\n\t\"meta.llama3-1-70b-instruct-latency-optimized-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.9,\n\t\toutputPrice: 0.9,\n\t\tdescription: \"Llama 3.1 Instruct (70B) (w/ latency optimized inference)\",\n\t},\n\t\"meta.llama3-1-8b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.22,\n\t\toutputPrice: 0.22,\n\t\tdescription: \"Llama 3.1 Instruct (8B)\",\n\t},\n\t\"meta.llama3-70b-instruct-v1:0\": {\n\t\tmaxTokens: 2048,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.65,\n\t\toutputPrice: 3.5,\n\t},\n\t\"meta.llama3-8b-instruct-v1:0\": {\n\t\tmaxTokens: 2048,\n\t\tcontextWindow: 4_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.6,\n\t},\n\t\"amazon.titan-text-lite-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.2,\n\t\tdescription: \"Amazon Titan Text Lite\",\n\t},\n\t\"amazon.titan-text-express-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.2,\n\t\toutputPrice: 0.6,\n\t\tdescription: \"Amazon Titan Text Express\",\n\t},\n\t\"amazon.titan-text-embeddings-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\tdescription: \"Amazon Titan Text Embeddings\",\n\t},\n\t\"amazon.titan-text-embeddings-v2:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.02,\n\t\tdescription: \"Amazon Titan Text Embeddings V2\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const BEDROCK_DEFAULT_TEMPERATURE = 0.3\n\nexport const BEDROCK_MAX_TOKENS = 4096\n\nexport const BEDROCK_DEFAULT_CONTEXT = 128_000\n\nexport const BEDROCK_REGION_INFO: Record<\n\tstring,\n\t{\n\t\tregionId: string\n\t\tdescription: string\n\t\tpattern?: string\n\t\tmultiRegion?: boolean\n\t}\n> = {\n\t/*\n\t * This JSON generated by AWS's AI assistant - Amazon Q on March 29, 2025\n\t *\n\t * - Africa (Cape Town) region does not appear to support Amazon Bedrock at this time.\n\t * - Some Asia Pacific regions, such as Asia Pacific (Hong Kong) and Asia Pacific (Jakarta), are not listed among the supported regions for Bedrock services.\n\t * - Middle East regions, including Middle East (Bahrain) and Middle East (UAE), are not mentioned in the list of supported regions for Bedrock. [3]\n\t * - China regions (Beijing and Ningxia) are not listed as supported for Amazon Bedrock.\n\t * - Some newer or specialized AWS regions may not have Bedrock support yet.\n\t */\n\t\"us.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\", pattern: \"us-\", multiRegion: true },\n\t\"use.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\" },\n\t\"use1.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\" },\n\t\"use2.\": { regionId: \"us-east-2\", description: \"US East (Ohio)\" },\n\t\"usw.\": { regionId: \"us-west-2\", description: \"US West (Oregon)\" },\n\t\"usw2.\": { regionId: \"us-west-2\", description: \"US West (Oregon)\" },\n\t\"ug.\": {\n\t\tregionId: \"us-gov-west-1\",\n\t\tdescription: \"AWS GovCloud (US-West)\",\n\t\tpattern: \"us-gov-\",\n\t\tmultiRegion: true,\n\t},\n\t\"uge1.\": { regionId: \"us-gov-east-1\", description: \"AWS GovCloud (US-East)\" },\n\t\"ugw1.\": { regionId: \"us-gov-west-1\", description: \"AWS GovCloud (US-West)\" },\n\t\"eu.\": { regionId: \"eu-west-1\", description: \"Europe (Ireland)\", pattern: \"eu-\", multiRegion: true },\n\t\"euw1.\": { regionId: \"eu-west-1\", description: \"Europe (Ireland)\" },\n\t\"euw2.\": { regionId: \"eu-west-2\", description: \"Europe (London)\" },\n\t\"euw3.\": { regionId: \"eu-west-3\", description: \"Europe (Paris)\" },\n\t\"euc1.\": { regionId: \"eu-central-1\", description: \"Europe (Frankfurt)\" },\n\t\"euc2.\": { regionId: \"eu-central-2\", description: \"Europe (Zurich)\" },\n\t\"eun1.\": { regionId: \"eu-north-1\", description: \"Europe (Stockholm)\" },\n\t\"eus1.\": { regionId: \"eu-south-1\", description: \"Europe (Milan)\" },\n\t\"eus2.\": { regionId: \"eu-south-2\", description: \"Europe (Spain)\" },\n\t\"ap.\": {\n\t\tregionId: \"ap-southeast-1\",\n\t\tdescription: \"Asia Pacific (Singapore)\",\n\t\tpattern: \"ap-\",\n\t\tmultiRegion: true,\n\t},\n\t\"ape1.\": { regionId: \"ap-east-1\", description: \"Asia Pacific (Hong Kong)\" },\n\t\"apne1.\": { regionId: \"ap-northeast-1\", description: \"Asia Pacific (Tokyo)\" },\n\t\"apne2.\": { regionId: \"ap-northeast-2\", description: \"Asia Pacific (Seoul)\" },\n\t\"apne3.\": { regionId: \"ap-northeast-3\", description: \"Asia Pacific (Osaka)\" },\n\t\"aps1.\": { regionId: \"ap-south-1\", description: \"Asia Pacific (Mumbai)\" },\n\t\"aps2.\": { regionId: \"ap-south-2\", description: \"Asia Pacific (Hyderabad)\" },\n\t\"apse1.\": { regionId: \"ap-southeast-1\", description: \"Asia Pacific (Singapore)\" },\n\t\"apse2.\": { regionId: \"ap-southeast-2\", description: \"Asia Pacific (Sydney)\" },\n\t\"ca.\": { regionId: \"ca-central-1\", description: \"Canada (Central)\", pattern: \"ca-\", multiRegion: true },\n\t\"cac1.\": { regionId: \"ca-central-1\", description: \"Canada (Central)\" },\n\t\"sa.\": { regionId: \"sa-east-1\", description: \"South America (São Paulo)\", pattern: \"sa-\", multiRegion: true },\n\t\"sae1.\": { regionId: \"sa-east-1\", description: \"South America (São Paulo)\" },\n\n\t// These are not official - they weren't generated by Amazon Q nor were\n\t// found in the AWS documentation but another Roo contributor found apac.\n\t// Was needed so I've added the pattern of the other geo zones.\n\t\"apac.\": { regionId: \"ap-southeast-1\", description: \"Default APAC region\", pattern: \"ap-\", multiRegion: true },\n\t\"emea.\": { regionId: \"eu-west-1\", description: \"Default EMEA region\", pattern: \"eu-\", multiRegion: true },\n\t\"amer.\": { regionId: \"us-east-1\", description: \"Default Americas region\", pattern: \"us-\", multiRegion: true },\n}\n\nexport const BEDROCK_REGIONS = Object.values(BEDROCK_REGION_INFO)\n\t// Extract all region IDs\n\t.map((info) => ({ value: info.regionId, label: info.regionId }))\n\t// Filter to unique region IDs (remove duplicates)\n\t.filter((region, index, self) => index === self.findIndex((r) => r.value === region.value))\n\t// Sort alphabetically by region ID\n\t.sort((a, b) => a.value.localeCompare(b.value))\n","import type { ModelInfo } from \"../model.js\"\n\n// https://llm.chutes.ai/v1 (OpenAI compatible)\nexport type ChutesModelId =\n\t| \"deepseek-ai/DeepSeek-R1-0528\"\n\t| \"deepseek-ai/DeepSeek-R1\"\n\t| \"deepseek-ai/DeepSeek-V3\"\n\t| \"unsloth/Llama-3.3-70B-Instruct\"\n\t| \"chutesai/Llama-4-Scout-17B-16E-Instruct\"\n\t| \"unsloth/Mistral-Nemo-Instruct-2407\"\n\t| \"unsloth/gemma-3-12b-it\"\n\t| \"NousResearch/DeepHermes-3-Llama-3-8B-Preview\"\n\t| \"unsloth/gemma-3-4b-it\"\n\t| \"nvidia/Llama-3_3-Nemotron-Super-49B-v1\"\n\t| \"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1\"\n\t| \"chutesai/Llama-4-Maverick-17B-128E-Instruct-FP8\"\n\t| \"deepseek-ai/DeepSeek-V3-Base\"\n\t| \"deepseek-ai/DeepSeek-R1-Zero\"\n\t| \"deepseek-ai/DeepSeek-V3-0324\"\n\t| \"Qwen/Qwen3-235B-A22B\"\n\t| \"Qwen/Qwen3-32B\"\n\t| \"Qwen/Qwen3-30B-A3B\"\n\t| \"Qwen/Qwen3-14B\"\n\t| \"Qwen/Qwen3-8B\"\n\t| \"microsoft/MAI-DS-R1-FP8\"\n\t| \"tngtech/DeepSeek-R1T-Chimera\"\n\nexport const chutesDefaultModelId: ChutesModelId = \"deepseek-ai/DeepSeek-R1-0528\"\n\nexport const chutesModels = {\n\t\"deepseek-ai/DeepSeek-R1-0528\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 0528 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-R1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 model.\",\n\t},\n\t\"unsloth/Llama-3.3-70B-Instruct\": {\n\t\tmaxTokens: 32768, // From Groq\n\t\tcontextWindow: 131072, // From Groq\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Llama 3.3 70B Instruct model.\",\n\t},\n\t\"chutesai/Llama-4-Scout-17B-16E-Instruct\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 512000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"ChutesAI Llama 4 Scout 17B Instruct model, 512K context.\",\n\t},\n\t\"unsloth/Mistral-Nemo-Instruct-2407\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 128000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Mistral Nemo Instruct model.\",\n\t},\n\t\"unsloth/gemma-3-12b-it\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Gemma 3 12B IT model.\",\n\t},\n\t\"NousResearch/DeepHermes-3-Llama-3-8B-Preview\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nous DeepHermes 3 Llama 3 8B Preview model.\",\n\t},\n\t\"unsloth/gemma-3-4b-it\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Gemma 3 4B IT model.\",\n\t},\n\t\"nvidia/Llama-3_3-Nemotron-Super-49B-v1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nvidia Llama 3.3 Nemotron Super 49B model.\",\n\t},\n\t\"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nvidia Llama 3.1 Nemotron Ultra 253B model.\",\n\t},\n\t\"chutesai/Llama-4-Maverick-17B-128E-Instruct-FP8\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 256000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"ChutesAI Llama 4 Maverick 17B Instruct FP8 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3-Base\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 Base model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-R1-Zero\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 Zero model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3-0324\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 (0324) model.\",\n\t},\n\t\"Qwen/Qwen3-235B-A22B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 235B A22B model.\",\n\t},\n\t\"Qwen/Qwen3-32B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 32B model.\",\n\t},\n\t\"Qwen/Qwen3-30B-A3B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 30B A3B model.\",\n\t},\n\t\"Qwen/Qwen3-14B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 14B model.\",\n\t},\n\t\"Qwen/Qwen3-8B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 8B model.\",\n\t},\n\t\"microsoft/MAI-DS-R1-FP8\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Microsoft MAI-DS-R1 FP8 model.\",\n\t},\n\t\"tngtech/DeepSeek-R1T-Chimera\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"TNGTech DeepSeek R1T Chimera model.\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://platform.deepseek.com/docs/api\nexport type DeepSeekModelId = keyof typeof deepSeekModels\n\nexport const deepSeekDefaultModelId: DeepSeekModelId = \"deepseek-chat\"\n\nexport const deepSeekModels = {\n\t\"deepseek-chat\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 64_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.27, // $0.27 per million tokens (cache miss)\n\t\toutputPrice: 1.1, // $1.10 per million tokens\n\t\tcacheWritesPrice: 0.27, // $0.27 per million tokens (cache miss)\n\t\tcacheReadsPrice: 0.07, // $0.07 per million tokens (cache hit).\n\t\tdescription: `DeepSeek-V3 achieves a significant breakthrough in inference speed over previous models. It tops the leaderboard among open-source models and rivals the most advanced closed-source models globally.`,\n\t},\n\t\"deepseek-reasoner\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 64_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.55, // $0.55 per million tokens (cache miss)\n\t\toutputPrice: 2.19, // $2.19 per million tokens\n\t\tcacheWritesPrice: 0.55, // $0.55 per million tokens (cache miss)\n\t\tcacheReadsPrice: 0.14, // $0.14 per million tokens (cache hit)\n\t\tdescription: `DeepSeek-R1 achieves performance comparable to OpenAI-o1 across math, code, and reasoning tasks. Supports Chain of Thought reasoning with up to 32K tokens.`,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const DEEP_SEEK_DEFAULT_TEMPERATURE = 0.6\n","import type { ModelInfo } from \"../model.js\"\n\n// https://ai.google.dev/gemini-api/docs/models/gemini\nexport type GeminiModelId = keyof typeof geminiModels\n\nexport const geminiDefaultModelId: GeminiModelId = \"gemini-2.0-flash-001\"\n\nexport const geminiModels = {\n\t\"gemini-2.5-flash-preview-04-17:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-04-17\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-flash-preview-05-20:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-05-20\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t},\n\t\"gemini-2.5-pro-exp-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.5-pro-preview-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5, // This is the pricing for prompts above 200k tokens.\n\t\toutputPrice: 15,\n\t\tcacheReadsPrice: 0.625,\n\t\tcacheWritesPrice: 4.5,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 200_000,\n\t\t\t\tinputPrice: 1.25,\n\t\t\t\toutputPrice: 10,\n\t\t\t\tcacheReadsPrice: 0.31,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 2.5,\n\t\t\t\toutputPrice: 15,\n\t\t\t\tcacheReadsPrice: 0.625,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-2.5-pro-preview-05-06\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5, // This is the pricing for prompts above 200k tokens.\n\t\toutputPrice: 15,\n\t\tcacheReadsPrice: 0.625,\n\t\tcacheWritesPrice: 4.5,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 200_000,\n\t\t\t\tinputPrice: 1.25,\n\t\t\t\toutputPrice: 10,\n\t\t\t\tcacheReadsPrice: 0.31,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 2.5,\n\t\t\t\toutputPrice: 15,\n\t\t\t\tcacheReadsPrice: 0.625,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.4,\n\t\tcacheReadsPrice: 0.025,\n\t\tcacheWritesPrice: 1.0,\n\t},\n\t\"gemini-2.0-flash-lite-preview-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-pro-exp-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-01-21\": {\n\t\tmaxTokens: 65_536,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-1219\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32_767,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-exp\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15, // This is the pricing for prompts above 128k tokens.\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 128_000,\n\t\t\t\tinputPrice: 0.075,\n\t\t\t\toutputPrice: 0.3,\n\t\t\t\tcacheReadsPrice: 0.01875,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 0.15,\n\t\t\t\toutputPrice: 0.6,\n\t\t\t\tcacheReadsPrice: 0.0375,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-1.5-flash-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-8b-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-pro-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-pro-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-exp-1206\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://glama.ai/models\nexport const glamaDefaultModelId = \"anthropic/claude-3-7-sonnet\"\n\nexport const glamaDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and extended, step-by-step processing for complex tasks. The model demonstrates notable improvements in coding, particularly in front-end development and full-stack updates, and excels in agentic workflows, where it can autonomously navigate multi-step processes. Claude 3.7 Sonnet maintains performance parity with its predecessor in standard mode while offering an extended reasoning mode for enhanced accuracy in math, coding, and instruction-following tasks. Read more at the [blog post here](https://www.anthropic.com/news/claude-3-7-sonnet)\",\n}\n\nexport const GLAMA_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://console.groq.com/docs/models\nexport type GroqModelId =\n\t| \"llama-3.1-8b-instant\"\n\t| \"llama-3.3-70b-versatile\"\n\t| \"meta-llama/llama-4-scout-17b-16e-instruct\"\n\t| \"meta-llama/llama-4-maverick-17b-128e-instruct\"\n\t| \"mistral-saba-24b\"\n\t| \"qwen-qwq-32b\"\n\t| \"deepseek-r1-distill-llama-70b\"\n\nexport const groqDefaultModelId: GroqModelId = \"llama-3.3-70b-versatile\" // Defaulting to Llama3 70B Versatile\n\nexport const groqModels = {\n\t// Models based on API response: https://api.groq.com/openai/v1/models\n\t\"llama-3.1-8b-instant\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 3.1 8B Instant model, 128K context.\",\n\t},\n\t\"llama-3.3-70b-versatile\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 3.3 70B Versatile model, 128K context.\",\n\t},\n\t\"meta-llama/llama-4-scout-17b-16e-instruct\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 4 Scout 17B Instruct model, 128K context.\",\n\t},\n\t\"meta-llama/llama-4-maverick-17b-128e-instruct\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 4 Maverick 17B Instruct model, 128K context.\",\n\t},\n\t\"mistral-saba-24b\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Mistral Saba 24B model, 32K context.\",\n\t},\n\t\"qwen-qwq-32b\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Alibaba Qwen QwQ 32B model, 128K context.\",\n\t},\n\t\"deepseek-r1-distill-llama-70b\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 Distill Llama 70B model, 128K context.\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.litellm.ai/\nexport const litellmDefaultModelId = \"claude-3-7-sonnet-20250219\"\n\nexport const litellmDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n}\n\nexport const LITELLM_COMPUTER_USE_MODELS = new Set([\n\t\"claude-3-5-sonnet-latest\",\n\t\"claude-opus-4-20250514\",\n\t\"claude-sonnet-4-20250514\",\n\t\"claude-3-7-sonnet-latest\",\n\t\"claude-3-7-sonnet-20250219\",\n\t\"claude-3-5-sonnet-20241022\",\n\t\"vertex_ai/claude-3-5-sonnet\",\n\t\"vertex_ai/claude-3-5-sonnet-v2\",\n\t\"vertex_ai/claude-3-5-sonnet-v2@20241022\",\n\t\"vertex_ai/claude-3-7-sonnet@20250219\",\n\t\"vertex_ai/claude-opus-4@20250514\",\n\t\"vertex_ai/claude-sonnet-4@20250514\",\n\t\"openrouter/anthropic/claude-3.5-sonnet\",\n\t\"openrouter/anthropic/claude-3.5-sonnet:beta\",\n\t\"openrouter/anthropic/claude-3.7-sonnet\",\n\t\"openrouter/anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic.claude-opus-4-20250514-v1:0\",\n\t\"anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"us.anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"us.anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"us.anthropic.claude-opus-4-20250514-v1:0\",\n\t\"us.anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"eu.anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"eu.anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"eu.anthropic.claude-opus-4-20250514-v1:0\",\n\t\"eu.anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"snowflake/claude-3-5-sonnet\",\n])\n","export const LMSTUDIO_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.mistral.ai/getting-started/models/models_overview/\nexport type MistralModelId = keyof typeof mistralModels\n\nexport const mistralDefaultModelId: MistralModelId = \"codestral-latest\"\n\nexport const mistralModels = {\n\t\"codestral-latest\": {\n\t\tmaxTokens: 256_000,\n\t\tcontextWindow: 256_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.9,\n\t},\n\t\"mistral-large-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 6.0,\n\t},\n\t\"ministral-8b-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.1,\n\t},\n\t\"ministral-3b-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.04,\n\t\toutputPrice: 0.04,\n\t},\n\t\"mistral-small-latest\": {\n\t\tmaxTokens: 32_000,\n\t\tcontextWindow: 32_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.2,\n\t\toutputPrice: 0.6,\n\t},\n\t\"pixtral-large-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 6.0,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const MISTRAL_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://openai.com/api/pricing/\nexport type OpenAiNativeModelId = keyof typeof openAiNativeModels\n\nexport const openAiNativeDefaultModelId: OpenAiNativeModelId = \"gpt-4.1\"\n\nexport const openAiNativeModels = {\n\t\"gpt-4.1\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2,\n\t\toutputPrice: 8,\n\t\tcacheReadsPrice: 0.5,\n\t},\n\t\"gpt-4.1-mini\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.4,\n\t\toutputPrice: 1.6,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"gpt-4.1-nano\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.4,\n\t\tcacheReadsPrice: 0.025,\n\t},\n\to3: {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 10.0,\n\t\toutputPrice: 40.0,\n\t\tcacheReadsPrice: 2.5,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o3-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 10.0,\n\t\toutputPrice: 40.0,\n\t\tcacheReadsPrice: 2.5,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o3-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 10.0,\n\t\toutputPrice: 40.0,\n\t\tcacheReadsPrice: 2.5,\n\t\treasoningEffort: \"low\",\n\t},\n\t\"o4-mini\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o4-mini-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o4-mini-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\treasoningEffort: \"low\",\n\t},\n\t\"o3-mini\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o3-mini-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o3-mini-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\treasoningEffort: \"low\",\n\t},\n\to1: {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15,\n\t\toutputPrice: 60,\n\t\tcacheReadsPrice: 7.5,\n\t},\n\t\"o1-preview\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15,\n\t\toutputPrice: 60,\n\t\tcacheReadsPrice: 7.5,\n\t},\n\t\"o1-mini\": {\n\t\tmaxTokens: 65_536,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t},\n\t\"gpt-4.5-preview\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 75,\n\t\toutputPrice: 150,\n\t\tcacheReadsPrice: 37.5,\n\t},\n\t\"gpt-4o\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 10,\n\t\tcacheReadsPrice: 1.25,\n\t},\n\t\"gpt-4o-mini\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.075,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const openAiModelInfoSaneDefaults: ModelInfo = {\n\tmaxTokens: -1,\n\tcontextWindow: 128_000,\n\tsupportsImages: true,\n\tsupportsPromptCache: false,\n\tinputPrice: 0,\n\toutputPrice: 0,\n}\n\n// https://learn.microsoft.com/en-us/azure/ai-services/openai/api-version-deprecation\n// https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#api-specs\nexport const azureOpenAiDefaultApiVersion = \"2024-08-01-preview\"\n\nexport const OPENAI_NATIVE_DEFAULT_TEMPERATURE = 0\n\nexport const OPENAI_AZURE_AI_INFERENCE_PATH = \"/models/chat/completions\"\n","import type { ModelInfo } from \"../model.js\"\n\n// https://openrouter.ai/models?order=newest&supported_parameters=tools\nexport const openRouterDefaultModelId = \"anthropic/claude-sonnet-4\"\n\nexport const openRouterDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and extended, step-by-step processing for complex tasks. The model demonstrates notable improvements in coding, particularly in front-end development and full-stack updates, and excels in agentic workflows, where it can autonomously navigate multi-step processes. Claude 3.7 Sonnet maintains performance parity with its predecessor in standard mode while offering an extended reasoning mode for enhanced accuracy in math, coding, and instruction-following tasks. Read more at the [blog post here](https://www.anthropic.com/news/claude-3-7-sonnet)\",\n}\n\nexport const OPENROUTER_DEFAULT_PROVIDER_NAME = \"[default]\"\n\nexport const OPEN_ROUTER_PROMPT_CACHING_MODELS = new Set([\n\t\"anthropic/claude-3-haiku\",\n\t\"anthropic/claude-3-haiku:beta\",\n\t\"anthropic/claude-3-opus\",\n\t\"anthropic/claude-3-opus:beta\",\n\t\"anthropic/claude-3-sonnet\",\n\t\"anthropic/claude-3-sonnet:beta\",\n\t\"anthropic/claude-3.5-haiku\",\n\t\"anthropic/claude-3.5-haiku-20241022\",\n\t\"anthropic/claude-3.5-haiku-20241022:beta\",\n\t\"anthropic/claude-3.5-haiku:beta\",\n\t\"anthropic/claude-3.5-sonnet\",\n\t\"anthropic/claude-3.5-sonnet-20240620\",\n\t\"anthropic/claude-3.5-sonnet-20240620:beta\",\n\t\"anthropic/claude-3.5-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet\",\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"anthropic/claude-opus-4\",\n\t\"google/gemini-2.5-pro-preview\",\n\t\"google/gemini-2.5-flash-preview\",\n\t\"google/gemini-2.5-flash-preview:thinking\",\n\t\"google/gemini-2.5-flash-preview-05-20\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n\t\"google/gemini-2.0-flash-001\",\n\t\"google/gemini-flash-1.5\",\n\t\"google/gemini-flash-1.5-8b\",\n])\n\n// https://www.anthropic.com/news/3-5-models-and-computer-use\nexport const OPEN_ROUTER_COMPUTER_USE_MODELS = new Set([\n\t\"anthropic/claude-3.5-sonnet\",\n\t\"anthropic/claude-3.5-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet\",\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"anthropic/claude-opus-4\",\n])\n\nexport const OPEN_ROUTER_REASONING_BUDGET_MODELS = new Set([\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"anthropic/claude-opus-4\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"google/gemini-2.5-flash-preview-05-20\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n])\n\nexport const OPEN_ROUTER_REQUIRED_REASONING_BUDGET_MODELS = new Set([\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n])\n","import type { ModelInfo } from \"../model.js\"\n\n// Requesty\n// https://requesty.ai/router-2\nexport const requestyDefaultModelId = \"coding/claude-4-sonnet\"\n\nexport const requestyDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"The best coding model, optimized by Requesty, and automatically routed to the fastest provider. Claude 4 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities.\",\n}\n","import type { ModelInfo } from \"../model.js\"\n\nexport const unboundDefaultModelId = \"anthropic/claude-3-7-sonnet-20250219\"\n\nexport const unboundDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n}\n","import type { ModelInfo } from \"../model.js\"\n\n// https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-claude\nexport type VertexModelId = keyof typeof vertexModels\n\nexport const vertexDefaultModelId: VertexModelId = \"claude-sonnet-4@20250514\"\n\nexport const vertexModels = {\n\t\"gemini-2.5-flash-preview-05-20:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-05-20\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-flash-preview-04-17:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-04-17\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-pro-preview-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 15,\n\t},\n\t\"gemini-2.5-pro-preview-05-06\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 15,\n\t},\n\t\"gemini-2.5-pro-exp-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-pro-exp-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.0-flash-lite-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.075,\n\t\toutputPrice: 0.3,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-01-21\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32_768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.075,\n\t\toutputPrice: 0.3,\n\t},\n\t\"gemini-1.5-pro-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.25,\n\t\toutputPrice: 5,\n\t},\n\t\"claude-sonnet-4@20250514\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-opus-4@20250514\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-7-sonnet@20250219:thinking\": {\n\t\tmaxTokens: 64_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet@20250219\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-sonnet-v2@20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-sonnet@20240620\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-haiku@20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 5.0,\n\t\tcacheWritesPrice: 1.25,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"claude-3-opus@20240229\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-haiku@20240307\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t\tcacheWritesPrice: 0.3,\n\t\tcacheReadsPrice: 0.03,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const VERTEX_REGIONS = [\n\t{ value: \"us-east5\", label: \"us-east5\" },\n\t{ value: \"us-central1\", label: \"us-central1\" },\n\t{ value: \"europe-west1\", label: \"europe-west1\" },\n\t{ value: \"europe-west4\", label: \"europe-west4\" },\n\t{ value: \"asia-southeast1\", label: \"asia-southeast1\" },\n]\n","import type { ModelInfo } from \"../model.js\"\n\nexport type VscodeLlmModelId = keyof typeof vscodeLlmModels\n\nexport const vscodeLlmDefaultModelId: VscodeLlmModelId = \"claude-3.5-sonnet\"\n\nexport const vscodeLlmModels = {\n\t\"gpt-3.5-turbo\": {\n\t\tcontextWindow: 12114,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-3.5-turbo\",\n\t\tversion: \"gpt-3.5-turbo-0613\",\n\t\tname: \"GPT 3.5 Turbo\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 12114,\n\t},\n\t\"gpt-4o-mini\": {\n\t\tcontextWindow: 12115,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4o-mini\",\n\t\tversion: \"gpt-4o-mini-2024-07-18\",\n\t\tname: \"GPT-4o mini\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 12115,\n\t},\n\t\"gpt-4\": {\n\t\tcontextWindow: 28501,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4\",\n\t\tversion: \"gpt-4-0613\",\n\t\tname: \"GPT 4\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 28501,\n\t},\n\t\"gpt-4-0125-preview\": {\n\t\tcontextWindow: 63826,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4-turbo\",\n\t\tversion: \"gpt-4-0125-preview\",\n\t\tname: \"GPT 4 Turbo\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63826,\n\t},\n\t\"gpt-4o\": {\n\t\tcontextWindow: 63827,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4o\",\n\t\tversion: \"gpt-4o-2024-11-20\",\n\t\tname: \"GPT-4o\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63827,\n\t},\n\to1: {\n\t\tcontextWindow: 19827,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o1-ga\",\n\t\tversion: \"o1-2024-12-17\",\n\t\tname: \"o1 (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 19827,\n\t},\n\t\"o3-mini\": {\n\t\tcontextWindow: 63827,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o3-mini\",\n\t\tversion: \"o3-mini-2025-01-31\",\n\t\tname: \"o3-mini\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63827,\n\t},\n\t\"claude-3.5-sonnet\": {\n\t\tcontextWindow: 81638,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"claude-3.5-sonnet\",\n\t\tversion: \"claude-3.5-sonnet\",\n\t\tname: \"Claude 3.5 Sonnet\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 81638,\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tcontextWindow: 127827,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gemini-2.0-flash\",\n\t\tversion: \"gemini-2.0-flash-001\",\n\t\tname: \"Gemini 2.0 Flash\",\n\t\tsupportsToolCalling: false,\n\t\tmaxInputTokens: 127827,\n\t},\n\t\"gemini-2.5-pro\": {\n\t\tcontextWindow: 63830,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gemini-2.5-pro\",\n\t\tversion: \"gemini-2.5-pro-preview-03-25\",\n\t\tname: \"Gemini 2.5 Pro (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63830,\n\t},\n\t\"o4-mini\": {\n\t\tcontextWindow: 111446,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o4-mini\",\n\t\tversion: \"o4-mini-2025-04-16\",\n\t\tname: \"o4-mini (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 111446,\n\t},\n\t\"gpt-4.1\": {\n\t\tcontextWindow: 111446,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4.1\",\n\t\tversion: \"gpt-4.1-2025-04-14\",\n\t\tname: \"GPT-4.1 (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 111446,\n\t},\n} as const satisfies Record<\n\tstring,\n\tModelInfo & {\n\t\tfamily: string\n\t\tversion: string\n\t\tname: string\n\t\tsupportsToolCalling: boolean\n\t\tmaxInputTokens: number\n\t}\n>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.x.ai/docs/api-reference\nexport type XAIModelId = keyof typeof xaiModels\n\nexport const xaiDefaultModelId: XAIModelId = \"grok-3\"\n\nexport const xaiModels = {\n\t\"grok-3-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok-3 beta model with 131K context window\",\n\t},\n\t\"grok-3-fast-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 25.0,\n\t\tdescription: \"xAI's Grok-3 fast beta model with 131K context window\",\n\t},\n\t\"grok-3-mini-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.5,\n\t\tdescription: \"xAI's Grok-3 mini beta model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3-mini-fast-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.6,\n\t\toutputPrice: 4.0,\n\t\tdescription: \"xAI's Grok-3 mini fast beta model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok-3 model with 131K context window\",\n\t},\n\t\"grok-3-fast\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 25.0,\n\t\tdescription: \"xAI's Grok-3 fast model with 131K context window\",\n\t},\n\t\"grok-3-mini\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.5,\n\t\tdescription: \"xAI's Grok-3 mini model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3-mini-fast\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.6,\n\t\toutputPrice: 4.0,\n\t\tdescription: \"xAI's Grok-3 mini fast model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-2-latest\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model - latest version with 131K context window\",\n\t},\n\t\"grok-2\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model with 131K context window\",\n\t},\n\t\"grok-2-1212\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model (version 1212) with 131K context window\",\n\t},\n\t\"grok-2-vision-latest\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model - latest version with image support and 32K context window\",\n\t},\n\t\"grok-2-vision\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model with image support and 32K context window\",\n\t},\n\t\"grok-2-vision-1212\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model (version 1212) with image support and 32K context window\",\n\t},\n\t\"grok-vision-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8192,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok Vision Beta model with image support and 8K context window\",\n\t},\n\t\"grok-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok Beta model (legacy) with 131K context window\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import { z } from \"zod\"\n\n/**\n * CodebaseIndexConfig\n */\n\nexport const codebaseIndexConfigSchema = z.object({\n\tcodebaseIndexEnabled: z.boolean().optional(),\n\tcodebaseIndexQdrantUrl: z.string().optional(),\n\tcodebaseIndexEmbedderProvider: z.enum([\"openai\", \"ollama\"]).optional(),\n\tcodebaseIndexEmbedderBaseUrl: z.string().optional(),\n\tcodebaseIndexEmbedderModelId: z.string().optional(),\n})\n\nexport type CodebaseIndexConfig = z.infer<typeof codebaseIndexConfigSchema>\n\n/**\n * CodebaseIndexModels\n */\n\nexport const codebaseIndexModelsSchema = z.object({\n\topenai: z.record(z.string(), z.object({ dimension: z.number() })).optional(),\n\tollama: z.record(z.string(), z.object({ dimension: z.number() })).optional(),\n})\n\nexport type CodebaseIndexModels = z.infer<typeof codebaseIndexModelsSchema>\n\n/**\n * CdebaseIndexProvider\n */\n\nexport const codebaseIndexProviderSchema = z.object({\n\tcodeIndexOpenAiKey: z.string().optional(),\n\tcodeIndexQdrantApiKey: z.string().optional(),\n})\n\nexport type CodebaseIndexProvider = z.infer<typeof codebaseIndexProviderSchema>\n","import { z } from \"zod\"\n\nimport { globalSettingsSchema } from \"./global-settings.js\"\n\n/**\n * CloudUserInfo\n */\n\nexport interface CloudUserInfo {\n\tname?: string\n\temail?: string\n\tpicture?: string\n}\n\n/**\n * OrganizationAllowList\n */\n\nexport const organizationAllowListSchema = z.object({\n\tallowAll: z.boolean(),\n\tproviders: z.record(\n\t\tz.object({\n\t\t\tallowAll: z.boolean(),\n\t\t\tmodels: z.array(z.string()).optional(),\n\t\t}),\n\t),\n})\n\nexport type OrganizationAllowList = z.infer<typeof organizationAllowListSchema>\n\n/**\n * OrganizationDefaultSettings\n */\n\nexport const organizationDefaultSettingsSchema = globalSettingsSchema\n\t.pick({\n\t\tenableCheckpoints: true,\n\t\tfuzzyMatchThreshold: true,\n\t\tmaxOpenTabsContext: true,\n\t\tmaxReadFileLine: true,\n\t\tmaxWorkspaceFiles: true,\n\t\tshowRooIgnoredFiles: true,\n\t\tterminalCommandDelay: true,\n\t\tterminalCompressProgressBar: true,\n\t\tterminalOutputLineLimit: true,\n\t\tterminalShellIntegrationDisabled: true,\n\t\tterminalShellIntegrationTimeout: true,\n\t\tterminalZshClearEolMark: true,\n\t})\n\t// Add stronger validations for some fields.\n\t.merge(\n\t\tz.object({\n\t\t\tmaxOpenTabsContext: z.number().int().nonnegative().optional(),\n\t\t\tmaxReadFileLine: z.number().int().gte(-1).optional(),\n\t\t\tmaxWorkspaceFiles: z.number().int().nonnegative().optional(),\n\t\t\tterminalCommandDelay: z.number().int().nonnegative().optional(),\n\t\t\tterminalOutputLineLimit: z.number().int().nonnegative().optional(),\n\t\t\tterminalShellIntegrationTimeout: z.number().int().nonnegative().optional(),\n\t\t}),\n\t)\n\nexport type OrganizationDefaultSettings = z.infer<typeof organizationDefaultSettingsSchema>\n\n/**\n * OrganizationCloudSettings\n */\n\nexport const organizationCloudSettingsSchema = z.object({\n\trecordTaskMessages: z.boolean().optional(),\n\tenableTaskSharing: z.boolean().optional(),\n\ttaskShareExpirationDays: z.number().int().positive().optional(),\n})\n\nexport type OrganizationCloudSettings = z.infer<typeof organizationCloudSettingsSchema>\n\n/**\n * Organization Settings\n */\n\nexport const organizationSettingsSchema = z.object({\n\tversion: z.number(),\n\tcloudSettings: organizationCloudSettingsSchema.optional(),\n\tdefaultSettings: organizationDefaultSettingsSchema,\n\tallowList: organizationAllowListSchema,\n})\n\nexport type OrganizationSettings = z.infer<typeof organizationSettingsSchema>\n\n/**\n * Constants\n */\n\nexport const ORGANIZATION_ALLOW_ALL: OrganizationAllowList = {\n\tallowAll: true,\n\tproviders: {},\n} as const\n\nexport const ORGANIZATION_DEFAULT: OrganizationSettings = {\n\tversion: 0,\n\tcloudSettings: {\n\t\tenableTaskSharing: true,\n\t\ttaskShareExpirationDays: 30,\n\t},\n\tdefaultSettings: {},\n\tallowList: ORGANIZATION_ALLOW_ALL,\n} as const\n","import { z } from \"zod\"\n\nimport { type Keys, keysOf } from \"./type-fu.js\"\nimport {\n\ttype ProviderSettings,\n\tPROVIDER_SETTINGS_KEYS,\n\tproviderSettingsEntrySchema,\n\tproviderSettingsSchema,\n} from \"./provider-settings.js\"\nimport { historyItemSchema } from \"./history.js\"\nimport { codebaseIndexModelsSchema, codebaseIndexConfigSchema } from \"./codebase-index.js\"\nimport { experimentsSchema } from \"./experiment.js\"\nimport { telemetrySettingsSchema } from \"./telemetry.js\"\nimport { modeConfigSchema } from \"./mode.js\"\nimport { customModePromptsSchema, customSupportPromptsSchema } from \"./mode.js\"\nimport { languagesSchema } from \"./vscode.js\"\n\n/**\n * GlobalSettings\n */\n\nexport const globalSettingsSchema = z.object({\n\tcurrentApiConfigName: z.string().optional(),\n\tlistApiConfigMeta: z.array(providerSettingsEntrySchema).optional(),\n\tpinnedApiConfigs: z.record(z.string(), z.boolean()).optional(),\n\n\tlastShownAnnouncementId: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n\ttaskHistory: z.array(historyItemSchema).optional(),\n\n\tcondensingApiConfigId: z.string().optional(),\n\tcustomCondensingPrompt: z.string().optional(),\n\n\tautoApprovalEnabled: z.boolean().optional(),\n\talwaysAllowReadOnly: z.boolean().optional(),\n\talwaysAllowReadOnlyOutsideWorkspace: z.boolean().optional(),\n\talwaysAllowWrite: z.boolean().optional(),\n\talwaysAllowWriteOutsideWorkspace: z.boolean().optional(),\n\twriteDelayMs: z.number().optional(),\n\talwaysAllowBrowser: z.boolean().optional(),\n\talwaysApproveResubmit: z.boolean().optional(),\n\trequestDelaySeconds: z.number().optional(),\n\talwaysAllowMcp: z.boolean().optional(),\n\talwaysAllowModeSwitch: z.boolean().optional(),\n\talwaysAllowSubtasks: z.boolean().optional(),\n\talwaysAllowExecute: z.boolean().optional(),\n\tallowedCommands: z.array(z.string()).optional(),\n\tallowedMaxRequests: z.number().nullish(),\n\tautoCondenseContext: z.boolean().optional(),\n\tautoCondenseContextPercent: z.number().optional(),\n \tmaxConcurrentFileReads: z.number().optional(),\n\n\tbrowserToolEnabled: z.boolean().optional(),\n\tbrowserViewportSize: z.string().optional(),\n\tscreenshotQuality: z.number().optional(),\n\tremoteBrowserEnabled: z.boolean().optional(),\n\tremoteBrowserHost: z.string().optional(),\n\tcachedChromeHostUrl: z.string().optional(),\n\n\tenableCheckpoints: z.boolean().optional(),\n\n\tttsEnabled: z.boolean().optional(),\n\tttsSpeed: z.number().optional(),\n\tsoundEnabled: z.boolean().optional(),\n\tsoundVolume: z.number().optional(),\n\n\tmaxOpenTabsContext: z.number().optional(),\n\tmaxWorkspaceFiles: z.number().optional(),\n\tshowRooIgnoredFiles: z.boolean().optional(),\n\tmaxReadFileLine: z.number().optional(),\n\n\tterminalOutputLineLimit: z.number().optional(),\n\tterminalShellIntegrationTimeout: z.number().optional(),\n\tterminalShellIntegrationDisabled: z.boolean().optional(),\n\tterminalCommandDelay: z.number().optional(),\n\tterminalPowershellCounter: z.boolean().optional(),\n\tterminalZshClearEolMark: z.boolean().optional(),\n\tterminalZshOhMy: z.boolean().optional(),\n\tterminalZshP10k: z.boolean().optional(),\n\tterminalZdotdir: z.boolean().optional(),\n\tterminalCompressProgressBar: z.boolean().optional(),\n\n\trateLimitSeconds: z.number().optional(),\n\tdiffEnabled: z.boolean().optional(),\n\tfuzzyMatchThreshold: z.number().optional(),\n\texperiments: experimentsSchema.optional(),\n\n\tcodebaseIndexModels: codebaseIndexModelsSchema.optional(),\n\tcodebaseIndexConfig: codebaseIndexConfigSchema.optional(),\n\n\tlanguage: languagesSchema.optional(),\n\n\ttelemetrySetting: telemetrySettingsSchema.optional(),\n\n\tmcpEnabled: z.boolean().optional(),\n\tenableMcpServerCreation: z.boolean().optional(),\n\n\tmode: z.string().optional(),\n\tmodeApiConfigs: z.record(z.string(), z.string()).optional(),\n\tcustomModes: z.array(modeConfigSchema).optional(),\n\tcustomModePrompts: customModePromptsSchema.optional(),\n\tcustomSupportPrompts: customSupportPromptsSchema.optional(),\n\tenhancementApiConfigId: z.string().optional(),\n\thistoryPreviewCollapsed: z.boolean().optional(),\n})\n\nexport type GlobalSettings = z.infer<typeof globalSettingsSchema>\n\nexport const GLOBAL_SETTINGS_KEYS = keysOf<GlobalSettings>()([\n\t\"currentApiConfigName\",\n\t\"listApiConfigMeta\",\n\t\"pinnedApiConfigs\",\n\n\t\"lastShownAnnouncementId\",\n\t\"customInstructions\",\n\t\"taskHistory\",\n\n\t\"condensingApiConfigId\",\n\t\"customCondensingPrompt\",\n\n\t\"autoApprovalEnabled\",\n\t\"alwaysAllowReadOnly\",\n\t\"alwaysAllowReadOnlyOutsideWorkspace\",\n\t\"alwaysAllowWrite\",\n\t\"alwaysAllowWriteOutsideWorkspace\",\n\t\"writeDelayMs\",\n\t\"alwaysAllowBrowser\",\n\t\"alwaysApproveResubmit\",\n\t\"requestDelaySeconds\",\n\t\"alwaysAllowMcp\",\n\t\"alwaysAllowModeSwitch\",\n\t\"alwaysAllowSubtasks\",\n\t\"alwaysAllowExecute\",\n\t\"allowedCommands\",\n\t\"allowedMaxRequests\",\n\t\"autoCondenseContext\",\n\t\"autoCondenseContextPercent\",\n\t\"maxConcurrentFileReads\",\n\n\t\"browserToolEnabled\",\n\t\"browserViewportSize\",\n\t\"screenshotQuality\",\n\t\"remoteBrowserEnabled\",\n\t\"remoteBrowserHost\",\n\n\t\"enableCheckpoints\",\n\n\t\"ttsEnabled\",\n\t\"ttsSpeed\",\n\t\"soundEnabled\",\n\t\"soundVolume\",\n\n\t\"maxOpenTabsContext\",\n\t\"maxWorkspaceFiles\",\n\t\"showRooIgnoredFiles\",\n\t\"maxReadFileLine\",\n\n\t\"terminalOutputLineLimit\",\n\t\"terminalShellIntegrationTimeout\",\n\t\"terminalShellIntegrationDisabled\",\n\t\"terminalCommandDelay\",\n\t\"terminalPowershellCounter\",\n\t\"terminalZshClearEolMark\",\n\t\"terminalZshOhMy\",\n\t\"terminalZshP10k\",\n\t\"terminalZdotdir\",\n\t\"terminalCompressProgressBar\",\n\n\t\"rateLimitSeconds\",\n\t\"diffEnabled\",\n\t\"fuzzyMatchThreshold\",\n\t\"experiments\",\n\n\t\"codebaseIndexModels\",\n\t\"codebaseIndexConfig\",\n\n\t\"language\",\n\n\t\"telemetrySetting\",\n\t\"mcpEnabled\",\n\t\"enableMcpServerCreation\",\n\n\t\"mode\",\n\t\"modeApiConfigs\",\n\t\"customModes\",\n\t\"customModePrompts\",\n\t\"customSupportPrompts\",\n\t\"enhancementApiConfigId\",\n\t\"cachedChromeHostUrl\",\n\t\"historyPreviewCollapsed\",\n])\n\n/**\n * RooCodeSettings\n */\n\nexport const rooCodeSettingsSchema = providerSettingsSchema.merge(globalSettingsSchema)\n\nexport type RooCodeSettings = GlobalSettings & ProviderSettings\n\n/**\n * SecretState\n */\n\nexport type SecretState = Pick<\n\tProviderSettings,\n\t| \"apiKey\"\n\t| \"glamaApiKey\"\n\t| \"openRouterApiKey\"\n\t| \"awsAccessKey\"\n\t| \"awsSecretKey\"\n\t| \"awsSessionToken\"\n\t| \"openAiApiKey\"\n\t| \"geminiApiKey\"\n\t| \"openAiNativeApiKey\"\n\t| \"deepSeekApiKey\"\n\t| \"mistralApiKey\"\n\t| \"unboundApiKey\"\n\t| \"requestyApiKey\"\n\t| \"xaiApiKey\"\n\t| \"groqApiKey\"\n\t| \"chutesApiKey\"\n\t| \"litellmApiKey\"\n\t| \"codeIndexOpenAiKey\"\n\t| \"codeIndexQdrantApiKey\"\n>\n\nexport const SECRET_STATE_KEYS = keysOf<SecretState>()([\n\t\"apiKey\",\n\t\"glamaApiKey\",\n\t\"openRouterApiKey\",\n\t\"awsAccessKey\",\n\t\"awsSecretKey\",\n\t\"awsSessionToken\",\n\t\"openAiApiKey\",\n\t\"geminiApiKey\",\n\t\"openAiNativeApiKey\",\n\t\"deepSeekApiKey\",\n\t\"mistralApiKey\",\n\t\"unboundApiKey\",\n\t\"requestyApiKey\",\n\t\"xaiApiKey\",\n\t\"groqApiKey\",\n\t\"chutesApiKey\",\n\t\"litellmApiKey\",\n\t\"codeIndexOpenAiKey\",\n\t\"codeIndexQdrantApiKey\",\n])\n\nexport const isSecretStateKey = (key: string): key is Keys<SecretState> =>\n\tSECRET_STATE_KEYS.includes(key as Keys<SecretState>)\n\n/**\n * GlobalState\n */\n\nexport type GlobalState = Omit<RooCodeSettings, Keys<SecretState>>\n\nexport const GLOBAL_STATE_KEYS = [...GLOBAL_SETTINGS_KEYS, ...PROVIDER_SETTINGS_KEYS].filter(\n\t(key: Keys<RooCodeSettings>) => !SECRET_STATE_KEYS.includes(key as Keys<SecretState>),\n) as Keys<GlobalState>[]\n\nexport const isGlobalStateKey = (key: string): key is Keys<GlobalState> =>\n\tGLOBAL_STATE_KEYS.includes(key as Keys<GlobalState>)\n","/**\n * TS\n */\n\nexport type Keys<T> = keyof T\n\nexport type Values<T> = T[keyof T]\n\nexport type Equals<X, Y> = (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2 ? true : false\n\nexport type AssertEqual<T extends true> = T\n\n/**\n * Creates a type-safe keys array that enforces ALL keys from type T are present.\n * Returns a compile-time error if any keys are missing or extra keys are provided.\n */\nexport function keysOf<T>() {\n\treturn <const U extends readonly (keyof T)[]>(\n\t\tkeys: keyof T extends U[number] ? (U[number] extends keyof T ? U : never) : never,\n\t): U => keys\n}\n","import { z } from \"zod\"\n\nimport { keysOf } from \"./type-fu.js\"\nimport { reasoningEffortsSchema, modelInfoSchema } from \"./model.js\"\nimport { codebaseIndexProviderSchema } from \"./codebase-index.js\"\n\n/**\n * ProviderName\n */\n\nexport const providerNames = [\n\t\"anthropic\",\n\t\"glama\",\n\t\"openrouter\",\n\t\"bedrock\",\n\t\"vertex\",\n\t\"openai\",\n\t\"ollama\",\n\t\"vscode-lm\",\n\t\"lmstudio\",\n\t\"gemini\",\n\t\"openai-native\",\n\t\"mistral\",\n\t\"deepseek\",\n\t\"unbound\",\n\t\"requesty\",\n\t\"human-relay\",\n\t\"fake-ai\",\n\t\"xai\",\n\t\"groq\",\n\t\"chutes\",\n\t\"litellm\",\n] as const\n\nexport const providerNamesSchema = z.enum(providerNames)\n\nexport type ProviderName = z.infer<typeof providerNamesSchema>\n\n/**\n * ProviderSettingsEntry\n */\n\nexport const providerSettingsEntrySchema = z.object({\n\tid: z.string(),\n\tname: z.string(),\n\tapiProvider: providerNamesSchema.optional(),\n})\n\nexport type ProviderSettingsEntry = z.infer<typeof providerSettingsEntrySchema>\n\n/**\n * ProviderSettings\n */\n\nconst baseProviderSettingsSchema = z.object({\n\tincludeMaxTokens: z.boolean().optional(),\n\tdiffEnabled: z.boolean().optional(),\n\tfuzzyMatchThreshold: z.number().optional(),\n\tmodelTemperature: z.number().nullish(),\n\trateLimitSeconds: z.number().optional(),\n\n\t// Model reasoning.\n\tenableReasoningEffort: z.boolean().optional(),\n\treasoningEffort: reasoningEffortsSchema.optional(),\n\tmodelMaxTokens: z.number().optional(),\n\tmodelMaxThinkingTokens: z.number().optional(),\n})\n\n// Several of the providers share common model config properties.\nconst apiModelIdProviderModelSchema = baseProviderSettingsSchema.extend({\n\tapiModelId: z.string().optional(),\n})\n\nconst anthropicSchema = apiModelIdProviderModelSchema.extend({\n\tapiKey: z.string().optional(),\n\tanthropicBaseUrl: z.string().optional(),\n\tanthropicUseAuthToken: z.boolean().optional(),\n})\n\nconst glamaSchema = baseProviderSettingsSchema.extend({\n\tglamaModelId: z.string().optional(),\n\tglamaApiKey: z.string().optional(),\n})\n\nconst openRouterSchema = baseProviderSettingsSchema.extend({\n\topenRouterApiKey: z.string().optional(),\n\topenRouterModelId: z.string().optional(),\n\topenRouterBaseUrl: z.string().optional(),\n\topenRouterSpecificProvider: z.string().optional(),\n\topenRouterUseMiddleOutTransform: z.boolean().optional(),\n})\n\nconst bedrockSchema = apiModelIdProviderModelSchema.extend({\n\tawsAccessKey: z.string().optional(),\n\tawsSecretKey: z.string().optional(),\n\tawsSessionToken: z.string().optional(),\n\tawsRegion: z.string().optional(),\n\tawsUseCrossRegionInference: z.boolean().optional(),\n\tawsUsePromptCache: z.boolean().optional(),\n\tawsProfile: z.string().optional(),\n\tawsUseProfile: z.boolean().optional(),\n\tawsCustomArn: z.string().optional(),\n\tawsModelContextWindow: z.number().optional(),\n\tawsBedrockEndpointEnabled: z.boolean().optional(),\n\tawsBedrockEndpoint: z.string().optional(),\n})\n\nconst vertexSchema = apiModelIdProviderModelSchema.extend({\n\tvertexKeyFile: z.string().optional(),\n\tvertexJsonCredentials: z.string().optional(),\n\tvertexProjectId: z.string().optional(),\n\tvertexRegion: z.string().optional(),\n})\n\nconst openAiSchema = baseProviderSettingsSchema.extend({\n\topenAiBaseUrl: z.string().optional(),\n\topenAiApiKey: z.string().optional(),\n\topenAiLegacyFormat: z.boolean().optional(),\n\topenAiR1FormatEnabled: z.boolean().optional(),\n\topenAiModelId: z.string().optional(),\n\topenAiCustomModelInfo: modelInfoSchema.nullish(),\n\topenAiUseAzure: z.boolean().optional(),\n\tazureApiVersion: z.string().optional(),\n\topenAiStreamingEnabled: z.boolean().optional(),\n\topenAiHostHeader: z.string().optional(), // Keep temporarily for backward compatibility during migration.\n\topenAiHeaders: z.record(z.string(), z.string()).optional(),\n})\n\nconst ollamaSchema = baseProviderSettingsSchema.extend({\n\tollamaModelId: z.string().optional(),\n\tollamaBaseUrl: z.string().optional(),\n})\n\nconst vsCodeLmSchema = baseProviderSettingsSchema.extend({\n\tvsCodeLmModelSelector: z\n\t\t.object({\n\t\t\tvendor: z.string().optional(),\n\t\t\tfamily: z.string().optional(),\n\t\t\tversion: z.string().optional(),\n\t\t\tid: z.string().optional(),\n\t\t})\n\t\t.optional(),\n})\n\nconst lmStudioSchema = baseProviderSettingsSchema.extend({\n\tlmStudioModelId: z.string().optional(),\n\tlmStudioBaseUrl: z.string().optional(),\n\tlmStudioDraftModelId: z.string().optional(),\n\tlmStudioSpeculativeDecodingEnabled: z.boolean().optional(),\n})\n\nconst geminiSchema = apiModelIdProviderModelSchema.extend({\n\tgeminiApiKey: z.string().optional(),\n\tgoogleGeminiBaseUrl: z.string().optional(),\n})\n\nconst openAiNativeSchema = apiModelIdProviderModelSchema.extend({\n\topenAiNativeApiKey: z.string().optional(),\n\topenAiNativeBaseUrl: z.string().optional(),\n})\n\nconst mistralSchema = apiModelIdProviderModelSchema.extend({\n\tmistralApiKey: z.string().optional(),\n\tmistralCodestralUrl: z.string().optional(),\n})\n\nconst deepSeekSchema = apiModelIdProviderModelSchema.extend({\n\tdeepSeekBaseUrl: z.string().optional(),\n\tdeepSeekApiKey: z.string().optional(),\n})\n\nconst unboundSchema = baseProviderSettingsSchema.extend({\n\tunboundApiKey: z.string().optional(),\n\tunboundModelId: z.string().optional(),\n})\n\nconst requestySchema = baseProviderSettingsSchema.extend({\n\trequestyApiKey: z.string().optional(),\n\trequestyModelId: z.string().optional(),\n})\n\nconst humanRelaySchema = baseProviderSettingsSchema\n\nconst fakeAiSchema = baseProviderSettingsSchema.extend({\n\tfakeAi: z.unknown().optional(),\n})\n\nconst xaiSchema = apiModelIdProviderModelSchema.extend({\n\txaiApiKey: z.string().optional(),\n})\n\nconst groqSchema = apiModelIdProviderModelSchema.extend({\n\tgroqApiKey: z.string().optional(),\n})\n\nconst chutesSchema = apiModelIdProviderModelSchema.extend({\n\tchutesApiKey: z.string().optional(),\n})\n\nconst litellmSchema = baseProviderSettingsSchema.extend({\n\tlitellmBaseUrl: z.string().optional(),\n\tlitellmApiKey: z.string().optional(),\n\tlitellmModelId: z.string().optional(),\n})\n\nconst defaultSchema = z.object({\n\tapiProvider: z.undefined(),\n})\n\nexport const providerSettingsSchemaDiscriminated = z.discriminatedUnion(\"apiProvider\", [\n\tanthropicSchema.merge(z.object({ apiProvider: z.literal(\"anthropic\") })),\n\tglamaSchema.merge(z.object({ apiProvider: z.literal(\"glama\") })),\n\topenRouterSchema.merge(z.object({ apiProvider: z.literal(\"openrouter\") })),\n\tbedrockSchema.merge(z.object({ apiProvider: z.literal(\"bedrock\") })),\n\tvertexSchema.merge(z.object({ apiProvider: z.literal(\"vertex\") })),\n\topenAiSchema.merge(z.object({ apiProvider: z.literal(\"openai\") })),\n\tollamaSchema.merge(z.object({ apiProvider: z.literal(\"ollama\") })),\n\tvsCodeLmSchema.merge(z.object({ apiProvider: z.literal(\"vscode-lm\") })),\n\tlmStudioSchema.merge(z.object({ apiProvider: z.literal(\"lmstudio\") })),\n\tgeminiSchema.merge(z.object({ apiProvider: z.literal(\"gemini\") })),\n\topenAiNativeSchema.merge(z.object({ apiProvider: z.literal(\"openai-native\") })),\n\tmistralSchema.merge(z.object({ apiProvider: z.literal(\"mistral\") })),\n\tdeepSeekSchema.merge(z.object({ apiProvider: z.literal(\"deepseek\") })),\n\tunboundSchema.merge(z.object({ apiProvider: z.literal(\"unbound\") })),\n\trequestySchema.merge(z.object({ apiProvider: z.literal(\"requesty\") })),\n\thumanRelaySchema.merge(z.object({ apiProvider: z.literal(\"human-relay\") })),\n\tfakeAiSchema.merge(z.object({ apiProvider: z.literal(\"fake-ai\") })),\n\txaiSchema.merge(z.object({ apiProvider: z.literal(\"xai\") })),\n\tgroqSchema.merge(z.object({ apiProvider: z.literal(\"groq\") })),\n\tchutesSchema.merge(z.object({ apiProvider: z.literal(\"chutes\") })),\n\tlitellmSchema.merge(z.object({ apiProvider: z.literal(\"litellm\") })),\n\tdefaultSchema,\n])\n\nexport const providerSettingsSchema = z.object({\n\tapiProvider: providerNamesSchema.optional(),\n\t...anthropicSchema.shape,\n\t...glamaSchema.shape,\n\t...openRouterSchema.shape,\n\t...bedrockSchema.shape,\n\t...vertexSchema.shape,\n\t...openAiSchema.shape,\n\t...ollamaSchema.shape,\n\t...vsCodeLmSchema.shape,\n\t...lmStudioSchema.shape,\n\t...geminiSchema.shape,\n\t...openAiNativeSchema.shape,\n\t...mistralSchema.shape,\n\t...deepSeekSchema.shape,\n\t...unboundSchema.shape,\n\t...requestySchema.shape,\n\t...humanRelaySchema.shape,\n\t...fakeAiSchema.shape,\n\t...xaiSchema.shape,\n\t...groqSchema.shape,\n\t...chutesSchema.shape,\n\t...litellmSchema.shape,\n\t...codebaseIndexProviderSchema.shape,\n})\n\nexport type ProviderSettings = z.infer<typeof providerSettingsSchema>\n\nexport const PROVIDER_SETTINGS_KEYS = keysOf<ProviderSettings>()([\n\t\"apiProvider\",\n\t// Anthropic\n\t\"apiModelId\",\n\t\"apiKey\",\n\t\"anthropicBaseUrl\",\n\t\"anthropicUseAuthToken\",\n\t// Glama\n\t\"glamaModelId\",\n\t\"glamaApiKey\",\n\t// OpenRouter\n\t\"openRouterApiKey\",\n\t\"openRouterModelId\",\n\t\"openRouterBaseUrl\",\n\t\"openRouterSpecificProvider\",\n\t\"openRouterUseMiddleOutTransform\",\n\t// Amazon Bedrock\n\t\"awsAccessKey\",\n\t\"awsSecretKey\",\n\t\"awsSessionToken\",\n\t\"awsRegion\",\n\t\"awsUseCrossRegionInference\",\n\t\"awsUsePromptCache\",\n\t\"awsProfile\",\n\t\"awsUseProfile\",\n\t\"awsCustomArn\",\n\t\"awsModelContextWindow\",\n\t\"awsBedrockEndpointEnabled\",\n\t\"awsBedrockEndpoint\",\n\t// Google Vertex\n\t\"vertexKeyFile\",\n\t\"vertexJsonCredentials\",\n\t\"vertexProjectId\",\n\t\"vertexRegion\",\n\t// OpenAI\n\t\"openAiBaseUrl\",\n\t\"openAiApiKey\",\n\t\"openAiLegacyFormat\",\n\t\"openAiR1FormatEnabled\",\n\t\"openAiModelId\",\n\t\"openAiCustomModelInfo\",\n\t\"openAiUseAzure\",\n\t\"azureApiVersion\",\n\t\"openAiStreamingEnabled\",\n\t\"openAiHostHeader\", // Keep temporarily for backward compatibility during migration.\n\t\"openAiHeaders\",\n\t// Ollama\n\t\"ollamaModelId\",\n\t\"ollamaBaseUrl\",\n\t// VS Code LM\n\t\"vsCodeLmModelSelector\",\n\t\"lmStudioModelId\",\n\t\"lmStudioBaseUrl\",\n\t\"lmStudioDraftModelId\",\n\t\"lmStudioSpeculativeDecodingEnabled\",\n\t// Gemini\n\t\"geminiApiKey\",\n\t\"googleGeminiBaseUrl\",\n\t// OpenAI Native\n\t\"openAiNativeApiKey\",\n\t\"openAiNativeBaseUrl\",\n\t// Mistral\n\t\"mistralApiKey\",\n\t\"mistralCodestralUrl\",\n\t// DeepSeek\n\t\"deepSeekBaseUrl\",\n\t\"deepSeekApiKey\",\n\t// Unbound\n\t\"unboundApiKey\",\n\t\"unboundModelId\",\n\t// Requesty\n\t\"requestyApiKey\",\n\t\"requestyModelId\",\n\t// Code Index\n\t\"codeIndexOpenAiKey\",\n\t\"codeIndexQdrantApiKey\",\n\t// Reasoning\n\t\"enableReasoningEffort\",\n\t\"reasoningEffort\",\n\t\"modelMaxTokens\",\n\t\"modelMaxThinkingTokens\",\n\t// Generic\n\t\"includeMaxTokens\",\n\t\"diffEnabled\",\n\t\"fuzzyMatchThreshold\",\n\t\"modelTemperature\",\n\t\"rateLimitSeconds\",\n\t// Fake AI\n\t\"fakeAi\",\n\t// X.AI (Grok)\n\t\"xaiApiKey\",\n\t// Groq\n\t\"groqApiKey\",\n\t// Chutes AI\n\t\"chutesApiKey\",\n\t// LiteLLM\n\t\"litellmBaseUrl\",\n\t\"litellmApiKey\",\n\t\"litellmModelId\",\n])\n","import { z } from \"zod\"\n\n/**\n * ReasoningEffort\n */\n\nexport const reasoningEfforts = [\"low\", \"medium\", \"high\"] as const\n\nexport const reasoningEffortsSchema = z.enum(reasoningEfforts)\n\nexport type ReasoningEffort = z.infer<typeof reasoningEffortsSchema>\n\n/**\n * ModelParameter\n */\n\nexport const modelParameters = [\"max_tokens\", \"temperature\", \"reasoning\", \"include_reasoning\"] as const\n\nexport const modelParametersSchema = z.enum(modelParameters)\n\nexport type ModelParameter = z.infer<typeof modelParametersSchema>\n\nexport const isModelParameter = (value: string): value is ModelParameter =>\n\tmodelParameters.includes(value as ModelParameter)\n\n/**\n * ModelInfo\n */\n\nexport const modelInfoSchema = z.object({\n\tmaxTokens: z.number().nullish(),\n\tmaxThinkingTokens: z.number().nullish(),\n\tcontextWindow: z.number(),\n\tsupportsImages: z.boolean().optional(),\n\tsupportsComputerUse: z.boolean().optional(),\n\tsupportsPromptCache: z.boolean(),\n\tsupportsReasoningBudget: z.boolean().optional(),\n\trequiredReasoningBudget: z.boolean().optional(),\n\tsupportsReasoningEffort: z.boolean().optional(),\n\tsupportedParameters: z.array(modelParametersSchema).optional(),\n\tinputPrice: z.number().optional(),\n\toutputPrice: z.number().optional(),\n\tcacheWritesPrice: z.number().optional(),\n\tcacheReadsPrice: z.number().optional(),\n\tdescription: z.string().optional(),\n\treasoningEffort: reasoningEffortsSchema.optional(),\n\tminTokensPerCachePoint: z.number().optional(),\n\tmaxCachePoints: z.number().optional(),\n\tcachableFields: z.array(z.string()).optional(),\n\ttiers: z\n\t\t.array(\n\t\t\tz.object({\n\t\t\t\tcontextWindow: z.number(),\n\t\t\t\tinputPrice: z.number().optional(),\n\t\t\t\toutputPrice: z.number().optional(),\n\t\t\t\tcacheWritesPrice: z.number().optional(),\n\t\t\t\tcacheReadsPrice: z.number().optional(),\n\t\t\t}),\n\t\t)\n\t\t.optional(),\n})\n\nexport type ModelInfo = z.infer<typeof modelInfoSchema>\n","import { z } from \"zod\"\n\n/**\n * HistoryItem\n */\n\nexport const historyItemSchema = z.object({\n\tid: z.string(),\n\tnumber: z.number(),\n\tts: z.number(),\n\ttask: z.string(),\n\ttokensIn: z.number(),\n\ttokensOut: z.number(),\n\tcacheWrites: z.number().optional(),\n\tcacheReads: z.number().optional(),\n\ttotalCost: z.number(),\n\tsize: z.number().optional(),\n\tworkspace: z.string().optional(),\n})\n\nexport type HistoryItem = z.infer<typeof historyItemSchema>\n","import { z } from \"zod\"\n\nimport type { Keys, Equals, AssertEqual } from \"./type-fu.js\"\n\n/**\n * ExperimentId\n */\n\nexport const experimentIds = [\"powerSteering\", \"concurrentFileReads\"] as const\n\nexport const experimentIdsSchema = z.enum(experimentIds)\n\nexport type ExperimentId = z.infer<typeof experimentIdsSchema>\n\n/**\n * Experiments\n */\n\nexport const experimentsSchema = z.object({\n\tpowerSteering: z.boolean(),\n\tconcurrentFileReads: z.boolean(),\n})\n\nexport type Experiments = z.infer<typeof experimentsSchema>\n\ntype _AssertExperiments = AssertEqual<Equals<ExperimentId, Keys<Experiments>>>\n","import { z } from \"zod\"\n\nimport { providerNames } from \"./provider-settings.js\"\nimport { clineMessageSchema } from \"./message.js\"\n\n/**\n * TelemetrySetting\n */\n\nexport const telemetrySettings = [\"unset\", \"enabled\", \"disabled\"] as const\n\nexport const telemetrySettingsSchema = z.enum(telemetrySettings)\n\nexport type TelemetrySetting = z.infer<typeof telemetrySettingsSchema>\n\n/**\n * TelemetryEventName\n */\n\nexport enum TelemetryEventName {\n\tTASK_CREATED = \"Task Created\",\n\tTASK_RESTARTED = \"Task Reopened\",\n\tTASK_COMPLETED = \"Task Completed\",\n\tTASK_MESSAGE = \"Task Message\",\n\tTASK_CONVERSATION_MESSAGE = \"Conversation Message\",\n\tLLM_COMPLETION = \"LLM Completion\",\n\tMODE_SWITCH = \"Mode Switched\",\n\tTOOL_USED = \"Tool Used\",\n\n\tCHECKPOINT_CREATED = \"Checkpoint Created\",\n\tCHECKPOINT_RESTORED = \"Checkpoint Restored\",\n\tCHECKPOINT_DIFFED = \"Checkpoint Diffed\",\n\n\tCONTEXT_CONDENSED = \"Context Condensed\",\n\tSLIDING_WINDOW_TRUNCATION = \"Sliding Window Truncation\",\n\n\tCODE_ACTION_USED = \"Code Action Used\",\n\tPROMPT_ENHANCED = \"Prompt Enhanced\",\n\n\tTITLE_BUTTON_CLICKED = \"Title Button Clicked\",\n\n\tAUTHENTICATION_INITIATED = \"Authentication Initiated\",\n\n\tSCHEMA_VALIDATION_ERROR = \"Schema Validation Error\",\n\tDIFF_APPLICATION_ERROR = \"Diff Application Error\",\n\tSHELL_INTEGRATION_ERROR = \"Shell Integration Error\",\n\tCONSECUTIVE_MISTAKE_ERROR = \"Consecutive Mistake Error\",\n}\n\n/**\n * TelemetryProperties\n */\n\nexport const appPropertiesSchema = z.object({\n\tappName: z.string(),\n\tappVersion: z.string(),\n\tvscodeVersion: z.string(),\n\tplatform: z.string(),\n\teditorName: z.string(),\n\tlanguage: z.string(),\n\tmode: z.string(),\n})\n\nexport const taskPropertiesSchema = z.object({\n\ttaskId: z.string().optional(),\n\tapiProvider: z.enum(providerNames).optional(),\n\tmodelId: z.string().optional(),\n\tdiffStrategy: z.string().optional(),\n\tisSubtask: z.boolean().optional(),\n})\n\nexport const telemetryPropertiesSchema = z.object({\n\t...appPropertiesSchema.shape,\n\t...taskPropertiesSchema.shape,\n})\n\nexport type TelemetryProperties = z.infer<typeof telemetryPropertiesSchema>\n\n/**\n * TelemetryEvent\n */\n\nexport type TelemetryEvent = {\n\tevent: TelemetryEventName\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tproperties?: Record<string, any>\n}\n\n/**\n * RooCodeTelemetryEvent\n */\n\nexport const rooCodeTelemetryEventSchema = z.discriminatedUnion(\"type\", [\n\tz.object({\n\t\ttype: z.enum([\n\t\t\tTelemetryEventName.TASK_CREATED,\n\t\t\tTelemetryEventName.TASK_RESTARTED,\n\t\t\tTelemetryEventName.TASK_COMPLETED,\n\t\t\tTelemetryEventName.TASK_CONVERSATION_MESSAGE,\n\t\t\tTelemetryEventName.MODE_SWITCH,\n\t\t\tTelemetryEventName.TOOL_USED,\n\t\t\tTelemetryEventName.CHECKPOINT_CREATED,\n\t\t\tTelemetryEventName.CHECKPOINT_RESTORED,\n\t\t\tTelemetryEventName.CHECKPOINT_DIFFED,\n\t\t\tTelemetryEventName.CODE_ACTION_USED,\n\t\t\tTelemetryEventName.PROMPT_ENHANCED,\n\t\t\tTelemetryEventName.TITLE_BUTTON_CLICKED,\n\t\t\tTelemetryEventName.AUTHENTICATION_INITIATED,\n\t\t\tTelemetryEventName.SCHEMA_VALIDATION_ERROR,\n\t\t\tTelemetryEventName.DIFF_APPLICATION_ERROR,\n\t\t\tTelemetryEventName.SHELL_INTEGRATION_ERROR,\n\t\t\tTelemetryEventName.CONSECUTIVE_MISTAKE_ERROR,\n\t\t\tTelemetryEventName.CONTEXT_CONDENSED,\n\t\t\tTelemetryEventName.SLIDING_WINDOW_TRUNCATION,\n\t\t]),\n\t\tproperties: telemetryPropertiesSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(TelemetryEventName.TASK_MESSAGE),\n\t\tproperties: z.object({\n\t\t\t...telemetryPropertiesSchema.shape,\n\t\t\ttaskId: z.string(),\n\t\t\tmessage: clineMessageSchema,\n\t\t}),\n\t}),\n\tz.object({\n\t\ttype: z.literal(TelemetryEventName.LLM_COMPLETION),\n\t\tproperties: z.object({\n\t\t\t...telemetryPropertiesSchema.shape,\n\t\t\tinputTokens: z.number(),\n\t\t\toutputTokens: z.number(),\n\t\t\tcacheReadTokens: z.number().optional(),\n\t\t\tcacheWriteTokens: z.number().optional(),\n\t\t\tcost: z.number().optional(),\n\t\t}),\n\t}),\n])\n\nexport type RooCodeTelemetryEvent = z.infer<typeof rooCodeTelemetryEventSchema>\n\n/**\n * TelemetryEventSubscription\n */\n\nexport type TelemetryEventSubscription =\n\t| { type: \"include\"; events: TelemetryEventName[] }\n\t| { type: \"exclude\"; events: TelemetryEventName[] }\n\n/**\n * TelemetryPropertiesProvider\n */\n\nexport interface TelemetryPropertiesProvider {\n\tgetTelemetryProperties(): Promise<TelemetryProperties>\n}\n\n/**\n * TelemetryClient\n */\n\nexport interface TelemetryClient {\n\tsubscription?: TelemetryEventSubscription\n\n\tsetProvider(provider: TelemetryPropertiesProvider): void\n\tcapture(options: TelemetryEvent): Promise<void>\n\tupdateTelemetryState(didUserOptIn: boolean): void\n\tisTelemetryEnabled(): boolean\n\tshutdown(): Promise<void>\n}\n","import { z } from \"zod\"\n\n/**\n * ClineAsk\n */\n\nexport const clineAsks = [\n\t\"followup\",\n\t\"command\",\n\t\"command_output\",\n\t\"completion_result\",\n\t\"tool\",\n\t\"api_req_failed\",\n\t\"resume_task\",\n\t\"resume_completed_task\",\n\t\"mistake_limit_reached\",\n\t\"browser_action_launch\",\n\t\"use_mcp_server\",\n\t\"auto_approval_max_req_reached\",\n] as const\n\nexport const clineAskSchema = z.enum(clineAsks)\n\nexport type ClineAsk = z.infer<typeof clineAskSchema>\n\n/**\n * ClineSay\n */\n\nexport const clineSays = [\n\t\"error\",\n\t\"api_req_started\",\n\t\"api_req_finished\",\n\t\"api_req_retried\",\n\t\"api_req_retry_delayed\",\n\t\"api_req_deleted\",\n\t\"text\",\n\t\"reasoning\",\n\t\"completion_result\",\n\t\"user_feedback\",\n\t\"user_feedback_diff\",\n\t\"command_output\",\n\t\"shell_integration_warning\",\n\t\"browser_action\",\n\t\"browser_action_result\",\n\t\"mcp_server_request_started\",\n\t\"mcp_server_response\",\n\t\"subtask_result\",\n\t\"checkpoint_saved\",\n\t\"rooignore_error\",\n\t\"diff_error\",\n\t\"condense_context\",\n\t\"condense_context_error\",\n\t\"codebase_search_result\",\n] as const\n\nexport const clineSaySchema = z.enum(clineSays)\n\nexport type ClineSay = z.infer<typeof clineSaySchema>\n\n/**\n * ToolProgressStatus\n */\n\nexport const toolProgressStatusSchema = z.object({\n\ticon: z.string().optional(),\n\ttext: z.string().optional(),\n})\n\nexport type ToolProgressStatus = z.infer<typeof toolProgressStatusSchema>\n\n/**\n * ContextCondense\n */\n\nexport const contextCondenseSchema = z.object({\n\tcost: z.number(),\n\tprevContextTokens: z.number(),\n\tnewContextTokens: z.number(),\n\tsummary: z.string(),\n})\n\nexport type ContextCondense = z.infer<typeof contextCondenseSchema>\n\n/**\n * ClineMessage\n */\n\nexport const clineMessageSchema = z.object({\n\tts: z.number(),\n\ttype: z.union([z.literal(\"ask\"), z.literal(\"say\")]),\n\task: clineAskSchema.optional(),\n\tsay: clineSaySchema.optional(),\n\ttext: z.string().optional(),\n\timages: z.array(z.string()).optional(),\n\tpartial: z.boolean().optional(),\n\treasoning: z.string().optional(),\n\tconversationHistoryIndex: z.number().optional(),\n\tcheckpoint: z.record(z.string(), z.unknown()).optional(),\n\tprogressStatus: toolProgressStatusSchema.optional(),\n\tcontextCondense: contextCondenseSchema.optional(),\n})\n\nexport type ClineMessage = z.infer<typeof clineMessageSchema>\n\n/**\n * TokenUsage\n */\n\nexport const tokenUsageSchema = z.object({\n\ttotalTokensIn: z.number(),\n\ttotalTokensOut: z.number(),\n\ttotalCacheWrites: z.number().optional(),\n\ttotalCacheReads: z.number().optional(),\n\ttotalCost: z.number(),\n\tcontextTokens: z.number(),\n})\n\nexport type TokenUsage = z.infer<typeof tokenUsageSchema>\n","import { z } from \"zod\"\n\nimport { toolGroupsSchema } from \"./tool.js\"\n\n/**\n * GroupOptions\n */\n\nexport const groupOptionsSchema = z.object({\n\tfileRegex: z\n\t\t.string()\n\t\t.optional()\n\t\t.refine(\n\t\t\t(pattern) => {\n\t\t\t\tif (!pattern) {\n\t\t\t\t\treturn true // Optional, so empty is valid.\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tnew RegExp(pattern)\n\t\t\t\t\treturn true\n\t\t\t\t} catch {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t},\n\t\t\t{ message: \"Invalid regular expression pattern\" },\n\t\t),\n\tdescription: z.string().optional(),\n})\n\nexport type GroupOptions = z.infer<typeof groupOptionsSchema>\n\n/**\n * GroupEntry\n */\n\nexport const groupEntrySchema = z.union([toolGroupsSchema, z.tuple([toolGroupsSchema, groupOptionsSchema])])\n\nexport type GroupEntry = z.infer<typeof groupEntrySchema>\n\n/**\n * ModeConfig\n */\n\nconst groupEntryArraySchema = z.array(groupEntrySchema).refine(\n\t(groups) => {\n\t\tconst seen = new Set()\n\n\t\treturn groups.every((group) => {\n\t\t\t// For tuples, check the group name (first element).\n\t\t\tconst groupName = Array.isArray(group) ? group[0] : group\n\n\t\t\tif (seen.has(groupName)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tseen.add(groupName)\n\t\t\treturn true\n\t\t})\n\t},\n\t{ message: \"Duplicate groups are not allowed\" },\n)\n\nexport const modeConfigSchema = z.object({\n\tslug: z.string().regex(/^[a-zA-Z0-9-]+$/, \"Slug must contain only letters numbers and dashes\"),\n\tname: z.string().min(1, \"Name is required\"),\n\troleDefinition: z.string().min(1, \"Role definition is required\"),\n\twhenToUse: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n\tgroups: groupEntryArraySchema,\n\tsource: z.enum([\"global\", \"project\"]).optional(),\n})\n\nexport type ModeConfig = z.infer<typeof modeConfigSchema>\n\n/**\n * CustomModesSettings\n */\n\nexport const customModesSettingsSchema = z.object({\n\tcustomModes: z.array(modeConfigSchema).refine(\n\t\t(modes) => {\n\t\t\tconst slugs = new Set()\n\n\t\t\treturn modes.every((mode) => {\n\t\t\t\tif (slugs.has(mode.slug)) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\n\t\t\t\tslugs.add(mode.slug)\n\t\t\t\treturn true\n\t\t\t})\n\t\t},\n\t\t{\n\t\t\tmessage: \"Duplicate mode slugs are not allowed\",\n\t\t},\n\t),\n})\n\nexport type CustomModesSettings = z.infer<typeof customModesSettingsSchema>\n\n/**\n * PromptComponent\n */\n\nexport const promptComponentSchema = z.object({\n\troleDefinition: z.string().optional(),\n\twhenToUse: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n})\n\nexport type PromptComponent = z.infer<typeof promptComponentSchema>\n\n/**\n * CustomModePrompts\n */\n\nexport const customModePromptsSchema = z.record(z.string(), promptComponentSchema.optional())\n\nexport type CustomModePrompts = z.infer<typeof customModePromptsSchema>\n\n/**\n * CustomSupportPrompts\n */\n\nexport const customSupportPromptsSchema = z.record(z.string(), z.string().optional())\n\nexport type CustomSupportPrompts = z.infer<typeof customSupportPromptsSchema>\n","import { z } from \"zod\"\n\n/**\n * ToolGroup\n */\n\nexport const toolGroups = [\"read\", \"edit\", \"browser\", \"command\", \"mcp\", \"modes\"] as const\n\nexport const toolGroupsSchema = z.enum(toolGroups)\n\nexport type ToolGroup = z.infer<typeof toolGroupsSchema>\n\n/**\n * ToolName\n */\n\nexport const toolNames = [\n\t\"execute_command\",\n\t\"read_file\",\n\t\"write_to_file\",\n\t\"apply_diff\",\n\t\"insert_content\",\n\t\"search_and_replace\",\n\t\"search_files\",\n\t\"list_files\",\n\t\"list_code_definition_names\",\n\t\"browser_action\",\n\t\"use_mcp_tool\",\n\t\"access_mcp_resource\",\n\t\"ask_followup_question\",\n\t\"attempt_completion\",\n\t\"switch_mode\",\n\t\"new_task\",\n\t\"fetch_instructions\",\n\t\"codebase_search\",\n] as const\n\nexport const toolNamesSchema = z.enum(toolNames)\n\nexport type ToolName = z.infer<typeof toolNamesSchema>\n\n/**\n * ToolUsage\n */\n\nexport const toolUsageSchema = z.record(\n\ttoolNamesSchema,\n\tz.object({\n\t\tattempts: z.number(),\n\t\tfailures: z.number(),\n\t}),\n)\n\nexport type ToolUsage = z.infer<typeof toolUsageSchema>\n","import { z } from \"zod\"\n\n/**\n * CodeAction\n */\n\nexport const codeActionIds = [\"explainCode\", \"fixCode\", \"improveCode\", \"addToContext\", \"newTask\"] as const\n\nexport type CodeActionId = (typeof codeActionIds)[number]\n\nexport type CodeActionName = \"EXPLAIN\" | \"FIX\" | \"IMPROVE\" | \"ADD_TO_CONTEXT\" | \"NEW_TASK\"\n\n/**\n * TerminalAction\n */\n\nexport const terminalActionIds = [\"terminalAddToContext\", \"terminalFixCommand\", \"terminalExplainCommand\"] as const\n\nexport type TerminalActionId = (typeof terminalActionIds)[number]\n\nexport type TerminalActionName = \"ADD_TO_CONTEXT\" | \"FIX\" | \"EXPLAIN\"\n\nexport type TerminalActionPromptType = `TERMINAL_${TerminalActionName}`\n\n/**\n * Command\n */\n\nexport const commandIds = [\n\t\"activationCompleted\",\n\n\t\"plusButtonClicked\",\n\t\"promptsButtonClicked\",\n\t\"mcpButtonClicked\",\n\t\"historyButtonClicked\",\n\t\"popoutButtonClicked\",\n\t\"accountButtonClicked\",\n\t\"settingsButtonClicked\",\n\n\t\"openInNewTab\",\n\n\t\"showHumanRelayDialog\",\n\t\"registerHumanRelayCallback\",\n\t\"unregisterHumanRelayCallback\",\n\t\"handleHumanRelayResponse\",\n\n\t\"newTask\",\n\n\t\"setCustomStoragePath\",\n\n\t\"focusInput\",\n\t\"acceptInput\",\n] as const\n\nexport type CommandId = (typeof commandIds)[number]\n\n/**\n * Language\n */\n\nexport const languages = [\n\t\"ca\",\n\t\"de\",\n\t\"en\",\n\t\"es\",\n\t\"fr\",\n\t\"hi\",\n\t\"it\",\n\t\"ja\",\n\t\"ko\",\n\t\"nl\",\n\t\"pl\",\n\t\"pt-BR\",\n\t\"ru\",\n\t\"tr\",\n\t\"vi\",\n\t\"zh-CN\",\n\t\"zh-TW\",\n] as const\n\nexport const languagesSchema = z.enum(languages)\n\nexport type Language = z.infer<typeof languagesSchema>\n\nexport const isLanguage = (value: string): value is Language => languages.includes(value as Language)\n","import { z } from \"zod\"\n\nimport { clineMessageSchema, tokenUsageSchema } from \"./message.js\"\nimport { toolNamesSchema, toolUsageSchema } from \"./tool.js\"\nimport { rooCodeSettingsSchema } from \"./global-settings.js\"\n\n/**\n * RooCodeEvent\n */\n\nexport enum RooCodeEventName {\n\tMessage = \"message\",\n\tTaskCreated = \"taskCreated\",\n\tTaskStarted = \"taskStarted\",\n\tTaskModeSwitched = \"taskModeSwitched\",\n\tTaskPaused = \"taskPaused\",\n\tTaskUnpaused = \"taskUnpaused\",\n\tTaskAskResponded = \"taskAskResponded\",\n\tTaskAborted = \"taskAborted\",\n\tTaskSpawned = \"taskSpawned\",\n\tTaskCompleted = \"taskCompleted\",\n\tTaskTokenUsageUpdated = \"taskTokenUsageUpdated\",\n\tTaskToolFailed = \"taskToolFailed\",\n\tEvalPass = \"evalPass\",\n\tEvalFail = \"evalFail\",\n}\n\nexport const rooCodeEventsSchema = z.object({\n\t[RooCodeEventName.Message]: z.tuple([\n\t\tz.object({\n\t\t\ttaskId: z.string(),\n\t\t\taction: z.union([z.literal(\"created\"), z.literal(\"updated\")]),\n\t\t\tmessage: clineMessageSchema,\n\t\t}),\n\t]),\n\t[RooCodeEventName.TaskCreated]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskStarted]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskModeSwitched]: z.tuple([z.string(), z.string()]),\n\t[RooCodeEventName.TaskPaused]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskUnpaused]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskAskResponded]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskAborted]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskSpawned]: z.tuple([z.string(), z.string()]),\n\t[RooCodeEventName.TaskCompleted]: z.tuple([z.string(), tokenUsageSchema, toolUsageSchema]),\n\t[RooCodeEventName.TaskTokenUsageUpdated]: z.tuple([z.string(), tokenUsageSchema]),\n\t[RooCodeEventName.TaskToolFailed]: z.tuple([z.string(), toolNamesSchema, z.string()]),\n})\n\nexport type RooCodeEvents = z.infer<typeof rooCodeEventsSchema>\n\n/**\n * Ack\n */\n\nexport const ackSchema = z.object({\n\tclientId: z.string(),\n\tpid: z.number(),\n\tppid: z.number(),\n})\n\nexport type Ack = z.infer<typeof ackSchema>\n\n/**\n * TaskCommand\n */\n\nexport enum TaskCommandName {\n\tStartNewTask = \"StartNewTask\",\n\tCancelTask = \"CancelTask\",\n\tCloseTask = \"CloseTask\",\n}\n\nexport const taskCommandSchema = z.discriminatedUnion(\"commandName\", [\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.StartNewTask),\n\t\tdata: z.object({\n\t\t\tconfiguration: rooCodeSettingsSchema,\n\t\t\ttext: z.string(),\n\t\t\timages: z.array(z.string()).optional(),\n\t\t\tnewTab: z.boolean().optional(),\n\t\t}),\n\t}),\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.CancelTask),\n\t\tdata: z.string(),\n\t}),\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.CloseTask),\n\t\tdata: z.string(),\n\t}),\n])\n\nexport type TaskCommand = z.infer<typeof taskCommandSchema>\n\n/**\n * TaskEvent\n */\n\nexport const taskEventSchema = z.discriminatedUnion(\"eventName\", [\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.Message),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.Message],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskCreated),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskCreated],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskStarted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskStarted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskModeSwitched),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskModeSwitched],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskPaused),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskPaused],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskUnpaused),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskUnpaused],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskAskResponded),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskAskResponded],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskAborted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskAborted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskSpawned),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskSpawned],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskCompleted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskCompleted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskTokenUsageUpdated),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskTokenUsageUpdated],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskToolFailed),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskToolFailed],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.EvalPass),\n\t\tpayload: z.undefined(),\n\t\ttaskId: z.number(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.EvalFail),\n\t\tpayload: z.undefined(),\n\t\ttaskId: z.number(),\n\t}),\n])\n\nexport type TaskEvent = z.infer<typeof taskEventSchema>\n\n/**\n * IpcMessage\n */\n\nexport enum IpcMessageType {\n\tConnect = \"Connect\",\n\tDisconnect = \"Disconnect\",\n\tAck = \"Ack\",\n\tTaskCommand = \"TaskCommand\",\n\tTaskEvent = \"TaskEvent\",\n}\n\nexport enum IpcOrigin {\n\tClient = \"client\",\n\tServer = \"server\",\n}\n\nexport const ipcMessageSchema = z.discriminatedUnion(\"type\", [\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.Ack),\n\t\torigin: z.literal(IpcOrigin.Server),\n\t\tdata: ackSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.TaskCommand),\n\t\torigin: z.literal(IpcOrigin.Client),\n\t\tclientId: z.string(),\n\t\tdata: taskCommandSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.TaskEvent),\n\t\torigin: z.literal(IpcOrigin.Server),\n\t\trelayClientId: z.string().optional(),\n\t\tdata: taskEventSchema,\n\t}),\n])\n\nexport type IpcMessage = z.infer<typeof ipcMessageSchema>\n\n/**\n * Client\n */\n\nexport type IpcClientEvents = {\n\t[IpcMessageType.Connect]: []\n\t[IpcMessageType.Disconnect]: []\n\t[IpcMessageType.Ack]: [data: Ack]\n\t[IpcMessageType.TaskCommand]: [data: TaskCommand]\n\t[IpcMessageType.TaskEvent]: [data: TaskEvent]\n}\n\n/**\n * Server\n */\n\nexport type IpcServerEvents = {\n\t[IpcMessageType.Connect]: [clientId: string]\n\t[IpcMessageType.Disconnect]: [clientId: string]\n\t[IpcMessageType.TaskCommand]: [clientId: string, data: TaskCommand]\n\t[IpcMessageType.TaskEvent]: [relayClientId: string | undefined, data: TaskEvent]\n}\n","import { z } from \"zod\"\n\n/**\n * CommandExecutionStatus\n */\n\nexport const commandExecutionStatusSchema = z.discriminatedUnion(\"status\", [\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"started\"),\n\t\tpid: z.number().optional(),\n\t\tcommand: z.string(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"output\"),\n\t\toutput: z.string(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"exited\"),\n\t\texitCode: z.number().optional(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"fallback\"),\n\t}),\n])\n\nexport type CommandExecutionStatus = z.infer<typeof commandExecutionStatusSchema>\n"],"mappings":"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","names":["import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","TelemetryEventName","import_zod","import_zod","import_zod","import_zod","RooCodeEventName","TaskCommandName","IpcMessageType","IpcOrigin","import_zod"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/providers/anthropic.ts","../../src/providers/bedrock.ts","../../src/providers/chutes.ts","../../src/providers/deepseek.ts","../../src/providers/gemini.ts","../../src/providers/glama.ts","../../src/providers/groq.ts","../../src/providers/lite-llm.ts","../../src/providers/lm-studio.ts","../../src/providers/mistral.ts","../../src/providers/openai.ts","../../src/providers/openrouter.ts","../../src/providers/requesty.ts","../../src/providers/unbound.ts","../../src/providers/vertex.ts","../../src/providers/vscode-llm.ts","../../src/providers/xai.ts","../../src/codebase-index.ts","../../src/cloud.ts","../../src/global-settings.ts","../../src/type-fu.ts","../../src/provider-settings.ts","../../src/model.ts","../../src/history.ts","../../src/experiment.ts","../../src/telemetry.ts","../../src/message.ts","../../src/mode.ts","../../src/tool.ts","../../src/vscode.ts","../../src/ipc.ts","../../src/terminal.ts"],"sourcesContent":["export * from \"./providers/index.js\"\n\nexport * from \"./api.js\"\nexport * from \"./codebase-index.js\"\nexport * from \"./cloud.js\"\nexport * from \"./experiment.js\"\nexport * from \"./global-settings.js\"\nexport * from \"./history.js\"\nexport * from \"./ipc.js\"\nexport * from \"./message.js\"\nexport * from \"./mode.js\"\nexport * from \"./model.js\"\nexport * from \"./provider-settings.js\"\nexport * from \"./telemetry.js\"\nexport * from \"./terminal.js\"\nexport * from \"./tool.js\"\nexport * from \"./type-fu.js\"\nexport * from \"./vscode.js\"\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.anthropic.com/en/docs/about-claude/models\n\nexport type AnthropicModelId = keyof typeof anthropicModels\nexport const anthropicDefaultModelId: AnthropicModelId = \"claude-sonnet-4-20250514\"\n\nexport const anthropicModels = {\n\t\"claude-sonnet-4-20250514\": {\n\t\tmaxTokens: 64_000, // Overridden to 8k if `enableReasoningEffort` is false.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-opus-4-20250514\": {\n\t\tmaxTokens: 32_000, // Overridden to 8k if `enableReasoningEffort` is false.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0, // $15 per million input tokens\n\t\toutputPrice: 75.0, // $75 per million output tokens\n\t\tcacheWritesPrice: 18.75, // $18.75 per million tokens\n\t\tcacheReadsPrice: 1.5, // $1.50 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet-20250219:thinking\": {\n\t\tmaxTokens: 128_000, // Unlocked by passing `beta` flag to the model. Otherwise, it's 64k.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet-20250219\": {\n\t\tmaxTokens: 8192, // Since we already have a `:thinking` virtual model we aren't setting `supportsReasoningBudget: true` here.\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t},\n\t\"claude-3-5-sonnet-20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0, // $3 per million input tokens\n\t\toutputPrice: 15.0, // $15 per million output tokens\n\t\tcacheWritesPrice: 3.75, // $3.75 per million tokens\n\t\tcacheReadsPrice: 0.3, // $0.30 per million tokens\n\t},\n\t\"claude-3-5-haiku-20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 5.0,\n\t\tcacheWritesPrice: 1.25,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"claude-3-opus-20240229\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-haiku-20240307\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t\tcacheWritesPrice: 0.3,\n\t\tcacheReadsPrice: 0.03,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const ANTHROPIC_DEFAULT_MAX_TOKENS = 8192\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference.html\n\nexport type BedrockModelId = keyof typeof bedrockModels\n\nexport const bedrockDefaultModelId: BedrockModelId = \"anthropic.claude-sonnet-4-20250514-v1:0\"\n\nexport const bedrockDefaultPromptRouterModelId: BedrockModelId = \"anthropic.claude-3-sonnet-20240229-v1:0\"\n\n// March, 12 2025 - updated prices to match US-West-2 list price shown at\n// https://aws.amazon.com/bedrock/pricing, including older models that are part\n// of the default prompt routers AWS enabled for GA of the promot router\n// feature.\nexport const bedrockModels = {\n\t\"amazon.nova-pro-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 3.2,\n\t\tcacheWritesPrice: 0.8, // per million tokens\n\t\tcacheReadsPrice: 0.2, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"amazon.nova-pro-latency-optimized-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 4.0,\n\t\tcacheWritesPrice: 1.0, // per million tokens\n\t\tcacheReadsPrice: 0.25, // per million tokens\n\t\tdescription: \"Amazon Nova Pro with latency optimized inference\",\n\t},\n\t\"amazon.nova-lite-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 300_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.06,\n\t\toutputPrice: 0.24,\n\t\tcacheWritesPrice: 0.06, // per million tokens\n\t\tcacheReadsPrice: 0.015, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"amazon.nova-micro-v1:0\": {\n\t\tmaxTokens: 5000,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.035,\n\t\toutputPrice: 0.14,\n\t\tcacheWritesPrice: 0.035, // per million tokens\n\t\tcacheReadsPrice: 0.00875, // per million tokens\n\t\tminTokensPerCachePoint: 1,\n\t\tmaxCachePoints: 1,\n\t\tcachableFields: [\"system\"],\n\t},\n\t\"anthropic.claude-sonnet-4-20250514-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-opus-4-20250514-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-7-sonnet-20250219-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-sonnet-20241022-v2:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tminTokensPerCachePoint: 1024,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-haiku-20241022-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 4.0,\n\t\tcacheWritesPrice: 1.0,\n\t\tcacheReadsPrice: 0.08,\n\t\tminTokensPerCachePoint: 2048,\n\t\tmaxCachePoints: 4,\n\t\tcachableFields: [\"system\", \"messages\", \"tools\"],\n\t},\n\t\"anthropic.claude-3-5-sonnet-20240620-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t},\n\t\"anthropic.claude-3-opus-20240229-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t},\n\t\"anthropic.claude-3-sonnet-20240229-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t},\n\t\"anthropic.claude-3-haiku-20240307-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t},\n\t\"anthropic.claude-2-1-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 8.0,\n\t\toutputPrice: 24.0,\n\t\tdescription: \"Claude 2.1\",\n\t},\n\t\"anthropic.claude-2-0-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 8.0,\n\t\toutputPrice: 24.0,\n\t\tdescription: \"Claude 2.0\",\n\t},\n\t\"anthropic.claude-instant-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 100_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.8,\n\t\toutputPrice: 2.4,\n\t\tdescription: \"Claude Instant\",\n\t},\n\t\"deepseek.r1-v1:0\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.35,\n\t\toutputPrice: 5.4,\n\t},\n\t\"meta.llama3-3-70b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.3 Instruct (70B)\",\n\t},\n\t\"meta.llama3-2-90b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.2 Instruct (90B)\",\n\t},\n\t\"meta.llama3-2-11b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.16,\n\t\toutputPrice: 0.16,\n\t\tdescription: \"Llama 3.2 Instruct (11B)\",\n\t},\n\t\"meta.llama3-2-3b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.15,\n\t\tdescription: \"Llama 3.2 Instruct (3B)\",\n\t},\n\t\"meta.llama3-2-1b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.1,\n\t\tdescription: \"Llama 3.2 Instruct (1B)\",\n\t},\n\t\"meta.llama3-1-405b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.4,\n\t\toutputPrice: 2.4,\n\t\tdescription: \"Llama 3.1 Instruct (405B)\",\n\t},\n\t\"meta.llama3-1-70b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.72,\n\t\toutputPrice: 0.72,\n\t\tdescription: \"Llama 3.1 Instruct (70B)\",\n\t},\n\t\"meta.llama3-1-70b-instruct-latency-optimized-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.9,\n\t\toutputPrice: 0.9,\n\t\tdescription: \"Llama 3.1 Instruct (70B) (w/ latency optimized inference)\",\n\t},\n\t\"meta.llama3-1-8b-instruct-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.22,\n\t\toutputPrice: 0.22,\n\t\tdescription: \"Llama 3.1 Instruct (8B)\",\n\t},\n\t\"meta.llama3-70b-instruct-v1:0\": {\n\t\tmaxTokens: 2048,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.65,\n\t\toutputPrice: 3.5,\n\t},\n\t\"meta.llama3-8b-instruct-v1:0\": {\n\t\tmaxTokens: 2048,\n\t\tcontextWindow: 4_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.6,\n\t},\n\t\"amazon.titan-text-lite-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.2,\n\t\tdescription: \"Amazon Titan Text Lite\",\n\t},\n\t\"amazon.titan-text-express-v1:0\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.2,\n\t\toutputPrice: 0.6,\n\t\tdescription: \"Amazon Titan Text Express\",\n\t},\n\t\"amazon.titan-text-embeddings-v1:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\tdescription: \"Amazon Titan Text Embeddings\",\n\t},\n\t\"amazon.titan-text-embeddings-v2:0\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8_000,\n\t\tsupportsImages: false,\n\t\tsupportsComputerUse: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.02,\n\t\tdescription: \"Amazon Titan Text Embeddings V2\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const BEDROCK_DEFAULT_TEMPERATURE = 0.3\n\nexport const BEDROCK_MAX_TOKENS = 4096\n\nexport const BEDROCK_DEFAULT_CONTEXT = 128_000\n\nexport const BEDROCK_REGION_INFO: Record<\n\tstring,\n\t{\n\t\tregionId: string\n\t\tdescription: string\n\t\tpattern?: string\n\t\tmultiRegion?: boolean\n\t}\n> = {\n\t/*\n\t * This JSON generated by AWS's AI assistant - Amazon Q on March 29, 2025\n\t *\n\t * - Africa (Cape Town) region does not appear to support Amazon Bedrock at this time.\n\t * - Some Asia Pacific regions, such as Asia Pacific (Hong Kong) and Asia Pacific (Jakarta), are not listed among the supported regions for Bedrock services.\n\t * - Middle East regions, including Middle East (Bahrain) and Middle East (UAE), are not mentioned in the list of supported regions for Bedrock. [3]\n\t * - China regions (Beijing and Ningxia) are not listed as supported for Amazon Bedrock.\n\t * - Some newer or specialized AWS regions may not have Bedrock support yet.\n\t */\n\t\"us.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\", pattern: \"us-\", multiRegion: true },\n\t\"use.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\" },\n\t\"use1.\": { regionId: \"us-east-1\", description: \"US East (N. Virginia)\" },\n\t\"use2.\": { regionId: \"us-east-2\", description: \"US East (Ohio)\" },\n\t\"usw.\": { regionId: \"us-west-2\", description: \"US West (Oregon)\" },\n\t\"usw2.\": { regionId: \"us-west-2\", description: \"US West (Oregon)\" },\n\t\"ug.\": {\n\t\tregionId: \"us-gov-west-1\",\n\t\tdescription: \"AWS GovCloud (US-West)\",\n\t\tpattern: \"us-gov-\",\n\t\tmultiRegion: true,\n\t},\n\t\"uge1.\": { regionId: \"us-gov-east-1\", description: \"AWS GovCloud (US-East)\" },\n\t\"ugw1.\": { regionId: \"us-gov-west-1\", description: \"AWS GovCloud (US-West)\" },\n\t\"eu.\": { regionId: \"eu-west-1\", description: \"Europe (Ireland)\", pattern: \"eu-\", multiRegion: true },\n\t\"euw1.\": { regionId: \"eu-west-1\", description: \"Europe (Ireland)\" },\n\t\"euw2.\": { regionId: \"eu-west-2\", description: \"Europe (London)\" },\n\t\"euw3.\": { regionId: \"eu-west-3\", description: \"Europe (Paris)\" },\n\t\"euc1.\": { regionId: \"eu-central-1\", description: \"Europe (Frankfurt)\" },\n\t\"euc2.\": { regionId: \"eu-central-2\", description: \"Europe (Zurich)\" },\n\t\"eun1.\": { regionId: \"eu-north-1\", description: \"Europe (Stockholm)\" },\n\t\"eus1.\": { regionId: \"eu-south-1\", description: \"Europe (Milan)\" },\n\t\"eus2.\": { regionId: \"eu-south-2\", description: \"Europe (Spain)\" },\n\t\"ap.\": {\n\t\tregionId: \"ap-southeast-1\",\n\t\tdescription: \"Asia Pacific (Singapore)\",\n\t\tpattern: \"ap-\",\n\t\tmultiRegion: true,\n\t},\n\t\"ape1.\": { regionId: \"ap-east-1\", description: \"Asia Pacific (Hong Kong)\" },\n\t\"apne1.\": { regionId: \"ap-northeast-1\", description: \"Asia Pacific (Tokyo)\" },\n\t\"apne2.\": { regionId: \"ap-northeast-2\", description: \"Asia Pacific (Seoul)\" },\n\t\"apne3.\": { regionId: \"ap-northeast-3\", description: \"Asia Pacific (Osaka)\" },\n\t\"aps1.\": { regionId: \"ap-south-1\", description: \"Asia Pacific (Mumbai)\" },\n\t\"aps2.\": { regionId: \"ap-south-2\", description: \"Asia Pacific (Hyderabad)\" },\n\t\"apse1.\": { regionId: \"ap-southeast-1\", description: \"Asia Pacific (Singapore)\" },\n\t\"apse2.\": { regionId: \"ap-southeast-2\", description: \"Asia Pacific (Sydney)\" },\n\t\"ca.\": { regionId: \"ca-central-1\", description: \"Canada (Central)\", pattern: \"ca-\", multiRegion: true },\n\t\"cac1.\": { regionId: \"ca-central-1\", description: \"Canada (Central)\" },\n\t\"sa.\": { regionId: \"sa-east-1\", description: \"South America (São Paulo)\", pattern: \"sa-\", multiRegion: true },\n\t\"sae1.\": { regionId: \"sa-east-1\", description: \"South America (São Paulo)\" },\n\n\t// These are not official - they weren't generated by Amazon Q nor were\n\t// found in the AWS documentation but another Roo contributor found apac.\n\t// Was needed so I've added the pattern of the other geo zones.\n\t\"apac.\": { regionId: \"ap-southeast-1\", description: \"Default APAC region\", pattern: \"ap-\", multiRegion: true },\n\t\"emea.\": { regionId: \"eu-west-1\", description: \"Default EMEA region\", pattern: \"eu-\", multiRegion: true },\n\t\"amer.\": { regionId: \"us-east-1\", description: \"Default Americas region\", pattern: \"us-\", multiRegion: true },\n}\n\nexport const BEDROCK_REGIONS = Object.values(BEDROCK_REGION_INFO)\n\t// Extract all region IDs\n\t.map((info) => ({ value: info.regionId, label: info.regionId }))\n\t// Filter to unique region IDs (remove duplicates)\n\t.filter((region, index, self) => index === self.findIndex((r) => r.value === region.value))\n\t// Sort alphabetically by region ID\n\t.sort((a, b) => a.value.localeCompare(b.value))\n","import type { ModelInfo } from \"../model.js\"\n\n// https://llm.chutes.ai/v1 (OpenAI compatible)\nexport type ChutesModelId =\n\t| \"deepseek-ai/DeepSeek-R1-0528\"\n\t| \"deepseek-ai/DeepSeek-R1\"\n\t| \"deepseek-ai/DeepSeek-V3\"\n\t| \"unsloth/Llama-3.3-70B-Instruct\"\n\t| \"chutesai/Llama-4-Scout-17B-16E-Instruct\"\n\t| \"unsloth/Mistral-Nemo-Instruct-2407\"\n\t| \"unsloth/gemma-3-12b-it\"\n\t| \"NousResearch/DeepHermes-3-Llama-3-8B-Preview\"\n\t| \"unsloth/gemma-3-4b-it\"\n\t| \"nvidia/Llama-3_3-Nemotron-Super-49B-v1\"\n\t| \"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1\"\n\t| \"chutesai/Llama-4-Maverick-17B-128E-Instruct-FP8\"\n\t| \"deepseek-ai/DeepSeek-V3-Base\"\n\t| \"deepseek-ai/DeepSeek-R1-Zero\"\n\t| \"deepseek-ai/DeepSeek-V3-0324\"\n\t| \"Qwen/Qwen3-235B-A22B\"\n\t| \"Qwen/Qwen3-32B\"\n\t| \"Qwen/Qwen3-30B-A3B\"\n\t| \"Qwen/Qwen3-14B\"\n\t| \"Qwen/Qwen3-8B\"\n\t| \"microsoft/MAI-DS-R1-FP8\"\n\t| \"tngtech/DeepSeek-R1T-Chimera\"\n\nexport const chutesDefaultModelId: ChutesModelId = \"deepseek-ai/DeepSeek-R1-0528\"\n\nexport const chutesModels = {\n\t\"deepseek-ai/DeepSeek-R1-0528\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 0528 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-R1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 model.\",\n\t},\n\t\"unsloth/Llama-3.3-70B-Instruct\": {\n\t\tmaxTokens: 32768, // From Groq\n\t\tcontextWindow: 131072, // From Groq\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Llama 3.3 70B Instruct model.\",\n\t},\n\t\"chutesai/Llama-4-Scout-17B-16E-Instruct\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 512000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"ChutesAI Llama 4 Scout 17B Instruct model, 512K context.\",\n\t},\n\t\"unsloth/Mistral-Nemo-Instruct-2407\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 128000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Mistral Nemo Instruct model.\",\n\t},\n\t\"unsloth/gemma-3-12b-it\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Gemma 3 12B IT model.\",\n\t},\n\t\"NousResearch/DeepHermes-3-Llama-3-8B-Preview\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nous DeepHermes 3 Llama 3 8B Preview model.\",\n\t},\n\t\"unsloth/gemma-3-4b-it\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Unsloth Gemma 3 4B IT model.\",\n\t},\n\t\"nvidia/Llama-3_3-Nemotron-Super-49B-v1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nvidia Llama 3.3 Nemotron Super 49B model.\",\n\t},\n\t\"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Nvidia Llama 3.1 Nemotron Ultra 253B model.\",\n\t},\n\t\"chutesai/Llama-4-Maverick-17B-128E-Instruct-FP8\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 256000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"ChutesAI Llama 4 Maverick 17B Instruct FP8 model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3-Base\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 Base model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-R1-Zero\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 Zero model.\",\n\t},\n\t\"deepseek-ai/DeepSeek-V3-0324\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek V3 (0324) model.\",\n\t},\n\t\"Qwen/Qwen3-235B-A22B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 235B A22B model.\",\n\t},\n\t\"Qwen/Qwen3-32B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 32B model.\",\n\t},\n\t\"Qwen/Qwen3-30B-A3B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 30B A3B model.\",\n\t},\n\t\"Qwen/Qwen3-14B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 14B model.\",\n\t},\n\t\"Qwen/Qwen3-8B\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 40960,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Qwen3 8B model.\",\n\t},\n\t\"microsoft/MAI-DS-R1-FP8\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Microsoft MAI-DS-R1 FP8 model.\",\n\t},\n\t\"tngtech/DeepSeek-R1T-Chimera\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 163840,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"TNGTech DeepSeek R1T Chimera model.\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://platform.deepseek.com/docs/api\nexport type DeepSeekModelId = keyof typeof deepSeekModels\n\nexport const deepSeekDefaultModelId: DeepSeekModelId = \"deepseek-chat\"\n\nexport const deepSeekModels = {\n\t\"deepseek-chat\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 64_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.27, // $0.27 per million tokens (cache miss)\n\t\toutputPrice: 1.1, // $1.10 per million tokens\n\t\tcacheWritesPrice: 0.27, // $0.27 per million tokens (cache miss)\n\t\tcacheReadsPrice: 0.07, // $0.07 per million tokens (cache hit).\n\t\tdescription: `DeepSeek-V3 achieves a significant breakthrough in inference speed over previous models. It tops the leaderboard among open-source models and rivals the most advanced closed-source models globally.`,\n\t},\n\t\"deepseek-reasoner\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 64_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.55, // $0.55 per million tokens (cache miss)\n\t\toutputPrice: 2.19, // $2.19 per million tokens\n\t\tcacheWritesPrice: 0.55, // $0.55 per million tokens (cache miss)\n\t\tcacheReadsPrice: 0.14, // $0.14 per million tokens (cache hit)\n\t\tdescription: `DeepSeek-R1 achieves performance comparable to OpenAI-o1 across math, code, and reasoning tasks. Supports Chain of Thought reasoning with up to 32K tokens.`,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const DEEP_SEEK_DEFAULT_TEMPERATURE = 0.6\n","import type { ModelInfo } from \"../model.js\"\n\n// https://ai.google.dev/gemini-api/docs/models/gemini\nexport type GeminiModelId = keyof typeof geminiModels\n\nexport const geminiDefaultModelId: GeminiModelId = \"gemini-2.0-flash-001\"\n\nexport const geminiModels = {\n\t\"gemini-2.5-flash-preview-04-17:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-04-17\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-flash-preview-05-20:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-05-20\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t},\n\t\"gemini-2.5-pro-exp-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.5-pro-preview-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5, // This is the pricing for prompts above 200k tokens.\n\t\toutputPrice: 15,\n\t\tcacheReadsPrice: 0.625,\n\t\tcacheWritesPrice: 4.5,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 200_000,\n\t\t\t\tinputPrice: 1.25,\n\t\t\t\toutputPrice: 10,\n\t\t\t\tcacheReadsPrice: 0.31,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 2.5,\n\t\t\t\toutputPrice: 15,\n\t\t\t\tcacheReadsPrice: 0.625,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-2.5-pro-preview-05-06\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5, // This is the pricing for prompts above 200k tokens.\n\t\toutputPrice: 15,\n\t\tcacheReadsPrice: 0.625,\n\t\tcacheWritesPrice: 4.5,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 200_000,\n\t\t\t\tinputPrice: 1.25,\n\t\t\t\toutputPrice: 10,\n\t\t\t\tcacheReadsPrice: 0.31,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 2.5,\n\t\t\t\toutputPrice: 15,\n\t\t\t\tcacheReadsPrice: 0.625,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-2.5-pro-preview-06-05\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5, // This is the pricing for prompts above 200k tokens.\n\t\toutputPrice: 15,\n\t\tcacheReadsPrice: 0.625,\n\t\tcacheWritesPrice: 4.5,\n\t\tmaxThinkingTokens: 32_768,\n\t\tsupportsReasoningBudget: true,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 200_000,\n\t\t\t\tinputPrice: 1.25,\n\t\t\t\toutputPrice: 10,\n\t\t\t\tcacheReadsPrice: 0.31,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 2.5,\n\t\t\t\toutputPrice: 15,\n\t\t\t\tcacheReadsPrice: 0.625,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.4,\n\t\tcacheReadsPrice: 0.025,\n\t\tcacheWritesPrice: 1.0,\n\t},\n\t\"gemini-2.0-flash-lite-preview-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-pro-exp-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-01-21\": {\n\t\tmaxTokens: 65_536,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-1219\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32_767,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-exp\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15, // This is the pricing for prompts above 128k tokens.\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.0375,\n\t\tcacheWritesPrice: 1.0,\n\t\ttiers: [\n\t\t\t{\n\t\t\t\tcontextWindow: 128_000,\n\t\t\t\tinputPrice: 0.075,\n\t\t\t\toutputPrice: 0.3,\n\t\t\t\tcacheReadsPrice: 0.01875,\n\t\t\t},\n\t\t\t{\n\t\t\t\tcontextWindow: Infinity,\n\t\t\t\tinputPrice: 0.15,\n\t\t\t\toutputPrice: 0.6,\n\t\t\t\tcacheReadsPrice: 0.0375,\n\t\t\t},\n\t\t],\n\t},\n\t\"gemini-1.5-flash-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-8b-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-pro-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-pro-exp-0827\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-exp-1206\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://glama.ai/models\nexport const glamaDefaultModelId = \"anthropic/claude-3-7-sonnet\"\n\nexport const glamaDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and extended, step-by-step processing for complex tasks. The model demonstrates notable improvements in coding, particularly in front-end development and full-stack updates, and excels in agentic workflows, where it can autonomously navigate multi-step processes. Claude 3.7 Sonnet maintains performance parity with its predecessor in standard mode while offering an extended reasoning mode for enhanced accuracy in math, coding, and instruction-following tasks. Read more at the [blog post here](https://www.anthropic.com/news/claude-3-7-sonnet)\",\n}\n\nexport const GLAMA_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://console.groq.com/docs/models\nexport type GroqModelId =\n\t| \"llama-3.1-8b-instant\"\n\t| \"llama-3.3-70b-versatile\"\n\t| \"meta-llama/llama-4-scout-17b-16e-instruct\"\n\t| \"meta-llama/llama-4-maverick-17b-128e-instruct\"\n\t| \"mistral-saba-24b\"\n\t| \"qwen-qwq-32b\"\n\t| \"deepseek-r1-distill-llama-70b\"\n\nexport const groqDefaultModelId: GroqModelId = \"llama-3.3-70b-versatile\" // Defaulting to Llama3 70B Versatile\n\nexport const groqModels = {\n\t// Models based on API response: https://api.groq.com/openai/v1/models\n\t\"llama-3.1-8b-instant\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 3.1 8B Instant model, 128K context.\",\n\t},\n\t\"llama-3.3-70b-versatile\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 3.3 70B Versatile model, 128K context.\",\n\t},\n\t\"meta-llama/llama-4-scout-17b-16e-instruct\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 4 Scout 17B Instruct model, 128K context.\",\n\t},\n\t\"meta-llama/llama-4-maverick-17b-128e-instruct\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Meta Llama 4 Maverick 17B Instruct model, 128K context.\",\n\t},\n\t\"mistral-saba-24b\": {\n\t\tmaxTokens: 32768,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Mistral Saba 24B model, 32K context.\",\n\t},\n\t\"qwen-qwq-32b\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"Alibaba Qwen QwQ 32B model, 128K context.\",\n\t},\n\t\"deepseek-r1-distill-llama-70b\": {\n\t\tmaxTokens: 131072,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tdescription: \"DeepSeek R1 Distill Llama 70B model, 128K context.\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.litellm.ai/\nexport const litellmDefaultModelId = \"claude-3-7-sonnet-20250219\"\n\nexport const litellmDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n}\n\nexport const LITELLM_COMPUTER_USE_MODELS = new Set([\n\t\"claude-3-5-sonnet-latest\",\n\t\"claude-opus-4-20250514\",\n\t\"claude-sonnet-4-20250514\",\n\t\"claude-3-7-sonnet-latest\",\n\t\"claude-3-7-sonnet-20250219\",\n\t\"claude-3-5-sonnet-20241022\",\n\t\"vertex_ai/claude-3-5-sonnet\",\n\t\"vertex_ai/claude-3-5-sonnet-v2\",\n\t\"vertex_ai/claude-3-5-sonnet-v2@20241022\",\n\t\"vertex_ai/claude-3-7-sonnet@20250219\",\n\t\"vertex_ai/claude-opus-4@20250514\",\n\t\"vertex_ai/claude-sonnet-4@20250514\",\n\t\"openrouter/anthropic/claude-3.5-sonnet\",\n\t\"openrouter/anthropic/claude-3.5-sonnet:beta\",\n\t\"openrouter/anthropic/claude-3.7-sonnet\",\n\t\"openrouter/anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic.claude-opus-4-20250514-v1:0\",\n\t\"anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"us.anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"us.anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"us.anthropic.claude-opus-4-20250514-v1:0\",\n\t\"us.anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"eu.anthropic.claude-3-5-sonnet-20241022-v2:0\",\n\t\"eu.anthropic.claude-3-7-sonnet-20250219-v1:0\",\n\t\"eu.anthropic.claude-opus-4-20250514-v1:0\",\n\t\"eu.anthropic.claude-sonnet-4-20250514-v1:0\",\n\t\"snowflake/claude-3-5-sonnet\",\n])\n","export const LMSTUDIO_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.mistral.ai/getting-started/models/models_overview/\nexport type MistralModelId = keyof typeof mistralModels\n\nexport const mistralDefaultModelId: MistralModelId = \"codestral-latest\"\n\nexport const mistralModels = {\n\t\"codestral-latest\": {\n\t\tmaxTokens: 256_000,\n\t\tcontextWindow: 256_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.9,\n\t},\n\t\"mistral-large-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 6.0,\n\t},\n\t\"ministral-8b-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.1,\n\t},\n\t\"ministral-3b-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.04,\n\t\toutputPrice: 0.04,\n\t},\n\t\"mistral-small-latest\": {\n\t\tmaxTokens: 32_000,\n\t\tcontextWindow: 32_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.2,\n\t\toutputPrice: 0.6,\n\t},\n\t\"pixtral-large-latest\": {\n\t\tmaxTokens: 131_000,\n\t\tcontextWindow: 131_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 6.0,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const MISTRAL_DEFAULT_TEMPERATURE = 0\n","import type { ModelInfo } from \"../model.js\"\n\n// https://openai.com/api/pricing/\nexport type OpenAiNativeModelId = keyof typeof openAiNativeModels\n\nexport const openAiNativeDefaultModelId: OpenAiNativeModelId = \"gpt-4.1\"\n\nexport const openAiNativeModels = {\n\t\"gpt-4.1\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2,\n\t\toutputPrice: 8,\n\t\tcacheReadsPrice: 0.5,\n\t},\n\t\"gpt-4.1-mini\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.4,\n\t\toutputPrice: 1.6,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"gpt-4.1-nano\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 1_047_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.1,\n\t\toutputPrice: 0.4,\n\t\tcacheReadsPrice: 0.025,\n\t},\n\to3: {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 8.0,\n\t\tcacheReadsPrice: 0.5,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o3-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 8.0,\n\t\tcacheReadsPrice: 0.5,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o3-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 8.0,\n\t\tcacheReadsPrice: 0.5,\n\t\treasoningEffort: \"low\",\n\t},\n\t\"o4-mini\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o4-mini-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o4-mini-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.275,\n\t\treasoningEffort: \"low\",\n\t},\n\t\"o3-mini\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\tsupportsReasoningEffort: true,\n\t\treasoningEffort: \"medium\",\n\t},\n\t\"o3-mini-high\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\treasoningEffort: \"high\",\n\t},\n\t\"o3-mini-low\": {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t\treasoningEffort: \"low\",\n\t},\n\to1: {\n\t\tmaxTokens: 100_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15,\n\t\toutputPrice: 60,\n\t\tcacheReadsPrice: 7.5,\n\t},\n\t\"o1-preview\": {\n\t\tmaxTokens: 32_768,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15,\n\t\toutputPrice: 60,\n\t\tcacheReadsPrice: 7.5,\n\t},\n\t\"o1-mini\": {\n\t\tmaxTokens: 65_536,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.1,\n\t\toutputPrice: 4.4,\n\t\tcacheReadsPrice: 0.55,\n\t},\n\t\"gpt-4.5-preview\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 75,\n\t\toutputPrice: 150,\n\t\tcacheReadsPrice: 37.5,\n\t},\n\t\"gpt-4o\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 10,\n\t\tcacheReadsPrice: 1.25,\n\t},\n\t\"gpt-4o-mini\": {\n\t\tmaxTokens: 16_384,\n\t\tcontextWindow: 128_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t\tcacheReadsPrice: 0.075,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const openAiModelInfoSaneDefaults: ModelInfo = {\n\tmaxTokens: -1,\n\tcontextWindow: 128_000,\n\tsupportsImages: true,\n\tsupportsPromptCache: false,\n\tinputPrice: 0,\n\toutputPrice: 0,\n}\n\n// https://learn.microsoft.com/en-us/azure/ai-services/openai/api-version-deprecation\n// https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#api-specs\nexport const azureOpenAiDefaultApiVersion = \"2024-08-01-preview\"\n\nexport const OPENAI_NATIVE_DEFAULT_TEMPERATURE = 0\n\nexport const OPENAI_AZURE_AI_INFERENCE_PATH = \"/models/chat/completions\"\n","import type { ModelInfo } from \"../model.js\"\n\n// https://openrouter.ai/models?order=newest&supported_parameters=tools\nexport const openRouterDefaultModelId = \"anthropic/claude-sonnet-4\"\n\nexport const openRouterDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"Claude 3.7 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities. It introduces a hybrid reasoning approach, allowing users to choose between rapid responses and extended, step-by-step processing for complex tasks. The model demonstrates notable improvements in coding, particularly in front-end development and full-stack updates, and excels in agentic workflows, where it can autonomously navigate multi-step processes. Claude 3.7 Sonnet maintains performance parity with its predecessor in standard mode while offering an extended reasoning mode for enhanced accuracy in math, coding, and instruction-following tasks. Read more at the [blog post here](https://www.anthropic.com/news/claude-3-7-sonnet)\",\n}\n\nexport const OPENROUTER_DEFAULT_PROVIDER_NAME = \"[default]\"\n\nexport const OPEN_ROUTER_PROMPT_CACHING_MODELS = new Set([\n\t\"anthropic/claude-3-haiku\",\n\t\"anthropic/claude-3-haiku:beta\",\n\t\"anthropic/claude-3-opus\",\n\t\"anthropic/claude-3-opus:beta\",\n\t\"anthropic/claude-3-sonnet\",\n\t\"anthropic/claude-3-sonnet:beta\",\n\t\"anthropic/claude-3.5-haiku\",\n\t\"anthropic/claude-3.5-haiku-20241022\",\n\t\"anthropic/claude-3.5-haiku-20241022:beta\",\n\t\"anthropic/claude-3.5-haiku:beta\",\n\t\"anthropic/claude-3.5-sonnet\",\n\t\"anthropic/claude-3.5-sonnet-20240620\",\n\t\"anthropic/claude-3.5-sonnet-20240620:beta\",\n\t\"anthropic/claude-3.5-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet\",\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"anthropic/claude-opus-4\",\n\t\"google/gemini-2.5-flash-preview\",\n\t\"google/gemini-2.5-flash-preview:thinking\",\n\t\"google/gemini-2.5-flash-preview-05-20\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n\t\"google/gemini-2.0-flash-001\",\n\t\"google/gemini-flash-1.5\",\n\t\"google/gemini-flash-1.5-8b\",\n])\n\n// https://www.anthropic.com/news/3-5-models-and-computer-use\nexport const OPEN_ROUTER_COMPUTER_USE_MODELS = new Set([\n\t\"anthropic/claude-3.5-sonnet\",\n\t\"anthropic/claude-3.5-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet\",\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"anthropic/claude-opus-4\",\n])\n\n// When we first launched these models we didn't have support for\n// enabling/disabling the reasoning budget for hybrid models. Now that we\n// do support this we should give users the option to enable/disable it\n// whenever possible. However these particular (virtual) model ids with the\n// `:thinking` suffix always require the reasoning budget to be enabled, so\n// for backwards compatibility we should still require it.\n// We should *not* be adding new models to this set.\nexport const OPEN_ROUTER_REQUIRED_REASONING_BUDGET_MODELS = new Set([\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n])\n\nexport const OPEN_ROUTER_REASONING_BUDGET_MODELS = new Set([\n\t\"anthropic/claude-3.7-sonnet:beta\",\n\t\"anthropic/claude-opus-4\",\n\t\"anthropic/claude-sonnet-4\",\n\t\"google/gemini-2.5-pro-preview\",\n\t\"google/gemini-2.5-flash-preview-05-20\",\n\t// Also include the models that require the reasoning budget to be enabled\n\t// even though `OPEN_ROUTER_REQUIRED_REASONING_BUDGET_MODELS` takes precedence.\n\t\"anthropic/claude-3.7-sonnet:thinking\",\n\t\"google/gemini-2.5-flash-preview-05-20:thinking\",\n])\n","import type { ModelInfo } from \"../model.js\"\n\n// Requesty\n// https://requesty.ai/router-2\nexport const requestyDefaultModelId = \"coding/claude-4-sonnet\"\n\nexport const requestyDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsComputerUse: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n\tdescription:\n\t\t\"The best coding model, optimized by Requesty, and automatically routed to the fastest provider. Claude 4 Sonnet is an advanced large language model with improved reasoning, coding, and problem-solving capabilities.\",\n}\n","import type { ModelInfo } from \"../model.js\"\n\nexport const unboundDefaultModelId = \"anthropic/claude-3-7-sonnet-20250219\"\n\nexport const unboundDefaultModelInfo: ModelInfo = {\n\tmaxTokens: 8192,\n\tcontextWindow: 200_000,\n\tsupportsImages: true,\n\tsupportsPromptCache: true,\n\tinputPrice: 3.0,\n\toutputPrice: 15.0,\n\tcacheWritesPrice: 3.75,\n\tcacheReadsPrice: 0.3,\n}\n","import type { ModelInfo } from \"../model.js\"\n\n// https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-claude\nexport type VertexModelId = keyof typeof vertexModels\n\nexport const vertexDefaultModelId: VertexModelId = \"claude-sonnet-4@20250514\"\n\nexport const vertexModels = {\n\t\"gemini-2.5-flash-preview-05-20:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-05-20\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-flash-preview-04-17:thinking\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 3.5,\n\t\tmaxThinkingTokens: 24_576,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"gemini-2.5-flash-preview-04-17\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.5-pro-preview-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 15,\n\t},\n\t\"gemini-2.5-pro-preview-05-06\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 15,\n\t},\n\t\"gemini-2.5-pro-preview-06-05\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 2.5,\n\t\toutputPrice: 15,\n\t\tmaxThinkingTokens: 32_768,\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"gemini-2.5-pro-exp-03-25\": {\n\t\tmaxTokens: 65_535,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-pro-exp-02-05\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.15,\n\t\toutputPrice: 0.6,\n\t},\n\t\"gemini-2.0-flash-lite-001\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.075,\n\t\toutputPrice: 0.3,\n\t},\n\t\"gemini-2.0-flash-thinking-exp-01-21\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32_768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t},\n\t\"gemini-1.5-flash-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 1_048_576,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.075,\n\t\toutputPrice: 0.3,\n\t},\n\t\"gemini-1.5-pro-002\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 2_097_152,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 1.25,\n\t\toutputPrice: 5,\n\t},\n\t\"claude-sonnet-4@20250514\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tsupportsReasoningBudget: true,\n\t},\n\t\"claude-opus-4@20250514\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-7-sonnet@20250219:thinking\": {\n\t\tmaxTokens: 64_000,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t\tsupportsReasoningBudget: true,\n\t\trequiredReasoningBudget: true,\n\t},\n\t\"claude-3-7-sonnet@20250219\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-sonnet-v2@20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsComputerUse: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-sonnet@20240620\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tcacheWritesPrice: 3.75,\n\t\tcacheReadsPrice: 0.3,\n\t},\n\t\"claude-3-5-haiku@20241022\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 1.0,\n\t\toutputPrice: 5.0,\n\t\tcacheWritesPrice: 1.25,\n\t\tcacheReadsPrice: 0.1,\n\t},\n\t\"claude-3-opus@20240229\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 15.0,\n\t\toutputPrice: 75.0,\n\t\tcacheWritesPrice: 18.75,\n\t\tcacheReadsPrice: 1.5,\n\t},\n\t\"claude-3-haiku@20240307\": {\n\t\tmaxTokens: 4096,\n\t\tcontextWindow: 200_000,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: true,\n\t\tinputPrice: 0.25,\n\t\toutputPrice: 1.25,\n\t\tcacheWritesPrice: 0.3,\n\t\tcacheReadsPrice: 0.03,\n\t},\n} as const satisfies Record<string, ModelInfo>\n\nexport const VERTEX_REGIONS = [\n\t{ value: \"global\", label: \"global\" },\n\t{ value: \"us-east5\", label: \"us-east5\" },\n\t{ value: \"us-central1\", label: \"us-central1\" },\n\t{ value: \"europe-west1\", label: \"europe-west1\" },\n\t{ value: \"europe-west4\", label: \"europe-west4\" },\n\t{ value: \"asia-southeast1\", label: \"asia-southeast1\" },\n]\n","import type { ModelInfo } from \"../model.js\"\n\nexport type VscodeLlmModelId = keyof typeof vscodeLlmModels\n\nexport const vscodeLlmDefaultModelId: VscodeLlmModelId = \"claude-3.5-sonnet\"\n\nexport const vscodeLlmModels = {\n\t\"gpt-3.5-turbo\": {\n\t\tcontextWindow: 12114,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-3.5-turbo\",\n\t\tversion: \"gpt-3.5-turbo-0613\",\n\t\tname: \"GPT 3.5 Turbo\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 12114,\n\t},\n\t\"gpt-4o-mini\": {\n\t\tcontextWindow: 12115,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4o-mini\",\n\t\tversion: \"gpt-4o-mini-2024-07-18\",\n\t\tname: \"GPT-4o mini\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 12115,\n\t},\n\t\"gpt-4\": {\n\t\tcontextWindow: 28501,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4\",\n\t\tversion: \"gpt-4-0613\",\n\t\tname: \"GPT 4\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 28501,\n\t},\n\t\"gpt-4-0125-preview\": {\n\t\tcontextWindow: 63826,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4-turbo\",\n\t\tversion: \"gpt-4-0125-preview\",\n\t\tname: \"GPT 4 Turbo\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63826,\n\t},\n\t\"gpt-4o\": {\n\t\tcontextWindow: 63827,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4o\",\n\t\tversion: \"gpt-4o-2024-11-20\",\n\t\tname: \"GPT-4o\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63827,\n\t},\n\to1: {\n\t\tcontextWindow: 19827,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o1-ga\",\n\t\tversion: \"o1-2024-12-17\",\n\t\tname: \"o1 (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 19827,\n\t},\n\t\"o3-mini\": {\n\t\tcontextWindow: 63827,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o3-mini\",\n\t\tversion: \"o3-mini-2025-01-31\",\n\t\tname: \"o3-mini\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63827,\n\t},\n\t\"claude-3.5-sonnet\": {\n\t\tcontextWindow: 81638,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"claude-3.5-sonnet\",\n\t\tversion: \"claude-3.5-sonnet\",\n\t\tname: \"Claude 3.5 Sonnet\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 81638,\n\t},\n\t\"gemini-2.0-flash-001\": {\n\t\tcontextWindow: 127827,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gemini-2.0-flash\",\n\t\tversion: \"gemini-2.0-flash-001\",\n\t\tname: \"Gemini 2.0 Flash\",\n\t\tsupportsToolCalling: false,\n\t\tmaxInputTokens: 127827,\n\t},\n\t\"gemini-2.5-pro\": {\n\t\tcontextWindow: 63830,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gemini-2.5-pro\",\n\t\tversion: \"gemini-2.5-pro-preview-03-25\",\n\t\tname: \"Gemini 2.5 Pro (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 63830,\n\t},\n\t\"o4-mini\": {\n\t\tcontextWindow: 111446,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"o4-mini\",\n\t\tversion: \"o4-mini-2025-04-16\",\n\t\tname: \"o4-mini (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 111446,\n\t},\n\t\"gpt-4.1\": {\n\t\tcontextWindow: 111446,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0,\n\t\toutputPrice: 0,\n\t\tfamily: \"gpt-4.1\",\n\t\tversion: \"gpt-4.1-2025-04-14\",\n\t\tname: \"GPT-4.1 (Preview)\",\n\t\tsupportsToolCalling: true,\n\t\tmaxInputTokens: 111446,\n\t},\n} as const satisfies Record<\n\tstring,\n\tModelInfo & {\n\t\tfamily: string\n\t\tversion: string\n\t\tname: string\n\t\tsupportsToolCalling: boolean\n\t\tmaxInputTokens: number\n\t}\n>\n","import type { ModelInfo } from \"../model.js\"\n\n// https://docs.x.ai/docs/api-reference\nexport type XAIModelId = keyof typeof xaiModels\n\nexport const xaiDefaultModelId: XAIModelId = \"grok-3\"\n\nexport const xaiModels = {\n\t\"grok-3-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok-3 beta model with 131K context window\",\n\t},\n\t\"grok-3-fast-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 25.0,\n\t\tdescription: \"xAI's Grok-3 fast beta model with 131K context window\",\n\t},\n\t\"grok-3-mini-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.5,\n\t\tdescription: \"xAI's Grok-3 mini beta model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3-mini-fast-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.6,\n\t\toutputPrice: 4.0,\n\t\tdescription: \"xAI's Grok-3 mini fast beta model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 3.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok-3 model with 131K context window\",\n\t},\n\t\"grok-3-fast\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 25.0,\n\t\tdescription: \"xAI's Grok-3 fast model with 131K context window\",\n\t},\n\t\"grok-3-mini\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.3,\n\t\toutputPrice: 0.5,\n\t\tdescription: \"xAI's Grok-3 mini model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-3-mini-fast\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 0.6,\n\t\toutputPrice: 4.0,\n\t\tdescription: \"xAI's Grok-3 mini fast model with 131K context window\",\n\t\tsupportsReasoningEffort: true,\n\t},\n\t\"grok-2-latest\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model - latest version with 131K context window\",\n\t},\n\t\"grok-2\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model with 131K context window\",\n\t},\n\t\"grok-2-1212\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 model (version 1212) with 131K context window\",\n\t},\n\t\"grok-2-vision-latest\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model - latest version with image support and 32K context window\",\n\t},\n\t\"grok-2-vision\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model with image support and 32K context window\",\n\t},\n\t\"grok-2-vision-1212\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 32768,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 2.0,\n\t\toutputPrice: 10.0,\n\t\tdescription: \"xAI's Grok-2 Vision model (version 1212) with image support and 32K context window\",\n\t},\n\t\"grok-vision-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 8192,\n\t\tsupportsImages: true,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok Vision Beta model with image support and 8K context window\",\n\t},\n\t\"grok-beta\": {\n\t\tmaxTokens: 8192,\n\t\tcontextWindow: 131072,\n\t\tsupportsImages: false,\n\t\tsupportsPromptCache: false,\n\t\tinputPrice: 5.0,\n\t\toutputPrice: 15.0,\n\t\tdescription: \"xAI's Grok Beta model (legacy) with 131K context window\",\n\t},\n} as const satisfies Record<string, ModelInfo>\n","import { z } from \"zod\"\n\n/**\n * CodebaseIndexConfig\n */\n\nexport const codebaseIndexConfigSchema = z.object({\n\tcodebaseIndexEnabled: z.boolean().optional(),\n\tcodebaseIndexQdrantUrl: z.string().optional(),\n\tcodebaseIndexEmbedderProvider: z.enum([\"openai\", \"ollama\", \"openai-compatible\"]).optional(),\n\tcodebaseIndexEmbedderBaseUrl: z.string().optional(),\n\tcodebaseIndexEmbedderModelId: z.string().optional(),\n})\n\nexport type CodebaseIndexConfig = z.infer<typeof codebaseIndexConfigSchema>\n\n/**\n * CodebaseIndexModels\n */\n\nexport const codebaseIndexModelsSchema = z.object({\n\topenai: z.record(z.string(), z.object({ dimension: z.number() })).optional(),\n\tollama: z.record(z.string(), z.object({ dimension: z.number() })).optional(),\n\t\"openai-compatible\": z.record(z.string(), z.object({ dimension: z.number() })).optional(),\n})\n\nexport type CodebaseIndexModels = z.infer<typeof codebaseIndexModelsSchema>\n\n/**\n * CdebaseIndexProvider\n */\n\nexport const codebaseIndexProviderSchema = z.object({\n\tcodeIndexOpenAiKey: z.string().optional(),\n\tcodeIndexQdrantApiKey: z.string().optional(),\n\tcodebaseIndexOpenAiCompatibleBaseUrl: z.string().optional(),\n\tcodebaseIndexOpenAiCompatibleApiKey: z.string().optional(),\n\tcodebaseIndexOpenAiCompatibleModelDimension: z.number().optional(),\n})\n\nexport type CodebaseIndexProvider = z.infer<typeof codebaseIndexProviderSchema>\n","import { z } from \"zod\"\n\nimport { globalSettingsSchema } from \"./global-settings.js\"\n\n/**\n * CloudUserInfo\n */\n\nexport interface CloudUserInfo {\n\tname?: string\n\temail?: string\n\tpicture?: string\n}\n\n/**\n * OrganizationAllowList\n */\n\nexport const organizationAllowListSchema = z.object({\n\tallowAll: z.boolean(),\n\tproviders: z.record(\n\t\tz.object({\n\t\t\tallowAll: z.boolean(),\n\t\t\tmodels: z.array(z.string()).optional(),\n\t\t}),\n\t),\n})\n\nexport type OrganizationAllowList = z.infer<typeof organizationAllowListSchema>\n\n/**\n * OrganizationDefaultSettings\n */\n\nexport const organizationDefaultSettingsSchema = globalSettingsSchema\n\t.pick({\n\t\tenableCheckpoints: true,\n\t\tfuzzyMatchThreshold: true,\n\t\tmaxOpenTabsContext: true,\n\t\tmaxReadFileLine: true,\n\t\tmaxWorkspaceFiles: true,\n\t\tshowRooIgnoredFiles: true,\n\t\tterminalCommandDelay: true,\n\t\tterminalCompressProgressBar: true,\n\t\tterminalOutputLineLimit: true,\n\t\tterminalShellIntegrationDisabled: true,\n\t\tterminalShellIntegrationTimeout: true,\n\t\tterminalZshClearEolMark: true,\n\t})\n\t// Add stronger validations for some fields.\n\t.merge(\n\t\tz.object({\n\t\t\tmaxOpenTabsContext: z.number().int().nonnegative().optional(),\n\t\t\tmaxReadFileLine: z.number().int().gte(-1).optional(),\n\t\t\tmaxWorkspaceFiles: z.number().int().nonnegative().optional(),\n\t\t\tterminalCommandDelay: z.number().int().nonnegative().optional(),\n\t\t\tterminalOutputLineLimit: z.number().int().nonnegative().optional(),\n\t\t\tterminalShellIntegrationTimeout: z.number().int().nonnegative().optional(),\n\t\t}),\n\t)\n\nexport type OrganizationDefaultSettings = z.infer<typeof organizationDefaultSettingsSchema>\n\n/**\n * OrganizationCloudSettings\n */\n\nexport const organizationCloudSettingsSchema = z.object({\n\trecordTaskMessages: z.boolean().optional(),\n\tenableTaskSharing: z.boolean().optional(),\n\ttaskShareExpirationDays: z.number().int().positive().optional(),\n})\n\nexport type OrganizationCloudSettings = z.infer<typeof organizationCloudSettingsSchema>\n\n/**\n * Organization Settings\n */\n\nexport const organizationSettingsSchema = z.object({\n\tversion: z.number(),\n\tcloudSettings: organizationCloudSettingsSchema.optional(),\n\tdefaultSettings: organizationDefaultSettingsSchema,\n\tallowList: organizationAllowListSchema,\n})\n\nexport type OrganizationSettings = z.infer<typeof organizationSettingsSchema>\n\n/**\n * Constants\n */\n\nexport const ORGANIZATION_ALLOW_ALL: OrganizationAllowList = {\n\tallowAll: true,\n\tproviders: {},\n} as const\n\nexport const ORGANIZATION_DEFAULT: OrganizationSettings = {\n\tversion: 0,\n\tcloudSettings: {\n\t\tenableTaskSharing: true,\n\t\ttaskShareExpirationDays: 30,\n\t},\n\tdefaultSettings: {},\n\tallowList: ORGANIZATION_ALLOW_ALL,\n} as const\n\n/**\n * Share Types\n */\n\nexport const shareResponseSchema = z.object({\n\tsuccess: z.boolean(),\n\tshareUrl: z.string().optional(),\n\terror: z.string().optional(),\n})\n\nexport type ShareResponse = z.infer<typeof shareResponseSchema>\n","import { z } from \"zod\"\n\nimport { type Keys, keysOf } from \"./type-fu.js\"\nimport {\n\ttype ProviderSettings,\n\tPROVIDER_SETTINGS_KEYS,\n\tproviderSettingsEntrySchema,\n\tproviderSettingsSchema,\n} from \"./provider-settings.js\"\nimport { historyItemSchema } from \"./history.js\"\nimport { codebaseIndexModelsSchema, codebaseIndexConfigSchema } from \"./codebase-index.js\"\nimport { experimentsSchema } from \"./experiment.js\"\nimport { telemetrySettingsSchema } from \"./telemetry.js\"\nimport { modeConfigSchema } from \"./mode.js\"\nimport { customModePromptsSchema, customSupportPromptsSchema } from \"./mode.js\"\nimport { languagesSchema } from \"./vscode.js\"\n\n/**\n * GlobalSettings\n */\n\nexport const globalSettingsSchema = z.object({\n\tcurrentApiConfigName: z.string().optional(),\n\tlistApiConfigMeta: z.array(providerSettingsEntrySchema).optional(),\n\tpinnedApiConfigs: z.record(z.string(), z.boolean()).optional(),\n\n\tlastShownAnnouncementId: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n\ttaskHistory: z.array(historyItemSchema).optional(),\n\n\tcondensingApiConfigId: z.string().optional(),\n\tcustomCondensingPrompt: z.string().optional(),\n\n\tautoApprovalEnabled: z.boolean().optional(),\n\talwaysAllowReadOnly: z.boolean().optional(),\n\talwaysAllowReadOnlyOutsideWorkspace: z.boolean().optional(),\n\talwaysAllowWrite: z.boolean().optional(),\n\talwaysAllowWriteOutsideWorkspace: z.boolean().optional(),\n\twriteDelayMs: z.number().optional(),\n\talwaysAllowBrowser: z.boolean().optional(),\n\talwaysApproveResubmit: z.boolean().optional(),\n\trequestDelaySeconds: z.number().optional(),\n\talwaysAllowMcp: z.boolean().optional(),\n\talwaysAllowModeSwitch: z.boolean().optional(),\n\talwaysAllowSubtasks: z.boolean().optional(),\n\talwaysAllowExecute: z.boolean().optional(),\n\tallowedCommands: z.array(z.string()).optional(),\n\tallowedMaxRequests: z.number().nullish(),\n\tautoCondenseContext: z.boolean().optional(),\n\tautoCondenseContextPercent: z.number().optional(),\n\tmaxConcurrentFileReads: z.number().optional(),\n\n\tbrowserToolEnabled: z.boolean().optional(),\n\tbrowserViewportSize: z.string().optional(),\n\tscreenshotQuality: z.number().optional(),\n\tremoteBrowserEnabled: z.boolean().optional(),\n\tremoteBrowserHost: z.string().optional(),\n\tcachedChromeHostUrl: z.string().optional(),\n\n\tenableCheckpoints: z.boolean().optional(),\n\n\tttsEnabled: z.boolean().optional(),\n\tttsSpeed: z.number().optional(),\n\tsoundEnabled: z.boolean().optional(),\n\tsoundVolume: z.number().optional(),\n\n\tmaxOpenTabsContext: z.number().optional(),\n\tmaxWorkspaceFiles: z.number().optional(),\n\tshowRooIgnoredFiles: z.boolean().optional(),\n\tmaxReadFileLine: z.number().optional(),\n\n\tterminalOutputLineLimit: z.number().optional(),\n\tterminalShellIntegrationTimeout: z.number().optional(),\n\tterminalShellIntegrationDisabled: z.boolean().optional(),\n\tterminalCommandDelay: z.number().optional(),\n\tterminalPowershellCounter: z.boolean().optional(),\n\tterminalZshClearEolMark: z.boolean().optional(),\n\tterminalZshOhMy: z.boolean().optional(),\n\tterminalZshP10k: z.boolean().optional(),\n\tterminalZdotdir: z.boolean().optional(),\n\tterminalCompressProgressBar: z.boolean().optional(),\n\n\trateLimitSeconds: z.number().optional(),\n\tdiffEnabled: z.boolean().optional(),\n\tfuzzyMatchThreshold: z.number().optional(),\n\texperiments: experimentsSchema.optional(),\n\n\tcodebaseIndexModels: codebaseIndexModelsSchema.optional(),\n\tcodebaseIndexConfig: codebaseIndexConfigSchema.optional(),\n\n\tlanguage: languagesSchema.optional(),\n\n\ttelemetrySetting: telemetrySettingsSchema.optional(),\n\n\tmcpEnabled: z.boolean().optional(),\n\tenableMcpServerCreation: z.boolean().optional(),\n\n\tmode: z.string().optional(),\n\tmodeApiConfigs: z.record(z.string(), z.string()).optional(),\n\tcustomModes: z.array(modeConfigSchema).optional(),\n\tcustomModePrompts: customModePromptsSchema.optional(),\n\tcustomSupportPrompts: customSupportPromptsSchema.optional(),\n\tenhancementApiConfigId: z.string().optional(),\n\thistoryPreviewCollapsed: z.boolean().optional(),\n})\n\nexport type GlobalSettings = z.infer<typeof globalSettingsSchema>\n\nexport const GLOBAL_SETTINGS_KEYS = keysOf<GlobalSettings>()([\n\t\"currentApiConfigName\",\n\t\"listApiConfigMeta\",\n\t\"pinnedApiConfigs\",\n\n\t\"lastShownAnnouncementId\",\n\t\"customInstructions\",\n\t\"taskHistory\",\n\n\t\"condensingApiConfigId\",\n\t\"customCondensingPrompt\",\n\n\t\"autoApprovalEnabled\",\n\t\"alwaysAllowReadOnly\",\n\t\"alwaysAllowReadOnlyOutsideWorkspace\",\n\t\"alwaysAllowWrite\",\n\t\"alwaysAllowWriteOutsideWorkspace\",\n\t\"writeDelayMs\",\n\t\"alwaysAllowBrowser\",\n\t\"alwaysApproveResubmit\",\n\t\"requestDelaySeconds\",\n\t\"alwaysAllowMcp\",\n\t\"alwaysAllowModeSwitch\",\n\t\"alwaysAllowSubtasks\",\n\t\"alwaysAllowExecute\",\n\t\"allowedCommands\",\n\t\"allowedMaxRequests\",\n\t\"autoCondenseContext\",\n\t\"autoCondenseContextPercent\",\n\t\"maxConcurrentFileReads\",\n\n\t\"browserToolEnabled\",\n\t\"browserViewportSize\",\n\t\"screenshotQuality\",\n\t\"remoteBrowserEnabled\",\n\t\"remoteBrowserHost\",\n\n\t\"enableCheckpoints\",\n\n\t\"ttsEnabled\",\n\t\"ttsSpeed\",\n\t\"soundEnabled\",\n\t\"soundVolume\",\n\n\t\"maxOpenTabsContext\",\n\t\"maxWorkspaceFiles\",\n\t\"showRooIgnoredFiles\",\n\t\"maxReadFileLine\",\n\n\t\"terminalOutputLineLimit\",\n\t\"terminalShellIntegrationTimeout\",\n\t\"terminalShellIntegrationDisabled\",\n\t\"terminalCommandDelay\",\n\t\"terminalPowershellCounter\",\n\t\"terminalZshClearEolMark\",\n\t\"terminalZshOhMy\",\n\t\"terminalZshP10k\",\n\t\"terminalZdotdir\",\n\t\"terminalCompressProgressBar\",\n\n\t\"rateLimitSeconds\",\n\t\"diffEnabled\",\n\t\"fuzzyMatchThreshold\",\n\t\"experiments\",\n\n\t\"codebaseIndexModels\",\n\t\"codebaseIndexConfig\",\n\n\t\"language\",\n\n\t\"telemetrySetting\",\n\t\"mcpEnabled\",\n\t\"enableMcpServerCreation\",\n\n\t\"mode\",\n\t\"modeApiConfigs\",\n\t\"customModes\",\n\t\"customModePrompts\",\n\t\"customSupportPrompts\",\n\t\"enhancementApiConfigId\",\n\t\"cachedChromeHostUrl\",\n\t\"historyPreviewCollapsed\",\n])\n\n/**\n * RooCodeSettings\n */\n\nexport const rooCodeSettingsSchema = providerSettingsSchema.merge(globalSettingsSchema)\n\nexport type RooCodeSettings = GlobalSettings & ProviderSettings\n\n/**\n * SecretState\n */\n\nexport type SecretState = Pick<\n\tProviderSettings,\n\t| \"apiKey\"\n\t| \"glamaApiKey\"\n\t| \"openRouterApiKey\"\n\t| \"awsAccessKey\"\n\t| \"awsSecretKey\"\n\t| \"awsSessionToken\"\n\t| \"openAiApiKey\"\n\t| \"geminiApiKey\"\n\t| \"openAiNativeApiKey\"\n\t| \"deepSeekApiKey\"\n\t| \"mistralApiKey\"\n\t| \"unboundApiKey\"\n\t| \"requestyApiKey\"\n\t| \"xaiApiKey\"\n\t| \"groqApiKey\"\n\t| \"chutesApiKey\"\n\t| \"litellmApiKey\"\n\t| \"codeIndexOpenAiKey\"\n\t| \"codeIndexQdrantApiKey\"\n\t| \"codebaseIndexOpenAiCompatibleApiKey\"\n>\n\nexport const SECRET_STATE_KEYS = keysOf<SecretState>()([\n\t\"apiKey\",\n\t\"glamaApiKey\",\n\t\"openRouterApiKey\",\n\t\"awsAccessKey\",\n\t\"awsSecretKey\",\n\t\"awsSessionToken\",\n\t\"openAiApiKey\",\n\t\"geminiApiKey\",\n\t\"openAiNativeApiKey\",\n\t\"deepSeekApiKey\",\n\t\"mistralApiKey\",\n\t\"unboundApiKey\",\n\t\"requestyApiKey\",\n\t\"xaiApiKey\",\n\t\"groqApiKey\",\n\t\"chutesApiKey\",\n\t\"litellmApiKey\",\n\t\"codeIndexOpenAiKey\",\n\t\"codeIndexQdrantApiKey\",\n\t\"codebaseIndexOpenAiCompatibleApiKey\",\n])\n\nexport const isSecretStateKey = (key: string): key is Keys<SecretState> =>\n\tSECRET_STATE_KEYS.includes(key as Keys<SecretState>)\n\n/**\n * GlobalState\n */\n\nexport type GlobalState = Omit<RooCodeSettings, Keys<SecretState>>\n\nexport const GLOBAL_STATE_KEYS = [...GLOBAL_SETTINGS_KEYS, ...PROVIDER_SETTINGS_KEYS].filter(\n\t(key: Keys<RooCodeSettings>) => !SECRET_STATE_KEYS.includes(key as Keys<SecretState>),\n) as Keys<GlobalState>[]\n\nexport const isGlobalStateKey = (key: string): key is Keys<GlobalState> =>\n\tGLOBAL_STATE_KEYS.includes(key as Keys<GlobalState>)\n\n/**\n * Evals\n */\n\n// Default settings when running evals (unless overridden).\nexport const EVALS_SETTINGS: RooCodeSettings = {\n\tapiProvider: \"openrouter\",\n\topenRouterUseMiddleOutTransform: false,\n\n\tlastShownAnnouncementId: \"may-29-2025-3-19\",\n\n\tpinnedApiConfigs: {},\n\n\tautoApprovalEnabled: true,\n\talwaysAllowReadOnly: true,\n\talwaysAllowReadOnlyOutsideWorkspace: false,\n\talwaysAllowWrite: true,\n\talwaysAllowWriteOutsideWorkspace: false,\n\twriteDelayMs: 1000,\n\talwaysAllowBrowser: true,\n\talwaysApproveResubmit: true,\n\trequestDelaySeconds: 10,\n\talwaysAllowMcp: true,\n\talwaysAllowModeSwitch: true,\n\talwaysAllowSubtasks: true,\n\talwaysAllowExecute: true,\n\tallowedCommands: [\"*\"],\n\n\tbrowserToolEnabled: false,\n\tbrowserViewportSize: \"900x600\",\n\tscreenshotQuality: 75,\n\tremoteBrowserEnabled: false,\n\n\tttsEnabled: false,\n\tttsSpeed: 1,\n\tsoundEnabled: false,\n\tsoundVolume: 0.5,\n\n\tterminalOutputLineLimit: 500,\n\tterminalShellIntegrationTimeout: 30000,\n\tterminalCommandDelay: 0,\n\tterminalPowershellCounter: false,\n\tterminalZshOhMy: true,\n\tterminalZshClearEolMark: true,\n\tterminalZshP10k: false,\n\tterminalZdotdir: true,\n\tterminalCompressProgressBar: true,\n\tterminalShellIntegrationDisabled: true,\n\n\tdiffEnabled: true,\n\tfuzzyMatchThreshold: 1,\n\n\tenableCheckpoints: false,\n\n\trateLimitSeconds: 0,\n\tmaxOpenTabsContext: 20,\n\tmaxWorkspaceFiles: 200,\n\tshowRooIgnoredFiles: true,\n\tmaxReadFileLine: -1, // -1 to enable full file reading.\n\n\tlanguage: \"en\",\n\ttelemetrySetting: \"enabled\",\n\n\tmcpEnabled: false,\n\n\tmode: \"code\",\n\n\tcustomModes: [],\n}\n\nexport const EVALS_TIMEOUT = 5 * 60 * 1_000\n","/**\n * TS\n */\n\nexport type Keys<T> = keyof T\n\nexport type Values<T> = T[keyof T]\n\nexport type Equals<X, Y> = (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2 ? true : false\n\nexport type AssertEqual<T extends true> = T\n\n/**\n * Creates a type-safe keys array that enforces ALL keys from type T are present.\n * Returns a compile-time error if any keys are missing or extra keys are provided.\n */\nexport function keysOf<T>() {\n\treturn <const U extends readonly (keyof T)[]>(\n\t\tkeys: keyof T extends U[number] ? (U[number] extends keyof T ? U : never) : never,\n\t): U => keys\n}\n","import { z } from \"zod\"\n\nimport { keysOf } from \"./type-fu.js\"\nimport { reasoningEffortsSchema, modelInfoSchema } from \"./model.js\"\nimport { codebaseIndexProviderSchema } from \"./codebase-index.js\"\n\n/**\n * ProviderName\n */\n\nexport const providerNames = [\n\t\"anthropic\",\n\t\"glama\",\n\t\"openrouter\",\n\t\"bedrock\",\n\t\"vertex\",\n\t\"openai\",\n\t\"ollama\",\n\t\"vscode-lm\",\n\t\"lmstudio\",\n\t\"gemini\",\n\t\"openai-native\",\n\t\"mistral\",\n\t\"deepseek\",\n\t\"unbound\",\n\t\"requesty\",\n\t\"human-relay\",\n\t\"fake-ai\",\n\t\"xai\",\n\t\"groq\",\n\t\"chutes\",\n\t\"litellm\",\n] as const\n\nexport const providerNamesSchema = z.enum(providerNames)\n\nexport type ProviderName = z.infer<typeof providerNamesSchema>\n\n/**\n * ProviderSettingsEntry\n */\n\nexport const providerSettingsEntrySchema = z.object({\n\tid: z.string(),\n\tname: z.string(),\n\tapiProvider: providerNamesSchema.optional(),\n})\n\nexport type ProviderSettingsEntry = z.infer<typeof providerSettingsEntrySchema>\n\n/**\n * ProviderSettings\n */\n\nconst baseProviderSettingsSchema = z.object({\n\tincludeMaxTokens: z.boolean().optional(),\n\tdiffEnabled: z.boolean().optional(),\n\tfuzzyMatchThreshold: z.number().optional(),\n\tmodelTemperature: z.number().nullish(),\n\trateLimitSeconds: z.number().optional(),\n\n\t// Model reasoning.\n\tenableReasoningEffort: z.boolean().optional(),\n\treasoningEffort: reasoningEffortsSchema.optional(),\n\tmodelMaxTokens: z.number().optional(),\n\tmodelMaxThinkingTokens: z.number().optional(),\n})\n\n// Several of the providers share common model config properties.\nconst apiModelIdProviderModelSchema = baseProviderSettingsSchema.extend({\n\tapiModelId: z.string().optional(),\n})\n\nconst anthropicSchema = apiModelIdProviderModelSchema.extend({\n\tapiKey: z.string().optional(),\n\tanthropicBaseUrl: z.string().optional(),\n\tanthropicUseAuthToken: z.boolean().optional(),\n})\n\nconst glamaSchema = baseProviderSettingsSchema.extend({\n\tglamaModelId: z.string().optional(),\n\tglamaApiKey: z.string().optional(),\n})\n\nconst openRouterSchema = baseProviderSettingsSchema.extend({\n\topenRouterApiKey: z.string().optional(),\n\topenRouterModelId: z.string().optional(),\n\topenRouterBaseUrl: z.string().optional(),\n\topenRouterSpecificProvider: z.string().optional(),\n\topenRouterUseMiddleOutTransform: z.boolean().optional(),\n})\n\nconst bedrockSchema = apiModelIdProviderModelSchema.extend({\n\tawsAccessKey: z.string().optional(),\n\tawsSecretKey: z.string().optional(),\n\tawsSessionToken: z.string().optional(),\n\tawsRegion: z.string().optional(),\n\tawsUseCrossRegionInference: z.boolean().optional(),\n\tawsUsePromptCache: z.boolean().optional(),\n\tawsProfile: z.string().optional(),\n\tawsUseProfile: z.boolean().optional(),\n\tawsCustomArn: z.string().optional(),\n\tawsModelContextWindow: z.number().optional(),\n\tawsBedrockEndpointEnabled: z.boolean().optional(),\n\tawsBedrockEndpoint: z.string().optional(),\n})\n\nconst vertexSchema = apiModelIdProviderModelSchema.extend({\n\tvertexKeyFile: z.string().optional(),\n\tvertexJsonCredentials: z.string().optional(),\n\tvertexProjectId: z.string().optional(),\n\tvertexRegion: z.string().optional(),\n})\n\nconst openAiSchema = baseProviderSettingsSchema.extend({\n\topenAiBaseUrl: z.string().optional(),\n\topenAiApiKey: z.string().optional(),\n\topenAiLegacyFormat: z.boolean().optional(),\n\topenAiR1FormatEnabled: z.boolean().optional(),\n\topenAiModelId: z.string().optional(),\n\topenAiCustomModelInfo: modelInfoSchema.nullish(),\n\topenAiUseAzure: z.boolean().optional(),\n\tazureApiVersion: z.string().optional(),\n\topenAiStreamingEnabled: z.boolean().optional(),\n\topenAiHostHeader: z.string().optional(), // Keep temporarily for backward compatibility during migration.\n\topenAiHeaders: z.record(z.string(), z.string()).optional(),\n})\n\nconst ollamaSchema = baseProviderSettingsSchema.extend({\n\tollamaModelId: z.string().optional(),\n\tollamaBaseUrl: z.string().optional(),\n})\n\nconst vsCodeLmSchema = baseProviderSettingsSchema.extend({\n\tvsCodeLmModelSelector: z\n\t\t.object({\n\t\t\tvendor: z.string().optional(),\n\t\t\tfamily: z.string().optional(),\n\t\t\tversion: z.string().optional(),\n\t\t\tid: z.string().optional(),\n\t\t})\n\t\t.optional(),\n})\n\nconst lmStudioSchema = baseProviderSettingsSchema.extend({\n\tlmStudioModelId: z.string().optional(),\n\tlmStudioBaseUrl: z.string().optional(),\n\tlmStudioDraftModelId: z.string().optional(),\n\tlmStudioSpeculativeDecodingEnabled: z.boolean().optional(),\n})\n\nconst geminiSchema = apiModelIdProviderModelSchema.extend({\n\tgeminiApiKey: z.string().optional(),\n\tgoogleGeminiBaseUrl: z.string().optional(),\n})\n\nconst openAiNativeSchema = apiModelIdProviderModelSchema.extend({\n\topenAiNativeApiKey: z.string().optional(),\n\topenAiNativeBaseUrl: z.string().optional(),\n})\n\nconst mistralSchema = apiModelIdProviderModelSchema.extend({\n\tmistralApiKey: z.string().optional(),\n\tmistralCodestralUrl: z.string().optional(),\n})\n\nconst deepSeekSchema = apiModelIdProviderModelSchema.extend({\n\tdeepSeekBaseUrl: z.string().optional(),\n\tdeepSeekApiKey: z.string().optional(),\n})\n\nconst unboundSchema = baseProviderSettingsSchema.extend({\n\tunboundApiKey: z.string().optional(),\n\tunboundModelId: z.string().optional(),\n})\n\nconst requestySchema = baseProviderSettingsSchema.extend({\n\trequestyApiKey: z.string().optional(),\n\trequestyModelId: z.string().optional(),\n})\n\nconst humanRelaySchema = baseProviderSettingsSchema\n\nconst fakeAiSchema = baseProviderSettingsSchema.extend({\n\tfakeAi: z.unknown().optional(),\n})\n\nconst xaiSchema = apiModelIdProviderModelSchema.extend({\n\txaiApiKey: z.string().optional(),\n})\n\nconst groqSchema = apiModelIdProviderModelSchema.extend({\n\tgroqApiKey: z.string().optional(),\n})\n\nconst chutesSchema = apiModelIdProviderModelSchema.extend({\n\tchutesApiKey: z.string().optional(),\n})\n\nconst litellmSchema = baseProviderSettingsSchema.extend({\n\tlitellmBaseUrl: z.string().optional(),\n\tlitellmApiKey: z.string().optional(),\n\tlitellmModelId: z.string().optional(),\n})\n\nconst defaultSchema = z.object({\n\tapiProvider: z.undefined(),\n})\n\nexport const providerSettingsSchemaDiscriminated = z.discriminatedUnion(\"apiProvider\", [\n\tanthropicSchema.merge(z.object({ apiProvider: z.literal(\"anthropic\") })),\n\tglamaSchema.merge(z.object({ apiProvider: z.literal(\"glama\") })),\n\topenRouterSchema.merge(z.object({ apiProvider: z.literal(\"openrouter\") })),\n\tbedrockSchema.merge(z.object({ apiProvider: z.literal(\"bedrock\") })),\n\tvertexSchema.merge(z.object({ apiProvider: z.literal(\"vertex\") })),\n\topenAiSchema.merge(z.object({ apiProvider: z.literal(\"openai\") })),\n\tollamaSchema.merge(z.object({ apiProvider: z.literal(\"ollama\") })),\n\tvsCodeLmSchema.merge(z.object({ apiProvider: z.literal(\"vscode-lm\") })),\n\tlmStudioSchema.merge(z.object({ apiProvider: z.literal(\"lmstudio\") })),\n\tgeminiSchema.merge(z.object({ apiProvider: z.literal(\"gemini\") })),\n\topenAiNativeSchema.merge(z.object({ apiProvider: z.literal(\"openai-native\") })),\n\tmistralSchema.merge(z.object({ apiProvider: z.literal(\"mistral\") })),\n\tdeepSeekSchema.merge(z.object({ apiProvider: z.literal(\"deepseek\") })),\n\tunboundSchema.merge(z.object({ apiProvider: z.literal(\"unbound\") })),\n\trequestySchema.merge(z.object({ apiProvider: z.literal(\"requesty\") })),\n\thumanRelaySchema.merge(z.object({ apiProvider: z.literal(\"human-relay\") })),\n\tfakeAiSchema.merge(z.object({ apiProvider: z.literal(\"fake-ai\") })),\n\txaiSchema.merge(z.object({ apiProvider: z.literal(\"xai\") })),\n\tgroqSchema.merge(z.object({ apiProvider: z.literal(\"groq\") })),\n\tchutesSchema.merge(z.object({ apiProvider: z.literal(\"chutes\") })),\n\tlitellmSchema.merge(z.object({ apiProvider: z.literal(\"litellm\") })),\n\tdefaultSchema,\n])\n\nexport const providerSettingsSchema = z.object({\n\tapiProvider: providerNamesSchema.optional(),\n\t...anthropicSchema.shape,\n\t...glamaSchema.shape,\n\t...openRouterSchema.shape,\n\t...bedrockSchema.shape,\n\t...vertexSchema.shape,\n\t...openAiSchema.shape,\n\t...ollamaSchema.shape,\n\t...vsCodeLmSchema.shape,\n\t...lmStudioSchema.shape,\n\t...geminiSchema.shape,\n\t...openAiNativeSchema.shape,\n\t...mistralSchema.shape,\n\t...deepSeekSchema.shape,\n\t...unboundSchema.shape,\n\t...requestySchema.shape,\n\t...humanRelaySchema.shape,\n\t...fakeAiSchema.shape,\n\t...xaiSchema.shape,\n\t...groqSchema.shape,\n\t...chutesSchema.shape,\n\t...litellmSchema.shape,\n\t...codebaseIndexProviderSchema.shape,\n})\n\nexport type ProviderSettings = z.infer<typeof providerSettingsSchema>\n\nexport const PROVIDER_SETTINGS_KEYS = keysOf<ProviderSettings>()([\n\t\"apiProvider\",\n\t// Anthropic\n\t\"apiModelId\",\n\t\"apiKey\",\n\t\"anthropicBaseUrl\",\n\t\"anthropicUseAuthToken\",\n\t// Glama\n\t\"glamaModelId\",\n\t\"glamaApiKey\",\n\t// OpenRouter\n\t\"openRouterApiKey\",\n\t\"openRouterModelId\",\n\t\"openRouterBaseUrl\",\n\t\"openRouterSpecificProvider\",\n\t\"openRouterUseMiddleOutTransform\",\n\t// Amazon Bedrock\n\t\"awsAccessKey\",\n\t\"awsSecretKey\",\n\t\"awsSessionToken\",\n\t\"awsRegion\",\n\t\"awsUseCrossRegionInference\",\n\t\"awsUsePromptCache\",\n\t\"awsProfile\",\n\t\"awsUseProfile\",\n\t\"awsCustomArn\",\n\t\"awsModelContextWindow\",\n\t\"awsBedrockEndpointEnabled\",\n\t\"awsBedrockEndpoint\",\n\t// Google Vertex\n\t\"vertexKeyFile\",\n\t\"vertexJsonCredentials\",\n\t\"vertexProjectId\",\n\t\"vertexRegion\",\n\t// OpenAI\n\t\"openAiBaseUrl\",\n\t\"openAiApiKey\",\n\t\"openAiLegacyFormat\",\n\t\"openAiR1FormatEnabled\",\n\t\"openAiModelId\",\n\t\"openAiCustomModelInfo\",\n\t\"openAiUseAzure\",\n\t\"azureApiVersion\",\n\t\"openAiStreamingEnabled\",\n\t\"openAiHostHeader\", // Keep temporarily for backward compatibility during migration.\n\t\"openAiHeaders\",\n\t// Ollama\n\t\"ollamaModelId\",\n\t\"ollamaBaseUrl\",\n\t// VS Code LM\n\t\"vsCodeLmModelSelector\",\n\t\"lmStudioModelId\",\n\t\"lmStudioBaseUrl\",\n\t\"lmStudioDraftModelId\",\n\t\"lmStudioSpeculativeDecodingEnabled\",\n\t// Gemini\n\t\"geminiApiKey\",\n\t\"googleGeminiBaseUrl\",\n\t// OpenAI Native\n\t\"openAiNativeApiKey\",\n\t\"openAiNativeBaseUrl\",\n\t// Mistral\n\t\"mistralApiKey\",\n\t\"mistralCodestralUrl\",\n\t// DeepSeek\n\t\"deepSeekBaseUrl\",\n\t\"deepSeekApiKey\",\n\t// Unbound\n\t\"unboundApiKey\",\n\t\"unboundModelId\",\n\t// Requesty\n\t\"requestyApiKey\",\n\t\"requestyModelId\",\n\t// Code Index\n\t\"codeIndexOpenAiKey\",\n\t\"codeIndexQdrantApiKey\",\n\t\"codebaseIndexOpenAiCompatibleBaseUrl\",\n\t\"codebaseIndexOpenAiCompatibleApiKey\",\n\t\"codebaseIndexOpenAiCompatibleModelDimension\",\n\t// Reasoning\n\t\"enableReasoningEffort\",\n\t\"reasoningEffort\",\n\t\"modelMaxTokens\",\n\t\"modelMaxThinkingTokens\",\n\t// Generic\n\t\"includeMaxTokens\",\n\t\"diffEnabled\",\n\t\"fuzzyMatchThreshold\",\n\t\"modelTemperature\",\n\t\"rateLimitSeconds\",\n\t// Fake AI\n\t\"fakeAi\",\n\t// X.AI (Grok)\n\t\"xaiApiKey\",\n\t// Groq\n\t\"groqApiKey\",\n\t// Chutes AI\n\t\"chutesApiKey\",\n\t// LiteLLM\n\t\"litellmBaseUrl\",\n\t\"litellmApiKey\",\n\t\"litellmModelId\",\n])\n\nexport const MODEL_ID_KEYS: Partial<keyof ProviderSettings>[] = [\n\t\"apiModelId\",\n\t\"glamaModelId\",\n\t\"openRouterModelId\",\n\t\"openAiModelId\",\n\t\"ollamaModelId\",\n\t\"lmStudioModelId\",\n\t\"lmStudioDraftModelId\",\n\t\"unboundModelId\",\n\t\"requestyModelId\",\n\t\"litellmModelId\",\n]\n\nexport const getModelId = (settings: ProviderSettings): string | undefined => {\n\tconst modelIdKey = MODEL_ID_KEYS.find((key) => settings[key])\n\treturn modelIdKey ? (settings[modelIdKey] as string) : undefined\n}\n","import { z } from \"zod\"\n\n/**\n * ReasoningEffort\n */\n\nexport const reasoningEfforts = [\"low\", \"medium\", \"high\"] as const\n\nexport const reasoningEffortsSchema = z.enum(reasoningEfforts)\n\nexport type ReasoningEffort = z.infer<typeof reasoningEffortsSchema>\n\n/**\n * ModelParameter\n */\n\nexport const modelParameters = [\"max_tokens\", \"temperature\", \"reasoning\", \"include_reasoning\"] as const\n\nexport const modelParametersSchema = z.enum(modelParameters)\n\nexport type ModelParameter = z.infer<typeof modelParametersSchema>\n\nexport const isModelParameter = (value: string): value is ModelParameter =>\n\tmodelParameters.includes(value as ModelParameter)\n\n/**\n * ModelInfo\n */\n\nexport const modelInfoSchema = z.object({\n\tmaxTokens: z.number().nullish(),\n\tmaxThinkingTokens: z.number().nullish(),\n\tcontextWindow: z.number(),\n\tsupportsImages: z.boolean().optional(),\n\tsupportsComputerUse: z.boolean().optional(),\n\tsupportsPromptCache: z.boolean(),\n\tsupportsReasoningBudget: z.boolean().optional(),\n\trequiredReasoningBudget: z.boolean().optional(),\n\tsupportsReasoningEffort: z.boolean().optional(),\n\tsupportedParameters: z.array(modelParametersSchema).optional(),\n\tinputPrice: z.number().optional(),\n\toutputPrice: z.number().optional(),\n\tcacheWritesPrice: z.number().optional(),\n\tcacheReadsPrice: z.number().optional(),\n\tdescription: z.string().optional(),\n\treasoningEffort: reasoningEffortsSchema.optional(),\n\tminTokensPerCachePoint: z.number().optional(),\n\tmaxCachePoints: z.number().optional(),\n\tcachableFields: z.array(z.string()).optional(),\n\ttiers: z\n\t\t.array(\n\t\t\tz.object({\n\t\t\t\tcontextWindow: z.number(),\n\t\t\t\tinputPrice: z.number().optional(),\n\t\t\t\toutputPrice: z.number().optional(),\n\t\t\t\tcacheWritesPrice: z.number().optional(),\n\t\t\t\tcacheReadsPrice: z.number().optional(),\n\t\t\t}),\n\t\t)\n\t\t.optional(),\n})\n\nexport type ModelInfo = z.infer<typeof modelInfoSchema>\n","import { z } from \"zod\"\n\n/**\n * HistoryItem\n */\n\nexport const historyItemSchema = z.object({\n\tid: z.string(),\n\tnumber: z.number(),\n\tts: z.number(),\n\ttask: z.string(),\n\ttokensIn: z.number(),\n\ttokensOut: z.number(),\n\tcacheWrites: z.number().optional(),\n\tcacheReads: z.number().optional(),\n\ttotalCost: z.number(),\n\tsize: z.number().optional(),\n\tworkspace: z.string().optional(),\n})\n\nexport type HistoryItem = z.infer<typeof historyItemSchema>\n","import { z } from \"zod\"\n\nimport type { Keys, Equals, AssertEqual } from \"./type-fu.js\"\n\n/**\n * ExperimentId\n */\n\nexport const experimentIds = [\n\t\"powerSteering\",\n\t\"marketplace\",\n\t\"concurrentFileReads\",\n\t\"disableCompletionCommand\",\n] as const\n\nexport const experimentIdsSchema = z.enum(experimentIds)\n\nexport type ExperimentId = z.infer<typeof experimentIdsSchema>\n\n/**\n * Experiments\n */\n\nexport const experimentsSchema = z.object({\n\tpowerSteering: z.boolean(),\n\tmarketplace: z.boolean(),\n\tconcurrentFileReads: z.boolean(),\n\tdisableCompletionCommand: z.boolean(),\n})\n\nexport type Experiments = z.infer<typeof experimentsSchema>\n\ntype _AssertExperiments = AssertEqual<Equals<ExperimentId, Keys<Experiments>>>\n","import { z } from \"zod\"\n\nimport { providerNames } from \"./provider-settings.js\"\nimport { clineMessageSchema } from \"./message.js\"\n\n/**\n * TelemetrySetting\n */\n\nexport const telemetrySettings = [\"unset\", \"enabled\", \"disabled\"] as const\n\nexport const telemetrySettingsSchema = z.enum(telemetrySettings)\n\nexport type TelemetrySetting = z.infer<typeof telemetrySettingsSchema>\n\n/**\n * TelemetryEventName\n */\n\nexport enum TelemetryEventName {\n\tTASK_CREATED = \"Task Created\",\n\tTASK_RESTARTED = \"Task Reopened\",\n\tTASK_COMPLETED = \"Task Completed\",\n\tTASK_MESSAGE = \"Task Message\",\n\tTASK_CONVERSATION_MESSAGE = \"Conversation Message\",\n\tLLM_COMPLETION = \"LLM Completion\",\n\tMODE_SWITCH = \"Mode Switched\",\n\tTOOL_USED = \"Tool Used\",\n\n\tCHECKPOINT_CREATED = \"Checkpoint Created\",\n\tCHECKPOINT_RESTORED = \"Checkpoint Restored\",\n\tCHECKPOINT_DIFFED = \"Checkpoint Diffed\",\n\n\tCONTEXT_CONDENSED = \"Context Condensed\",\n\tSLIDING_WINDOW_TRUNCATION = \"Sliding Window Truncation\",\n\n\tCODE_ACTION_USED = \"Code Action Used\",\n\tPROMPT_ENHANCED = \"Prompt Enhanced\",\n\n\tTITLE_BUTTON_CLICKED = \"Title Button Clicked\",\n\n\tAUTHENTICATION_INITIATED = \"Authentication Initiated\",\n\n\tMARKETPLACE_ITEM_INSTALLED = \"Marketplace Item Installed\",\n\tMARKETPLACE_ITEM_REMOVED = \"Marketplace Item Removed\",\n\n\tSCHEMA_VALIDATION_ERROR = \"Schema Validation Error\",\n\tDIFF_APPLICATION_ERROR = \"Diff Application Error\",\n\tSHELL_INTEGRATION_ERROR = \"Shell Integration Error\",\n\tCONSECUTIVE_MISTAKE_ERROR = \"Consecutive Mistake Error\",\n}\n\n/**\n * TelemetryProperties\n */\n\nexport const appPropertiesSchema = z.object({\n\tappName: z.string(),\n\tappVersion: z.string(),\n\tvscodeVersion: z.string(),\n\tplatform: z.string(),\n\teditorName: z.string(),\n\tlanguage: z.string(),\n\tmode: z.string(),\n})\n\nexport const taskPropertiesSchema = z.object({\n\ttaskId: z.string().optional(),\n\tapiProvider: z.enum(providerNames).optional(),\n\tmodelId: z.string().optional(),\n\tdiffStrategy: z.string().optional(),\n\tisSubtask: z.boolean().optional(),\n})\n\nexport const telemetryPropertiesSchema = z.object({\n\t...appPropertiesSchema.shape,\n\t...taskPropertiesSchema.shape,\n})\n\nexport type TelemetryProperties = z.infer<typeof telemetryPropertiesSchema>\n\n/**\n * TelemetryEvent\n */\n\nexport type TelemetryEvent = {\n\tevent: TelemetryEventName\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\tproperties?: Record<string, any>\n}\n\n/**\n * RooCodeTelemetryEvent\n */\n\nexport const rooCodeTelemetryEventSchema = z.discriminatedUnion(\"type\", [\n\tz.object({\n\t\ttype: z.enum([\n\t\t\tTelemetryEventName.TASK_CREATED,\n\t\t\tTelemetryEventName.TASK_RESTARTED,\n\t\t\tTelemetryEventName.TASK_COMPLETED,\n\t\t\tTelemetryEventName.TASK_CONVERSATION_MESSAGE,\n\t\t\tTelemetryEventName.MODE_SWITCH,\n\t\t\tTelemetryEventName.TOOL_USED,\n\t\t\tTelemetryEventName.CHECKPOINT_CREATED,\n\t\t\tTelemetryEventName.CHECKPOINT_RESTORED,\n\t\t\tTelemetryEventName.CHECKPOINT_DIFFED,\n\t\t\tTelemetryEventName.CODE_ACTION_USED,\n\t\t\tTelemetryEventName.PROMPT_ENHANCED,\n\t\t\tTelemetryEventName.TITLE_BUTTON_CLICKED,\n\t\t\tTelemetryEventName.AUTHENTICATION_INITIATED,\n\t\t\tTelemetryEventName.MARKETPLACE_ITEM_INSTALLED,\n\t\t\tTelemetryEventName.MARKETPLACE_ITEM_REMOVED,\n\t\t\tTelemetryEventName.SCHEMA_VALIDATION_ERROR,\n\t\t\tTelemetryEventName.DIFF_APPLICATION_ERROR,\n\t\t\tTelemetryEventName.SHELL_INTEGRATION_ERROR,\n\t\t\tTelemetryEventName.CONSECUTIVE_MISTAKE_ERROR,\n\t\t\tTelemetryEventName.CONTEXT_CONDENSED,\n\t\t\tTelemetryEventName.SLIDING_WINDOW_TRUNCATION,\n\t\t]),\n\t\tproperties: telemetryPropertiesSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(TelemetryEventName.TASK_MESSAGE),\n\t\tproperties: z.object({\n\t\t\t...telemetryPropertiesSchema.shape,\n\t\t\ttaskId: z.string(),\n\t\t\tmessage: clineMessageSchema,\n\t\t}),\n\t}),\n\tz.object({\n\t\ttype: z.literal(TelemetryEventName.LLM_COMPLETION),\n\t\tproperties: z.object({\n\t\t\t...telemetryPropertiesSchema.shape,\n\t\t\tinputTokens: z.number(),\n\t\t\toutputTokens: z.number(),\n\t\t\tcacheReadTokens: z.number().optional(),\n\t\t\tcacheWriteTokens: z.number().optional(),\n\t\t\tcost: z.number().optional(),\n\t\t}),\n\t}),\n])\n\nexport type RooCodeTelemetryEvent = z.infer<typeof rooCodeTelemetryEventSchema>\n\n/**\n * TelemetryEventSubscription\n */\n\nexport type TelemetryEventSubscription =\n\t| { type: \"include\"; events: TelemetryEventName[] }\n\t| { type: \"exclude\"; events: TelemetryEventName[] }\n\n/**\n * TelemetryPropertiesProvider\n */\n\nexport interface TelemetryPropertiesProvider {\n\tgetTelemetryProperties(): Promise<TelemetryProperties>\n}\n\n/**\n * TelemetryClient\n */\n\nexport interface TelemetryClient {\n\tsubscription?: TelemetryEventSubscription\n\n\tsetProvider(provider: TelemetryPropertiesProvider): void\n\tcapture(options: TelemetryEvent): Promise<void>\n\tupdateTelemetryState(didUserOptIn: boolean): void\n\tisTelemetryEnabled(): boolean\n\tshutdown(): Promise<void>\n}\n","import { z } from \"zod\"\n\n/**\n * ClineAsk\n */\n\nexport const clineAsks = [\n\t\"followup\",\n\t\"command\",\n\t\"command_output\",\n\t\"completion_result\",\n\t\"tool\",\n\t\"api_req_failed\",\n\t\"resume_task\",\n\t\"resume_completed_task\",\n\t\"mistake_limit_reached\",\n\t\"browser_action_launch\",\n\t\"use_mcp_server\",\n\t\"auto_approval_max_req_reached\",\n] as const\n\nexport const clineAskSchema = z.enum(clineAsks)\n\nexport type ClineAsk = z.infer<typeof clineAskSchema>\n\n/**\n * ClineSay\n */\n\nexport const clineSays = [\n\t\"error\",\n\t\"api_req_started\",\n\t\"api_req_finished\",\n\t\"api_req_retried\",\n\t\"api_req_retry_delayed\",\n\t\"api_req_deleted\",\n\t\"text\",\n\t\"reasoning\",\n\t\"completion_result\",\n\t\"user_feedback\",\n\t\"user_feedback_diff\",\n\t\"command_output\",\n\t\"shell_integration_warning\",\n\t\"browser_action\",\n\t\"browser_action_result\",\n\t\"mcp_server_request_started\",\n\t\"mcp_server_response\",\n\t\"subtask_result\",\n\t\"checkpoint_saved\",\n\t\"rooignore_error\",\n\t\"diff_error\",\n\t\"condense_context\",\n\t\"condense_context_error\",\n\t\"codebase_search_result\",\n] as const\n\nexport const clineSaySchema = z.enum(clineSays)\n\nexport type ClineSay = z.infer<typeof clineSaySchema>\n\n/**\n * ToolProgressStatus\n */\n\nexport const toolProgressStatusSchema = z.object({\n\ticon: z.string().optional(),\n\ttext: z.string().optional(),\n})\n\nexport type ToolProgressStatus = z.infer<typeof toolProgressStatusSchema>\n\n/**\n * ContextCondense\n */\n\nexport const contextCondenseSchema = z.object({\n\tcost: z.number(),\n\tprevContextTokens: z.number(),\n\tnewContextTokens: z.number(),\n\tsummary: z.string(),\n})\n\nexport type ContextCondense = z.infer<typeof contextCondenseSchema>\n\n/**\n * ClineMessage\n */\n\nexport const clineMessageSchema = z.object({\n\tts: z.number(),\n\ttype: z.union([z.literal(\"ask\"), z.literal(\"say\")]),\n\task: clineAskSchema.optional(),\n\tsay: clineSaySchema.optional(),\n\ttext: z.string().optional(),\n\timages: z.array(z.string()).optional(),\n\tpartial: z.boolean().optional(),\n\treasoning: z.string().optional(),\n\tconversationHistoryIndex: z.number().optional(),\n\tcheckpoint: z.record(z.string(), z.unknown()).optional(),\n\tprogressStatus: toolProgressStatusSchema.optional(),\n\tcontextCondense: contextCondenseSchema.optional(),\n})\n\nexport type ClineMessage = z.infer<typeof clineMessageSchema>\n\n/**\n * TokenUsage\n */\n\nexport const tokenUsageSchema = z.object({\n\ttotalTokensIn: z.number(),\n\ttotalTokensOut: z.number(),\n\ttotalCacheWrites: z.number().optional(),\n\ttotalCacheReads: z.number().optional(),\n\ttotalCost: z.number(),\n\tcontextTokens: z.number(),\n})\n\nexport type TokenUsage = z.infer<typeof tokenUsageSchema>\n","import { z } from \"zod\"\n\nimport { toolGroupsSchema } from \"./tool.js\"\n\n/**\n * GroupOptions\n */\n\nexport const groupOptionsSchema = z.object({\n\tfileRegex: z\n\t\t.string()\n\t\t.optional()\n\t\t.refine(\n\t\t\t(pattern) => {\n\t\t\t\tif (!pattern) {\n\t\t\t\t\treturn true // Optional, so empty is valid.\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tnew RegExp(pattern)\n\t\t\t\t\treturn true\n\t\t\t\t} catch {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t},\n\t\t\t{ message: \"Invalid regular expression pattern\" },\n\t\t),\n\tdescription: z.string().optional(),\n})\n\nexport type GroupOptions = z.infer<typeof groupOptionsSchema>\n\n/**\n * GroupEntry\n */\n\nexport const groupEntrySchema = z.union([toolGroupsSchema, z.tuple([toolGroupsSchema, groupOptionsSchema])])\n\nexport type GroupEntry = z.infer<typeof groupEntrySchema>\n\n/**\n * ModeConfig\n */\n\nconst groupEntryArraySchema = z.array(groupEntrySchema).refine(\n\t(groups) => {\n\t\tconst seen = new Set()\n\n\t\treturn groups.every((group) => {\n\t\t\t// For tuples, check the group name (first element).\n\t\t\tconst groupName = Array.isArray(group) ? group[0] : group\n\n\t\t\tif (seen.has(groupName)) {\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\tseen.add(groupName)\n\t\t\treturn true\n\t\t})\n\t},\n\t{ message: \"Duplicate groups are not allowed\" },\n)\n\nexport const modeConfigSchema = z.object({\n\tslug: z.string().regex(/^[a-zA-Z0-9-]+$/, \"Slug must contain only letters numbers and dashes\"),\n\tname: z.string().min(1, \"Name is required\"),\n\troleDefinition: z.string().min(1, \"Role definition is required\"),\n\twhenToUse: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n\tgroups: groupEntryArraySchema,\n\tsource: z.enum([\"global\", \"project\"]).optional(),\n})\n\nexport type ModeConfig = z.infer<typeof modeConfigSchema>\n\n/**\n * CustomModesSettings\n */\n\nexport const customModesSettingsSchema = z.object({\n\tcustomModes: z.array(modeConfigSchema).refine(\n\t\t(modes) => {\n\t\t\tconst slugs = new Set()\n\n\t\t\treturn modes.every((mode) => {\n\t\t\t\tif (slugs.has(mode.slug)) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\n\t\t\t\tslugs.add(mode.slug)\n\t\t\t\treturn true\n\t\t\t})\n\t\t},\n\t\t{\n\t\t\tmessage: \"Duplicate mode slugs are not allowed\",\n\t\t},\n\t),\n})\n\nexport type CustomModesSettings = z.infer<typeof customModesSettingsSchema>\n\n/**\n * PromptComponent\n */\n\nexport const promptComponentSchema = z.object({\n\troleDefinition: z.string().optional(),\n\twhenToUse: z.string().optional(),\n\tcustomInstructions: z.string().optional(),\n})\n\nexport type PromptComponent = z.infer<typeof promptComponentSchema>\n\n/**\n * CustomModePrompts\n */\n\nexport const customModePromptsSchema = z.record(z.string(), promptComponentSchema.optional())\n\nexport type CustomModePrompts = z.infer<typeof customModePromptsSchema>\n\n/**\n * CustomSupportPrompts\n */\n\nexport const customSupportPromptsSchema = z.record(z.string(), z.string().optional())\n\nexport type CustomSupportPrompts = z.infer<typeof customSupportPromptsSchema>\n","import { z } from \"zod\"\n\n/**\n * ToolGroup\n */\n\nexport const toolGroups = [\"read\", \"edit\", \"browser\", \"command\", \"mcp\", \"modes\"] as const\n\nexport const toolGroupsSchema = z.enum(toolGroups)\n\nexport type ToolGroup = z.infer<typeof toolGroupsSchema>\n\n/**\n * ToolName\n */\n\nexport const toolNames = [\n\t\"execute_command\",\n\t\"read_file\",\n\t\"write_to_file\",\n\t\"apply_diff\",\n\t\"insert_content\",\n\t\"search_and_replace\",\n\t\"search_files\",\n\t\"list_files\",\n\t\"list_code_definition_names\",\n\t\"browser_action\",\n\t\"use_mcp_tool\",\n\t\"access_mcp_resource\",\n\t\"ask_followup_question\",\n\t\"attempt_completion\",\n\t\"switch_mode\",\n\t\"new_task\",\n\t\"fetch_instructions\",\n\t\"codebase_search\",\n] as const\n\nexport const toolNamesSchema = z.enum(toolNames)\n\nexport type ToolName = z.infer<typeof toolNamesSchema>\n\n/**\n * ToolUsage\n */\n\nexport const toolUsageSchema = z.record(\n\ttoolNamesSchema,\n\tz.object({\n\t\tattempts: z.number(),\n\t\tfailures: z.number(),\n\t}),\n)\n\nexport type ToolUsage = z.infer<typeof toolUsageSchema>\n","import { z } from \"zod\"\n\n/**\n * CodeAction\n */\n\nexport const codeActionIds = [\"explainCode\", \"fixCode\", \"improveCode\", \"addToContext\", \"newTask\"] as const\n\nexport type CodeActionId = (typeof codeActionIds)[number]\n\nexport type CodeActionName = \"EXPLAIN\" | \"FIX\" | \"IMPROVE\" | \"ADD_TO_CONTEXT\" | \"NEW_TASK\"\n\n/**\n * TerminalAction\n */\n\nexport const terminalActionIds = [\"terminalAddToContext\", \"terminalFixCommand\", \"terminalExplainCommand\"] as const\n\nexport type TerminalActionId = (typeof terminalActionIds)[number]\n\nexport type TerminalActionName = \"ADD_TO_CONTEXT\" | \"FIX\" | \"EXPLAIN\"\n\nexport type TerminalActionPromptType = `TERMINAL_${TerminalActionName}`\n\n/**\n * Command\n */\n\nexport const commandIds = [\n\t\"activationCompleted\",\n\n\t\"plusButtonClicked\",\n\t\"promptsButtonClicked\",\n\t\"mcpButtonClicked\",\n\t\"historyButtonClicked\",\n\t\"marketplaceButtonClicked\",\n\t\"popoutButtonClicked\",\n\t\"accountButtonClicked\",\n\t\"settingsButtonClicked\",\n\n\t\"openInNewTab\",\n\n\t\"showHumanRelayDialog\",\n\t\"registerHumanRelayCallback\",\n\t\"unregisterHumanRelayCallback\",\n\t\"handleHumanRelayResponse\",\n\n\t\"newTask\",\n\n\t\"setCustomStoragePath\",\n\n\t\"focusInput\",\n\t\"acceptInput\",\n] as const\n\nexport type CommandId = (typeof commandIds)[number]\n\n/**\n * Language\n */\n\nexport const languages = [\n\t\"ca\",\n\t\"de\",\n\t\"en\",\n\t\"es\",\n\t\"fr\",\n\t\"hi\",\n\t\"it\",\n\t\"ja\",\n\t\"ko\",\n\t\"nl\",\n\t\"pl\",\n\t\"pt-BR\",\n\t\"ru\",\n\t\"tr\",\n\t\"vi\",\n\t\"zh-CN\",\n\t\"zh-TW\",\n] as const\n\nexport const languagesSchema = z.enum(languages)\n\nexport type Language = z.infer<typeof languagesSchema>\n\nexport const isLanguage = (value: string): value is Language => languages.includes(value as Language)\n","import { z } from \"zod\"\n\nimport { clineMessageSchema, tokenUsageSchema } from \"./message.js\"\nimport { toolNamesSchema, toolUsageSchema } from \"./tool.js\"\nimport { rooCodeSettingsSchema } from \"./global-settings.js\"\n\n/**\n * RooCodeEvent\n */\n\nexport enum RooCodeEventName {\n\tMessage = \"message\",\n\tTaskCreated = \"taskCreated\",\n\tTaskStarted = \"taskStarted\",\n\tTaskModeSwitched = \"taskModeSwitched\",\n\tTaskPaused = \"taskPaused\",\n\tTaskUnpaused = \"taskUnpaused\",\n\tTaskAskResponded = \"taskAskResponded\",\n\tTaskAborted = \"taskAborted\",\n\tTaskSpawned = \"taskSpawned\",\n\tTaskCompleted = \"taskCompleted\",\n\tTaskTokenUsageUpdated = \"taskTokenUsageUpdated\",\n\tTaskToolFailed = \"taskToolFailed\",\n\tEvalPass = \"evalPass\",\n\tEvalFail = \"evalFail\",\n}\n\nexport const rooCodeEventsSchema = z.object({\n\t[RooCodeEventName.Message]: z.tuple([\n\t\tz.object({\n\t\t\ttaskId: z.string(),\n\t\t\taction: z.union([z.literal(\"created\"), z.literal(\"updated\")]),\n\t\t\tmessage: clineMessageSchema,\n\t\t}),\n\t]),\n\t[RooCodeEventName.TaskCreated]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskStarted]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskModeSwitched]: z.tuple([z.string(), z.string()]),\n\t[RooCodeEventName.TaskPaused]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskUnpaused]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskAskResponded]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskAborted]: z.tuple([z.string()]),\n\t[RooCodeEventName.TaskSpawned]: z.tuple([z.string(), z.string()]),\n\t[RooCodeEventName.TaskCompleted]: z.tuple([z.string(), tokenUsageSchema, toolUsageSchema]),\n\t[RooCodeEventName.TaskTokenUsageUpdated]: z.tuple([z.string(), tokenUsageSchema]),\n\t[RooCodeEventName.TaskToolFailed]: z.tuple([z.string(), toolNamesSchema, z.string()]),\n})\n\nexport type RooCodeEvents = z.infer<typeof rooCodeEventsSchema>\n\n/**\n * Ack\n */\n\nexport const ackSchema = z.object({\n\tclientId: z.string(),\n\tpid: z.number(),\n\tppid: z.number(),\n})\n\nexport type Ack = z.infer<typeof ackSchema>\n\n/**\n * TaskCommand\n */\n\nexport enum TaskCommandName {\n\tStartNewTask = \"StartNewTask\",\n\tCancelTask = \"CancelTask\",\n\tCloseTask = \"CloseTask\",\n}\n\nexport const taskCommandSchema = z.discriminatedUnion(\"commandName\", [\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.StartNewTask),\n\t\tdata: z.object({\n\t\t\tconfiguration: rooCodeSettingsSchema,\n\t\t\ttext: z.string(),\n\t\t\timages: z.array(z.string()).optional(),\n\t\t\tnewTab: z.boolean().optional(),\n\t\t}),\n\t}),\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.CancelTask),\n\t\tdata: z.string(),\n\t}),\n\tz.object({\n\t\tcommandName: z.literal(TaskCommandName.CloseTask),\n\t\tdata: z.string(),\n\t}),\n])\n\nexport type TaskCommand = z.infer<typeof taskCommandSchema>\n\n/**\n * TaskEvent\n */\n\nexport const taskEventSchema = z.discriminatedUnion(\"eventName\", [\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.Message),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.Message],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskCreated),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskCreated],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskStarted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskStarted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskModeSwitched),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskModeSwitched],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskPaused),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskPaused],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskUnpaused),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskUnpaused],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskAskResponded),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskAskResponded],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskAborted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskAborted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskSpawned),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskSpawned],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskCompleted),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskCompleted],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskTokenUsageUpdated),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskTokenUsageUpdated],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.TaskToolFailed),\n\t\tpayload: rooCodeEventsSchema.shape[RooCodeEventName.TaskToolFailed],\n\t\ttaskId: z.number().optional(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.EvalPass),\n\t\tpayload: z.undefined(),\n\t\ttaskId: z.number(),\n\t}),\n\tz.object({\n\t\teventName: z.literal(RooCodeEventName.EvalFail),\n\t\tpayload: z.undefined(),\n\t\ttaskId: z.number(),\n\t}),\n])\n\nexport type TaskEvent = z.infer<typeof taskEventSchema>\n\n/**\n * IpcMessage\n */\n\nexport enum IpcMessageType {\n\tConnect = \"Connect\",\n\tDisconnect = \"Disconnect\",\n\tAck = \"Ack\",\n\tTaskCommand = \"TaskCommand\",\n\tTaskEvent = \"TaskEvent\",\n}\n\nexport enum IpcOrigin {\n\tClient = \"client\",\n\tServer = \"server\",\n}\n\nexport const ipcMessageSchema = z.discriminatedUnion(\"type\", [\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.Ack),\n\t\torigin: z.literal(IpcOrigin.Server),\n\t\tdata: ackSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.TaskCommand),\n\t\torigin: z.literal(IpcOrigin.Client),\n\t\tclientId: z.string(),\n\t\tdata: taskCommandSchema,\n\t}),\n\tz.object({\n\t\ttype: z.literal(IpcMessageType.TaskEvent),\n\t\torigin: z.literal(IpcOrigin.Server),\n\t\trelayClientId: z.string().optional(),\n\t\tdata: taskEventSchema,\n\t}),\n])\n\nexport type IpcMessage = z.infer<typeof ipcMessageSchema>\n\n/**\n * Client\n */\n\nexport type IpcClientEvents = {\n\t[IpcMessageType.Connect]: []\n\t[IpcMessageType.Disconnect]: []\n\t[IpcMessageType.Ack]: [data: Ack]\n\t[IpcMessageType.TaskCommand]: [data: TaskCommand]\n\t[IpcMessageType.TaskEvent]: [data: TaskEvent]\n}\n\n/**\n * Server\n */\n\nexport type IpcServerEvents = {\n\t[IpcMessageType.Connect]: [clientId: string]\n\t[IpcMessageType.Disconnect]: [clientId: string]\n\t[IpcMessageType.TaskCommand]: [clientId: string, data: TaskCommand]\n\t[IpcMessageType.TaskEvent]: [relayClientId: string | undefined, data: TaskEvent]\n}\n","import { z } from \"zod\"\n\n/**\n * CommandExecutionStatus\n */\n\nexport const commandExecutionStatusSchema = z.discriminatedUnion(\"status\", [\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"started\"),\n\t\tpid: z.number().optional(),\n\t\tcommand: z.string(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"output\"),\n\t\toutput: z.string(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"exited\"),\n\t\texitCode: z.number().optional(),\n\t}),\n\tz.object({\n\t\texecutionId: z.string(),\n\t\tstatus: z.literal(\"fallback\"),\n\t}),\n])\n\nexport type CommandExecutionStatus = z.infer<typeof commandExecutionStatusSchema>\n"],"mappings":"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","names":["import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","import_zod","TelemetryEventName","import_zod","import_zod","import_zod","import_zod","RooCodeEventName","TaskCommandName","IpcMessageType","IpcOrigin","import_zod"]}