UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, and professional CLI. Built-in tools operational, 58+ external MCP servers discoverable. Connect to filesystem, GitHub, database operations, and more. Build, test, and

743 lines (742 loc) 26.6 kB
#!/usr/bin/env node /** * NeuroLink CLI Configuration Management * * Enhanced configuration system with interactive setup, * multi-profile support, and smart validation. */ import { z } from "zod"; declare const ConfigSchema: z.ZodObject<{ defaultProvider: z.ZodDefault<z.ZodEnum<["auto", "openai", "bedrock", "vertex", "anthropic", "azure", "google-ai", "huggingface", "ollama", "mistral"]>>; providers: z.ZodDefault<z.ZodObject<{ openai: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; baseURL: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; baseURL?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; baseURL?: string | undefined; }>>; bedrock: z.ZodOptional<z.ZodObject<{ region: z.ZodOptional<z.ZodString>; accessKeyId: z.ZodOptional<z.ZodString>; secretAccessKey: z.ZodOptional<z.ZodString>; sessionToken: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; }, { model?: string | undefined; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; }>>; vertex: z.ZodOptional<z.ZodObject<{ projectId: z.ZodOptional<z.ZodString>; location: z.ZodDefault<z.ZodString>; credentials: z.ZodOptional<z.ZodString>; serviceAccountKey: z.ZodOptional<z.ZodString>; clientEmail: z.ZodOptional<z.ZodString>; privateKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; location: string; projectId?: string | undefined; credentials?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; }, { model?: string | undefined; projectId?: string | undefined; credentials?: string | undefined; location?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; }>>; anthropic: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; }>>; azure: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; endpoint: z.ZodOptional<z.ZodString>; deploymentId: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; }>>; "google-ai": z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; }>>; huggingface: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; }>>; ollama: z.ZodOptional<z.ZodObject<{ baseUrl: z.ZodDefault<z.ZodString>; model: z.ZodDefault<z.ZodString>; timeout: z.ZodDefault<z.ZodNumber>; }, "strip", z.ZodTypeAny, { model: string; timeout: number; baseUrl: string; }, { model?: string | undefined; timeout?: number | undefined; baseUrl?: string | undefined; }>>; mistral: z.ZodOptional<z.ZodObject<{ apiKey: z.ZodOptional<z.ZodString>; model: z.ZodDefault<z.ZodString>; }, "strip", z.ZodTypeAny, { model: string; apiKey?: string | undefined; }, { model?: string | undefined; apiKey?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { "google-ai"?: { model: string; apiKey?: string | undefined; } | undefined; openai?: { model: string; apiKey?: string | undefined; baseURL?: string | undefined; } | undefined; anthropic?: { model: string; apiKey?: string | undefined; } | undefined; vertex?: { model: string; location: string; projectId?: string | undefined; credentials?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; } | undefined; bedrock?: { model: string; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; } | undefined; azure?: { model: string; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; } | undefined; ollama?: { model: string; timeout: number; baseUrl: string; } | undefined; mistral?: { model: string; apiKey?: string | undefined; } | undefined; huggingface?: { model: string; apiKey?: string | undefined; } | undefined; }, { "google-ai"?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; openai?: { model?: string | undefined; apiKey?: string | undefined; baseURL?: string | undefined; } | undefined; anthropic?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; vertex?: { model?: string | undefined; projectId?: string | undefined; credentials?: string | undefined; location?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; } | undefined; bedrock?: { model?: string | undefined; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; } | undefined; azure?: { model?: string | undefined; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; } | undefined; ollama?: { model?: string | undefined; timeout?: number | undefined; baseUrl?: string | undefined; } | undefined; mistral?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; huggingface?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; }>>; profiles: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>; preferences: z.ZodDefault<z.ZodObject<{ outputFormat: z.ZodDefault<z.ZodEnum<["text", "json", "yaml"]>>; temperature: z.ZodDefault<z.ZodNumber>; maxTokens: z.ZodDefault<z.ZodNumber>; enableLogging: z.ZodDefault<z.ZodBoolean>; enableCaching: z.ZodDefault<z.ZodBoolean>; cacheStrategy: z.ZodDefault<z.ZodEnum<["memory", "file", "redis"]>>; defaultEvaluationDomain: z.ZodOptional<z.ZodString>; enableAnalyticsByDefault: z.ZodDefault<z.ZodBoolean>; enableEvaluationByDefault: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { maxTokens: number; temperature: number; outputFormat: "text" | "json" | "yaml"; enableLogging: boolean; enableCaching: boolean; cacheStrategy: "memory" | "redis" | "file"; enableAnalyticsByDefault: boolean; enableEvaluationByDefault: boolean; defaultEvaluationDomain?: string | undefined; }, { maxTokens?: number | undefined; temperature?: number | undefined; outputFormat?: "text" | "json" | "yaml" | undefined; enableLogging?: boolean | undefined; enableCaching?: boolean | undefined; cacheStrategy?: "memory" | "redis" | "file" | undefined; defaultEvaluationDomain?: string | undefined; enableAnalyticsByDefault?: boolean | undefined; enableEvaluationByDefault?: boolean | undefined; }>>; domains: z.ZodDefault<z.ZodObject<{ healthcare: z.ZodDefault<z.ZodObject<{ evaluationCriteria: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; analyticsConfig: z.ZodDefault<z.ZodObject<{ trackPatientData: z.ZodDefault<z.ZodBoolean>; trackDiagnosticAccuracy: z.ZodDefault<z.ZodBoolean>; trackTreatmentOutcomes: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { trackPatientData: boolean; trackDiagnosticAccuracy: boolean; trackTreatmentOutcomes: boolean; }, { trackPatientData?: boolean | undefined; trackDiagnosticAccuracy?: boolean | undefined; trackTreatmentOutcomes?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { evaluationCriteria: string[]; analyticsConfig: { trackPatientData: boolean; trackDiagnosticAccuracy: boolean; trackTreatmentOutcomes: boolean; }; }, { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackPatientData?: boolean | undefined; trackDiagnosticAccuracy?: boolean | undefined; trackTreatmentOutcomes?: boolean | undefined; } | undefined; }>>; analytics: z.ZodDefault<z.ZodObject<{ evaluationCriteria: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; analyticsConfig: z.ZodDefault<z.ZodObject<{ trackDataQuality: z.ZodDefault<z.ZodBoolean>; trackModelPerformance: z.ZodDefault<z.ZodBoolean>; trackBusinessImpact: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { trackDataQuality: boolean; trackModelPerformance: boolean; trackBusinessImpact: boolean; }, { trackDataQuality?: boolean | undefined; trackModelPerformance?: boolean | undefined; trackBusinessImpact?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { evaluationCriteria: string[]; analyticsConfig: { trackDataQuality: boolean; trackModelPerformance: boolean; trackBusinessImpact: boolean; }; }, { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackDataQuality?: boolean | undefined; trackModelPerformance?: boolean | undefined; trackBusinessImpact?: boolean | undefined; } | undefined; }>>; finance: z.ZodDefault<z.ZodObject<{ evaluationCriteria: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; analyticsConfig: z.ZodDefault<z.ZodObject<{ trackRiskMetrics: z.ZodDefault<z.ZodBoolean>; trackRegulatory: z.ZodDefault<z.ZodBoolean>; trackPortfolioImpact: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { trackRiskMetrics: boolean; trackRegulatory: boolean; trackPortfolioImpact: boolean; }, { trackRiskMetrics?: boolean | undefined; trackRegulatory?: boolean | undefined; trackPortfolioImpact?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { evaluationCriteria: string[]; analyticsConfig: { trackRiskMetrics: boolean; trackRegulatory: boolean; trackPortfolioImpact: boolean; }; }, { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackRiskMetrics?: boolean | undefined; trackRegulatory?: boolean | undefined; trackPortfolioImpact?: boolean | undefined; } | undefined; }>>; ecommerce: z.ZodDefault<z.ZodObject<{ evaluationCriteria: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; analyticsConfig: z.ZodDefault<z.ZodObject<{ trackConversions: z.ZodDefault<z.ZodBoolean>; trackUserBehavior: z.ZodDefault<z.ZodBoolean>; trackRevenueImpact: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { trackConversions: boolean; trackUserBehavior: boolean; trackRevenueImpact: boolean; }, { trackConversions?: boolean | undefined; trackUserBehavior?: boolean | undefined; trackRevenueImpact?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { evaluationCriteria: string[]; analyticsConfig: { trackConversions: boolean; trackUserBehavior: boolean; trackRevenueImpact: boolean; }; }, { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackConversions?: boolean | undefined; trackUserBehavior?: boolean | undefined; trackRevenueImpact?: boolean | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { analytics: { evaluationCriteria: string[]; analyticsConfig: { trackDataQuality: boolean; trackModelPerformance: boolean; trackBusinessImpact: boolean; }; }; healthcare: { evaluationCriteria: string[]; analyticsConfig: { trackPatientData: boolean; trackDiagnosticAccuracy: boolean; trackTreatmentOutcomes: boolean; }; }; finance: { evaluationCriteria: string[]; analyticsConfig: { trackRiskMetrics: boolean; trackRegulatory: boolean; trackPortfolioImpact: boolean; }; }; ecommerce: { evaluationCriteria: string[]; analyticsConfig: { trackConversions: boolean; trackUserBehavior: boolean; trackRevenueImpact: boolean; }; }; }, { analytics?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackDataQuality?: boolean | undefined; trackModelPerformance?: boolean | undefined; trackBusinessImpact?: boolean | undefined; } | undefined; } | undefined; healthcare?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackPatientData?: boolean | undefined; trackDiagnosticAccuracy?: boolean | undefined; trackTreatmentOutcomes?: boolean | undefined; } | undefined; } | undefined; finance?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackRiskMetrics?: boolean | undefined; trackRegulatory?: boolean | undefined; trackPortfolioImpact?: boolean | undefined; } | undefined; } | undefined; ecommerce?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackConversions?: boolean | undefined; trackUserBehavior?: boolean | undefined; trackRevenueImpact?: boolean | undefined; } | undefined; } | undefined; }>>; }, "strip", z.ZodTypeAny, { providers: { "google-ai"?: { model: string; apiKey?: string | undefined; } | undefined; openai?: { model: string; apiKey?: string | undefined; baseURL?: string | undefined; } | undefined; anthropic?: { model: string; apiKey?: string | undefined; } | undefined; vertex?: { model: string; location: string; projectId?: string | undefined; credentials?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; } | undefined; bedrock?: { model: string; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; } | undefined; azure?: { model: string; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; } | undefined; ollama?: { model: string; timeout: number; baseUrl: string; } | undefined; mistral?: { model: string; apiKey?: string | undefined; } | undefined; huggingface?: { model: string; apiKey?: string | undefined; } | undefined; }; defaultProvider: "google-ai" | "openai" | "anthropic" | "vertex" | "bedrock" | "azure" | "ollama" | "mistral" | "huggingface" | "auto"; profiles: Record<string, any>; preferences: { maxTokens: number; temperature: number; outputFormat: "text" | "json" | "yaml"; enableLogging: boolean; enableCaching: boolean; cacheStrategy: "memory" | "redis" | "file"; enableAnalyticsByDefault: boolean; enableEvaluationByDefault: boolean; defaultEvaluationDomain?: string | undefined; }; domains: { analytics: { evaluationCriteria: string[]; analyticsConfig: { trackDataQuality: boolean; trackModelPerformance: boolean; trackBusinessImpact: boolean; }; }; healthcare: { evaluationCriteria: string[]; analyticsConfig: { trackPatientData: boolean; trackDiagnosticAccuracy: boolean; trackTreatmentOutcomes: boolean; }; }; finance: { evaluationCriteria: string[]; analyticsConfig: { trackRiskMetrics: boolean; trackRegulatory: boolean; trackPortfolioImpact: boolean; }; }; ecommerce: { evaluationCriteria: string[]; analyticsConfig: { trackConversions: boolean; trackUserBehavior: boolean; trackRevenueImpact: boolean; }; }; }; }, { providers?: { "google-ai"?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; openai?: { model?: string | undefined; apiKey?: string | undefined; baseURL?: string | undefined; } | undefined; anthropic?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; vertex?: { model?: string | undefined; projectId?: string | undefined; credentials?: string | undefined; location?: string | undefined; serviceAccountKey?: string | undefined; clientEmail?: string | undefined; privateKey?: string | undefined; } | undefined; bedrock?: { model?: string | undefined; region?: string | undefined; accessKeyId?: string | undefined; secretAccessKey?: string | undefined; sessionToken?: string | undefined; } | undefined; azure?: { model?: string | undefined; apiKey?: string | undefined; endpoint?: string | undefined; deploymentId?: string | undefined; } | undefined; ollama?: { model?: string | undefined; timeout?: number | undefined; baseUrl?: string | undefined; } | undefined; mistral?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; huggingface?: { model?: string | undefined; apiKey?: string | undefined; } | undefined; } | undefined; defaultProvider?: "google-ai" | "openai" | "anthropic" | "vertex" | "bedrock" | "azure" | "ollama" | "mistral" | "huggingface" | "auto" | undefined; profiles?: Record<string, any> | undefined; preferences?: { maxTokens?: number | undefined; temperature?: number | undefined; outputFormat?: "text" | "json" | "yaml" | undefined; enableLogging?: boolean | undefined; enableCaching?: boolean | undefined; cacheStrategy?: "memory" | "redis" | "file" | undefined; defaultEvaluationDomain?: string | undefined; enableAnalyticsByDefault?: boolean | undefined; enableEvaluationByDefault?: boolean | undefined; } | undefined; domains?: { analytics?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackDataQuality?: boolean | undefined; trackModelPerformance?: boolean | undefined; trackBusinessImpact?: boolean | undefined; } | undefined; } | undefined; healthcare?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackPatientData?: boolean | undefined; trackDiagnosticAccuracy?: boolean | undefined; trackTreatmentOutcomes?: boolean | undefined; } | undefined; } | undefined; finance?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackRiskMetrics?: boolean | undefined; trackRegulatory?: boolean | undefined; trackPortfolioImpact?: boolean | undefined; } | undefined; } | undefined; ecommerce?: { evaluationCriteria?: string[] | undefined; analyticsConfig?: { trackConversions?: boolean | undefined; trackUserBehavior?: boolean | undefined; trackRevenueImpact?: boolean | undefined; } | undefined; } | undefined; } | undefined; }>; export type NeuroLinkConfig = z.infer<typeof ConfigSchema>; export declare class ConfigManager { private configDir; private configFile; private config; constructor(); /** * Load configuration from file or create default */ private loadConfig; /** * Save configuration to file */ private saveConfig; /** * Interactive configuration setup */ initInteractive(): Promise<void>; /** * Setup individual providers */ private setupProviders; /** * Setup individual provider */ private setupProvider; /** * OpenAI provider setup */ private setupOpenAI; /** * Amazon Bedrock provider setup */ private setupBedrock; /** * Google Vertex AI provider setup */ private setupVertex; /** * Anthropic provider setup */ private setupAnthropic; /** * Azure OpenAI provider setup */ private setupAzure; /** * Google AI Studio provider setup */ private setupGoogleAI; /** * Hugging Face provider setup */ private setupHuggingFace; /** * Ollama provider setup */ private setupOllama; /** * Mistral AI provider setup */ private setupMistral; /** /** * Get current configuration */ getConfig(): NeuroLinkConfig; /** * Update configuration */ updateConfig(updates: Partial<NeuroLinkConfig>): void; /** * Show current configuration */ showConfig(): void; /** * Validate configuration */ validateConfig(): { valid: boolean; errors: string[]; }; /** * Reset configuration to defaults */ resetConfig(): void; } export declare const configManager: ConfigManager; export {};