/** * Model Configuration * * Reads per-mode model overrides and default-env overrides from .rcs-config.json. * * Config format: * { * "env": { * "RCS_DEFAULT_FRONTIER_MODEL": "your-frontier-model", * "RCS_DEFAULT_STANDARD_MODEL": "your-standard-model", * "RCS_DEFAULT_SPARK_MODEL": "your-spark-model" * }, * "models": { * "default": "o4-mini", * "team": "gpt-4.1" * } * } * * Resolution: mode-specific > "default" key > RCS_DEFAULT_FRONTIER_MODEL > DEFAULT_FRONTIER_MODEL */ export interface ModelsConfig { [mode: string]: string | undefined; } export interface RcsConfigEnv { [key: string]: string | undefined; } export interface ProviderProfile { base_url?: string; api_format?: string; env_key?: string; capabilities?: string[]; label?: string; } export interface ProviderRoutingConfig { default_provider?: string; mode_providers?: Record; fallback_providers?: string[]; mode_fallback_providers?: Record; hot_swap?: boolean; failover?: boolean; } export declare const RCS_DEFAULT_FRONTIER_MODEL_ENV = "RCS_DEFAULT_FRONTIER_MODEL"; export declare const RCS_DEFAULT_STANDARD_MODEL_ENV = "RCS_DEFAULT_STANDARD_MODEL"; export declare const RCS_DEFAULT_SPARK_MODEL_ENV = "RCS_DEFAULT_SPARK_MODEL"; export declare const RCS_SPARK_MODEL_ENV = "RCS_SPARK_MODEL"; export declare const RCS_TEAM_CHILD_MODEL_ENV = "RCS_TEAM_CHILD_MODEL"; export declare const RCS_DEFAULT_PROVIDER_ENV = "RCS_DEFAULT_PROVIDER"; export declare const RCS_PROVIDER_FAILOVER_ENV = "RCS_PROVIDER_FAILOVER"; export declare const RCS_PROVIDER_HOT_SWAP_ENV = "RCS_PROVIDER_HOT_SWAP"; export interface ActiveProviderConnection { provider: string | null; baseUrl: string | null; apiFormat: string | null; envKey: string | null; envValuePresent: boolean; fallbackProviders: string[]; hotSwapEnabled: boolean; failoverEnabled: boolean; } export declare const DEFAULT_FRONTIER_MODEL = "gpt-5.5"; export declare const DEFAULT_STANDARD_MODEL = "gpt-5.4-mini"; export declare const DEFAULT_SPARK_MODEL = "gpt-5.3-codex-spark"; export declare const DEFAULT_TEAM_CHILD_MODEL = "gpt-5.4-mini"; export declare function readConfiguredEnvOverrides(codexHomeOverride?: string): NodeJS.ProcessEnv; export declare function readProviderProfiles(codexHomeOverride?: string): Record; export declare function getConfiguredDefaultProvider(env?: NodeJS.ProcessEnv, codexHomeOverride?: string): string | undefined; export declare function getProviderForMode(mode: string, env?: NodeJS.ProcessEnv, codexHomeOverride?: string): string | undefined; export declare function getFallbackProvidersForMode(mode: string, codexHomeOverride?: string): string[]; export declare function readProviderRoutingFlags(env?: NodeJS.ProcessEnv, codexHomeOverride?: string): { hotSwapEnabled: boolean; failoverEnabled: boolean; }; export declare function readActiveProviderEnvOverrides(env?: NodeJS.ProcessEnv, codexHomeOverride?: string, activeProviderOverride?: string): NodeJS.ProcessEnv; export declare function readActiveProviderConnection(env?: NodeJS.ProcessEnv, mode?: string, codexHomeOverride?: string, activeProviderOverride?: string): ActiveProviderConnection; export declare function getEnvConfiguredMainDefaultModel(env?: NodeJS.ProcessEnv, codexHomeOverride?: string): string | undefined; export declare function getCodexConfigRootModelProvider(codexHomeOverride?: string): string | undefined; export declare function getEnvConfiguredStandardDefaultModel(env?: NodeJS.ProcessEnv, codexHomeOverride?: string): string | undefined; export declare function getEnvConfiguredSparkDefaultModel(env?: NodeJS.ProcessEnv, codexHomeOverride?: string): string | undefined; export declare function getTeamChildModel(codexHomeOverride?: string): string; /** * Get the envvar-backed main/default model. * Resolution: RCS_DEFAULT_FRONTIER_MODEL > config.toml model > DEFAULT_FRONTIER_MODEL */ export declare function getMainDefaultModel(codexHomeOverride?: string): string; /** * Get the envvar-backed standard/default subagent model. * * Standard-role subagents inherit the configured main/default model unless an * explicit standard-lane override is configured. This keeps spawned agents in * sync with the leader model while preserving RCS_DEFAULT_STANDARD_MODEL as the * opt-in escape hatch for cheaper/specialized standard workers. * * Resolution: RCS_DEFAULT_STANDARD_MODEL > RCS_DEFAULT_FRONTIER_MODEL > config.toml model > DEFAULT_FRONTIER_MODEL */ export declare function getStandardDefaultModel(codexHomeOverride?: string): string; /** * Get the configured model for a specific mode. * Resolution: mode-specific override > "default" key > RCS_DEFAULT_FRONTIER_MODEL > DEFAULT_FRONTIER_MODEL */ export declare function getModelForMode(mode: string, codexHomeOverride?: string): string; /** * Get the envvar-backed spark/low-complexity default model. * Resolution: RCS_DEFAULT_SPARK_MODEL > RCS_SPARK_MODEL > explicit low-complexity key(s) > DEFAULT_SPARK_MODEL */ export declare function getSparkDefaultModel(codexHomeOverride?: string): string; /** * Get the low-complexity team worker model. * Resolution: explicit low-complexity key(s) > RCS_DEFAULT_SPARK_MODEL > RCS_SPARK_MODEL > DEFAULT_SPARK_MODEL */ export declare function getTeamLowComplexityModel(codexHomeOverride?: string): string; //# sourceMappingURL=models.d.ts.map