@roo-code/cloud
Version:
SDK for integrating with Roo Code Cloud
1,089 lines (1,088 loc) • 204 kB
text/typescript
import EventEmitter from 'events';
import { z } from 'zod';
import { Disposable, ExtensionContext } from 'vscode';
import { TelemetryClient, TelemetryEventSubscription, TelemetryPropertiesProvider, TelemetryEventName, TelemetryEvent, ClineMessage, TaskProviderLike, TaskLike } from '@roo-code/types';
/**
* CloudUserInfo
*/
interface CloudUserInfo {
id?: string;
name?: string;
email?: string;
picture?: string;
organizationId?: string;
organizationName?: string;
organizationRole?: string;
organizationImageUrl?: string;
extensionBridgeEnabled?: boolean;
}
/**
* CloudOrganization
*/
interface CloudOrganization {
id: string;
name: string;
slug?: string;
image_url?: string;
has_image?: boolean;
created_at?: number;
updated_at?: number;
}
/**
* CloudOrganizationMembership
*/
interface CloudOrganizationMembership {
id: string;
organization: CloudOrganization;
role: string;
permissions?: string[];
created_at?: number;
updated_at?: number;
}
/**
* OrganizationAllowList
*/
declare const organizationAllowListSchema: z.ZodObject<{
allowAll: z.ZodBoolean;
providers: z.ZodRecord<z.ZodString, z.ZodObject<{
allowAll: z.ZodBoolean;
models: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
allowAll: boolean;
models?: string[] | undefined;
}, {
allowAll: boolean;
models?: string[] | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
allowAll: boolean;
providers: Record<string, {
allowAll: boolean;
models?: string[] | undefined;
}>;
}, {
allowAll: boolean;
providers: Record<string, {
allowAll: boolean;
models?: string[] | undefined;
}>;
}>;
type OrganizationAllowList = z.infer<typeof organizationAllowListSchema>;
/**
* OrganizationDefaultSettings
*/
declare const organizationDefaultSettingsSchema: z.ZodObject<{
enableCheckpoints: z.ZodOptional<z.ZodBoolean>;
showRooIgnoredFiles: z.ZodOptional<z.ZodBoolean>;
terminalShellIntegrationDisabled: z.ZodOptional<z.ZodBoolean>;
terminalZshClearEolMark: z.ZodOptional<z.ZodBoolean>;
terminalCompressProgressBar: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
} & {
maxOpenTabsContext: z.ZodOptional<z.ZodNumber>;
maxReadFileLine: z.ZodOptional<z.ZodNumber>;
maxWorkspaceFiles: z.ZodOptional<z.ZodNumber>;
terminalCommandDelay: z.ZodOptional<z.ZodNumber>;
terminalOutputLineLimit: z.ZodOptional<z.ZodNumber>;
terminalShellIntegrationTimeout: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
enableCheckpoints?: boolean | undefined;
maxOpenTabsContext?: number | undefined;
maxWorkspaceFiles?: number | undefined;
showRooIgnoredFiles?: boolean | undefined;
maxReadFileLine?: number | undefined;
terminalOutputLineLimit?: number | undefined;
terminalShellIntegrationTimeout?: number | undefined;
terminalShellIntegrationDisabled?: boolean | undefined;
terminalCommandDelay?: number | undefined;
terminalZshClearEolMark?: boolean | undefined;
terminalCompressProgressBar?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
}, {
enableCheckpoints?: boolean | undefined;
maxOpenTabsContext?: number | undefined;
maxWorkspaceFiles?: number | undefined;
showRooIgnoredFiles?: boolean | undefined;
maxReadFileLine?: number | undefined;
terminalOutputLineLimit?: number | undefined;
terminalShellIntegrationTimeout?: number | undefined;
terminalShellIntegrationDisabled?: boolean | undefined;
terminalCommandDelay?: number | undefined;
terminalZshClearEolMark?: boolean | undefined;
terminalCompressProgressBar?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
}>;
type OrganizationDefaultSettings = z.infer<typeof organizationDefaultSettingsSchema>;
/**
* OrganizationCloudSettings
*/
declare const organizationCloudSettingsSchema: z.ZodObject<{
recordTaskMessages: z.ZodOptional<z.ZodBoolean>;
enableTaskSharing: z.ZodOptional<z.ZodBoolean>;
taskShareExpirationDays: z.ZodOptional<z.ZodNumber>;
allowMembersViewAllTasks: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
recordTaskMessages?: boolean | undefined;
enableTaskSharing?: boolean | undefined;
taskShareExpirationDays?: number | undefined;
allowMembersViewAllTasks?: boolean | undefined;
}, {
recordTaskMessages?: boolean | undefined;
enableTaskSharing?: boolean | undefined;
taskShareExpirationDays?: number | undefined;
allowMembersViewAllTasks?: boolean | undefined;
}>;
type OrganizationCloudSettings = z.infer<typeof organizationCloudSettingsSchema>;
/**
* OrganizationSettings
*/
declare const organizationSettingsSchema: z.ZodObject<{
version: z.ZodNumber;
cloudSettings: z.ZodOptional<z.ZodObject<{
recordTaskMessages: z.ZodOptional<z.ZodBoolean>;
enableTaskSharing: z.ZodOptional<z.ZodBoolean>;
taskShareExpirationDays: z.ZodOptional<z.ZodNumber>;
allowMembersViewAllTasks: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
recordTaskMessages?: boolean | undefined;
enableTaskSharing?: boolean | undefined;
taskShareExpirationDays?: number | undefined;
allowMembersViewAllTasks?: boolean | undefined;
}, {
recordTaskMessages?: boolean | undefined;
enableTaskSharing?: boolean | undefined;
taskShareExpirationDays?: number | undefined;
allowMembersViewAllTasks?: boolean | undefined;
}>>;
defaultSettings: z.ZodObject<{
enableCheckpoints: z.ZodOptional<z.ZodBoolean>;
showRooIgnoredFiles: z.ZodOptional<z.ZodBoolean>;
terminalShellIntegrationDisabled: z.ZodOptional<z.ZodBoolean>;
terminalZshClearEolMark: z.ZodOptional<z.ZodBoolean>;
terminalCompressProgressBar: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
} & {
maxOpenTabsContext: z.ZodOptional<z.ZodNumber>;
maxReadFileLine: z.ZodOptional<z.ZodNumber>;
maxWorkspaceFiles: z.ZodOptional<z.ZodNumber>;
terminalCommandDelay: z.ZodOptional<z.ZodNumber>;
terminalOutputLineLimit: z.ZodOptional<z.ZodNumber>;
terminalShellIntegrationTimeout: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
enableCheckpoints?: boolean | undefined;
maxOpenTabsContext?: number | undefined;
maxWorkspaceFiles?: number | undefined;
showRooIgnoredFiles?: boolean | undefined;
maxReadFileLine?: number | undefined;
terminalOutputLineLimit?: number | undefined;
terminalShellIntegrationTimeout?: number | undefined;
terminalShellIntegrationDisabled?: boolean | undefined;
terminalCommandDelay?: number | undefined;
terminalZshClearEolMark?: boolean | undefined;
terminalCompressProgressBar?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
}, {
enableCheckpoints?: boolean | undefined;
maxOpenTabsContext?: number | undefined;
maxWorkspaceFiles?: number | undefined;
showRooIgnoredFiles?: boolean | undefined;
maxReadFileLine?: number | undefined;
terminalOutputLineLimit?: number | undefined;
terminalShellIntegrationTimeout?: number | undefined;
terminalShellIntegrationDisabled?: boolean | undefined;
terminalCommandDelay?: number | undefined;
terminalZshClearEolMark?: boolean | undefined;
terminalCompressProgressBar?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
}>;
allowList: z.ZodObject<{
allowAll: z.ZodBoolean;
providers: z.ZodRecord<z.ZodString, z.ZodObject<{
allowAll: z.ZodBoolean;
models: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
allowAll: boolean;
models?: string[] | undefined;
}, {
allowAll: boolean;
models?: string[] | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
allowAll: boolean;
providers: Record<string, {
allowAll: boolean;
models?: string[] | undefined;
}>;
}, {
allowAll: boolean;
providers: Record<string, {
allowAll: boolean;
models?: string[] | undefined;
}>;
}>;
hiddenMcps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
hideMarketplaceMcps: z.ZodOptional<z.ZodBoolean>;
mcps: z.ZodOptional<z.ZodArray<z.ZodObject<{
id: z.ZodString;
name: z.ZodString;
description: z.ZodString;
author: z.ZodOptional<z.ZodString>;
authorUrl: z.ZodOptional<z.ZodString>;
tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
prerequisites: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
} & {
url: z.ZodString;
content: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodObject<{
name: z.ZodString;
content: z.ZodString;
parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
key: z.ZodString;
placeholder: z.ZodOptional<z.ZodString>;
optional: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
name: string;
key: string;
optional: boolean;
placeholder?: string | undefined;
}, {
name: string;
key: string;
placeholder?: string | undefined;
optional?: boolean | undefined;
}>, "many">>;
prerequisites: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
name: string;
content: string;
parameters?: {
name: string;
key: string;
optional: boolean;
placeholder?: string | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
}, {
name: string;
content: string;
parameters?: {
name: string;
key: string;
placeholder?: string | undefined;
optional?: boolean | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
}>, "many">]>;
parameters: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
key: z.ZodString;
placeholder: z.ZodOptional<z.ZodString>;
optional: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
name: string;
key: string;
optional: boolean;
placeholder?: string | undefined;
}, {
name: string;
key: string;
placeholder?: string | undefined;
optional?: boolean | undefined;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
description: string;
id: string;
name: string;
url: string;
content: string | {
name: string;
content: string;
parameters?: {
name: string;
key: string;
optional: boolean;
placeholder?: string | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
}[];
parameters?: {
name: string;
key: string;
optional: boolean;
placeholder?: string | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
author?: string | undefined;
authorUrl?: string | undefined;
tags?: string[] | undefined;
}, {
description: string;
id: string;
name: string;
url: string;
content: string | {
name: string;
content: string;
parameters?: {
name: string;
key: string;
placeholder?: string | undefined;
optional?: boolean | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
}[];
parameters?: {
name: string;
key: string;
placeholder?: string | undefined;
optional?: boolean | undefined;
}[] | undefined;
prerequisites?: string[] | undefined;
author?: string | undefined;
authorUrl?: string | undefined;
tags?: string[] | undefined;
}>, "many">>;
providerProfiles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodIntersection<z.ZodDiscriminatedUnion<"apiProvider", [z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
apiModelId: z.ZodOptional<z.ZodString>;
} & {
apiKey: z.ZodOptional<z.ZodString>;
anthropicBaseUrl: z.ZodOptional<z.ZodString>;
anthropicUseAuthToken: z.ZodOptional<z.ZodBoolean>;
} & {
apiProvider: z.ZodLiteral<"anthropic">;
}, "strip", z.ZodTypeAny, {
apiProvider: "anthropic";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
apiKey?: string | undefined;
anthropicBaseUrl?: string | undefined;
anthropicUseAuthToken?: boolean | undefined;
}, {
apiProvider: "anthropic";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
apiKey?: string | undefined;
anthropicBaseUrl?: string | undefined;
anthropicUseAuthToken?: boolean | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
apiModelId: z.ZodOptional<z.ZodString>;
} & {
claudeCodePath: z.ZodOptional<z.ZodString>;
claudeCodeMaxOutputTokens: z.ZodOptional<z.ZodNumber>;
} & {
apiProvider: z.ZodLiteral<"claude-code">;
}, "strip", z.ZodTypeAny, {
apiProvider: "claude-code";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
claudeCodePath?: string | undefined;
claudeCodeMaxOutputTokens?: number | undefined;
}, {
apiProvider: "claude-code";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
claudeCodePath?: string | undefined;
claudeCodeMaxOutputTokens?: number | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
glamaModelId: z.ZodOptional<z.ZodString>;
glamaApiKey: z.ZodOptional<z.ZodString>;
} & {
apiProvider: z.ZodLiteral<"glama">;
}, "strip", z.ZodTypeAny, {
apiProvider: "glama";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
glamaModelId?: string | undefined;
glamaApiKey?: string | undefined;
}, {
apiProvider: "glama";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
glamaModelId?: string | undefined;
glamaApiKey?: string | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
openRouterApiKey: z.ZodOptional<z.ZodString>;
openRouterModelId: z.ZodOptional<z.ZodString>;
openRouterBaseUrl: z.ZodOptional<z.ZodString>;
openRouterSpecificProvider: z.ZodOptional<z.ZodString>;
openRouterUseMiddleOutTransform: z.ZodOptional<z.ZodBoolean>;
} & {
apiProvider: z.ZodLiteral<"openrouter">;
}, "strip", z.ZodTypeAny, {
apiProvider: "openrouter";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
openRouterApiKey?: string | undefined;
openRouterModelId?: string | undefined;
openRouterBaseUrl?: string | undefined;
openRouterSpecificProvider?: string | undefined;
openRouterUseMiddleOutTransform?: boolean | undefined;
}, {
apiProvider: "openrouter";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
openRouterApiKey?: string | undefined;
openRouterModelId?: string | undefined;
openRouterBaseUrl?: string | undefined;
openRouterSpecificProvider?: string | undefined;
openRouterUseMiddleOutTransform?: boolean | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
apiModelId: z.ZodOptional<z.ZodString>;
} & {
awsAccessKey: z.ZodOptional<z.ZodString>;
awsSecretKey: z.ZodOptional<z.ZodString>;
awsSessionToken: z.ZodOptional<z.ZodString>;
awsRegion: z.ZodOptional<z.ZodString>;
awsUseCrossRegionInference: z.ZodOptional<z.ZodBoolean>;
awsUsePromptCache: z.ZodOptional<z.ZodBoolean>;
awsProfile: z.ZodOptional<z.ZodString>;
awsUseProfile: z.ZodOptional<z.ZodBoolean>;
awsApiKey: z.ZodOptional<z.ZodString>;
awsUseApiKey: z.ZodOptional<z.ZodBoolean>;
awsCustomArn: z.ZodOptional<z.ZodString>;
awsModelContextWindow: z.ZodOptional<z.ZodNumber>;
awsBedrockEndpointEnabled: z.ZodOptional<z.ZodBoolean>;
awsBedrockEndpoint: z.ZodOptional<z.ZodString>;
} & {
apiProvider: z.ZodLiteral<"bedrock">;
}, "strip", z.ZodTypeAny, {
apiProvider: "bedrock";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
awsAccessKey?: string | undefined;
awsSecretKey?: string | undefined;
awsSessionToken?: string | undefined;
awsRegion?: string | undefined;
awsUseCrossRegionInference?: boolean | undefined;
awsUsePromptCache?: boolean | undefined;
awsProfile?: string | undefined;
awsUseProfile?: boolean | undefined;
awsApiKey?: string | undefined;
awsUseApiKey?: boolean | undefined;
awsCustomArn?: string | undefined;
awsModelContextWindow?: number | undefined;
awsBedrockEndpointEnabled?: boolean | undefined;
awsBedrockEndpoint?: string | undefined;
}, {
apiProvider: "bedrock";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
awsAccessKey?: string | undefined;
awsSecretKey?: string | undefined;
awsSessionToken?: string | undefined;
awsRegion?: string | undefined;
awsUseCrossRegionInference?: boolean | undefined;
awsUsePromptCache?: boolean | undefined;
awsProfile?: string | undefined;
awsUseProfile?: boolean | undefined;
awsApiKey?: string | undefined;
awsUseApiKey?: boolean | undefined;
awsCustomArn?: string | undefined;
awsModelContextWindow?: number | undefined;
awsBedrockEndpointEnabled?: boolean | undefined;
awsBedrockEndpoint?: string | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
apiModelId: z.ZodOptional<z.ZodString>;
} & {
vertexKeyFile: z.ZodOptional<z.ZodString>;
vertexJsonCredentials: z.ZodOptional<z.ZodString>;
vertexProjectId: z.ZodOptional<z.ZodString>;
vertexRegion: z.ZodOptional<z.ZodString>;
} & {
apiProvider: z.ZodLiteral<"vertex">;
}, "strip", z.ZodTypeAny, {
apiProvider: "vertex";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
vertexKeyFile?: string | undefined;
vertexJsonCredentials?: string | undefined;
vertexProjectId?: string | undefined;
vertexRegion?: string | undefined;
}, {
apiProvider: "vertex";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
apiModelId?: string | undefined;
vertexKeyFile?: string | undefined;
vertexJsonCredentials?: string | undefined;
vertexProjectId?: string | undefined;
vertexRegion?: string | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
openAiBaseUrl: z.ZodOptional<z.ZodString>;
openAiApiKey: z.ZodOptional<z.ZodString>;
openAiLegacyFormat: z.ZodOptional<z.ZodBoolean>;
openAiR1FormatEnabled: z.ZodOptional<z.ZodBoolean>;
openAiModelId: z.ZodOptional<z.ZodString>;
openAiCustomModelInfo: z.ZodOptional<z.ZodNullable<z.ZodObject<{
maxTokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
maxThinkingTokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
contextWindow: z.ZodNumber;
supportsImages: z.ZodOptional<z.ZodBoolean>;
supportsComputerUse: z.ZodOptional<z.ZodBoolean>;
supportsPromptCache: z.ZodBoolean;
supportsVerbosity: z.ZodOptional<z.ZodBoolean>;
supportsReasoningBudget: z.ZodOptional<z.ZodBoolean>;
requiredReasoningBudget: z.ZodOptional<z.ZodBoolean>;
supportsReasoningEffort: z.ZodOptional<z.ZodBoolean>;
supportedParameters: z.ZodOptional<z.ZodArray<z.ZodEnum<["max_tokens", "temperature", "reasoning", "include_reasoning"]>, "many">>;
inputPrice: z.ZodOptional<z.ZodNumber>;
outputPrice: z.ZodOptional<z.ZodNumber>;
cacheWritesPrice: z.ZodOptional<z.ZodNumber>;
cacheReadsPrice: z.ZodOptional<z.ZodNumber>;
description: z.ZodOptional<z.ZodString>;
reasoningEffort: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
minTokensPerCachePoint: z.ZodOptional<z.ZodNumber>;
maxCachePoints: z.ZodOptional<z.ZodNumber>;
cachableFields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
tiers: z.ZodOptional<z.ZodArray<z.ZodObject<{
contextWindow: z.ZodNumber;
inputPrice: z.ZodOptional<z.ZodNumber>;
outputPrice: z.ZodOptional<z.ZodNumber>;
cacheWritesPrice: z.ZodOptional<z.ZodNumber>;
cacheReadsPrice: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}, {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
contextWindow: number;
supportsPromptCache: boolean;
maxTokens?: number | null | undefined;
maxThinkingTokens?: number | null | undefined;
supportsImages?: boolean | undefined;
supportsComputerUse?: boolean | undefined;
supportsVerbosity?: boolean | undefined;
supportsReasoningBudget?: boolean | undefined;
requiredReasoningBudget?: boolean | undefined;
supportsReasoningEffort?: boolean | undefined;
supportedParameters?: ("reasoning" | "max_tokens" | "temperature" | "include_reasoning")[] | undefined;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
description?: string | undefined;
reasoningEffort?: "low" | "medium" | "high" | undefined;
minTokensPerCachePoint?: number | undefined;
maxCachePoints?: number | undefined;
cachableFields?: string[] | undefined;
tiers?: {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}[] | undefined;
}, {
contextWindow: number;
supportsPromptCache: boolean;
maxTokens?: number | null | undefined;
maxThinkingTokens?: number | null | undefined;
supportsImages?: boolean | undefined;
supportsComputerUse?: boolean | undefined;
supportsVerbosity?: boolean | undefined;
supportsReasoningBudget?: boolean | undefined;
requiredReasoningBudget?: boolean | undefined;
supportsReasoningEffort?: boolean | undefined;
supportedParameters?: ("reasoning" | "max_tokens" | "temperature" | "include_reasoning")[] | undefined;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
description?: string | undefined;
reasoningEffort?: "low" | "medium" | "high" | undefined;
minTokensPerCachePoint?: number | undefined;
maxCachePoints?: number | undefined;
cachableFields?: string[] | undefined;
tiers?: {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}[] | undefined;
}>>>;
openAiUseAzure: z.ZodOptional<z.ZodBoolean>;
azureApiVersion: z.ZodOptional<z.ZodString>;
openAiStreamingEnabled: z.ZodOptional<z.ZodBoolean>;
openAiHostHeader: z.ZodOptional<z.ZodString>;
openAiHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
} & {
apiProvider: z.ZodLiteral<"openai">;
}, "strip", z.ZodTypeAny, {
apiProvider: "openai";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
openAiBaseUrl?: string | undefined;
openAiApiKey?: string | undefined;
openAiLegacyFormat?: boolean | undefined;
openAiR1FormatEnabled?: boolean | undefined;
openAiModelId?: string | undefined;
openAiCustomModelInfo?: {
contextWindow: number;
supportsPromptCache: boolean;
maxTokens?: number | null | undefined;
maxThinkingTokens?: number | null | undefined;
supportsImages?: boolean | undefined;
supportsComputerUse?: boolean | undefined;
supportsVerbosity?: boolean | undefined;
supportsReasoningBudget?: boolean | undefined;
requiredReasoningBudget?: boolean | undefined;
supportsReasoningEffort?: boolean | undefined;
supportedParameters?: ("reasoning" | "max_tokens" | "temperature" | "include_reasoning")[] | undefined;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
description?: string | undefined;
reasoningEffort?: "low" | "medium" | "high" | undefined;
minTokensPerCachePoint?: number | undefined;
maxCachePoints?: number | undefined;
cachableFields?: string[] | undefined;
tiers?: {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}[] | undefined;
} | null | undefined;
openAiUseAzure?: boolean | undefined;
azureApiVersion?: string | undefined;
openAiStreamingEnabled?: boolean | undefined;
openAiHostHeader?: string | undefined;
openAiHeaders?: Record<string, string> | undefined;
}, {
apiProvider: "openai";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
openAiBaseUrl?: string | undefined;
openAiApiKey?: string | undefined;
openAiLegacyFormat?: boolean | undefined;
openAiR1FormatEnabled?: boolean | undefined;
openAiModelId?: string | undefined;
openAiCustomModelInfo?: {
contextWindow: number;
supportsPromptCache: boolean;
maxTokens?: number | null | undefined;
maxThinkingTokens?: number | null | undefined;
supportsImages?: boolean | undefined;
supportsComputerUse?: boolean | undefined;
supportsVerbosity?: boolean | undefined;
supportsReasoningBudget?: boolean | undefined;
requiredReasoningBudget?: boolean | undefined;
supportsReasoningEffort?: boolean | undefined;
supportedParameters?: ("reasoning" | "max_tokens" | "temperature" | "include_reasoning")[] | undefined;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
description?: string | undefined;
reasoningEffort?: "low" | "medium" | "high" | undefined;
minTokensPerCachePoint?: number | undefined;
maxCachePoints?: number | undefined;
cachableFields?: string[] | undefined;
tiers?: {
contextWindow: number;
inputPrice?: number | undefined;
outputPrice?: number | undefined;
cacheWritesPrice?: number | undefined;
cacheReadsPrice?: number | undefined;
}[] | undefined;
} | null | undefined;
openAiUseAzure?: boolean | undefined;
azureApiVersion?: string | undefined;
openAiStreamingEnabled?: boolean | undefined;
openAiHostHeader?: string | undefined;
openAiHeaders?: Record<string, string> | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
ollamaModelId: z.ZodOptional<z.ZodString>;
ollamaBaseUrl: z.ZodOptional<z.ZodString>;
} & {
apiProvider: z.ZodLiteral<"ollama">;
}, "strip", z.ZodTypeAny, {
apiProvider: "ollama";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
ollamaModelId?: string | undefined;
ollamaBaseUrl?: string | undefined;
}, {
apiProvider: "ollama";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
ollamaModelId?: string | undefined;
ollamaBaseUrl?: string | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
vsCodeLmModelSelector: z.ZodOptional<z.ZodObject<{
vendor: z.ZodOptional<z.ZodString>;
family: z.ZodOptional<z.ZodString>;
version: z.ZodOptional<z.ZodString>;
id: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
id?: string | undefined;
vendor?: string | undefined;
family?: string | undefined;
version?: string | undefined;
}, {
id?: string | undefined;
vendor?: string | undefined;
family?: string | undefined;
version?: string | undefined;
}>>;
} & {
apiProvider: z.ZodLiteral<"vscode-lm">;
}, "strip", z.ZodTypeAny, {
apiProvider: "vscode-lm";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
vsCodeLmModelSelector?: {
id?: string | undefined;
vendor?: string | undefined;
family?: string | undefined;
version?: string | undefined;
} | undefined;
}, {
apiProvider: "vscode-lm";
reasoningEffort?: "low" | "medium" | "high" | "minimal" | undefined;
includeMaxTokens?: boolean | undefined;
diffEnabled?: boolean | undefined;
todoListEnabled?: boolean | undefined;
fuzzyMatchThreshold?: number | undefined;
modelTemperature?: number | null | undefined;
rateLimitSeconds?: number | undefined;
consecutiveMistakeLimit?: number | undefined;
enableReasoningEffort?: boolean | undefined;
modelMaxTokens?: number | undefined;
modelMaxThinkingTokens?: number | undefined;
verbosity?: "low" | "medium" | "high" | undefined;
vsCodeLmModelSelector?: {
id?: string | undefined;
vendor?: string | undefined;
family?: string | undefined;
version?: string | undefined;
} | undefined;
}>, z.ZodObject<{
includeMaxTokens: z.ZodOptional<z.ZodBoolean>;
diffEnabled: z.ZodOptional<z.ZodBoolean>;
todoListEnabled: z.ZodOptional<z.ZodBoolean>;
fuzzyMatchThreshold: z.ZodOptional<z.ZodNumber>;
modelTemperature: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
rateLimitSeconds: z.ZodOptional<z.ZodNumber>;
consecutiveMistakeLimit: z.ZodOptional<z.ZodNumber>;
enableReasoningEffort: z.ZodOptional<z.ZodBoolean>;
reasoningEffort: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high"]>, z.ZodLiteral<"minimal">]>>;
modelMaxTokens: z.ZodOptional<z.ZodNumber>;
modelMaxThinkingTokens: z.ZodOptional<z.ZodNumber>;
verbosity: z.ZodOptional<z.ZodEnum<["low", "medium", "high"]>>;
} & {
lmStudioModelId: z.ZodOptional<z.ZodString>;
lmStudioBaseUrl: z.ZodOptional<z.ZodString>;
lmStudioDraftModelId: z.ZodOptional<z.ZodString>;
lmStudioSpeculativeDecodingEnabled: z.ZodOptional<z.ZodBoolean>;
} & {
apiProvider: z.ZodLiteral<"lmstudio">;
}, "strip", z.ZodTypeAny, {
apiProvider: "lmstudio";
reasoningEffo