@agentkai/core
Version:
AgentKai核心包,提供AI助手系统的基础功能
184 lines • 4.8 kB
TypeScript
import { PlatformServices } from '../platform/interfaces';
import { AgentKaiConfig, AppConfig, ConfigValidationError, IConfigService, MemoryConfig, ModelConfig } from '../types/config';
interface ConfigOptions {
customConfigDir?: string;
}
/**
* 配置服务,用于管理所有配置
*/
export declare abstract class BaseConfigService implements IConfigService {
private config;
private logger;
abstract getPlatform(): PlatformServices;
private fs;
private env;
private pathUtils;
private platformInfo;
private configDir;
private dataDir;
private userConfigDir;
private configPath;
private userConfigPath;
private defaultConfig;
private userConfig;
private envConfig;
private fullConfig;
constructor(options?: ConfigOptions);
ensureDirExists(): void;
/**
* 初始化配置服务
*/
initialize(): Promise<boolean>;
/**
* 获取用户应用数据目录
* @returns 用户应用数据目录路径
*/
private getUserAppDataDir;
/**
* 查找所有配置文件
* @returns 配置文件路径
*/
findConfigFiles(): Promise<string[]>;
/**
* 加载默认配置
*/
private loadDefaultConfig;
/**
* 加载环境变量配置
*/
private loadEnvConfig;
/**
* 过滤掉对象中的undefined值
*/
private filterUndefinedValues;
/**
* 将字符串解析为数字
* @param value 要解析的字符串
* @returns 解析后的数字,如果解析失败则返回undefined
*/
private parseNumber;
/**
* 加载用户配置
*/
loadUserConfig(): Promise<void>;
/**
* 创建默认用户配置
* @returns 默认用户配置
*/
createDefaultUserConfig(): Promise<{
path: string;
config: AgentKaiConfig;
}>;
/**
* 合并所有配置
*/
private mergeConfigs;
/**
* 验证配置
* @param config 要验证的配置
* @returns 验证结果,如果有错误则返回错误信息,否则返回true
*/
validateConfig(config?: AgentKaiConfig): true | ConfigValidationError[];
/**
* 验证模型配置
* @param config 模型配置
* @returns 验证结果
*/
validateModelConfig(config: ModelConfig | undefined): true | ConfigValidationError[];
/**
* 验证记忆配置
* @param config 记忆配置
* @returns 验证结果
*/
validateMemoryConfig(config: MemoryConfig | undefined): true | ConfigValidationError[];
/**
* 验证应用配置
* @param config 应用配置
* @returns 验证结果
*/
validateAppConfig(config: AppConfig | undefined): true | ConfigValidationError[];
/**
* 获取完整配置
* @returns 完整配置
*/
getFullConfig(options?: {
allowEmpty: boolean;
}): AgentKaiConfig;
/**
* 获取数据目录路径
* @returns 数据目录路径
*/
getDataDir(): string;
/**
* 获取用户配置目录路径
* @returns 用户配置目录路径
*/
getUserConfigDir(): string;
/**
* 获取用户配置文件路径
* @returns 用户配置文件路径
*/
getUserConfigPath(): string;
/**
* 获取模型配置
* @returns 模型配置
*/
getModelConfig(): ModelConfig;
/**
* 获取记忆配置
* @returns 记忆配置
*/
getMemoryConfig(): MemoryConfig;
/**
* 获取应用配置
* @returns 应用配置
*/
getAppConfig(): AppConfig;
/**
* 保存配置到用户配置文件
* @param config 要保存的配置
*/
saveConfig(config: AgentKaiConfig): Promise<boolean>;
/**
* 获取配置值
* @param key 配置键
* @param defaultValue 默认值
* @returns 配置值或默认值
*/
get<T>(key: string, defaultValue?: T): T | undefined;
/**
* 获取版本号
* @returns 版本号或"未知"
*/
getVersion(): string;
/**
* 获取AI助手名称
* @returns AI助手名称
*/
getAIName(): string;
/**
* 获取数据存储路径
* @returns 数据存储路径
*/
getDataPath(): string;
/**
* 获取AI模型配置
* @returns AI模型配置对象
*/
getAIModelConfig(): ModelConfig;
/**
* 设置配置值
* @param key 配置键
* @param value 配置值
*/
set<T>(key: string, value: T): void;
/**
* 获取环境变量,封装process.env访问
* @param key 环境变量名
* @param defaultValue 默认值
* @returns 环境变量值或默认值
*/
getEnv(key: string, defaultValue?: string): string;
}
export {};
//# sourceMappingURL=config.d.ts.map