remcode
Version:
Turn your AI assistant into a codebase expert. Intelligent code analysis, semantic search, and software engineering guidance through MCP integration.
70 lines (69 loc) • 1.81 kB
TypeScript
/**
* Configuration interface with strong typing
*/
export interface RemcodeConfig {
ignore: string[];
analysis: {
depth: number;
quality: {
enabled: boolean;
complexityThreshold: number;
};
dependencies: {
enabled: boolean;
includeExternal: boolean;
};
};
vectorization: {
chunking: {
moduleLevelSize: number;
functionLevelSize: number;
overlapFactor: number;
};
embedding: {
model: string;
fallbackModel: string;
batchSize: number;
};
storage: {
provider: 'pinecone' | 'local' | 'custom';
indexes: {
moduleName: string;
functionName: string;
};
pinecone?: {
apiKey?: string;
environment?: string;
namespace?: string;
};
};
};
github?: {
token?: string;
cacheDir?: string;
};
server?: {
port: number;
host: string;
};
}
/**
* Load configuration from a file or use default configuration
*/
export declare function loadConfig(configPath?: string): RemcodeConfig;
/**
* Save configuration to a file
*/
export declare function saveConfig(config: Partial<RemcodeConfig>, configPath: string): void;
/**
* Get a specific configuration value by path
* Example: getConfigValue(config, 'vectorization.storage.provider')
*/
export declare function getConfigValue<T>(config: RemcodeConfig, path: string, defaultValue?: T): T | undefined;
/**
* Validate configuration against schema
*/
export declare function validateConfig(config: RemcodeConfig): {
valid: boolean;
errors: string[];
};