vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
172 lines • 5.82 kB
TypeScript
import { FileOperationResult } from './file-utils.js';
import { OpenRouterConfig } from '../../../types/workflow.js';
export interface LLMConfig {
llm_mapping: Record<string, string>;
}
export interface MCPToolConfig {
description: string;
use_cases: string[];
input_patterns: string[];
}
export interface MCPConfig {
tools: Record<string, MCPToolConfig>;
}
export interface VibeTaskManagerSecurityConfig {
allowedReadDirectory: string;
allowedWriteDirectory: string;
securityMode: 'strict' | 'permissive';
}
export interface PerformanceConfig {
enableConfigCache: boolean;
configCacheTTL: number;
lazyLoadServices: boolean;
preloadCriticalServices: string[];
connectionPoolSize: number;
maxStartupTime: number;
asyncInitialization: boolean;
batchConfigLoading: boolean;
}
export interface VibeTaskManagerConfig {
llm: LLMConfig;
mcp: MCPConfig;
taskManager: {
maxConcurrentTasks: number;
defaultTaskTemplate: string;
dataDirectory: string;
performanceTargets: {
maxResponseTime: number;
maxMemoryUsage: number;
minTestCoverage: number;
};
agentSettings: {
maxAgents: number;
defaultAgent: string;
coordinationStrategy: 'round_robin' | 'least_loaded' | 'capability_based' | 'priority_based';
healthCheckInterval: number;
};
nlpSettings: {
primaryMethod: 'pattern' | 'llm' | 'hybrid';
fallbackMethod: 'pattern' | 'llm' | 'none';
minConfidence: number;
maxProcessingTime: number;
};
timeouts: {
taskExecution: number;
taskDecomposition: number;
recursiveTaskDecomposition: number;
taskRefinement: number;
agentCommunication: number;
llmRequest: number;
fileOperations: number;
databaseOperations: number;
networkOperations: number;
};
retryPolicy: {
maxRetries: number;
backoffMultiplier: number;
initialDelayMs: number;
maxDelayMs: number;
enableExponentialBackoff: boolean;
};
rddConfig: {
maxDepth: number;
maxSubTasks: number;
minConfidence: number;
enableParallelDecomposition: boolean;
epicTimeLimit: number;
};
performance: {
memoryManagement: {
enabled: boolean;
maxMemoryPercentage: number;
monitorInterval: number;
autoManage: boolean;
pruneThreshold: number;
prunePercentage: number;
};
fileSystem: {
enableLazyLoading: boolean;
batchSize: number;
enableCompression: boolean;
indexingEnabled: boolean;
concurrentOperations: number;
};
caching: {
enabled: boolean;
strategy: 'memory' | 'disk' | 'hybrid';
maxCacheSize: number;
defaultTTL: number;
enableWarmup: boolean;
};
monitoring: {
enabled: boolean;
metricsInterval: number;
enableAlerts: boolean;
performanceThresholds: {
maxResponseTime: number;
maxMemoryUsage: number;
maxCpuUsage: number;
};
};
};
};
}
export declare class ConfigLoader {
private static instance;
private config;
private configCache;
private llmConfigPath;
private mcpConfigPath;
private performanceConfig;
private initializationPromise;
private loadingStartTime;
private cacheHits;
private cacheRequests;
private constructor();
static getInstance(): ConfigLoader;
private getVibeTaskManagerOutputDirectory;
private isCacheValid;
private getCachedConfig;
private cacheConfig;
private batchLoadConfigs;
loadConfig(): Promise<FileOperationResult<VibeTaskManagerConfig>>;
getConfig(): VibeTaskManagerConfig | null;
getLLMModel(operation: string): string;
getMCPToolConfig(toolName: string): MCPToolConfig | null;
getTaskManagerConfig(): VibeTaskManagerConfig['taskManager'] | null;
validateLLMMappings(): {
valid: boolean;
missing: string[];
};
validateMCPRegistration(): {
valid: boolean;
error?: string;
};
getConfigSummary(): {
llmMappingsCount: number;
mcpToolsCount: number;
taskManagerConfigured: boolean;
requiredLLMMappingsPresent: boolean;
};
reloadConfig(): Promise<FileOperationResult<VibeTaskManagerConfig>>;
isConfigValid(): boolean;
getPerformanceConfig(): PerformanceConfig;
updatePerformanceConfig(updates: Partial<PerformanceConfig>): void;
clearCache(): void;
resetCacheStats(): void;
getCacheStats(): {
size: number;
entries: string[];
hitRate: number;
totalRequests: number;
totalHits: number;
};
warmupCache(): Promise<void>;
}
export declare function getVibeTaskManagerConfig(): Promise<VibeTaskManagerConfig | null>;
export declare function getLLMModelForOperation(operation: string): Promise<string>;
export declare function getBaseOutputDir(): string;
export declare function getVibeTaskManagerOutputDir(): string;
export declare function extractVibeTaskManagerSecurityConfig(config?: OpenRouterConfig): VibeTaskManagerSecurityConfig;
export declare function getOrchestratorConfig(): Promise<unknown>;
//# sourceMappingURL=config-loader.d.ts.map