@juspay/neurolink 9.32.0 → 9.32.1
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.
- package/CHANGELOG.md +6 -0
- package/dist/auth/anthropicOAuth.js +1 -1
- package/dist/cli/commands/proxy.js +18 -5
- package/dist/client/aiSdkAdapter.js +1 -1
- package/dist/client/index.js +137 -501
- package/dist/core/factory.js +0 -1
- package/dist/core/redisConversationMemoryManager.js +1 -1
- package/dist/features/ppt/slideGenerator.js +0 -1
- package/dist/features/ppt/utils.js +0 -1
- package/dist/lib/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/mcp/elicitationProtocol.js +1 -1
- package/dist/mcp/servers/agent/directToolsServer.js +0 -1
- package/dist/providers/azureOpenai.js +1 -1
- package/dist/providers/huggingFace.js +0 -1
- package/dist/providers/openaiCompatible.js +0 -1
- package/dist/sdk/toolRegistration.js +0 -1
- package/dist/server/openapi/generator.js +1 -1
- package/dist/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/types/configTypes.js +0 -5
- package/dist/types/modelTypes.js +0 -1
- package/dist/types/tools.js +0 -1
- package/dist/types/typeAliases.js +0 -1
- package/dist/types/utilities.js +1 -1
- package/dist/types/workflowTypes.js +0 -1
- package/dist/utils/providerRetry.js +0 -1
- package/dist/utils/providerUtils.js +0 -1
- package/package.json +2 -2
- package/dist/client/adapters/providerImageAdapter.js +0 -588
- package/dist/client/adapters/tts/googleTTSHandler.js +0 -344
- package/dist/client/adapters/video/directorPipeline.js +0 -516
- package/dist/client/adapters/video/ffmpegAdapter.js +0 -206
- package/dist/client/adapters/video/frameExtractor.js +0 -143
- package/dist/client/adapters/video/vertexVideoHandler.js +0 -763
- package/dist/client/adapters/video/videoAnalyzer.js +0 -238
- package/dist/client/adapters/video/videoMerger.js +0 -171
- package/dist/client/agent/directTools.js +0 -840
- package/dist/client/auth/AuthProviderFactory.js +0 -111
- package/dist/client/auth/AuthProviderRegistry.js +0 -190
- package/dist/client/auth/RequestContext.js +0 -78
- package/dist/client/auth/accountPool.js +0 -178
- package/dist/client/auth/anthropicOAuth.js +0 -974
- package/dist/client/auth/authContext.js +0 -314
- package/dist/client/auth/errors.js +0 -39
- package/dist/client/auth/index.js +0 -61
- package/dist/client/auth/middleware/AuthMiddleware.js +0 -519
- package/dist/client/auth/middleware/rateLimitByUser.js +0 -554
- package/dist/client/auth/providers/BaseAuthProvider.js +0 -723
- package/dist/client/auth/providers/CognitoProvider.js +0 -304
- package/dist/client/auth/providers/KeycloakProvider.js +0 -393
- package/dist/client/auth/providers/auth0.js +0 -274
- package/dist/client/auth/providers/betterAuth.js +0 -182
- package/dist/client/auth/providers/clerk.js +0 -317
- package/dist/client/auth/providers/custom.js +0 -112
- package/dist/client/auth/providers/firebase.js +0 -226
- package/dist/client/auth/providers/jwt.js +0 -212
- package/dist/client/auth/providers/oauth2.js +0 -303
- package/dist/client/auth/providers/supabase.js +0 -259
- package/dist/client/auth/providers/workos.js +0 -284
- package/dist/client/auth/serverBridge.js +0 -25
- package/dist/client/auth/sessionManager.js +0 -437
- package/dist/client/auth/tokenStore.js +0 -799
- package/dist/client/client/aiSdkAdapter.js +0 -487
- package/dist/client/client/auth.js +0 -473
- package/dist/client/client/errors.js +0 -552
- package/dist/client/client/httpClient.js +0 -837
- package/dist/client/client/index.js +0 -172
- package/dist/client/client/interceptors.js +0 -601
- package/dist/client/client/sseClient.js +0 -545
- package/dist/client/client/streamingClient.js +0 -917
- package/dist/client/client/wsClient.js +0 -369
- package/dist/client/config/configManager.js +0 -303
- package/dist/client/config/conversationMemory.js +0 -86
- package/dist/client/config/taskClassificationConfig.js +0 -148
- package/dist/client/constants/contextWindows.js +0 -295
- package/dist/client/constants/enums.js +0 -853
- package/dist/client/constants/index.js +0 -207
- package/dist/client/constants/performance.js +0 -389
- package/dist/client/constants/retry.js +0 -266
- package/dist/client/constants/timeouts.js +0 -182
- package/dist/client/constants/tokens.js +0 -380
- package/dist/client/constants/videoErrors.js +0 -46
- package/dist/client/context/budgetChecker.js +0 -98
- package/dist/client/context/contextCompactor.js +0 -205
- package/dist/client/context/emergencyTruncation.js +0 -88
- package/dist/client/context/errorDetection.js +0 -171
- package/dist/client/context/errors.js +0 -21
- package/dist/client/context/fileTokenBudget.js +0 -127
- package/dist/client/context/prompts/summarizationPrompt.js +0 -117
- package/dist/client/context/stages/fileReadDeduplicator.js +0 -66
- package/dist/client/context/stages/slidingWindowTruncator.js +0 -190
- package/dist/client/context/stages/structuredSummarizer.js +0 -99
- package/dist/client/context/stages/toolOutputPruner.js +0 -52
- package/dist/client/context/summarizationEngine.js +0 -136
- package/dist/client/context/toolOutputLimits.js +0 -78
- package/dist/client/context/toolPairRepair.js +0 -66
- package/dist/client/core/analytics.js +0 -88
- package/dist/client/core/baseProvider.js +0 -1385
- package/dist/client/core/constants.js +0 -140
- package/dist/client/core/conversationMemoryFactory.js +0 -141
- package/dist/client/core/conversationMemoryInitializer.js +0 -128
- package/dist/client/core/conversationMemoryManager.js +0 -344
- package/dist/client/core/dynamicModels.js +0 -358
- package/dist/client/core/evaluation.js +0 -309
- package/dist/client/core/evaluationProviders.js +0 -248
- package/dist/client/core/factory.js +0 -412
- package/dist/client/core/infrastructure/baseError.js +0 -22
- package/dist/client/core/infrastructure/baseFactory.js +0 -54
- package/dist/client/core/infrastructure/baseRegistry.js +0 -53
- package/dist/client/core/infrastructure/index.js +0 -5
- package/dist/client/core/infrastructure/retry.js +0 -20
- package/dist/client/core/infrastructure/typedEventEmitter.js +0 -23
- package/dist/client/core/modelConfiguration.js +0 -851
- package/dist/client/core/modules/GenerationHandler.js +0 -588
- package/dist/client/core/modules/MessageBuilder.js +0 -273
- package/dist/client/core/modules/StreamHandler.js +0 -185
- package/dist/client/core/modules/TelemetryHandler.js +0 -203
- package/dist/client/core/modules/ToolsManager.js +0 -499
- package/dist/client/core/modules/Utilities.js +0 -331
- package/dist/client/core/redisConversationMemoryManager.js +0 -1435
- package/dist/client/core/streamAnalytics.js +0 -131
- package/dist/client/evaluation/contextBuilder.js +0 -134
- package/dist/client/evaluation/index.js +0 -61
- package/dist/client/evaluation/prompts.js +0 -73
- package/dist/client/evaluation/ragasEvaluator.js +0 -110
- package/dist/client/evaluation/retryManager.js +0 -78
- package/dist/client/evaluation/scoring.js +0 -61
- package/dist/client/factories/providerFactory.js +0 -166
- package/dist/client/factories/providerRegistry.js +0 -166
- package/dist/client/features/ppt/constants.js +0 -896
- package/dist/client/features/ppt/contentPlanner.js +0 -529
- package/dist/client/features/ppt/presentationOrchestrator.js +0 -236
- package/dist/client/features/ppt/slideGenerator.js +0 -532
- package/dist/client/features/ppt/slideRenderers.js +0 -2383
- package/dist/client/features/ppt/slideTypeInference.js +0 -405
- package/dist/client/features/ppt/types.js +0 -13
- package/dist/client/features/ppt/utils.js +0 -443
- package/dist/client/files/fileReferenceRegistry.js +0 -1543
- package/dist/client/files/fileTools.js +0 -450
- package/dist/client/files/streamingReader.js +0 -321
- package/dist/client/files/types.js +0 -23
- package/dist/client/hitl/hitlErrors.js +0 -54
- package/dist/client/hitl/hitlManager.js +0 -460
- package/dist/client/mcp/agentExposure.js +0 -356
- package/dist/client/mcp/auth/index.js +0 -11
- package/dist/client/mcp/auth/oauthClientProvider.js +0 -325
- package/dist/client/mcp/auth/tokenStorage.js +0 -134
- package/dist/client/mcp/batching/index.js +0 -10
- package/dist/client/mcp/batching/requestBatcher.js +0 -441
- package/dist/client/mcp/caching/index.js +0 -10
- package/dist/client/mcp/caching/toolCache.js +0 -433
- package/dist/client/mcp/elicitation/elicitationManager.js +0 -376
- package/dist/client/mcp/elicitation/index.js +0 -11
- package/dist/client/mcp/elicitation/types.js +0 -10
- package/dist/client/mcp/elicitationProtocol.js +0 -375
- package/dist/client/mcp/enhancedToolDiscovery.js +0 -481
- package/dist/client/mcp/externalServerManager.js +0 -1478
- package/dist/client/mcp/factory.js +0 -161
- package/dist/client/mcp/flexibleToolValidator.js +0 -161
- package/dist/client/mcp/httpRateLimiter.js +0 -391
- package/dist/client/mcp/httpRetryHandler.js +0 -178
- package/dist/client/mcp/index.js +0 -74
- package/dist/client/mcp/mcpCircuitBreaker.js +0 -427
- package/dist/client/mcp/mcpClientFactory.js +0 -708
- package/dist/client/mcp/mcpRegistryClient.js +0 -488
- package/dist/client/mcp/mcpServerBase.js +0 -373
- package/dist/client/mcp/multiServerManager.js +0 -579
- package/dist/client/mcp/registry.js +0 -158
- package/dist/client/mcp/routing/index.js +0 -10
- package/dist/client/mcp/routing/toolRouter.js +0 -416
- package/dist/client/mcp/serverCapabilities.js +0 -502
- package/dist/client/mcp/servers/agent/directToolsServer.js +0 -150
- package/dist/client/mcp/toolAnnotations.js +0 -239
- package/dist/client/mcp/toolConverter.js +0 -258
- package/dist/client/mcp/toolDiscoveryService.js +0 -798
- package/dist/client/mcp/toolIntegration.js +0 -334
- package/dist/client/mcp/toolRegistry.js +0 -729
- package/dist/client/memory/hippocampusInitializer.js +0 -19
- package/dist/client/memory/memoryRetrievalTools.js +0 -166
- package/dist/client/middleware/builtin/analytics.js +0 -132
- package/dist/client/middleware/builtin/autoEvaluation.js +0 -203
- package/dist/client/middleware/builtin/guardrails.js +0 -109
- package/dist/client/middleware/builtin/lifecycle.js +0 -168
- package/dist/client/middleware/factory.js +0 -327
- package/dist/client/middleware/registry.js +0 -295
- package/dist/client/middleware/utils/guardrailsUtils.js +0 -396
- package/dist/client/models/anthropicModels.js +0 -527
- package/dist/client/neurolink.js +0 -8233
- package/dist/client/observability/exporterRegistry.js +0 -413
- package/dist/client/observability/exporters/arizeExporter.js +0 -138
- package/dist/client/observability/exporters/baseExporter.js +0 -190
- package/dist/client/observability/exporters/braintrustExporter.js +0 -154
- package/dist/client/observability/exporters/datadogExporter.js +0 -196
- package/dist/client/observability/exporters/laminarExporter.js +0 -302
- package/dist/client/observability/exporters/langfuseExporter.js +0 -209
- package/dist/client/observability/exporters/langsmithExporter.js +0 -143
- package/dist/client/observability/exporters/otelExporter.js +0 -164
- package/dist/client/observability/exporters/posthogExporter.js +0 -287
- package/dist/client/observability/exporters/sentryExporter.js +0 -165
- package/dist/client/observability/index.js +0 -31
- package/dist/client/observability/metricsAggregator.js +0 -556
- package/dist/client/observability/otelBridge.js +0 -131
- package/dist/client/observability/retryPolicy.js +0 -383
- package/dist/client/observability/sampling/samplers.js +0 -216
- package/dist/client/observability/spanProcessor.js +0 -303
- package/dist/client/observability/tokenTracker.js +0 -413
- package/dist/client/observability/types/exporterTypes.js +0 -5
- package/dist/client/observability/types/index.js +0 -4
- package/dist/client/observability/types/spanTypes.js +0 -92
- package/dist/client/observability/utils/safeMetadata.js +0 -25
- package/dist/client/observability/utils/spanSerializer.js +0 -292
- package/dist/client/processors/archive/ArchiveProcessor.js +0 -1308
- package/dist/client/processors/base/BaseFileProcessor.js +0 -614
- package/dist/client/processors/base/types.js +0 -82
- package/dist/client/processors/config/fileTypes.js +0 -520
- package/dist/client/processors/config/index.js +0 -92
- package/dist/client/processors/config/languageMap.js +0 -410
- package/dist/client/processors/config/mimeTypes.js +0 -363
- package/dist/client/processors/config/sizeLimits.js +0 -258
- package/dist/client/processors/document/ExcelProcessor.js +0 -590
- package/dist/client/processors/document/OpenDocumentProcessor.js +0 -212
- package/dist/client/processors/document/PptxProcessor.js +0 -157
- package/dist/client/processors/document/RtfProcessor.js +0 -361
- package/dist/client/processors/document/WordProcessor.js +0 -353
- package/dist/client/processors/errors/FileErrorCode.js +0 -255
- package/dist/client/processors/errors/errorHelpers.js +0 -386
- package/dist/client/processors/errors/errorSerializer.js +0 -507
- package/dist/client/processors/errors/index.js +0 -49
- package/dist/client/processors/markup/SvgProcessor.js +0 -240
- package/dist/client/processors/media/AudioProcessor.js +0 -707
- package/dist/client/processors/media/VideoProcessor.js +0 -1045
- package/dist/client/providers/amazonBedrock.js +0 -1512
- package/dist/client/providers/amazonSagemaker.js +0 -162
- package/dist/client/providers/anthropic.js +0 -831
- package/dist/client/providers/azureOpenai.js +0 -143
- package/dist/client/providers/googleAiStudio.js +0 -1200
- package/dist/client/providers/googleNativeGemini3.js +0 -543
- package/dist/client/providers/googleVertex.js +0 -2936
- package/dist/client/providers/huggingFace.js +0 -315
- package/dist/client/providers/litellm.js +0 -488
- package/dist/client/providers/mistral.js +0 -157
- package/dist/client/providers/ollama.js +0 -1579
- package/dist/client/providers/openAI.js +0 -627
- package/dist/client/providers/openRouter.js +0 -543
- package/dist/client/providers/openaiCompatible.js +0 -290
- package/dist/client/providers/providerTypeUtils.js +0 -46
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +0 -215
- package/dist/client/providers/sagemaker/client.js +0 -472
- package/dist/client/providers/sagemaker/config.js +0 -317
- package/dist/client/providers/sagemaker/detection.js +0 -606
- package/dist/client/providers/sagemaker/error-constants.js +0 -227
- package/dist/client/providers/sagemaker/errors.js +0 -299
- package/dist/client/providers/sagemaker/language-model.js +0 -775
- package/dist/client/providers/sagemaker/parsers.js +0 -634
- package/dist/client/providers/sagemaker/streaming.js +0 -331
- package/dist/client/providers/sagemaker/structured-parser.js +0 -625
- package/dist/client/proxy/accountQuota.js +0 -162
- package/dist/client/proxy/claudeFormat.js +0 -595
- package/dist/client/proxy/modelRouter.js +0 -29
- package/dist/client/proxy/oauthFetch.js +0 -367
- package/dist/client/proxy/proxyFetch.js +0 -586
- package/dist/client/proxy/requestLogger.js +0 -207
- package/dist/client/proxy/tokenRefresh.js +0 -124
- package/dist/client/proxy/usageStats.js +0 -74
- package/dist/client/proxy/utils/noProxyUtils.js +0 -149
- package/dist/client/rag/ChunkerFactory.js +0 -320
- package/dist/client/rag/ChunkerRegistry.js +0 -421
- package/dist/client/rag/chunkers/BaseChunker.js +0 -143
- package/dist/client/rag/chunkers/CharacterChunker.js +0 -28
- package/dist/client/rag/chunkers/HTMLChunker.js +0 -38
- package/dist/client/rag/chunkers/JSONChunker.js +0 -68
- package/dist/client/rag/chunkers/LaTeXChunker.js +0 -63
- package/dist/client/rag/chunkers/MarkdownChunker.js +0 -306
- package/dist/client/rag/chunkers/RecursiveChunker.js +0 -139
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +0 -138
- package/dist/client/rag/chunkers/SentenceChunker.js +0 -66
- package/dist/client/rag/chunkers/TokenChunker.js +0 -61
- package/dist/client/rag/chunkers/index.js +0 -15
- package/dist/client/rag/chunking/characterChunker.js +0 -142
- package/dist/client/rag/chunking/chunkerRegistry.js +0 -194
- package/dist/client/rag/chunking/htmlChunker.js +0 -247
- package/dist/client/rag/chunking/index.js +0 -17
- package/dist/client/rag/chunking/jsonChunker.js +0 -281
- package/dist/client/rag/chunking/latexChunker.js +0 -251
- package/dist/client/rag/chunking/markdownChunker.js +0 -373
- package/dist/client/rag/chunking/recursiveChunker.js +0 -148
- package/dist/client/rag/chunking/semanticChunker.js +0 -306
- package/dist/client/rag/chunking/sentenceChunker.js +0 -230
- package/dist/client/rag/chunking/tokenChunker.js +0 -183
- package/dist/client/rag/document/MDocument.js +0 -392
- package/dist/client/rag/document/index.js +0 -5
- package/dist/client/rag/document/loaders.js +0 -500
- package/dist/client/rag/errors/RAGError.js +0 -274
- package/dist/client/rag/errors/index.js +0 -6
- package/dist/client/rag/graphRag/graphRAG.js +0 -401
- package/dist/client/rag/graphRag/index.js +0 -4
- package/dist/client/rag/index.js +0 -141
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +0 -418
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +0 -362
- package/dist/client/rag/metadata/index.js +0 -9
- package/dist/client/rag/metadata/metadataExtractor.js +0 -280
- package/dist/client/rag/pipeline/RAGPipeline.js +0 -436
- package/dist/client/rag/pipeline/contextAssembly.js +0 -341
- package/dist/client/rag/pipeline/index.js +0 -5
- package/dist/client/rag/ragIntegration.js +0 -321
- package/dist/client/rag/reranker/RerankerFactory.js +0 -430
- package/dist/client/rag/reranker/RerankerRegistry.js +0 -402
- package/dist/client/rag/reranker/index.js +0 -9
- package/dist/client/rag/reranker/reranker.js +0 -277
- package/dist/client/rag/resilience/CircuitBreaker.js +0 -431
- package/dist/client/rag/resilience/RetryHandler.js +0 -304
- package/dist/client/rag/resilience/index.js +0 -7
- package/dist/client/rag/retrieval/hybridSearch.js +0 -335
- package/dist/client/rag/retrieval/index.js +0 -5
- package/dist/client/rag/retrieval/vectorQueryTool.js +0 -307
- package/dist/client/rag/types.js +0 -8
- package/dist/client/sdk/toolRegistration.js +0 -377
- package/dist/client/server/abstract/baseServerAdapter.js +0 -575
- package/dist/client/server/adapters/expressAdapter.js +0 -486
- package/dist/client/server/adapters/fastifyAdapter.js +0 -472
- package/dist/client/server/adapters/honoAdapter.js +0 -632
- package/dist/client/server/adapters/koaAdapter.js +0 -510
- package/dist/client/server/errors.js +0 -486
- package/dist/client/server/factory/serverAdapterFactory.js +0 -160
- package/dist/client/server/index.js +0 -108
- package/dist/client/server/middleware/abortSignal.js +0 -111
- package/dist/client/server/middleware/auth.js +0 -388
- package/dist/client/server/middleware/cache.js +0 -359
- package/dist/client/server/middleware/common.js +0 -281
- package/dist/client/server/middleware/deprecation.js +0 -190
- package/dist/client/server/middleware/mcpBodyAttachment.js +0 -63
- package/dist/client/server/middleware/rateLimit.js +0 -227
- package/dist/client/server/middleware/validation.js +0 -388
- package/dist/client/server/openapi/generator.js +0 -398
- package/dist/client/server/openapi/index.js +0 -36
- package/dist/client/server/openapi/schemas.js +0 -695
- package/dist/client/server/openapi/templates.js +0 -374
- package/dist/client/server/routes/agentRoutes.js +0 -189
- package/dist/client/server/routes/claudeProxyRoutes.js +0 -1600
- package/dist/client/server/routes/healthRoutes.js +0 -187
- package/dist/client/server/routes/index.js +0 -57
- package/dist/client/server/routes/mcpRoutes.js +0 -342
- package/dist/client/server/routes/memoryRoutes.js +0 -350
- package/dist/client/server/routes/openApiRoutes.js +0 -126
- package/dist/client/server/routes/toolRoutes.js +0 -199
- package/dist/client/server/streaming/dataStream.js +0 -486
- package/dist/client/server/streaming/index.js +0 -11
- package/dist/client/server/types.js +0 -67
- package/dist/client/server/utils/redaction.js +0 -334
- package/dist/client/server/utils/validation.js +0 -243
- package/dist/client/server/websocket/WebSocketHandler.js +0 -383
- package/dist/client/server/websocket/index.js +0 -4
- package/dist/client/services/server/ai/observability/instrumentation.js +0 -808
- package/dist/client/telemetry/attributes.js +0 -100
- package/dist/client/telemetry/index.js +0 -26
- package/dist/client/telemetry/telemetryService.js +0 -308
- package/dist/client/telemetry/tracers.js +0 -17
- package/dist/client/telemetry/withSpan.js +0 -34
- package/dist/client/types/actionTypes.js +0 -6
- package/dist/client/types/analytics.js +0 -5
- package/dist/client/types/authTypes.js +0 -9
- package/dist/client/types/circuitBreakerErrors.js +0 -34
- package/dist/client/types/cli.js +0 -21
- package/dist/client/types/clientTypes.js +0 -10
- package/dist/client/types/common.js +0 -51
- package/dist/client/types/configTypes.js +0 -49
- package/dist/client/types/content.js +0 -19
- package/dist/client/types/contextTypes.js +0 -400
- package/dist/client/types/conversation.js +0 -47
- package/dist/client/types/conversationMemoryInterface.js +0 -6
- package/dist/client/types/domainTypes.js +0 -5
- package/dist/client/types/errors.js +0 -167
- package/dist/client/types/evaluation.js +0 -5
- package/dist/client/types/evaluationProviders.js +0 -5
- package/dist/client/types/evaluationTypes.js +0 -1
- package/dist/client/types/externalMcp.js +0 -6
- package/dist/client/types/fileReferenceTypes.js +0 -8
- package/dist/client/types/fileTypes.js +0 -4
- package/dist/client/types/generateTypes.js +0 -1
- package/dist/client/types/guardrails.js +0 -1
- package/dist/client/types/hitlTypes.js +0 -8
- package/dist/client/types/index.js +0 -57
- package/dist/client/types/mcpTypes.js +0 -5
- package/dist/client/types/middlewareTypes.js +0 -1
- package/dist/client/types/modelTypes.js +0 -30
- package/dist/client/types/multimodal.js +0 -135
- package/dist/client/types/observability.js +0 -6
- package/dist/client/types/pptTypes.js +0 -82
- package/dist/client/types/providers.js +0 -111
- package/dist/client/types/proxyTypes.js +0 -16
- package/dist/client/types/ragTypes.js +0 -7
- package/dist/client/types/sdkTypes.js +0 -8
- package/dist/client/types/serviceTypes.js +0 -5
- package/dist/client/types/streamTypes.js +0 -1
- package/dist/client/types/subscriptionTypes.js +0 -9
- package/dist/client/types/taskClassificationTypes.js +0 -5
- package/dist/client/types/tools.js +0 -24
- package/dist/client/types/ttsTypes.js +0 -57
- package/dist/client/types/typeAliases.js +0 -48
- package/dist/client/types/utilities.js +0 -4
- package/dist/client/types/workflowTypes.js +0 -30
- package/dist/client/utils/async/withTimeout.js +0 -98
- package/dist/client/utils/asyncMutex.js +0 -60
- package/dist/client/utils/conversationMemory.js +0 -431
- package/dist/client/utils/csvProcessor.js +0 -846
- package/dist/client/utils/errorHandling.js +0 -936
- package/dist/client/utils/evaluationUtils.js +0 -131
- package/dist/client/utils/factoryProcessing.js +0 -589
- package/dist/client/utils/fileDetector.js +0 -2161
- package/dist/client/utils/imageCache.js +0 -376
- package/dist/client/utils/imageProcessor.js +0 -704
- package/dist/client/utils/logger.js +0 -491
- package/dist/client/utils/mcpDefaults.js +0 -134
- package/dist/client/utils/messageBuilder.js +0 -1653
- package/dist/client/utils/modelAliasResolver.js +0 -54
- package/dist/client/utils/modelDetection.js +0 -80
- package/dist/client/utils/modelRouter.js +0 -292
- package/dist/client/utils/multimodalOptionsBuilder.js +0 -65
- package/dist/client/utils/observabilityHelpers.js +0 -47
- package/dist/client/utils/parameterValidation.js +0 -966
- package/dist/client/utils/pdfProcessor.js +0 -410
- package/dist/client/utils/performance.js +0 -222
- package/dist/client/utils/pricing.js +0 -340
- package/dist/client/utils/promptRedaction.js +0 -62
- package/dist/client/utils/providerConfig.js +0 -1009
- package/dist/client/utils/providerHealth.js +0 -1237
- package/dist/client/utils/providerRetry.js +0 -112
- package/dist/client/utils/providerUtils.js +0 -434
- package/dist/client/utils/rateLimiter.js +0 -200
- package/dist/client/utils/redis.js +0 -368
- package/dist/client/utils/retryHandler.js +0 -269
- package/dist/client/utils/retryability.js +0 -22
- package/dist/client/utils/sanitizers/svg.js +0 -481
- package/dist/client/utils/schemaConversion.js +0 -255
- package/dist/client/utils/taskClassificationUtils.js +0 -149
- package/dist/client/utils/taskClassifier.js +0 -94
- package/dist/client/utils/thinkingConfig.js +0 -104
- package/dist/client/utils/timeout.js +0 -359
- package/dist/client/utils/tokenEstimation.js +0 -142
- package/dist/client/utils/tokenLimits.js +0 -125
- package/dist/client/utils/tokenUtils.js +0 -239
- package/dist/client/utils/toolUtils.js +0 -75
- package/dist/client/utils/transformationUtils.js +0 -554
- package/dist/client/utils/ttsProcessor.js +0 -286
- package/dist/client/utils/typeUtils.js +0 -97
- package/dist/client/utils/videoAnalysisProcessor.js +0 -67
- package/dist/client/workflow/config.js +0 -398
- package/dist/client/workflow/core/ensembleExecutor.js +0 -407
- package/dist/client/workflow/core/judgeScorer.js +0 -544
- package/dist/client/workflow/core/responseConditioner.js +0 -225
- package/dist/client/workflow/core/types/conditionerTypes.js +0 -7
- package/dist/client/workflow/core/types/ensembleTypes.js +0 -7
- package/dist/client/workflow/core/types/index.js +0 -7
- package/dist/client/workflow/core/types/judgeTypes.js +0 -7
- package/dist/client/workflow/core/types/layerTypes.js +0 -7
- package/dist/client/workflow/core/types/registryTypes.js +0 -7
- package/dist/client/workflow/core/workflowRegistry.js +0 -304
- package/dist/client/workflow/core/workflowRunner.js +0 -586
- package/dist/client/workflow/index.js +0 -50
- package/dist/client/workflow/types.js +0 -9
- package/dist/client/workflow/utils/types/index.js +0 -7
- package/dist/client/workflow/utils/workflowMetrics.js +0 -311
- package/dist/client/workflow/utils/workflowValidation.js +0 -420
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +0 -366
- package/dist/client/workflow/workflows/consensusWorkflow.js +0 -192
- package/dist/client/workflow/workflows/fallbackWorkflow.js +0 -225
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +0 -351
- /package/dist/client/{client/reactHooks.js → reactHooks.js} +0 -0
package/dist/client/index.js
CHANGED
|
@@ -1,536 +1,172 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* NeuroLink
|
|
2
|
+
* NeuroLink Client SDK
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* NeuroLink provides comprehensive AI functionality with battle-tested
|
|
9
|
-
* patterns extracted from production systems at Juspay.
|
|
4
|
+
* Comprehensive client SDK for accessing the NeuroLink API from JavaScript/TypeScript
|
|
5
|
+
* applications. Provides HTTP clients, React hooks, Vercel AI SDK compatibility,
|
|
6
|
+
* and real-time streaming support.
|
|
10
7
|
*
|
|
11
8
|
* @packageDocumentation
|
|
12
|
-
* @module @
|
|
13
|
-
* @category Core
|
|
9
|
+
* @module @neurolink/client
|
|
14
10
|
*
|
|
15
|
-
* @example
|
|
11
|
+
* @example Basic HTTP Client Usage
|
|
16
12
|
* ```typescript
|
|
17
|
-
* import {
|
|
18
|
-
*
|
|
19
|
-
* // Create NeuroLink instance
|
|
20
|
-
* const neurolink = new NeuroLink();
|
|
13
|
+
* import { createClient } from '@neurolink/client';
|
|
21
14
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* provider: 'vertex',
|
|
26
|
-
* model: 'gemini-3-flash-preview'
|
|
15
|
+
* const client = createClient({
|
|
16
|
+
* baseUrl: 'https://api.neurolink.example.com',
|
|
17
|
+
* apiKey: process.env.NEUROLINK_API_KEY,
|
|
27
18
|
* });
|
|
28
19
|
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
import { AIProviderFactory } from "./core/factory.js";
|
|
36
|
-
export { AIProviderFactory };
|
|
37
|
-
export { GoogleTTSHandler } from "./adapters/tts/googleTTSHandler.js";
|
|
38
|
-
// Config Manager export
|
|
39
|
-
export { NeuroLinkConfigManager as ConfigManager } from "./config/configManager.js";
|
|
40
|
-
// ============================================================================
|
|
41
|
-
// CLIENT SDK EXPORTS - Type-safe API access for browser and Node.js
|
|
42
|
-
// Note: React hooks are NOT re-exported here. Import from '@juspay/neurolink/client'.
|
|
43
|
-
// ============================================================================
|
|
44
|
-
export {
|
|
45
|
-
// HTTP Client
|
|
46
|
-
NeuroLinkClient, createClient, NeuroLinkApiError,
|
|
47
|
-
// AI SDK Adapter
|
|
48
|
-
NeuroLinkLanguageModel, NeuroLinkAIProvider, createNeuroLinkProvider, createNeuroLinkModel, createStreamingResponse, neurolink as neuroLinkAIInstance,
|
|
49
|
-
// Interceptors
|
|
50
|
-
createApiKeyAuthInterceptor, createBearerAuthInterceptor, createDynamicAuthInterceptor, createLoggingInterceptor, createRetryInterceptor, createRateLimitInterceptor, createRequestTransformInterceptor, createResponseTransformInterceptor, createCacheInterceptor, createTimeoutInterceptor, createErrorHandlerInterceptor, composeMiddleware, conditionalMiddleware,
|
|
51
|
-
// Streaming Client
|
|
52
|
-
SSEClient, WebSocketStreamingClient, createStreamingClient, createAsyncStream, collectStream,
|
|
53
|
-
// Authentication
|
|
54
|
-
OAuth2TokenManager, JWTTokenManager, createApiKeyMiddleware, createBearerTokenMiddleware, createTokenManagerMiddleware, createAuthWithRetryMiddleware, createMultiAuthMiddleware, OAuth2Error, OAuth2AuthError, TokenRefreshError, decodeJWTPayload, isJWTExpired, getJWTExpiry, getApiKeyFromEnv,
|
|
55
|
-
// Errors
|
|
56
|
-
ErrorCode as ClientErrorCode, NeuroLinkError as ClientNeuroLinkError, HttpError, ClientRateLimitError, ClientValidationError, ClientAuthenticationError, ClientAuthorizationError, NotFoundError, ClientNetworkError, ClientTimeoutError, ClientConnectionError, AbortError, ClientConfigurationError, StreamError, ClientProviderError, ContextLengthError, ContentFilterError, createErrorFromResponse, createErrorFromNative, mapStatusToErrorCode, isRetryableStatus, isRetryableError, isNeuroLinkError, isApiError, } from "./client/index.js";
|
|
57
|
-
export { AIProviderName, BedrockModels, OpenAIModels, VertexModels, } from "./constants/enums.js";
|
|
58
|
-
// Dynamic Models exports
|
|
59
|
-
export { dynamicModelProvider } from "./core/dynamicModels.js";
|
|
60
|
-
// Tool Registration utility
|
|
61
|
-
export { validateTool } from "./sdk/toolRegistration.js";
|
|
62
|
-
// Export ALL types from the centralized type barrel
|
|
63
|
-
export * from "./types/index.js";
|
|
64
|
-
// Error utilities
|
|
65
|
-
export { isAbortError } from "./utils/errorHandling.js";
|
|
66
|
-
// Pricing utilities
|
|
67
|
-
export { calculateCost, hasPricing } from "./utils/pricing.js";
|
|
68
|
-
// Utility exports
|
|
69
|
-
export { getAvailableProviders, getBestProvider, isValidProvider, } from "./utils/providerUtils.js";
|
|
70
|
-
// TTS utilities
|
|
71
|
-
export { TTSProcessor } from "./utils/ttsProcessor.js";
|
|
72
|
-
// Main NeuroLink wrapper class and diagnostic types
|
|
73
|
-
import { NeuroLink } from "./neurolink.js";
|
|
74
|
-
export { NeuroLink };
|
|
75
|
-
export { buildObservabilityConfigFromEnv } from "./utils/observabilityHelpers.js";
|
|
76
|
-
import { createContextEnricher, flushOpenTelemetry,
|
|
77
|
-
// Enhanced context and tracing
|
|
78
|
-
getLangfuseContext, getLangfuseHealthStatus, getLangfuseSpanProcessor,
|
|
79
|
-
// NEW EXPORTS - External TracerProvider Support
|
|
80
|
-
getSpanProcessors, getTracer, getTracerProvider, initializeOpenTelemetry, isOpenTelemetryInitialized, isUsingExternalTracerProvider, runWithCurrentLangfuseContext, setLangfuseContext, shutdownOpenTelemetry, } from "./services/server/ai/observability/instrumentation.js";
|
|
81
|
-
import { getTelemetryStatus as getStatus, initializeTelemetry as init, } from "./telemetry/index.js";
|
|
82
|
-
export { initializeOpenTelemetry, shutdownOpenTelemetry, flushOpenTelemetry, getLangfuseHealthStatus, setLangfuseContext, getLangfuseSpanProcessor, getTracerProvider, isOpenTelemetryInitialized,
|
|
83
|
-
// NEW EXPORTS - External TracerProvider Support
|
|
84
|
-
getSpanProcessors, createContextEnricher, isUsingExternalTracerProvider,
|
|
85
|
-
// Enhanced context and tracing
|
|
86
|
-
getLangfuseContext, getTracer,
|
|
87
|
-
// ALS context propagation helper
|
|
88
|
-
runWithCurrentLangfuseContext, };
|
|
89
|
-
// Analytics Middleware exports
|
|
90
|
-
export { clearAnalyticsMetrics, createAnalyticsMiddleware, getAnalyticsMetrics, } from "./middleware/builtin/analytics.js";
|
|
91
|
-
export { createLifecycleMiddleware } from "./middleware/builtin/lifecycle.js";
|
|
92
|
-
export { MiddlewareFactory } from "./middleware/factory.js";
|
|
93
|
-
export { ExporterRegistry } from "./observability/exporterRegistry.js";
|
|
94
|
-
export { NoOpExporter } from "./observability/exporters/baseExporter.js";
|
|
95
|
-
// Observability modules and types
|
|
96
|
-
export { getMetricsAggregator, MetricsAggregator, resetMetricsAggregator, } from "./observability/metricsAggregator.js";
|
|
97
|
-
export { AlwaysSampler, NeverSampler, } from "./observability/sampling/samplers.js";
|
|
98
|
-
export { TokenTracker } from "./observability/tokenTracker.js";
|
|
99
|
-
export { GENAI_ATTRIBUTES, SpanStatus, SpanType, } from "./observability/types/spanTypes.js";
|
|
100
|
-
export { SpanSerializer } from "./observability/utils/spanSerializer.js";
|
|
101
|
-
// Version
|
|
102
|
-
export const VERSION = "1.0.0";
|
|
103
|
-
/**
|
|
104
|
-
* Quick start factory function for creating AI provider instances.
|
|
105
|
-
*
|
|
106
|
-
* Creates a configured AI provider instance ready for immediate use.
|
|
107
|
-
* Supports 14+ providers: OpenAI, Anthropic, Google AI Studio,
|
|
108
|
-
* Google Vertex, AWS Bedrock, AWS SageMaker, Azure OpenAI, Hugging Face,
|
|
109
|
-
* LiteLLM, Mistral, Ollama, OpenAI Compatible, OpenRouter, and more.
|
|
110
|
-
*
|
|
111
|
-
* @category Factory
|
|
112
|
-
*
|
|
113
|
-
* @param providerName - The AI provider name (e.g., 'bedrock', 'vertex', 'openai')
|
|
114
|
-
* @param modelName - Optional model name to override provider default
|
|
115
|
-
* @returns Promise resolving to configured AI provider instance
|
|
116
|
-
*
|
|
117
|
-
* @example Basic usage
|
|
118
|
-
* ```typescript
|
|
119
|
-
* import { createAIProvider } from '@juspay/neurolink';
|
|
120
|
-
*
|
|
121
|
-
* const provider = await createAIProvider('bedrock');
|
|
122
|
-
* const result = await provider.stream({ input: { text: 'Hello, AI!' } });
|
|
123
|
-
* ```
|
|
20
|
+
* // Generate text
|
|
21
|
+
* const result = await client.generate({
|
|
22
|
+
* input: { text: 'Hello, world!' },
|
|
23
|
+
* provider: 'openai',
|
|
24
|
+
* model: 'gpt-4o',
|
|
25
|
+
* });
|
|
124
26
|
*
|
|
125
|
-
*
|
|
126
|
-
* ```typescript
|
|
127
|
-
* const provider = await createAIProvider('vertex', 'gemini-3-flash-preview');
|
|
27
|
+
* console.log(result.data.content);
|
|
128
28
|
* ```
|
|
129
29
|
*
|
|
130
|
-
* @
|
|
131
|
-
*
|
|
132
|
-
* @
|
|
133
|
-
*/
|
|
134
|
-
export async function createAIProvider(providerName, modelName) {
|
|
135
|
-
return await AIProviderFactory.createProvider(providerName || "bedrock", modelName);
|
|
136
|
-
}
|
|
137
|
-
/**
|
|
138
|
-
* Create provider with automatic fallback for production resilience.
|
|
139
|
-
*
|
|
140
|
-
* Creates both primary and fallback provider instances for high-availability
|
|
141
|
-
* deployments. Automatically switches to fallback on primary provider failure.
|
|
142
|
-
*
|
|
143
|
-
* @category Factory
|
|
144
|
-
*
|
|
145
|
-
* @param primaryProvider - Primary AI provider name (default: 'bedrock')
|
|
146
|
-
* @param fallbackProvider - Fallback AI provider name (default: 'vertex')
|
|
147
|
-
* @param modelName - Optional model name for both providers
|
|
148
|
-
* @returns Promise resolving to object with primary and fallback providers
|
|
30
|
+
* @example React Hooks Usage
|
|
31
|
+
* ```tsx
|
|
32
|
+
* import { NeuroLinkProvider, useChat } from '@neurolink/react';
|
|
149
33
|
*
|
|
150
|
-
*
|
|
151
|
-
*
|
|
152
|
-
*
|
|
153
|
-
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
* try {
|
|
157
|
-
* const result = await primary.generate({ input: { text: 'Hello!' } });
|
|
158
|
-
* } catch (error) {
|
|
159
|
-
* // Automatically use fallback
|
|
160
|
-
* const result = await fallback.generate({ input: { text: 'Hello!' } });
|
|
34
|
+
* function App() {
|
|
35
|
+
* return (
|
|
36
|
+
* <NeuroLinkProvider config={{ baseUrl: '/api', apiKey: '...' }}>
|
|
37
|
+
* <ChatComponent />
|
|
38
|
+
* </NeuroLinkProvider>
|
|
39
|
+
* );
|
|
161
40
|
* }
|
|
162
|
-
* ```
|
|
163
|
-
*
|
|
164
|
-
* @example Multi-region setup
|
|
165
|
-
* ```typescript
|
|
166
|
-
* const { primary, fallback } = await createAIProviderWithFallback(
|
|
167
|
-
* 'vertex', // Primary: US region
|
|
168
|
-
* 'bedrock', // Fallback: Global
|
|
169
|
-
* 'claude-3-sonnet'
|
|
170
|
-
* );
|
|
171
|
-
* ```
|
|
172
|
-
*
|
|
173
|
-
* @see {@link AIProviderFactory.createProviderWithFallback}
|
|
174
|
-
* @since 1.0.0
|
|
175
|
-
*/
|
|
176
|
-
export async function createAIProviderWithFallback(primaryProvider, fallbackProvider, modelName) {
|
|
177
|
-
return await AIProviderFactory.createProviderWithFallback(primaryProvider || "bedrock", fallbackProvider || "vertex", modelName);
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Create the best available provider based on environment configuration.
|
|
181
|
-
*
|
|
182
|
-
* Intelligently selects the best provider based on available API keys
|
|
183
|
-
* in environment variables. Automatically detects and configures the
|
|
184
|
-
* optimal provider without manual configuration.
|
|
185
|
-
*
|
|
186
|
-
* @category Factory
|
|
187
41
|
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
* // Tries to use OpenAI, falls back to available provider
|
|
204
|
-
* const provider = await createBestAIProvider('openai');
|
|
205
|
-
* ```
|
|
206
|
-
*
|
|
207
|
-
* @remarks
|
|
208
|
-
* Environment variables checked (in order):
|
|
209
|
-
* - OPENAI_API_KEY
|
|
210
|
-
* - ANTHROPIC_API_KEY
|
|
211
|
-
* - GOOGLE_API_KEY
|
|
212
|
-
* - VERTEX_PROJECT_ID + credentials
|
|
213
|
-
* - AWS credentials for Bedrock
|
|
214
|
-
* - And more...
|
|
215
|
-
*
|
|
216
|
-
* @see {@link AIProviderFactory.createBestProvider}
|
|
217
|
-
* @see {@link getBestProvider} for provider detection utility
|
|
218
|
-
* @since 1.0.0
|
|
219
|
-
*/
|
|
220
|
-
export async function createBestAIProvider(requestedProvider, modelName) {
|
|
221
|
-
return await AIProviderFactory.createBestProvider(requestedProvider, modelName);
|
|
222
|
-
}
|
|
223
|
-
// ============================================================================
|
|
224
|
-
// MCP PLUGIN ECOSYSTEM - Universal AI Development Platform
|
|
225
|
-
// ============================================================================
|
|
226
|
-
/**
|
|
227
|
-
* MCP (Model Context Protocol) Plugin Ecosystem
|
|
228
|
-
*
|
|
229
|
-
* Extensible plugin architecture based on research blueprint for
|
|
230
|
-
* transforming NeuroLink into a Universal AI Development Platform.
|
|
231
|
-
*
|
|
232
|
-
* @example
|
|
233
|
-
* ```typescript
|
|
234
|
-
* import { mcpEcosystem, readFile, writeFile } from '@juspay/neurolink';
|
|
235
|
-
*
|
|
236
|
-
* // Initialize the ecosystem
|
|
237
|
-
* await mcpEcosystem.initialize();
|
|
238
|
-
*
|
|
239
|
-
* // List available plugins
|
|
240
|
-
* const plugins = await mcpEcosystem.list();
|
|
241
|
-
*
|
|
242
|
-
* // Use filesystem operations
|
|
243
|
-
* const content = await readFile('README.md');
|
|
244
|
-
* await writeFile('output.txt', 'Hello from MCP!');
|
|
42
|
+
* function ChatComponent() {
|
|
43
|
+
* const { messages, input, handleInputChange, handleSubmit, isLoading } = useChat({
|
|
44
|
+
* agentId: 'my-agent',
|
|
45
|
+
* });
|
|
46
|
+
*
|
|
47
|
+
* return (
|
|
48
|
+
* <div>
|
|
49
|
+
* {messages.map(m => <div key={m.id}>{m.content}</div>)}
|
|
50
|
+
* <form onSubmit={handleSubmit}>
|
|
51
|
+
* <input value={input} onChange={handleInputChange} />
|
|
52
|
+
* <button disabled={isLoading}>Send</button>
|
|
53
|
+
* </form>
|
|
54
|
+
* </div>
|
|
55
|
+
* );
|
|
56
|
+
* }
|
|
245
57
|
* ```
|
|
246
|
-
*/
|
|
247
|
-
export { CircuitBreakerManager, calculateExpiresAt,
|
|
248
|
-
// MCP Server Factory
|
|
249
|
-
createMCPServer, createOAuthProviderFromConfig, DEFAULT_HTTP_RETRY_CONFIG, DEFAULT_RATE_LIMIT_CONFIG, executeMCP, FileTokenStorage, getMCPStats, getServerInfo, globalCircuitBreakerManager, globalRateLimiterManager,
|
|
250
|
-
// HTTP Transport utilities
|
|
251
|
-
HTTPRateLimiter,
|
|
252
|
-
// OAuth Authentication
|
|
253
|
-
InMemoryTokenStorage,
|
|
254
|
-
// Core MCP ecosystem
|
|
255
|
-
// Simplified MCP exports
|
|
256
|
-
initializeMCPEcosystem, isRetryableHTTPError, isRetryableStatusCode, isTokenExpired, listMCPs,
|
|
257
|
-
// Circuit Breaker
|
|
258
|
-
CircuitBreakerOpenError, MCPCircuitBreaker, mcpLogger, NeuroLinkOAuthProvider, RateLimiterManager, validateServerTools, validateTool as validateMCPTool, withHTTPRetry,
|
|
259
|
-
// Core MCP Components
|
|
260
|
-
MCPToolRegistry, ExternalServerManager, MCPClientFactory,
|
|
261
|
-
// MCP Enhancements - Routing, Caching, Batching
|
|
262
|
-
ToolRouter, createToolRouter, DEFAULT_ROUTER_CONFIG, ToolCache, createToolCache, DEFAULT_CACHE_CONFIG, ToolResultCache, createToolResultCache, RequestBatcher, ToolCallBatcher, createRequestBatcher, createToolCallBatcher, DEFAULT_BATCH_CONFIG,
|
|
263
|
-
// MCP Enhancements - Tool Annotations
|
|
264
|
-
inferAnnotations, createAnnotatedTool, validateAnnotations, filterToolsByAnnotations, mergeAnnotations, getAnnotationSummary, requiresConfirmation, isSafeToRetry, getToolSafetyLevel,
|
|
265
|
-
// MCP Enhancements - Elicitation
|
|
266
|
-
ElicitationManager, globalElicitationManager,
|
|
267
|
-
// MCP Enhancements - Enhanced Tool Discovery
|
|
268
|
-
EnhancedToolDiscovery,
|
|
269
|
-
// MCP Enhancements - Registry Client
|
|
270
|
-
MCPRegistryClient, globalMCPRegistryClient, getWellKnownServer, getAllWellKnownServers,
|
|
271
|
-
// MCP Enhancements - Server Base
|
|
272
|
-
MCPServerBase,
|
|
273
|
-
// MCP Enhancements - Multi-Server Manager
|
|
274
|
-
MultiServerManager, globalMultiServerManager,
|
|
275
|
-
// MCP Enhancements - Agent Exposure
|
|
276
|
-
AgentExposureManager, exposeAgentAsTool, exposeAgentsAsTools, exposeWorkflowAsTool, exposeWorkflowsAsTools, globalAgentExposureManager,
|
|
277
|
-
// MCP Enhancements - Server Capabilities
|
|
278
|
-
ServerCapabilitiesManager, createTextResource, createJsonResource, createPrompt,
|
|
279
|
-
// MCP Enhancements - Tool Converter
|
|
280
|
-
neuroLinkToolToMCP, mcpToolToNeuroLink, batchConvertToMCP, batchConvertToNeuroLink, sanitizeToolName, validateToolName, createToolFromFunction, mcpProtocolToolToServerTool, serverToolToMCPProtocol, TOOL_COMPATIBILITY,
|
|
281
|
-
// MCP Enhancements - Tool Integration
|
|
282
|
-
ToolIntegrationManager, globalToolIntegrationManager, wrapToolWithElicitation, wrapToolsWithElicitation, createElicitationContext, confirmationMiddleware, validationMiddleware, loggingMiddleware, createRetryMiddleware, createTimeoutMiddleware, createToolMiddlewareChain,
|
|
283
|
-
// MCP Enhancements - Elicitation Protocol
|
|
284
|
-
ElicitationProtocolAdapter, globalElicitationProtocol, isElicitationProtocolMessage, protocolMessageToElicitation, elicitationResponseToProtocol, createElicitationRequest, createElicitationResponse, createElicitationCancel, createTextInputRequest, createSelectRequest, createConfirmationRequest, createFormRequest, } from "./mcp/index.js";
|
|
285
|
-
export { logger } from "./utils/logger.js";
|
|
286
|
-
export { getPoolStats } from "./utils/redis.js";
|
|
287
|
-
// ============================================================================
|
|
288
|
-
// REAL-TIME SERVICES & TELEMETRY - Enterprise Platform Features
|
|
289
|
-
// ============================================================================
|
|
290
|
-
// Real-time Services (Phase 1) - Basic SSE functionality only
|
|
291
|
-
// export { createEnhancedChatService } from './chat/index.js';
|
|
292
|
-
// export type * from './services/types.js';
|
|
293
|
-
// Optional Telemetry (Phase 2) - Telemetry service initialization
|
|
294
|
-
export async function initializeTelemetry() {
|
|
295
|
-
try {
|
|
296
|
-
const result = await init();
|
|
297
|
-
return !!result;
|
|
298
|
-
}
|
|
299
|
-
catch {
|
|
300
|
-
return false;
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
export async function getTelemetryStatus() {
|
|
304
|
-
return getStatus();
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* Legacy generateText function for backward compatibility.
|
|
308
|
-
*
|
|
309
|
-
* Provides standalone text generation function for existing code.
|
|
310
|
-
* For new code, use {@link NeuroLink.generate} instead which provides
|
|
311
|
-
* more features including streaming, tools, and structured output.
|
|
312
|
-
*
|
|
313
|
-
* @category Legacy
|
|
314
|
-
* @deprecated Use {@link NeuroLink.generate} for new code
|
|
315
|
-
*
|
|
316
|
-
* @param options - Text generation options
|
|
317
|
-
* @param options.prompt - Input prompt text
|
|
318
|
-
* @param options.provider - AI provider name (e.g., 'bedrock', 'openai')
|
|
319
|
-
* @param options.model - Model name to use
|
|
320
|
-
* @param options.temperature - Sampling temperature (0-2)
|
|
321
|
-
* @param options.maxTokens - Maximum tokens to generate
|
|
322
|
-
* @returns Promise resolving to text generation result with content and metadata
|
|
323
58
|
*
|
|
324
|
-
* @example
|
|
59
|
+
* @example Vercel AI SDK Compatibility
|
|
325
60
|
* ```typescript
|
|
326
|
-
* import {
|
|
61
|
+
* import { createNeuroLinkProvider } from '@neurolink/ai-sdk';
|
|
62
|
+
* import { generateText } from 'ai';
|
|
327
63
|
*
|
|
328
|
-
* const
|
|
329
|
-
*
|
|
330
|
-
*
|
|
331
|
-
* model: 'claude-3-sonnet'
|
|
64
|
+
* const neurolink = createNeuroLinkProvider({
|
|
65
|
+
* baseUrl: 'https://api.neurolink.example.com',
|
|
66
|
+
* apiKey: process.env.NEUROLINK_API_KEY,
|
|
332
67
|
* });
|
|
333
|
-
* console.log(result.content);
|
|
334
|
-
* ```
|
|
335
68
|
*
|
|
336
|
-
* @example With temperature control
|
|
337
|
-
* ```typescript
|
|
338
69
|
* const result = await generateText({
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
* temperature: 1.5,
|
|
342
|
-
* maxTokens: 500
|
|
70
|
+
* model: neurolink('gpt-4o'),
|
|
71
|
+
* prompt: 'Hello!',
|
|
343
72
|
* });
|
|
344
73
|
* ```
|
|
345
74
|
*
|
|
346
|
-
* @
|
|
347
|
-
* @since 1.0.0
|
|
348
|
-
*/
|
|
349
|
-
export async function generateText(options) {
|
|
350
|
-
// Create instance on-demand without auto-instantiation
|
|
351
|
-
const neurolink = new NeuroLink();
|
|
352
|
-
return await neurolink.generateText(options);
|
|
353
|
-
}
|
|
354
|
-
// ============================================================================
|
|
355
|
-
// WORKFLOW ENGINE - Multi-Model Orchestration with Judge Scoring
|
|
356
|
-
// ============================================================================
|
|
357
|
-
/**
|
|
358
|
-
* Workflow Engine for multi-model ensembles with judge-based evaluation
|
|
359
|
-
*
|
|
360
|
-
* Enables sophisticated AI orchestration patterns:
|
|
361
|
-
* - Ensemble execution (parallel multi-model)
|
|
362
|
-
* - Chain execution (sequential fallback)
|
|
363
|
-
* - Adaptive execution (tier-based quality/cost optimization)
|
|
364
|
-
* - Multi-judge voting for consensus
|
|
365
|
-
*
|
|
366
|
-
* @example
|
|
75
|
+
* @example Streaming with SSE
|
|
367
76
|
* ```typescript
|
|
368
|
-
* import {
|
|
77
|
+
* import { createStreamingClient } from '@neurolink/client/streaming';
|
|
369
78
|
*
|
|
370
|
-
*
|
|
371
|
-
*
|
|
372
|
-
*
|
|
373
|
-
*
|
|
79
|
+
* const client = createStreamingClient({
|
|
80
|
+
* baseUrl: 'https://api.neurolink.example.com',
|
|
81
|
+
* apiKey: process.env.NEUROLINK_API_KEY,
|
|
82
|
+
* transport: 'sse',
|
|
374
83
|
* });
|
|
375
84
|
*
|
|
376
|
-
*
|
|
377
|
-
*
|
|
378
|
-
*
|
|
379
|
-
*
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
export { clearRegistry as clearWorkflowRegistry, getWorkflow, listWorkflows, registerWorkflow, } from "./workflow/core/workflowRegistry.js";
|
|
383
|
-
// Workflow execution
|
|
384
|
-
export { runWorkflow } from "./workflow/core/workflowRunner.js";
|
|
385
|
-
// Workflow constants
|
|
386
|
-
export { DEFAULT_SCORE_SCALE, WORKFLOW_ENGINE_VERSION, } from "./workflow/index.js";
|
|
387
|
-
export { calculateModelMetrics, compareWorkflows, generateSummaryStats, } from "./workflow/utils/workflowMetrics.js";
|
|
388
|
-
// Validation and metrics
|
|
389
|
-
export { validateWorkflow } from "./workflow/utils/workflowValidation.js";
|
|
390
|
-
// Pre-built workflows - Adaptive
|
|
391
|
-
export { BALANCED_ADAPTIVE_WORKFLOW, createAdaptiveWorkflow, QUALITY_MAX_WORKFLOW, SPEED_FIRST_WORKFLOW, } from "./workflow/workflows/adaptiveWorkflow.js";
|
|
392
|
-
// Pre-built workflows - Consensus
|
|
393
|
-
export { CONSENSUS_3_FAST_WORKFLOW, CONSENSUS_3_WORKFLOW, createConsensus3WithPrompt, } from "./workflow/workflows/consensusWorkflow.js";
|
|
394
|
-
// Pre-built workflows - Fallback
|
|
395
|
-
export { AGGRESSIVE_FALLBACK_WORKFLOW, FAST_FALLBACK_WORKFLOW, } from "./workflow/workflows/fallbackWorkflow.js";
|
|
396
|
-
// Pre-built workflows - Multi-judge
|
|
397
|
-
export { createMultiJudgeWorkflow, MULTI_JUDGE_3_WORKFLOW, MULTI_JUDGE_5_WORKFLOW, } from "./workflow/workflows/multiJudgeWorkflow.js";
|
|
398
|
-
/**
|
|
399
|
-
* Server Adapters for exposing NeuroLink as HTTP APIs
|
|
400
|
-
*
|
|
401
|
-
* Supports multiple frameworks: Hono, Express, Fastify, Koa
|
|
402
|
-
*
|
|
403
|
-
* @example
|
|
404
|
-
* ```typescript
|
|
405
|
-
* import { NeuroLink } from '@juspay/neurolink';
|
|
406
|
-
* import { createServer } from '@juspay/neurolink/server';
|
|
407
|
-
*
|
|
408
|
-
* const neurolink = new NeuroLink({ provider: 'openai' });
|
|
409
|
-
* const server = await createServer(neurolink, {
|
|
410
|
-
* framework: 'hono',
|
|
411
|
-
* config: { port: 3000 }
|
|
85
|
+
* const result = await client.stream({
|
|
86
|
+
* input: { text: 'Tell me a story' },
|
|
87
|
+
* callbacks: {
|
|
88
|
+
* onText: (text) => process.stdout.write(text),
|
|
89
|
+
* onDone: () => console.log('\nDone!'),
|
|
90
|
+
* },
|
|
412
91
|
* });
|
|
413
|
-
* await server.start();
|
|
414
92
|
* ```
|
|
415
93
|
*/
|
|
94
|
+
// =============================================================================
|
|
95
|
+
// HTTP Client Exports
|
|
96
|
+
// =============================================================================
|
|
97
|
+
export { NeuroLinkClient, createClient, NeuroLinkApiError, } from "./httpClient.js";
|
|
98
|
+
// =============================================================================
|
|
99
|
+
// React Hooks Exports
|
|
100
|
+
// Note: These exports require React 18+ as a peer dependency
|
|
101
|
+
// =============================================================================
|
|
102
|
+
export { NeuroLinkProvider, useNeuroLinkClient, useChat, useAgent, useWorkflow, useVoice, useStream, useTools, } from "./reactHooks.js";
|
|
103
|
+
// =============================================================================
|
|
104
|
+
// AI SDK Adapter Exports
|
|
105
|
+
// =============================================================================
|
|
106
|
+
export { NeuroLinkLanguageModel, NeuroLinkProvider as NeuroLinkAIProvider, createNeuroLinkProvider, createNeuroLinkModel, createStreamingResponse, neurolink, } from "./aiSdkAdapter.js";
|
|
107
|
+
// =============================================================================
|
|
108
|
+
// Interceptor Exports
|
|
109
|
+
// =============================================================================
|
|
416
110
|
export {
|
|
417
|
-
//
|
|
418
|
-
|
|
419
|
-
//
|
|
420
|
-
|
|
421
|
-
//
|
|
422
|
-
|
|
423
|
-
//
|
|
424
|
-
|
|
425
|
-
//
|
|
426
|
-
|
|
427
|
-
//
|
|
428
|
-
|
|
429
|
-
//
|
|
430
|
-
|
|
431
|
-
//
|
|
432
|
-
|
|
433
|
-
//
|
|
434
|
-
|
|
435
|
-
//
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
* } from '@juspay/neurolink';
|
|
451
|
-
*
|
|
452
|
-
* // Load and process a document
|
|
453
|
-
* const doc = await loadDocument('/path/to/document.md');
|
|
454
|
-
* await doc.chunk({ strategy: 'markdown', config: { maxSize: 1000 } });
|
|
455
|
-
*
|
|
456
|
-
* // Use the full RAG pipeline
|
|
457
|
-
* const pipeline = new RAGPipeline({
|
|
458
|
-
* embeddingModel: { provider: 'openai', modelName: 'text-embedding-3-small' },
|
|
459
|
-
* generationModel: { provider: 'openai', modelName: 'gpt-4o-mini' }
|
|
460
|
-
* });
|
|
461
|
-
* await pipeline.ingest(['./docs/*.md']);
|
|
462
|
-
* const response = await pipeline.query('What are the key features?');
|
|
463
|
-
* console.log(response.answer);
|
|
464
|
-
* ```
|
|
465
|
-
*/
|
|
111
|
+
// Authentication
|
|
112
|
+
createApiKeyAuthInterceptor, createBearerAuthInterceptor, createDynamicAuthInterceptor,
|
|
113
|
+
// Logging
|
|
114
|
+
createLoggingInterceptor,
|
|
115
|
+
// Retry
|
|
116
|
+
createRetryInterceptor,
|
|
117
|
+
// Rate Limiting
|
|
118
|
+
createRateLimitInterceptor,
|
|
119
|
+
// Request/Response Transformation
|
|
120
|
+
createRequestTransformInterceptor, createResponseTransformInterceptor,
|
|
121
|
+
// Caching
|
|
122
|
+
createCacheInterceptor,
|
|
123
|
+
// Timeout
|
|
124
|
+
createTimeoutInterceptor,
|
|
125
|
+
// Error Handling
|
|
126
|
+
createErrorHandlerInterceptor,
|
|
127
|
+
// Composition
|
|
128
|
+
composeMiddleware, conditionalMiddleware, } from "./interceptors.js";
|
|
129
|
+
// =============================================================================
|
|
130
|
+
// Streaming Client Exports
|
|
131
|
+
// =============================================================================
|
|
132
|
+
export { SSEClient, WebSocketStreamingClient, createStreamingClient, createAsyncStream, collectStream, } from "./streamingClient.js";
|
|
133
|
+
// =============================================================================
|
|
134
|
+
// Dedicated WebSocket Client Exports
|
|
135
|
+
// =============================================================================
|
|
136
|
+
export { NeuroLinkWebSocket, createWebSocketClient } from "./wsClient.js";
|
|
137
|
+
// =============================================================================
|
|
138
|
+
// Dedicated SSE Client Exports
|
|
139
|
+
// =============================================================================
|
|
140
|
+
export { NeuroLinkSSE, createSSEClient } from "./sseClient.js";
|
|
141
|
+
// =============================================================================
|
|
142
|
+
// Authentication Exports
|
|
143
|
+
// =============================================================================
|
|
466
144
|
export {
|
|
467
|
-
//
|
|
468
|
-
|
|
469
|
-
//
|
|
470
|
-
|
|
471
|
-
//
|
|
472
|
-
|
|
473
|
-
//
|
|
474
|
-
|
|
475
|
-
//
|
|
476
|
-
|
|
477
|
-
//
|
|
478
|
-
executeWithCircuitBreaker,
|
|
479
|
-
// Metadata Extraction
|
|
480
|
-
extractMetadata, formatContextWithCitations,
|
|
481
|
-
// Graph RAG
|
|
482
|
-
GraphRAG, getAvailableStrategies, getCircuitBreaker, getDefaultChunkerConfig, getRecommendedStrategy, HTMLChunker, HTMLLoader, InMemoryBM25Index, InMemoryVectorStore, JSONChunker as RAGJSONChunker, JSONLoader, LaTeXChunker, LLMMetadataExtractor, linearCombination, loadDocument, loadDocuments, MarkdownChunker, MarkdownLoader, MDocument, PDFLoader,
|
|
483
|
-
// RAG Integration for generate/stream
|
|
484
|
-
prepareRAGTool, processDocument, RAGCircuitBreaker, RAGCircuitBreakerManager, RAGPipeline, RAGRetryHandler, RecursiveChunker, ragCircuitBreakerManager, reciprocalRankFusion, rerank, SemanticChunker, SentenceChunker, simpleRerank, summarizeContext, TextLoader, TokenChunker, WebLoader, } from "./rag/index.js";
|
|
485
|
-
// ============================================================================
|
|
486
|
-
// EVALUATION / SCORING - RAGAS-style Response Quality Evaluation
|
|
487
|
-
// ============================================================================
|
|
488
|
-
export { ContextBuilder } from "./evaluation/contextBuilder.js";
|
|
489
|
-
/**
|
|
490
|
-
* Evaluation system for AI response quality assessment.
|
|
491
|
-
*
|
|
492
|
-
* Uses RAGAS-style model-based evaluation with a "judge" LLM to score
|
|
493
|
-
* responses on relevance, accuracy, completeness, and overall quality.
|
|
494
|
-
* Supports retry logic with progressive prompt improvement.
|
|
495
|
-
*
|
|
496
|
-
* @example
|
|
497
|
-
* ```typescript
|
|
498
|
-
* import { Evaluator, RAGASEvaluator, ContextBuilder, RetryManager } from '@juspay/neurolink';
|
|
499
|
-
*
|
|
500
|
-
* const evaluator = new Evaluator({
|
|
501
|
-
* evaluationModel: 'gemini-1.5-flash',
|
|
502
|
-
* provider: 'vertex',
|
|
503
|
-
* threshold: 7,
|
|
504
|
-
* });
|
|
505
|
-
* ```
|
|
506
|
-
*/
|
|
507
|
-
export { Evaluator } from "./evaluation/index.js";
|
|
508
|
-
export { PromptBuilder } from "./evaluation/prompts.js";
|
|
509
|
-
export { RAGASEvaluator } from "./evaluation/ragasEvaluator.js";
|
|
510
|
-
export { RetryManager } from "./evaluation/retryManager.js";
|
|
511
|
-
export { mapToEvaluationData } from "./evaluation/scoring.js";
|
|
512
|
-
// ============================================================================
|
|
513
|
-
// AUTHENTICATION PROVIDERS - Multi-provider Auth Integration
|
|
514
|
-
// ============================================================================
|
|
515
|
-
// Single-sourced from ./auth/index.js. Only aliases that differ from the
|
|
516
|
-
// canonical export name are listed explicitly; everything else is re-exported
|
|
517
|
-
// as-is.
|
|
145
|
+
// Token Managers
|
|
146
|
+
OAuth2TokenManager, JWTTokenManager,
|
|
147
|
+
// Auth Middleware
|
|
148
|
+
createApiKeyMiddleware, createBearerTokenMiddleware, createTokenManagerMiddleware, createAuthWithRetryMiddleware, createMultiAuthMiddleware,
|
|
149
|
+
// Error Classes
|
|
150
|
+
OAuth2Error, OAuth2AuthenticationError as OAuth2AuthError, TokenRefreshError,
|
|
151
|
+
// Utilities
|
|
152
|
+
decodeJWTPayload, isJWTExpired, getJWTExpiry, getApiKeyFromEnv, } from "./auth.js";
|
|
153
|
+
// =============================================================================
|
|
154
|
+
// Error Exports
|
|
155
|
+
// =============================================================================
|
|
518
156
|
export {
|
|
519
|
-
//
|
|
520
|
-
|
|
521
|
-
//
|
|
522
|
-
|
|
523
|
-
//
|
|
524
|
-
|
|
525
|
-
//
|
|
526
|
-
|
|
527
|
-
//
|
|
528
|
-
|
|
529
|
-
//
|
|
530
|
-
|
|
531
|
-
//
|
|
532
|
-
|
|
533
|
-
//
|
|
534
|
-
|
|
535
|
-
// Server Bridge
|
|
536
|
-
createAuthValidatorFromProvider, } from "./auth/index.js";
|
|
157
|
+
// Error Codes
|
|
158
|
+
ErrorCode,
|
|
159
|
+
// Base Error
|
|
160
|
+
NeuroLinkError,
|
|
161
|
+
// HTTP Errors
|
|
162
|
+
HttpError, ClientRateLimitError, ClientValidationError, ClientAuthenticationError, ClientAuthorizationError, NotFoundError,
|
|
163
|
+
// Network Errors
|
|
164
|
+
ClientNetworkError, ClientTimeoutError, ClientConnectionError,
|
|
165
|
+
// Client Errors
|
|
166
|
+
AbortError, ClientConfigurationError, StreamError,
|
|
167
|
+
// Provider Errors
|
|
168
|
+
ClientProviderError, ContextLengthError, ContentFilterError,
|
|
169
|
+
// Factory Functions
|
|
170
|
+
createErrorFromResponse, createErrorFromNative,
|
|
171
|
+
// Utilities
|
|
172
|
+
mapStatusToErrorCode, isRetryableStatus, isRetryableError, isNeuroLinkError, isApiError, } from "./errors.js";
|