UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

106 lines 3.84 kB
import { AIProviderName } from "../../lib/constants/enums.js"; /** * Master schema for all text generation options. * This object provides metadata for validation and help text in the CLI loop. * It is derived from the main TextGenerationOptions interface to ensure consistency. */ export const textGenerationOptionsSchema = { provider: { type: "string", description: "The AI provider to use.", allowedValues: Object.values(AIProviderName) .filter((p) => typeof p === "string") .filter((p) => p !== AIProviderName.AUTO), }, model: { type: "string", description: "The specific model to use from the provider.", }, temperature: { type: "number", description: "Controls randomness of the output (e.g., 0.2, 0.8).", }, maxTokens: { type: "number", description: "The maximum number of tokens to generate.", }, topP: { type: "number", description: "Top-p (nucleus) sampling parameter. Controls diversity of generated tokens (0.0-1.0).", }, topK: { type: "number", description: "Top-k sampling parameter. Limits the number of tokens considered (Google/Gemini models only).", }, stopSequences: { type: "string", description: "Stop sequences that will halt generation when encountered (comma-separated).", }, output: { type: "string", description: "AI response format - specify just the format value (e.g., 'json', 'structured'). Note: This is automatically transformed to { format: value } for the API.", allowedValues: ["text", "json", "structured", "none"], }, systemPrompt: { type: "string", description: "The system prompt to guide the AI's behavior.", }, timeout: { type: "number", description: "Timeout for the generation request in milliseconds.", }, disableTools: { type: "boolean", description: "Disable all tool usage for the AI.", }, enabledToolNames: { type: "string", description: 'Comma-separated list of tool names to enable (e.g., "read,write,search").', }, maxSteps: { type: "number", description: "Maximum number of tool execution steps.", }, enableAnalytics: { type: "boolean", description: "Enable or disable analytics for responses.", }, enableEvaluation: { type: "boolean", description: "Enable or disable AI-powered evaluation of responses.", }, evaluationDomain: { type: "string", description: 'Domain expertise for evaluation (e.g., "general AI assistant").', }, toolUsageContext: { type: "string", description: "Context about tools/MCPs used in the interaction.", }, enableSummarization: { type: "boolean", description: "Enable or disable automatic conversation summarization for this request.", }, thinking: { type: "boolean", description: "Enable extended thinking/reasoning capability.", }, thinkingBudget: { type: "number", description: "Token budget for thinking (Anthropic models: 5000-100000).", }, thinkingLevel: { type: "string", description: "Thinking level for Gemini 3 models: minimal, low, medium, high.", allowedValues: ["minimal", "low", "medium", "high"], }, skipToolPromptInjection: { type: "boolean", description: "Skip injecting tool descriptions into the system prompt. Useful when tool info is already provided.", }, disableToolCache: { type: "boolean", description: "Disable tool result caching for this request (overrides global mcp.cache.enabled).", }, }; //# sourceMappingURL=optionsSchema.js.map