@juspay/neurolink 7.53.2 → 7.53.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +1 -0
  3. package/dist/agent/directTools.d.ts +3 -3
  4. package/dist/cli/commands/config.d.ts +62 -62
  5. package/dist/cli/commands/setup-google-ai.js +1 -1
  6. package/dist/cli/loop/optionsSchema.d.ts +1 -8
  7. package/dist/cli/loop/optionsSchema.js +6 -1
  8. package/dist/cli/utils/envManager.d.ts +1 -11
  9. package/dist/cli/utils/interactiveSetup.d.ts +1 -1
  10. package/dist/cli/utils/interactiveSetup.js +1 -1
  11. package/dist/constants/enums.d.ts +108 -0
  12. package/dist/constants/enums.js +138 -0
  13. package/dist/core/baseProvider.d.ts +2 -1
  14. package/dist/core/baseProvider.js +20 -4
  15. package/dist/core/factory.d.ts +2 -1
  16. package/dist/core/factory.js +1 -0
  17. package/dist/factories/providerFactory.d.ts +2 -1
  18. package/dist/factories/providerFactory.js +1 -0
  19. package/dist/factories/providerRegistry.d.ts +1 -10
  20. package/dist/factories/providerRegistry.js +1 -4
  21. package/dist/hitl/hitlManager.d.ts +1 -1
  22. package/dist/hitl/index.d.ts +0 -1
  23. package/dist/index.d.ts +6 -4
  24. package/dist/index.js +2 -1
  25. package/dist/lib/constants/enums.d.ts +108 -0
  26. package/dist/lib/constants/enums.js +139 -0
  27. package/dist/lib/core/baseProvider.d.ts +2 -1
  28. package/dist/lib/core/baseProvider.js +20 -4
  29. package/dist/lib/core/factory.d.ts +2 -1
  30. package/dist/lib/core/factory.js +1 -0
  31. package/dist/lib/factories/providerFactory.d.ts +2 -1
  32. package/dist/lib/factories/providerFactory.js +1 -0
  33. package/dist/lib/factories/providerRegistry.d.ts +1 -10
  34. package/dist/lib/factories/providerRegistry.js +1 -4
  35. package/dist/lib/hitl/hitlManager.d.ts +1 -1
  36. package/dist/lib/hitl/index.d.ts +0 -1
  37. package/dist/lib/index.d.ts +6 -4
  38. package/dist/lib/index.js +2 -1
  39. package/dist/lib/mcp/index.d.ts +1 -4
  40. package/dist/lib/mcp/index.js +0 -6
  41. package/dist/lib/memory/mem0Initializer.d.ts +1 -35
  42. package/dist/lib/middleware/builtin/guardrails.d.ts +0 -1
  43. package/dist/lib/middleware/utils/guardrailsUtils.d.ts +1 -14
  44. package/dist/lib/models/modelRegistry.d.ts +2 -90
  45. package/dist/lib/models/modelRegistry.js +2 -1
  46. package/dist/lib/models/modelResolver.d.ts +1 -41
  47. package/dist/lib/models/modelResolver.js +0 -1
  48. package/dist/lib/neurolink.d.ts +4 -40
  49. package/dist/lib/neurolink.js +5 -3
  50. package/dist/lib/providers/amazonBedrock.d.ts +2 -1
  51. package/dist/lib/providers/amazonBedrock.js +1 -0
  52. package/dist/lib/providers/amazonSagemaker.d.ts +1 -1
  53. package/dist/lib/providers/amazonSagemaker.js +1 -0
  54. package/dist/lib/providers/anthropic.d.ts +1 -1
  55. package/dist/lib/providers/anthropic.js +1 -1
  56. package/dist/lib/providers/anthropicBaseProvider.d.ts +1 -1
  57. package/dist/lib/providers/anthropicBaseProvider.js +1 -1
  58. package/dist/lib/providers/azureOpenai.d.ts +1 -1
  59. package/dist/lib/providers/azureOpenai.js +1 -1
  60. package/dist/lib/providers/googleAiStudio.d.ts +1 -1
  61. package/dist/lib/providers/googleAiStudio.js +1 -1
  62. package/dist/lib/providers/googleVertex.d.ts +1 -1
  63. package/dist/lib/providers/googleVertex.js +1 -0
  64. package/dist/lib/providers/huggingFace.d.ts +1 -1
  65. package/dist/lib/providers/huggingFace.js +1 -0
  66. package/dist/lib/providers/index.d.ts +0 -1
  67. package/dist/lib/providers/litellm.d.ts +1 -1
  68. package/dist/lib/providers/litellm.js +1 -0
  69. package/dist/lib/providers/mistral.d.ts +1 -1
  70. package/dist/lib/providers/mistral.js +1 -0
  71. package/dist/lib/providers/ollama.d.ts +1 -1
  72. package/dist/lib/providers/ollama.js +1 -0
  73. package/dist/lib/providers/openAI.d.ts +1 -1
  74. package/dist/lib/providers/openAI.js +1 -1
  75. package/dist/lib/providers/openaiCompatible.d.ts +1 -1
  76. package/dist/lib/providers/openaiCompatible.js +1 -0
  77. package/dist/lib/proxy/proxyFetch.js +2 -0
  78. package/dist/lib/types/analytics.d.ts +13 -0
  79. package/dist/lib/types/cli.d.ts +253 -0
  80. package/dist/lib/types/configTypes.d.ts +14 -0
  81. package/dist/lib/types/configTypes.js +1 -0
  82. package/dist/lib/types/fileTypes.d.ts +4 -4
  83. package/dist/lib/types/generateTypes.d.ts +4 -1
  84. package/dist/lib/types/generateTypes.js +1 -1
  85. package/dist/lib/types/guardrails.d.ts +13 -0
  86. package/dist/{hitl/types.d.ts → lib/types/hitlTypes.d.ts} +18 -18
  87. package/dist/lib/{hitl/types.js → types/hitlTypes.js} +1 -1
  88. package/dist/lib/types/index.d.ts +3 -1
  89. package/dist/lib/types/index.js +4 -0
  90. package/dist/lib/types/mcpTypes.d.ts +16 -12
  91. package/dist/lib/types/modelTypes.d.ts +113 -25
  92. package/dist/lib/types/modelTypes.js +1 -0
  93. package/dist/lib/types/observability.d.ts +6 -6
  94. package/dist/lib/types/providers.d.ts +43 -93
  95. package/dist/lib/types/providers.js +1 -118
  96. package/dist/lib/types/sdkTypes.d.ts +1 -1
  97. package/dist/lib/types/streamTypes.d.ts +2 -1
  98. package/dist/lib/types/streamTypes.js +1 -1
  99. package/dist/lib/types/taskClassificationTypes.d.ts +8 -8
  100. package/dist/lib/types/universalProviderOptions.d.ts +12 -12
  101. package/dist/lib/types/utilities.d.ts +48 -0
  102. package/dist/lib/utils/errorHandling.d.ts +2 -2
  103. package/dist/lib/utils/modelRouter.d.ts +4 -4
  104. package/dist/lib/utils/providerHealth.d.ts +5 -23
  105. package/dist/lib/utils/providerHealth.js +1 -1
  106. package/dist/lib/utils/providerSetupMessages.js +1 -1
  107. package/dist/lib/utils/providerUtils.js +1 -0
  108. package/dist/mcp/index.d.ts +1 -4
  109. package/dist/mcp/index.js +0 -6
  110. package/dist/memory/mem0Initializer.d.ts +1 -35
  111. package/dist/middleware/builtin/guardrails.d.ts +0 -1
  112. package/dist/middleware/utils/guardrailsUtils.d.ts +1 -14
  113. package/dist/models/modelRegistry.d.ts +2 -90
  114. package/dist/models/modelRegistry.js +2 -1
  115. package/dist/models/modelResolver.d.ts +1 -41
  116. package/dist/models/modelResolver.js +0 -1
  117. package/dist/neurolink.d.ts +4 -40
  118. package/dist/neurolink.js +5 -3
  119. package/dist/providers/amazonBedrock.d.ts +2 -1
  120. package/dist/providers/amazonBedrock.js +1 -0
  121. package/dist/providers/amazonSagemaker.d.ts +1 -1
  122. package/dist/providers/amazonSagemaker.js +1 -0
  123. package/dist/providers/anthropic.d.ts +1 -1
  124. package/dist/providers/anthropic.js +1 -1
  125. package/dist/providers/anthropicBaseProvider.d.ts +1 -1
  126. package/dist/providers/anthropicBaseProvider.js +1 -1
  127. package/dist/providers/azureOpenai.d.ts +1 -1
  128. package/dist/providers/azureOpenai.js +1 -1
  129. package/dist/providers/googleAiStudio.d.ts +1 -1
  130. package/dist/providers/googleAiStudio.js +1 -1
  131. package/dist/providers/googleVertex.d.ts +1 -1
  132. package/dist/providers/googleVertex.js +1 -0
  133. package/dist/providers/huggingFace.d.ts +1 -1
  134. package/dist/providers/huggingFace.js +1 -0
  135. package/dist/providers/index.d.ts +0 -1
  136. package/dist/providers/litellm.d.ts +1 -1
  137. package/dist/providers/litellm.js +1 -0
  138. package/dist/providers/mistral.d.ts +1 -1
  139. package/dist/providers/mistral.js +1 -0
  140. package/dist/providers/ollama.d.ts +1 -1
  141. package/dist/providers/ollama.js +1 -0
  142. package/dist/providers/openAI.d.ts +1 -1
  143. package/dist/providers/openAI.js +1 -1
  144. package/dist/providers/openaiCompatible.d.ts +1 -1
  145. package/dist/providers/openaiCompatible.js +1 -0
  146. package/dist/proxy/proxyFetch.js +2 -0
  147. package/dist/types/analytics.d.ts +13 -0
  148. package/dist/types/cli.d.ts +253 -0
  149. package/dist/types/configTypes.d.ts +14 -0
  150. package/dist/types/configTypes.js +1 -0
  151. package/dist/types/fileTypes.d.ts +4 -4
  152. package/dist/types/generateTypes.d.ts +4 -1
  153. package/dist/types/generateTypes.js +1 -1
  154. package/dist/types/guardrails.d.ts +13 -0
  155. package/dist/{lib/hitl/types.d.ts → types/hitlTypes.d.ts} +18 -18
  156. package/dist/types/index.d.ts +3 -1
  157. package/dist/types/index.js +4 -0
  158. package/dist/types/mcpTypes.d.ts +16 -12
  159. package/dist/types/modelTypes.d.ts +113 -25
  160. package/dist/types/modelTypes.js +1 -0
  161. package/dist/types/observability.d.ts +6 -6
  162. package/dist/types/providers.d.ts +43 -93
  163. package/dist/types/providers.js +1 -118
  164. package/dist/types/sdkTypes.d.ts +1 -1
  165. package/dist/types/streamTypes.d.ts +2 -1
  166. package/dist/types/streamTypes.js +1 -1
  167. package/dist/types/taskClassificationTypes.d.ts +8 -8
  168. package/dist/types/universalProviderOptions.d.ts +12 -12
  169. package/dist/types/utilities.d.ts +48 -0
  170. package/dist/utils/errorHandling.d.ts +2 -2
  171. package/dist/utils/modelRouter.d.ts +4 -4
  172. package/dist/utils/providerHealth.d.ts +5 -23
  173. package/dist/utils/providerHealth.js +1 -1
  174. package/dist/utils/providerSetupMessages.js +1 -1
  175. package/dist/utils/providerUtils.js +1 -0
  176. package/package.json +1 -1
  177. /package/dist/{hitl/types.js → types/hitlTypes.js} +0 -0
@@ -3,41 +3,7 @@
3
3
  * Simple initialization logic for mem0ai/oss integration
4
4
  */
5
5
  import type { MemoryConfig } from "mem0ai/oss";
6
- /**
7
- * Interface for mem0 Memory instance methods based on actual mem0ai/oss API
8
- */
9
- export interface Mem0Memory {
10
- search(query: string, config: {
11
- userId?: string;
12
- limit?: number;
13
- }): Promise<{
14
- results: Array<{
15
- memory: string;
16
- id: string;
17
- }>;
18
- }>;
19
- add(messages: string, config: {
20
- userId?: string;
21
- metadata?: Record<string, unknown>;
22
- }): Promise<{
23
- results: Array<{
24
- id: string;
25
- memory: string;
26
- }>;
27
- }>;
28
- get(memoryId: string): Promise<{
29
- id: string;
30
- memory: string;
31
- } | null>;
32
- update(memoryId: string, data: string): Promise<{
33
- message: string;
34
- }>;
35
- delete(memoryId: string): Promise<{
36
- message: string;
37
- }>;
38
- history(memoryId: string): Promise<unknown[]>;
39
- reset(): Promise<void>;
40
- }
6
+ import type { Mem0Memory } from "../types/utilities.js";
41
7
  /**
42
8
  * Initialize mem0 memory instance with configuration
43
9
  */
@@ -1,6 +1,5 @@
1
1
  import type { NeuroLinkMiddleware } from "../../types/middlewareTypes.js";
2
2
  import type { GuardrailsMiddlewareConfig } from "../../types/guardrails.js";
3
- export type { GuardrailsMiddlewareConfig } from "../../types/guardrails.js";
4
3
  /**
5
4
  * Create Guardrails AI middleware for content filtering and policy enforcement
6
5
  * @param config Configuration for the guardrails middleware
@@ -1,4 +1,4 @@
1
- import type { PrecallEvaluationResult, PrecallEvaluationConfig, EvaluationActionResult, BadWordsConfig } from "../../types/guardrails.js";
1
+ import type { BadWordsConfig, ContentFilteringResult, EvaluationActionResult, PrecallEvaluationConfig, PrecallEvaluationResult } from "../../types/guardrails.js";
2
2
  import type { LanguageModelV1CallOptions } from "ai";
3
3
  export declare const DEFAULT_EVALUATION_PROMPT = "\nEvaluate the following user input for safety and appropriateness. Respond ONLY with valid JSON:\n\n{\n \"overall\": \"safe|unsafe|suspicious|inappropriate\",\n \"safetyScore\": <1-10>,\n \"appropriatenessScore\": <1-10>,\n \"confidenceLevel\": <1-10>,\n \"issues\": [\n {\n \"category\": \"explicit_content|hate_speech|violence|personal_info|spam|other\",\n \"severity\": \"low|medium|high|critical\",\n \"description\": \"Brief description\"\n }\n ],\n \"suggestedAction\": \"allow|block|sanitize|warn\",\n \"reasoning\": \"Brief explanation\"\n}\n\nUser Input: \"{USER_INPUT}\"\n";
4
4
  /**
@@ -40,19 +40,6 @@ export declare function createBlockedResponse(): {
40
40
  };
41
41
  };
42
42
  export declare function createBlockedStream(): ReadableStream<any>;
43
- /**
44
- * Result from content filtering operation
45
- */
46
- export interface ContentFilteringResult {
47
- filteredText: string;
48
- hasChanges: boolean;
49
- appliedFilters: string[];
50
- filteringStats: {
51
- regexPatternsApplied: number;
52
- stringFiltersApplied: number;
53
- totalMatches: number;
54
- };
55
- }
56
43
  /**
57
44
  * Apply content filtering using bad words configuration
58
45
  * Handles both regex patterns and string lists with proper priority
@@ -3,97 +3,9 @@
3
3
  * Provides centralized model data for models command system
4
4
  * Part of Phase 4.1 - Models Command System
5
5
  */
6
- import { AIProviderName } from "../types/providers.js";
6
+ import { AIProviderName } from "../constants/enums.js";
7
7
  import type { JsonValue } from "../types/common.js";
8
- /**
9
- * Model capabilities interface
10
- */
11
- export interface ModelCapabilities {
12
- vision: boolean;
13
- functionCalling: boolean;
14
- codeGeneration: boolean;
15
- reasoning: boolean;
16
- multimodal: boolean;
17
- streaming: boolean;
18
- jsonMode: boolean;
19
- }
20
- /**
21
- * Model pricing information
22
- */
23
- export interface ModelPricing {
24
- inputCostPer1K: number;
25
- outputCostPer1K: number;
26
- currency: string;
27
- }
28
- /**
29
- * Model performance characteristics
30
- */
31
- export interface ModelPerformance {
32
- speed: "fast" | "medium" | "slow";
33
- quality: "high" | "medium" | "low";
34
- accuracy: "high" | "medium" | "low";
35
- }
36
- /**
37
- * Model limitations and constraints
38
- */
39
- export interface ModelLimits {
40
- maxContextTokens: number;
41
- maxOutputTokens: number;
42
- maxRequestsPerMinute?: number;
43
- maxRequestsPerDay?: number;
44
- }
45
- /**
46
- * Use case suitability scores (1-10 scale)
47
- */
48
- export interface UseCaseSuitability {
49
- coding: number;
50
- creative: number;
51
- analysis: number;
52
- conversation: number;
53
- reasoning: number;
54
- translation: number;
55
- summarization: number;
56
- }
57
- /**
58
- * Complete model information
59
- */
60
- export interface ModelInfo {
61
- id: string;
62
- name: string;
63
- provider: AIProviderName;
64
- description: string;
65
- capabilities: ModelCapabilities;
66
- pricing: ModelPricing;
67
- performance: ModelPerformance;
68
- limits: ModelLimits;
69
- useCases: UseCaseSuitability;
70
- aliases: string[];
71
- deprecated: boolean;
72
- isLocal: boolean;
73
- releaseDate?: string;
74
- category: "general" | "coding" | "creative" | "vision" | "reasoning";
75
- }
76
- /**
77
- * Model search filters
78
- */
79
- export interface ModelSearchFilters {
80
- provider?: AIProviderName | AIProviderName[];
81
- capability?: keyof ModelCapabilities | (keyof ModelCapabilities)[];
82
- useCase?: keyof UseCaseSuitability;
83
- maxCost?: number;
84
- minContextSize?: number;
85
- maxContextSize?: number;
86
- performance?: ModelPerformance["speed"] | ModelPerformance["quality"];
87
- category?: ModelInfo["category"] | ModelInfo["category"][];
88
- }
89
- /**
90
- * Model search result with ranking
91
- */
92
- export interface ModelSearchResult {
93
- model: ModelInfo;
94
- score: number;
95
- matchReasons: string[];
96
- }
8
+ import type { ModelInfo } from "../types/modelTypes.js";
97
9
  /**
98
10
  * Comprehensive model registry
99
11
  */
@@ -3,7 +3,8 @@
3
3
  * Provides centralized model data for models command system
4
4
  * Part of Phase 4.1 - Models Command System
5
5
  */
6
- import { AIProviderName, OpenAIModels, GoogleAIModels, AnthropicModels, DEFAULT_MODEL_ALIASES, } from "../types/providers.js";
6
+ import { DEFAULT_MODEL_ALIASES } from "../types/providers.js";
7
+ import { AIProviderName, OpenAIModels, GoogleAIModels, AnthropicModels, } from "../constants/enums.js";
7
8
  /**
8
9
  * Comprehensive model registry
9
10
  */
@@ -3,48 +3,8 @@
3
3
  * Provides model resolution, search, and recommendation functionality
4
4
  * Part of Phase 4.1 - Models Command System
5
5
  */
6
- import { AIProviderName } from "../types/index.js";
7
6
  import type { JsonValue } from "../types/common.js";
8
- import { type ModelInfo, type ModelSearchFilters, type ModelSearchResult, type ModelCapabilities, type UseCaseSuitability } from "./modelRegistry.js";
9
- /**
10
- * Model recommendation context
11
- */
12
- export interface RecommendationContext {
13
- useCase?: keyof UseCaseSuitability;
14
- maxCost?: number;
15
- minQuality?: "low" | "medium" | "high";
16
- requireCapabilities?: (keyof ModelCapabilities)[];
17
- excludeProviders?: AIProviderName[];
18
- contextSize?: number;
19
- preferLocal?: boolean;
20
- }
21
- /**
22
- * Model recommendation result
23
- */
24
- export interface ModelRecommendation {
25
- model: ModelInfo;
26
- score: number;
27
- reasoning: string[];
28
- alternatives: ModelInfo[];
29
- }
30
- /**
31
- * Model comparison result
32
- */
33
- export interface ModelComparison {
34
- models: ModelInfo[];
35
- comparison: {
36
- capabilities: Record<keyof ModelCapabilities, ModelInfo[]>;
37
- pricing: {
38
- cheapest: ModelInfo;
39
- mostExpensive: ModelInfo;
40
- };
41
- performance: Record<string, ModelInfo[]>;
42
- contextSize: {
43
- largest: ModelInfo;
44
- smallest: ModelInfo;
45
- };
46
- };
47
- }
7
+ import type { ModelComparison, ModelInfo, ModelRecommendation, ModelSearchFilters, ModelSearchResult, RecommendationContext } from "../types/modelTypes.js";
48
8
  /**
49
9
  * Model resolver class with advanced search and recommendation functionality
50
10
  */
@@ -3,7 +3,6 @@
3
3
  * Provides model resolution, search, and recommendation functionality
4
4
  * Part of Phase 4.1 - Models Command System
5
5
  */
6
- import { AIProviderName } from "../types/index.js";
7
6
  import { MODEL_REGISTRY, MODEL_ALIASES, USE_CASE_RECOMMENDATIONS, getAllModels, getModelById, getModelsByProvider, getAvailableProviders, calculateCost, formatModelForDisplay, } from "./modelRegistry.js";
8
7
  import { isNonNullObject } from "../utils/typeUtils.js";
9
8
  /**
@@ -5,57 +5,21 @@
5
5
  * Enhanced AI provider system with natural MCP tool access.
6
6
  * Uses real MCP infrastructure for tool discovery and execution.
7
7
  */
8
- import type { TextGenerationOptions, TextGenerationResult } from "./types/index.js";
9
- import { MCPToolRegistry } from "./mcp/toolRegistry.js";
8
+ import type { TextGenerationOptions, TextGenerationResult, ProviderStatus } from "./types/index.js";
10
9
  import type { GenerateOptions, GenerateResult } from "./types/generateTypes.js";
11
10
  import type { StreamOptions, StreamResult } from "./types/streamTypes.js";
12
- import type { MCPServerInfo, MCPExecutableTool } from "./types/mcpTypes.js";
11
+ import type { MCPExecutableTool, MCPServerInfo, MCPStatus } from "./types/mcpTypes.js";
13
12
  import type { ToolInfo } from "./types/tools.js";
14
13
  import type { NeuroLinkEvents, TypedEventEmitter } from "./types/common.js";
15
14
  import type { ToolExecutionContext, ToolExecutionSummary } from "./types/tools.js";
16
15
  import type { JsonObject } from "./types/common.js";
17
16
  import type { BatchOperationResult } from "./types/typeAliases.js";
18
- import type { ConversationMemoryConfig, ChatMessage } from "./types/conversation.js";
17
+ import type { ChatMessage } from "./types/conversation.js";
19
18
  import { ConversationMemoryManager } from "./core/conversationMemoryManager.js";
20
19
  import { RedisConversationMemoryManager } from "./core/redisConversationMemoryManager.js";
21
- import type { HITLConfig } from "./hitl/types.js";
22
20
  import type { ExternalMCPServerInstance, ExternalMCPOperationResult, ExternalMCPToolInfo } from "./types/externalMcp.js";
23
21
  import type { ObservabilityConfig } from "./types/observability.js";
24
- /**
25
- * Configuration object for NeuroLink constructor.
26
- */
27
- export interface NeurolinkConstructorConfig {
28
- conversationMemory?: Partial<ConversationMemoryConfig>;
29
- enableOrchestration?: boolean;
30
- hitl?: HITLConfig;
31
- toolRegistry?: MCPToolRegistry;
32
- observability?: ObservabilityConfig;
33
- }
34
- export interface ProviderStatus {
35
- provider: string;
36
- status: "working" | "failed" | "not-configured";
37
- configured: boolean;
38
- authenticated: boolean;
39
- error?: string;
40
- responseTime?: number;
41
- model?: string;
42
- }
43
- export interface MCPStatus {
44
- mcpInitialized: boolean;
45
- totalServers: number;
46
- availableServers: number;
47
- autoDiscoveredCount: number;
48
- totalTools: number;
49
- autoDiscoveredServers: MCPServerInfo[];
50
- customToolsCount: number;
51
- inMemoryServersCount: number;
52
- externalMCPServersCount?: number;
53
- externalMCPConnectedCount?: number;
54
- externalMCPFailedCount?: number;
55
- externalMCPServers?: MCPServerInfo[];
56
- error?: string;
57
- [key: string]: unknown;
58
- }
22
+ import type { NeurolinkConstructorConfig } from "./types/configTypes.js";
59
23
  export declare class NeuroLink {
60
24
  private mcpInitialized;
61
25
  private emitter;
@@ -14,6 +14,9 @@ catch {
14
14
  // Environment variables should be set externally in production
15
15
  }
16
16
  import { AIProviderFactory } from "./core/factory.js";
17
+ import { isNonNullObject } from "./utils/typeUtils.js";
18
+ import { isZodSchema } from "./utils/schemaConversion.js";
19
+ import { AIProviderName } from "./constants/enums.js";
17
20
  import { mcpLogger } from "./utils/logger.js";
18
21
  import { SYSTEM_LIMITS } from "./core/constants.js";
19
22
  import { NANOSECOND_TO_MS_DIVISOR, TOOL_TIMEOUTS, RETRY_ATTEMPTS, RETRY_DELAYS, CIRCUIT_BREAKER, CIRCUIT_BREAKER_RESET_MS, MEMORY_THRESHOLDS, PROVIDER_TIMEOUTS, PERFORMANCE_THRESHOLDS, } from "./constants/index.js";
@@ -42,9 +45,6 @@ import { directToolsServer } from "./mcp/servers/agent/directToolsServer.js";
42
45
  import { ModelRouter } from "./utils/modelRouter.js";
43
46
  import { BinaryTaskClassifier } from "./utils/taskClassifier.js";
44
47
  import { initializeOpenTelemetry, shutdownOpenTelemetry, flushOpenTelemetry, getLangfuseHealthStatus, } from "./services/server/ai/observability/instrumentation.js";
45
- import { isNonNullObject } from "./utils/typeUtils.js";
46
- import { isZodSchema } from "./utils/schemaConversion.js";
47
- // Core types imported from "./types/index.js"
48
48
  export class NeuroLink {
49
49
  mcpInitialized = false;
50
50
  emitter = new EventEmitter();
@@ -1221,6 +1221,8 @@ export class NeuroLink {
1221
1221
  temperature: options.temperature,
1222
1222
  maxTokens: options.maxTokens,
1223
1223
  systemPrompt: options.systemPrompt,
1224
+ schema: options.schema,
1225
+ output: options.output,
1224
1226
  disableTools: options.disableTools,
1225
1227
  enableAnalytics: options.enableAnalytics,
1226
1228
  enableEvaluation: options.enableEvaluation,
@@ -1,6 +1,7 @@
1
1
  import { BedrockRuntimeClient } from "@aws-sdk/client-bedrock-runtime";
2
2
  import { BaseProvider } from "../core/baseProvider.js";
3
- import type { AIProviderName, EnhancedGenerateResult, TextGenerationOptions } from "../types/index.js";
3
+ import type { EnhancedGenerateResult, TextGenerationOptions } from "../types/index.js";
4
+ import { AIProviderName } from "../constants/enums.js";
4
5
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
6
  import type { NeuroLink } from "../neurolink.js";
6
7
  export declare class AmazonBedrockProvider extends BaseProvider {
@@ -1,6 +1,7 @@
1
1
  import { BedrockRuntimeClient, ConverseCommand, ConverseStreamCommand, ImageFormat, } from "@aws-sdk/client-bedrock-runtime";
2
2
  import { BedrockClient, ListFoundationModelsCommand, } from "@aws-sdk/client-bedrock";
3
3
  import { BaseProvider } from "../core/baseProvider.js";
4
+ import { AIProviderName } from "../constants/enums.js";
4
5
  import { logger } from "../utils/logger.js";
5
6
  import { convertZodToJsonSchema } from "../utils/schemaConversion.js";
6
7
  import { buildMultimodalMessagesArray } from "../utils/messageBuilder.js";
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { ZodType, ZodTypeDef } from "zod";
8
8
  import type { Schema, LanguageModelV1 } from "ai";
9
- import type { AIProviderName } from "../types/index.js";
9
+ import { AIProviderName } from "../constants/enums.js";
10
10
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
11
11
  import { BaseProvider } from "../core/baseProvider.js";
12
12
  /**
@@ -4,6 +4,7 @@
4
4
  * This module provides a simplified SageMaker provider that extends BaseProvider
5
5
  * and integrates with the NeuroLink ecosystem using existing patterns.
6
6
  */
7
+ import { AIProviderName } from "../constants/enums.js";
7
8
  import { BaseProvider } from "../core/baseProvider.js";
8
9
  import { logger } from "../utils/logger.js";
9
10
  // SageMaker-specific imports
@@ -1,6 +1,6 @@
1
1
  import { type LanguageModelV1 } from "ai";
2
2
  import type { ValidationSchema } from "../types/typeAliases.js";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { createAnthropic } from "@ai-sdk/anthropic";
2
2
  import { streamText } from "ai";
3
- import { AnthropicModels } from "../types/index.js";
3
+ import { AIProviderName, AnthropicModels } from "../constants/enums.js";
4
4
  import { BaseProvider } from "../core/baseProvider.js";
5
5
  import { logger } from "../utils/logger.js";
6
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import type { ZodType, ZodTypeDef } from "zod";
2
2
  import { type Schema, type LanguageModelV1 } from "ai";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { createAnthropic } from "@ai-sdk/anthropic";
2
2
  import { streamText } from "ai";
3
- import { AnthropicModels } from "../types/index.js";
3
+ import { AIProviderName, AnthropicModels } from "../constants/enums.js";
4
4
  import { BaseProvider } from "../core/baseProvider.js";
5
5
  import { logger } from "../utils/logger.js";
6
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import { type LanguageModelV1 } from "ai";
2
2
  import { BaseProvider } from "../core/baseProvider.js";
3
- import type { AIProviderName } from "../types/providers.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  export declare class AzureOpenAIProvider extends BaseProvider {
6
6
  private apiKey;
@@ -1,7 +1,7 @@
1
1
  import { createAzure } from "@ai-sdk/azure";
2
2
  import { streamText } from "ai";
3
3
  import { BaseProvider } from "../core/baseProvider.js";
4
- import { APIVersions } from "../types/providers.js";
4
+ import { AIProviderName, APIVersions } from "../constants/enums.js";
5
5
  import { validateApiKey, createAzureAPIKeyConfig, createAzureEndpointConfig, } from "../utils/providerConfig.js";
6
6
  import { logger } from "../utils/logger.js";
7
7
  import { buildMessagesArray, buildMultimodalMessagesArray, convertToCoreMessages, } from "../utils/messageBuilder.js";
@@ -1,6 +1,6 @@
1
1
  import { type Schema, type LanguageModelV1 } from "ai";
2
2
  import type { ZodUnknownSchema } from "../types/typeAliases.js";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { createGoogleGenerativeAI } from "@ai-sdk/google";
2
2
  import { streamText } from "ai";
3
- import { GoogleAIModels } from "../types/index.js";
3
+ import { AIProviderName, GoogleAIModels } from "../constants/enums.js";
4
4
  import { BaseProvider } from "../core/baseProvider.js";
5
5
  import { logger } from "../utils/logger.js";
6
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import type { ZodType, ZodTypeDef } from "zod";
2
2
  import { type Schema, type LanguageModelV1, type LanguageModel } from "ai";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,6 +1,7 @@
1
1
  import { createVertex, } from "@ai-sdk/google-vertex";
2
2
  import { createVertexAnthropic, } from "@ai-sdk/google-vertex/anthropic";
3
3
  import { streamText, Output, } from "ai";
4
+ import { AIProviderName } from "../constants/enums.js";
4
5
  import { BaseProvider } from "../core/baseProvider.js";
5
6
  import { logger } from "../utils/logger.js";
6
7
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import type { ZodType, ZodTypeDef } from "zod";
2
2
  import { type Schema, type LanguageModelV1 } from "ai";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,5 +1,6 @@
1
1
  import { createOpenAI } from "@ai-sdk/openai";
2
2
  import { streamText, } from "ai";
3
+ import { AIProviderName } from "../constants/enums.js";
3
4
  import { BaseProvider } from "../core/baseProvider.js";
4
5
  import { logger } from "../utils/logger.js";
5
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -14,4 +14,3 @@ export { HuggingFaceProvider as HuggingFace } from "./huggingFace.js";
14
14
  export { OllamaProvider as Ollama } from "./ollama.js";
15
15
  export { MistralProvider as MistralAI } from "./mistral.js";
16
16
  export { LiteLLMProvider as LiteLLM } from "./litellm.js";
17
- export type { AIProvider } from "../types/index.js";
@@ -1,6 +1,6 @@
1
1
  import type { ZodType, ZodTypeDef } from "zod";
2
2
  import { type Schema, type LanguageModelV1 } from "ai";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,5 +1,6 @@
1
1
  import { createOpenAI } from "@ai-sdk/openai";
2
2
  import { streamText } from "ai";
3
+ import { AIProviderName } from "../constants/enums.js";
3
4
  import { BaseProvider } from "../core/baseProvider.js";
4
5
  import { logger } from "../utils/logger.js";
5
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import { type LanguageModelV1 } from "ai";
2
2
  import type { ValidationSchema } from "../types/typeAliases.js";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,5 +1,6 @@
1
1
  import { createMistral } from "@ai-sdk/mistral";
2
2
  import { streamText } from "ai";
3
+ import { AIProviderName } from "../constants/enums.js";
3
4
  import { BaseProvider } from "../core/baseProvider.js";
4
5
  import { logger } from "../utils/logger.js";
5
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,4 +1,4 @@
1
- import type { AIProviderName } from "../types/index.js";
1
+ import { AIProviderName } from "../constants/enums.js";
2
2
  import type { LanguageModelV1 } from "ai";
3
3
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
4
4
  import type { ZodUnknownSchema } from "../types/typeAliases.js";
@@ -1,3 +1,4 @@
1
+ import { AIProviderName } from "../constants/enums.js";
1
2
  import { BaseProvider } from "../core/baseProvider.js";
2
3
  import { logger } from "../utils/logger.js";
3
4
  import { modelConfig } from "../core/modelConfiguration.js";
@@ -1,6 +1,6 @@
1
1
  import { type LanguageModelV1 } from "ai";
2
2
  import type { ValidationSchema } from "../types/typeAliases.js";
3
- import { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  import type { NeuroLink } from "../neurolink.js";
@@ -1,6 +1,6 @@
1
1
  import { createOpenAI } from "@ai-sdk/openai";
2
2
  import { streamText } from "ai";
3
- import { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import { BaseProvider } from "../core/baseProvider.js";
5
5
  import { logger } from "../utils/logger.js";
6
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -1,6 +1,6 @@
1
1
  import { type Schema, type LanguageModelV1 } from "ai";
2
2
  import type { ZodUnknownSchema } from "../types/typeAliases.js";
3
- import type { AIProviderName } from "../types/index.js";
3
+ import { AIProviderName } from "../constants/enums.js";
4
4
  import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
5
  import { BaseProvider } from "../core/baseProvider.js";
6
6
  /**
@@ -1,5 +1,6 @@
1
1
  import { createOpenAI } from "@ai-sdk/openai";
2
2
  import { streamText } from "ai";
3
+ import { AIProviderName } from "../constants/enums.js";
3
4
  import { BaseProvider } from "../core/baseProvider.js";
4
5
  import { logger } from "../utils/logger.js";
5
6
  import { createTimeoutController, TimeoutError } from "../utils/timeout.js";
@@ -37,6 +37,8 @@ function maskProxyEnvVars(envVars) {
37
37
  }
38
38
  return masked;
39
39
  }
40
+ // ==================== LIGHTWEIGHT PROXY IMPLEMENTATIONS ====================
41
+ // ParsedProxyConfig interface moved to ../types/utilities.js
40
42
  /**
41
43
  * Parse proxy URL with authentication support
42
44
  */
@@ -51,3 +51,16 @@ export type StreamAnalyticsData = {
51
51
  /** Provider analytics */
52
52
  providerAnalytics?: AnalyticsData;
53
53
  };
54
+ export type PerformanceMetrics = {
55
+ startTime: number;
56
+ endTime?: number;
57
+ duration?: number;
58
+ memoryStart: NodeJS.MemoryUsage;
59
+ memoryEnd?: NodeJS.MemoryUsage;
60
+ memoryDelta?: {
61
+ rss: number;
62
+ heapTotal: number;
63
+ heapUsed: number;
64
+ external: number;
65
+ };
66
+ };