@sethdouglasford/claude-flow
Version:
Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology
91 lines • 3.35 kB
TypeScript
/**
* Centralized Model Configuration
* Defines all Claude models and their usage patterns across the codebase
*/
export interface ModelDefinition {
id: string;
name: string;
provider: "anthropic" | "openai" | "google" | "mistral";
capabilities: {
reasoning: "high" | "medium" | "low";
speed: "fast" | "medium" | "slow";
cost: "high" | "medium" | "low";
contextWindow: number;
maxTokens: number;
};
useCases: string[];
deprecated?: boolean;
}
export interface ModelHierarchyConfig {
primary: string;
apply: string;
review: string;
fallback: string;
}
export declare const CLAUDE_MODELS: Record<string, ModelDefinition>;
export declare const MODEL_ALIASES: Record<string, string>;
export declare const MODEL_HIERARCHIES: Record<string, ModelHierarchyConfig>;
export declare const DEFAULT_MODEL_CONFIG: ModelHierarchyConfig;
/**
* Resolve a model alias to its actual model ID
*/
export declare function resolveModelAlias(modelIdOrAlias: string): string;
/**
* Get model hierarchy for a specific use case (with alias resolution)
*/
export declare function getModelHierarchy(useCase?: keyof typeof MODEL_HIERARCHIES): ModelHierarchyConfig;
/**
* Get model definition by ID (with alias resolution)
*/
export declare function getModelDefinition(modelIdOrAlias: string): ModelDefinition | undefined;
/**
* Get all available models (excluding deprecated ones by default)
*/
export declare function getAvailableModels(includeDeprecated?: boolean): ModelDefinition[];
/**
* Get models suitable for a specific use case
*/
export declare function getModelsForUseCase(useCase: string): ModelDefinition[];
/**
* Validate if a model ID is available and not deprecated (with alias resolution)
*/
export declare function isValidModel(modelIdOrAlias: string, allowDeprecated?: boolean): boolean;
/**
* Get all available model aliases
*/
export declare function getModelAliases(): Record<string, string>;
/**
* Check if a string is a model alias
*/
export declare function isModelAlias(modelIdOrAlias: string): boolean;
/**
* Get the best model for a specific capability
*/
export declare function getBestModelForCapability(capability: keyof ModelDefinition["capabilities"], preferredLevel?: "high" | "medium" | "low"): ModelDefinition | undefined;
/**
* Create a custom model hierarchy
*/
export declare function createModelHierarchy(config: Partial<ModelHierarchyConfig>): ModelHierarchyConfig;
export declare const BEDROCK_MODEL_MAPPINGS: Record<string, string>;
export declare const BEDROCK_INFERENCE_PROFILES: Record<string, string>;
/**
* Get the Bedrock model ID for a given Anthropic model
*/
export declare function getBedrockModelId(anthropicModelId: string): string;
/**
* Get the Bedrock inference profile for a model (if required)
*/
export declare function getBedrockInferenceProfile(anthropicModelId: string): string | undefined;
/**
* Check if a model requires an inference profile for Bedrock
*/
export declare function requiresInferenceProfile(anthropicModelId: string): boolean;
/**
* Get Bedrock-compatible model configuration
*/
export declare function getBedrockModelConfig(anthropicModelId: string): {
modelId: string;
inferenceProfile?: string;
requiresProfile: boolean;
};
//# sourceMappingURL=model-config.d.ts.map