@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
TypeScript
#!/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 {};