aiwg
Version:
Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platfo
72 lines • 1.97 kB
TypeScript
/**
* Model Configuration Loader
* Loads and merges model configurations from multiple sources with proper precedence
*
* @implements @.aiwg/architecture/ADR-015-enhanced-model-selection.md
* @architecture @.aiwg/architecture/enhanced-model-selection-design.md
*/
import type { ModelConfigV1, UserProjectConfig, MergedModelConfig, ProviderDefinition } from './types.js';
/**
* Configuration file locations
*/
export interface ConfigLocations {
aiwgDefault: string;
userConfig: string;
projectConfig: string;
}
/**
* Loads and merges model configurations
*/
export declare class ConfigLoader {
private cache;
private readonly locations;
constructor(projectPath?: string);
/**
* Load and merge all configurations
* Precedence: project > user > AIWG default
*/
load(): Promise<MergedModelConfig>;
/**
* Load AIWG default configuration
*/
private loadAiwgDefault;
/**
* Load user configuration (optional)
*/
private loadUserConfig;
/**
* Load project configuration (optional)
*/
private loadProjectConfig;
/**
* Merge configurations with proper precedence
*/
private merge;
/**
* Deep clone providers to avoid mutation
*/
private deepCloneProviders;
/**
* Load v1 config for backwards compatibility
*/
loadV1Config(path: string): Promise<ModelConfigV1 | null>;
/**
* Convert v1 config to v2 compatible structure
*/
convertV1ToV2(_v1Config: ModelConfigV1): UserProjectConfig;
/**
* Resolve provider inheritance
*/
resolveProviderInheritance(provider: ProviderDefinition, providers: {
[provider: string]: ProviderDefinition;
}): ProviderDefinition;
/**
* Clear cache (useful for testing)
*/
clearCache(): void;
/**
* Get configuration file locations
*/
getLocations(): ConfigLocations;
}
//# sourceMappingURL=config-loader.d.ts.map