@juspay/neurolink 9.30.0 → 9.31.0
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 +14 -0
- package/README.md +2 -3
- package/dist/adapters/providerImageAdapter.js +13 -22
- package/dist/adapters/video/videoAnalyzer.d.ts +4 -4
- package/dist/adapters/video/videoAnalyzer.js +3 -3
- package/dist/agent/directTools.d.ts +20 -289
- package/dist/agent/directTools.js +11 -10
- package/dist/auth/accountPool.d.ts +68 -0
- package/dist/auth/accountPool.js +178 -0
- package/dist/auth/anthropicOAuth.d.ts +15 -5
- package/dist/auth/anthropicOAuth.js +117 -57
- package/dist/auth/index.d.ts +7 -5
- package/dist/auth/index.js +6 -2
- package/dist/auth/tokenStore.d.ts +71 -27
- package/dist/auth/tokenStore.js +342 -64
- package/dist/cli/commands/auth.d.ts +39 -2
- package/dist/cli/commands/auth.js +585 -36
- package/dist/cli/commands/config.d.ts +47 -574
- package/dist/cli/commands/config.js +142 -24
- package/dist/cli/commands/docs.d.ts +1 -5
- package/dist/cli/commands/observability.d.ts +1 -17
- package/dist/cli/commands/ollama.js +1 -1
- package/dist/cli/commands/proxy.d.ts +20 -0
- package/dist/cli/commands/proxy.js +1254 -0
- package/dist/cli/commands/setup-anthropic.js +1 -1
- package/dist/cli/commands/setup-azure.js +1 -1
- package/dist/cli/commands/setup-bedrock.js +2 -2
- package/dist/cli/commands/setup-gcp.js +1 -1
- package/dist/cli/commands/setup-google-ai.js +1 -1
- package/dist/cli/commands/setup-huggingface.js +2 -2
- package/dist/cli/commands/setup-mistral.js +1 -1
- package/dist/cli/commands/setup-openai.js +1 -1
- package/dist/cli/commands/setup.js +3 -3
- package/dist/cli/commands/telemetry.d.ts +1 -22
- package/dist/cli/factories/authCommandFactory.d.ts +16 -11
- package/dist/cli/factories/authCommandFactory.js +96 -1
- package/dist/cli/factories/ollamaCommandFactory.js +1 -1
- package/dist/cli/factories/sagemakerCommandFactory.js +25 -6
- package/dist/cli/index.d.ts +0 -6
- package/dist/cli/index.js +5 -2
- package/dist/cli/loop/conversationSelector.js +7 -2
- package/dist/cli/parser.js +19 -1
- package/dist/cli/utils/envManager.js +2 -2
- package/dist/cli/utils/ollamaUtils.d.ts +1 -2
- package/dist/client/adapters/providerImageAdapter.js +588 -0
- package/dist/client/adapters/tts/googleTTSHandler.js +344 -0
- package/dist/client/adapters/video/directorPipeline.js +516 -0
- package/dist/client/adapters/video/ffmpegAdapter.js +206 -0
- package/dist/client/adapters/video/frameExtractor.js +143 -0
- package/dist/client/adapters/video/vertexVideoHandler.js +763 -0
- package/dist/client/adapters/video/videoAnalyzer.js +238 -0
- package/dist/client/adapters/video/videoMerger.js +171 -0
- package/dist/client/agent/directTools.js +840 -0
- package/dist/client/aiSdkAdapter.d.ts +196 -0
- package/dist/client/aiSdkAdapter.js +487 -0
- package/dist/client/auth/anthropicOAuth.js +974 -0
- package/dist/client/auth/tokenStore.js +799 -0
- package/dist/client/auth.d.ts +248 -0
- package/dist/client/auth.js +473 -0
- package/dist/client/client/aiSdkAdapter.js +487 -0
- package/dist/client/client/auth.js +473 -0
- package/dist/client/client/errors.js +552 -0
- package/dist/client/client/httpClient.js +837 -0
- package/dist/client/client/index.js +172 -0
- package/dist/client/client/interceptors.js +601 -0
- package/dist/client/client/reactHooks.js +1159 -0
- package/dist/client/client/sseClient.js +545 -0
- package/dist/client/client/streamingClient.js +917 -0
- package/dist/client/client/wsClient.js +369 -0
- package/dist/client/config/configManager.js +303 -0
- package/dist/client/config/conversationMemory.js +86 -0
- package/dist/client/config/taskClassificationConfig.js +148 -0
- package/dist/client/constants/contextWindows.js +295 -0
- package/dist/client/constants/enums.js +853 -0
- package/dist/client/constants/index.js +207 -0
- package/dist/client/constants/performance.js +389 -0
- package/dist/client/constants/retry.js +266 -0
- package/dist/client/constants/timeouts.js +182 -0
- package/dist/client/constants/tokens.js +380 -0
- package/dist/client/constants/videoErrors.js +46 -0
- package/dist/client/context/budgetChecker.js +98 -0
- package/dist/client/context/contextCompactor.js +205 -0
- package/dist/client/context/emergencyTruncation.js +88 -0
- package/dist/client/context/errorDetection.js +171 -0
- package/dist/client/context/errors.js +21 -0
- package/dist/client/context/fileTokenBudget.js +127 -0
- package/dist/client/context/prompts/summarizationPrompt.js +117 -0
- package/dist/client/context/stages/fileReadDeduplicator.js +66 -0
- package/dist/client/context/stages/slidingWindowTruncator.js +190 -0
- package/dist/client/context/stages/structuredSummarizer.js +99 -0
- package/dist/client/context/stages/toolOutputPruner.js +52 -0
- package/dist/client/context/summarizationEngine.js +136 -0
- package/dist/client/context/toolOutputLimits.js +78 -0
- package/dist/client/context/toolPairRepair.js +66 -0
- package/dist/client/core/analytics.js +88 -0
- package/dist/client/core/baseProvider.js +1385 -0
- package/dist/client/core/constants.js +140 -0
- package/dist/client/core/conversationMemoryFactory.js +141 -0
- package/dist/client/core/conversationMemoryInitializer.js +128 -0
- package/dist/client/core/conversationMemoryManager.js +344 -0
- package/dist/client/core/dynamicModels.js +358 -0
- package/dist/client/core/evaluation.js +309 -0
- package/dist/client/core/evaluationProviders.js +248 -0
- package/dist/client/core/factory.js +412 -0
- package/dist/client/core/infrastructure/baseError.js +22 -0
- package/dist/client/core/infrastructure/baseFactory.js +54 -0
- package/dist/client/core/infrastructure/baseRegistry.js +49 -0
- package/dist/client/core/infrastructure/index.js +5 -0
- package/dist/client/core/infrastructure/retry.js +20 -0
- package/dist/client/core/infrastructure/typedEventEmitter.js +23 -0
- package/dist/client/core/modelConfiguration.js +851 -0
- package/dist/client/core/modules/GenerationHandler.js +588 -0
- package/dist/client/core/modules/MessageBuilder.js +273 -0
- package/dist/client/core/modules/StreamHandler.js +185 -0
- package/dist/client/core/modules/TelemetryHandler.js +203 -0
- package/dist/client/core/modules/ToolsManager.js +499 -0
- package/dist/client/core/modules/Utilities.js +331 -0
- package/dist/client/core/redisConversationMemoryManager.js +1435 -0
- package/dist/client/core/streamAnalytics.js +131 -0
- package/dist/client/errors.d.ts +299 -0
- package/dist/client/errors.js +552 -0
- package/dist/client/evaluation/contextBuilder.js +134 -0
- package/dist/client/evaluation/index.js +61 -0
- package/dist/client/evaluation/prompts.js +73 -0
- package/dist/client/evaluation/ragasEvaluator.js +110 -0
- package/dist/client/evaluation/retryManager.js +78 -0
- package/dist/client/evaluation/scoring.js +61 -0
- package/dist/client/factories/providerFactory.js +166 -0
- package/dist/client/factories/providerRegistry.js +166 -0
- package/dist/client/features/ppt/constants.js +896 -0
- package/dist/client/features/ppt/contentPlanner.js +529 -0
- package/dist/client/features/ppt/presentationOrchestrator.js +236 -0
- package/dist/client/features/ppt/slideGenerator.js +532 -0
- package/dist/client/features/ppt/slideRenderers.js +2383 -0
- package/dist/client/features/ppt/slideTypeInference.js +405 -0
- package/dist/client/features/ppt/types.js +13 -0
- package/dist/client/features/ppt/utils.js +443 -0
- package/dist/client/files/fileReferenceRegistry.js +1543 -0
- package/dist/client/files/fileTools.js +450 -0
- package/dist/client/files/streamingReader.js +321 -0
- package/dist/client/files/types.js +23 -0
- package/dist/client/hitl/hitlErrors.js +54 -0
- package/dist/client/hitl/hitlManager.js +460 -0
- package/dist/client/httpClient.d.ts +297 -0
- package/dist/client/httpClient.js +837 -0
- package/dist/client/index.d.ts +111 -0
- package/dist/client/index.js +511 -0
- package/dist/client/interceptors.d.ts +283 -0
- package/dist/client/interceptors.js +601 -0
- package/dist/client/mcp/agentExposure.js +356 -0
- package/dist/client/mcp/auth/index.js +11 -0
- package/dist/client/mcp/auth/oauthClientProvider.js +325 -0
- package/dist/client/mcp/auth/tokenStorage.js +134 -0
- package/dist/client/mcp/batching/index.js +10 -0
- package/dist/client/mcp/batching/requestBatcher.js +441 -0
- package/dist/client/mcp/caching/index.js +10 -0
- package/dist/client/mcp/caching/toolCache.js +433 -0
- package/dist/client/mcp/elicitation/elicitationManager.js +376 -0
- package/dist/client/mcp/elicitation/index.js +11 -0
- package/dist/client/mcp/elicitation/types.js +10 -0
- package/dist/client/mcp/elicitationProtocol.js +375 -0
- package/dist/client/mcp/enhancedToolDiscovery.js +481 -0
- package/dist/client/mcp/externalServerManager.js +1478 -0
- package/dist/client/mcp/factory.js +161 -0
- package/dist/client/mcp/flexibleToolValidator.js +161 -0
- package/dist/client/mcp/httpRateLimiter.js +391 -0
- package/dist/client/mcp/httpRetryHandler.js +178 -0
- package/dist/client/mcp/index.js +74 -0
- package/dist/client/mcp/mcpCircuitBreaker.js +427 -0
- package/dist/client/mcp/mcpClientFactory.js +708 -0
- package/dist/client/mcp/mcpRegistryClient.js +488 -0
- package/dist/client/mcp/mcpServerBase.js +373 -0
- package/dist/client/mcp/multiServerManager.js +579 -0
- package/dist/client/mcp/registry.js +158 -0
- package/dist/client/mcp/routing/index.js +10 -0
- package/dist/client/mcp/routing/toolRouter.js +416 -0
- package/dist/client/mcp/serverCapabilities.js +502 -0
- package/dist/client/mcp/servers/agent/directToolsServer.js +150 -0
- package/dist/client/mcp/toolAnnotations.js +239 -0
- package/dist/client/mcp/toolConverter.js +258 -0
- package/dist/client/mcp/toolDiscoveryService.js +798 -0
- package/dist/client/mcp/toolIntegration.js +334 -0
- package/dist/client/mcp/toolRegistry.js +719 -0
- package/dist/client/memory/hippocampusInitializer.js +19 -0
- package/dist/client/memory/memoryRetrievalTools.js +166 -0
- package/dist/client/middleware/builtin/analytics.js +132 -0
- package/dist/client/middleware/builtin/autoEvaluation.js +203 -0
- package/dist/client/middleware/builtin/guardrails.js +109 -0
- package/dist/client/middleware/builtin/lifecycle.js +168 -0
- package/dist/client/middleware/factory.js +327 -0
- package/dist/client/middleware/registry.js +295 -0
- package/dist/client/middleware/utils/guardrailsUtils.js +396 -0
- package/dist/client/models/anthropicModels.js +527 -0
- package/dist/client/neurolink.js +8015 -0
- package/dist/client/observability/exporterRegistry.js +413 -0
- package/dist/client/observability/exporters/arizeExporter.js +138 -0
- package/dist/client/observability/exporters/baseExporter.js +190 -0
- package/dist/client/observability/exporters/braintrustExporter.js +154 -0
- package/dist/client/observability/exporters/datadogExporter.js +196 -0
- package/dist/client/observability/exporters/laminarExporter.js +302 -0
- package/dist/client/observability/exporters/langfuseExporter.js +209 -0
- package/dist/client/observability/exporters/langsmithExporter.js +143 -0
- package/dist/client/observability/exporters/otelExporter.js +164 -0
- package/dist/client/observability/exporters/posthogExporter.js +287 -0
- package/dist/client/observability/exporters/sentryExporter.js +165 -0
- package/dist/client/observability/index.js +31 -0
- package/dist/client/observability/metricsAggregator.js +556 -0
- package/dist/client/observability/otelBridge.js +131 -0
- package/dist/client/observability/retryPolicy.js +383 -0
- package/dist/client/observability/sampling/samplers.js +216 -0
- package/dist/client/observability/spanProcessor.js +303 -0
- package/dist/client/observability/tokenTracker.js +413 -0
- package/dist/client/observability/types/exporterTypes.js +5 -0
- package/dist/client/observability/types/index.js +4 -0
- package/dist/client/observability/types/spanTypes.js +92 -0
- package/dist/client/observability/utils/safeMetadata.js +25 -0
- package/dist/client/observability/utils/spanSerializer.js +292 -0
- package/dist/client/processors/archive/ArchiveProcessor.js +1308 -0
- package/dist/client/processors/base/BaseFileProcessor.js +614 -0
- package/dist/client/processors/base/types.js +82 -0
- package/dist/client/processors/config/fileTypes.js +520 -0
- package/dist/client/processors/config/index.js +92 -0
- package/dist/client/processors/config/languageMap.js +410 -0
- package/dist/client/processors/config/mimeTypes.js +363 -0
- package/dist/client/processors/config/sizeLimits.js +258 -0
- package/dist/client/processors/document/ExcelProcessor.js +590 -0
- package/dist/client/processors/document/OpenDocumentProcessor.js +212 -0
- package/dist/client/processors/document/PptxProcessor.js +157 -0
- package/dist/client/processors/document/RtfProcessor.js +361 -0
- package/dist/client/processors/document/WordProcessor.js +353 -0
- package/dist/client/processors/errors/FileErrorCode.js +255 -0
- package/dist/client/processors/errors/errorHelpers.js +386 -0
- package/dist/client/processors/errors/errorSerializer.js +507 -0
- package/dist/client/processors/errors/index.js +49 -0
- package/dist/client/processors/markup/SvgProcessor.js +240 -0
- package/dist/client/processors/media/AudioProcessor.js +707 -0
- package/dist/client/processors/media/VideoProcessor.js +1045 -0
- package/dist/client/providers/amazonBedrock.js +1512 -0
- package/dist/client/providers/amazonSagemaker.js +162 -0
- package/dist/client/providers/anthropic.js +831 -0
- package/dist/client/providers/azureOpenai.js +143 -0
- package/dist/client/providers/googleAiStudio.js +1200 -0
- package/dist/client/providers/googleNativeGemini3.js +543 -0
- package/dist/client/providers/googleVertex.js +2936 -0
- package/dist/client/providers/huggingFace.js +315 -0
- package/dist/client/providers/litellm.js +488 -0
- package/dist/client/providers/mistral.js +157 -0
- package/dist/client/providers/ollama.js +1579 -0
- package/dist/client/providers/openAI.js +627 -0
- package/dist/client/providers/openRouter.js +543 -0
- package/dist/client/providers/openaiCompatible.js +290 -0
- package/dist/client/providers/providerTypeUtils.js +46 -0
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +215 -0
- package/dist/client/providers/sagemaker/client.js +472 -0
- package/dist/client/providers/sagemaker/config.js +317 -0
- package/dist/client/providers/sagemaker/detection.js +606 -0
- package/dist/client/providers/sagemaker/error-constants.js +227 -0
- package/dist/client/providers/sagemaker/errors.js +299 -0
- package/dist/client/providers/sagemaker/language-model.js +775 -0
- package/dist/client/providers/sagemaker/parsers.js +634 -0
- package/dist/client/providers/sagemaker/streaming.js +331 -0
- package/dist/client/providers/sagemaker/structured-parser.js +625 -0
- package/dist/client/proxy/accountQuota.js +162 -0
- package/dist/client/proxy/claudeFormat.js +595 -0
- package/dist/client/proxy/modelRouter.js +29 -0
- package/dist/client/proxy/oauthFetch.js +367 -0
- package/dist/client/proxy/proxyFetch.js +586 -0
- package/dist/client/proxy/requestLogger.js +207 -0
- package/dist/client/proxy/tokenRefresh.js +124 -0
- package/dist/client/proxy/usageStats.js +74 -0
- package/dist/client/proxy/utils/noProxyUtils.js +149 -0
- package/dist/client/rag/ChunkerFactory.js +320 -0
- package/dist/client/rag/ChunkerRegistry.js +421 -0
- package/dist/client/rag/chunkers/BaseChunker.js +143 -0
- package/dist/client/rag/chunkers/CharacterChunker.js +28 -0
- package/dist/client/rag/chunkers/HTMLChunker.js +38 -0
- package/dist/client/rag/chunkers/JSONChunker.js +68 -0
- package/dist/client/rag/chunkers/LaTeXChunker.js +63 -0
- package/dist/client/rag/chunkers/MarkdownChunker.js +306 -0
- package/dist/client/rag/chunkers/RecursiveChunker.js +139 -0
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +138 -0
- package/dist/client/rag/chunkers/SentenceChunker.js +66 -0
- package/dist/client/rag/chunkers/TokenChunker.js +61 -0
- package/dist/client/rag/chunkers/index.js +15 -0
- package/dist/client/rag/chunking/characterChunker.js +142 -0
- package/dist/client/rag/chunking/chunkerRegistry.js +194 -0
- package/dist/client/rag/chunking/htmlChunker.js +247 -0
- package/dist/client/rag/chunking/index.js +17 -0
- package/dist/client/rag/chunking/jsonChunker.js +281 -0
- package/dist/client/rag/chunking/latexChunker.js +251 -0
- package/dist/client/rag/chunking/markdownChunker.js +373 -0
- package/dist/client/rag/chunking/recursiveChunker.js +148 -0
- package/dist/client/rag/chunking/semanticChunker.js +306 -0
- package/dist/client/rag/chunking/sentenceChunker.js +230 -0
- package/dist/client/rag/chunking/tokenChunker.js +183 -0
- package/dist/client/rag/document/MDocument.js +392 -0
- package/dist/client/rag/document/index.js +5 -0
- package/dist/client/rag/document/loaders.js +500 -0
- package/dist/client/rag/errors/RAGError.js +274 -0
- package/dist/client/rag/errors/index.js +6 -0
- package/dist/client/rag/graphRag/graphRAG.js +401 -0
- package/dist/client/rag/graphRag/index.js +4 -0
- package/dist/client/rag/index.js +141 -0
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +418 -0
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +362 -0
- package/dist/client/rag/metadata/index.js +9 -0
- package/dist/client/rag/metadata/metadataExtractor.js +280 -0
- package/dist/client/rag/pipeline/RAGPipeline.js +436 -0
- package/dist/client/rag/pipeline/contextAssembly.js +341 -0
- package/dist/client/rag/pipeline/index.js +5 -0
- package/dist/client/rag/ragIntegration.js +321 -0
- package/dist/client/rag/reranker/RerankerFactory.js +430 -0
- package/dist/client/rag/reranker/RerankerRegistry.js +402 -0
- package/dist/client/rag/reranker/index.js +9 -0
- package/dist/client/rag/reranker/reranker.js +277 -0
- package/dist/client/rag/resilience/CircuitBreaker.js +431 -0
- package/dist/client/rag/resilience/RetryHandler.js +304 -0
- package/dist/client/rag/resilience/index.js +7 -0
- package/dist/client/rag/retrieval/hybridSearch.js +335 -0
- package/dist/client/rag/retrieval/index.js +5 -0
- package/dist/client/rag/retrieval/vectorQueryTool.js +307 -0
- package/dist/client/rag/types.js +8 -0
- package/dist/client/reactHooks.d.ts +239 -0
- package/dist/client/reactHooks.tsx +1483 -0
- package/dist/client/sdk/toolRegistration.js +377 -0
- package/dist/client/server/abstract/baseServerAdapter.js +575 -0
- package/dist/client/server/adapters/expressAdapter.js +486 -0
- package/dist/client/server/adapters/fastifyAdapter.js +472 -0
- package/dist/client/server/adapters/honoAdapter.js +632 -0
- package/dist/client/server/adapters/koaAdapter.js +510 -0
- package/dist/client/server/errors.js +486 -0
- package/dist/client/server/factory/serverAdapterFactory.js +160 -0
- package/dist/client/server/index.js +108 -0
- package/dist/client/server/middleware/abortSignal.js +111 -0
- package/dist/client/server/middleware/auth.js +388 -0
- package/dist/client/server/middleware/cache.js +359 -0
- package/dist/client/server/middleware/common.js +281 -0
- package/dist/client/server/middleware/deprecation.js +190 -0
- package/dist/client/server/middleware/mcpBodyAttachment.js +63 -0
- package/dist/client/server/middleware/rateLimit.js +227 -0
- package/dist/client/server/middleware/validation.js +388 -0
- package/dist/client/server/openapi/generator.js +398 -0
- package/dist/client/server/openapi/index.js +36 -0
- package/dist/client/server/openapi/schemas.js +695 -0
- package/dist/client/server/openapi/templates.js +374 -0
- package/dist/client/server/routes/agentRoutes.js +171 -0
- package/dist/client/server/routes/claudeProxyRoutes.js +1600 -0
- package/dist/client/server/routes/healthRoutes.js +187 -0
- package/dist/client/server/routes/index.js +57 -0
- package/dist/client/server/routes/mcpRoutes.js +342 -0
- package/dist/client/server/routes/memoryRoutes.js +350 -0
- package/dist/client/server/routes/openApiRoutes.js +126 -0
- package/dist/client/server/routes/toolRoutes.js +199 -0
- package/dist/client/server/streaming/dataStream.js +486 -0
- package/dist/client/server/streaming/index.js +11 -0
- package/dist/client/server/types.js +67 -0
- package/dist/client/server/utils/redaction.js +334 -0
- package/dist/client/server/utils/validation.js +243 -0
- package/dist/client/server/websocket/WebSocketHandler.js +383 -0
- package/dist/client/server/websocket/index.js +4 -0
- package/dist/client/services/server/ai/observability/instrumentation.js +808 -0
- package/dist/client/sseClient.d.ts +156 -0
- package/dist/client/sseClient.js +545 -0
- package/dist/client/streamingClient.d.ts +327 -0
- package/dist/client/streamingClient.js +917 -0
- package/dist/client/telemetry/attributes.js +100 -0
- package/dist/client/telemetry/index.js +26 -0
- package/dist/client/telemetry/telemetryService.js +308 -0
- package/dist/client/telemetry/tracers.js +17 -0
- package/dist/client/telemetry/withSpan.js +34 -0
- package/dist/client/types/actionTypes.js +6 -0
- package/dist/client/types/analytics.js +5 -0
- package/dist/client/types/authTypes.js +8 -0
- package/dist/client/types/circuitBreakerErrors.js +34 -0
- package/dist/client/types/cli.js +21 -0
- package/dist/client/types/clientTypes.js +10 -0
- package/dist/client/types/common.js +51 -0
- package/dist/client/types/configTypes.js +49 -0
- package/dist/client/types/content.js +19 -0
- package/dist/client/types/contextTypes.js +400 -0
- package/dist/client/types/conversation.js +47 -0
- package/dist/client/types/conversationMemoryInterface.js +6 -0
- package/dist/client/types/domainTypes.js +5 -0
- package/dist/client/types/errors.js +167 -0
- package/dist/client/types/evaluation.js +5 -0
- package/dist/client/types/evaluationProviders.js +5 -0
- package/dist/client/types/evaluationTypes.js +1 -0
- package/dist/client/types/externalMcp.js +6 -0
- package/dist/client/types/fileReferenceTypes.js +8 -0
- package/dist/client/types/fileTypes.js +4 -0
- package/dist/client/types/generateTypes.js +1 -0
- package/dist/client/types/guardrails.js +1 -0
- package/dist/client/types/hitlTypes.js +8 -0
- package/dist/client/types/index.js +57 -0
- package/dist/client/types/mcpTypes.js +5 -0
- package/dist/client/types/middlewareTypes.js +1 -0
- package/dist/client/types/modelTypes.js +30 -0
- package/dist/client/types/multimodal.js +135 -0
- package/dist/client/types/observability.js +6 -0
- package/dist/client/types/pptTypes.js +82 -0
- package/dist/client/types/providers.js +111 -0
- package/dist/client/types/proxyTypes.js +16 -0
- package/dist/client/types/ragTypes.js +7 -0
- package/dist/client/types/sdkTypes.js +8 -0
- package/dist/client/types/serviceTypes.js +5 -0
- package/dist/client/types/streamTypes.js +1 -0
- package/dist/client/types/subscriptionTypes.js +9 -0
- package/dist/client/types/taskClassificationTypes.js +5 -0
- package/dist/client/types/tools.js +24 -0
- package/dist/client/types/ttsTypes.js +57 -0
- package/dist/client/types/typeAliases.js +48 -0
- package/dist/client/types/utilities.js +4 -0
- package/dist/client/types/workflowTypes.js +30 -0
- package/dist/client/utils/async/withTimeout.js +98 -0
- package/dist/client/utils/asyncMutex.js +60 -0
- package/dist/client/utils/conversationMemory.js +431 -0
- package/dist/client/utils/csvProcessor.js +846 -0
- package/dist/client/utils/errorHandling.js +936 -0
- package/dist/client/utils/evaluationUtils.js +131 -0
- package/dist/client/utils/factoryProcessing.js +589 -0
- package/dist/client/utils/fileDetector.js +2161 -0
- package/dist/client/utils/imageCache.js +376 -0
- package/dist/client/utils/imageProcessor.js +704 -0
- package/dist/client/utils/logger.js +491 -0
- package/dist/client/utils/mcpDefaults.js +134 -0
- package/dist/client/utils/messageBuilder.js +1653 -0
- package/dist/client/utils/modelAliasResolver.js +54 -0
- package/dist/client/utils/modelDetection.js +80 -0
- package/dist/client/utils/modelRouter.js +292 -0
- package/dist/client/utils/multimodalOptionsBuilder.js +65 -0
- package/dist/client/utils/observabilityHelpers.js +47 -0
- package/dist/client/utils/parameterValidation.js +966 -0
- package/dist/client/utils/pdfProcessor.js +410 -0
- package/dist/client/utils/performance.js +222 -0
- package/dist/client/utils/pricing.js +340 -0
- package/dist/client/utils/promptRedaction.js +62 -0
- package/dist/client/utils/providerConfig.js +1009 -0
- package/dist/client/utils/providerHealth.js +1237 -0
- package/dist/client/utils/providerRetry.js +112 -0
- package/dist/client/utils/providerUtils.js +434 -0
- package/dist/client/utils/rateLimiter.js +200 -0
- package/dist/client/utils/redis.js +368 -0
- package/dist/client/utils/retryHandler.js +269 -0
- package/dist/client/utils/retryability.js +22 -0
- package/dist/client/utils/sanitizers/svg.js +481 -0
- package/dist/client/utils/schemaConversion.js +255 -0
- package/dist/client/utils/taskClassificationUtils.js +149 -0
- package/dist/client/utils/taskClassifier.js +94 -0
- package/dist/client/utils/thinkingConfig.js +104 -0
- package/dist/client/utils/timeout.js +359 -0
- package/dist/client/utils/tokenEstimation.js +142 -0
- package/dist/client/utils/tokenLimits.js +125 -0
- package/dist/client/utils/tokenUtils.js +239 -0
- package/dist/client/utils/toolUtils.js +75 -0
- package/dist/client/utils/transformationUtils.js +554 -0
- package/dist/client/utils/ttsProcessor.js +286 -0
- package/dist/client/utils/typeUtils.js +97 -0
- package/dist/client/utils/videoAnalysisProcessor.js +67 -0
- package/dist/client/workflow/config.js +398 -0
- package/dist/client/workflow/core/ensembleExecutor.js +407 -0
- package/dist/client/workflow/core/judgeScorer.js +544 -0
- package/dist/client/workflow/core/responseConditioner.js +225 -0
- package/dist/client/workflow/core/types/conditionerTypes.js +7 -0
- package/dist/client/workflow/core/types/ensembleTypes.js +7 -0
- package/dist/client/workflow/core/types/index.js +7 -0
- package/dist/client/workflow/core/types/judgeTypes.js +7 -0
- package/dist/client/workflow/core/types/layerTypes.js +7 -0
- package/dist/client/workflow/core/types/registryTypes.js +7 -0
- package/dist/client/workflow/core/workflowRegistry.js +304 -0
- package/dist/client/workflow/core/workflowRunner.js +586 -0
- package/dist/client/workflow/index.js +50 -0
- package/dist/client/workflow/types.js +9 -0
- package/dist/client/workflow/utils/types/index.js +7 -0
- package/dist/client/workflow/utils/workflowMetrics.js +311 -0
- package/dist/client/workflow/utils/workflowValidation.js +420 -0
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +366 -0
- package/dist/client/workflow/workflows/consensusWorkflow.js +192 -0
- package/dist/client/workflow/workflows/fallbackWorkflow.js +225 -0
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +351 -0
- package/dist/client/wsClient.d.ts +130 -0
- package/dist/client/wsClient.js +369 -0
- package/dist/config/configManager.js +2 -2
- package/dist/constants/contextWindows.js +15 -13
- package/dist/constants/enums.d.ts +10 -16
- package/dist/constants/enums.js +12 -18
- package/dist/constants/index.d.ts +0 -10
- package/dist/constants/index.js +1 -1
- package/dist/constants/tokens.d.ts +29 -16
- package/dist/constants/tokens.js +23 -16
- package/dist/core/baseProvider.d.ts +5 -5
- package/dist/core/baseProvider.js +6 -6
- package/dist/core/constants.js +6 -1
- package/dist/core/dynamicModels.js +10 -6
- package/dist/core/evaluationProviders.js +1 -1
- package/dist/core/infrastructure/baseError.d.ts +1 -1
- package/dist/core/infrastructure/baseFactory.d.ts +1 -6
- package/dist/core/infrastructure/baseRegistry.d.ts +6 -5
- package/dist/core/infrastructure/index.d.ts +6 -4
- package/dist/core/infrastructure/index.js +2 -2
- package/dist/core/modelConfiguration.js +3 -1
- package/dist/core/modules/GenerationHandler.d.ts +3 -3
- package/dist/core/modules/GenerationHandler.js +49 -41
- package/dist/core/modules/MessageBuilder.d.ts +5 -5
- package/dist/core/modules/MessageBuilder.js +4 -6
- package/dist/core/modules/StreamHandler.js +26 -12
- package/dist/core/modules/TelemetryHandler.d.ts +4 -6
- package/dist/core/modules/TelemetryHandler.js +7 -6
- package/dist/core/modules/ToolsManager.d.ts +2 -12
- package/dist/core/modules/ToolsManager.js +20 -4
- package/dist/core/modules/Utilities.js +3 -1
- package/dist/core/redisConversationMemoryManager.js +3 -3
- package/dist/core/streamAnalytics.js +23 -9
- package/dist/evaluation/contextBuilder.d.ts +2 -2
- package/dist/evaluation/contextBuilder.js +2 -2
- package/dist/evaluation/index.d.ts +2 -2
- package/dist/evaluation/retryManager.js +1 -1
- package/dist/factories/providerFactory.js +2 -2
- package/dist/features/ppt/constants.js +1 -1
- package/dist/features/ppt/presentationOrchestrator.js +7 -3
- package/dist/features/ppt/slideGenerator.d.ts +2 -1
- package/dist/features/ppt/slideGenerator.js +6 -1
- package/dist/files/fileTools.d.ts +16 -247
- package/dist/files/fileTools.js +16 -15
- package/dist/index.d.ts +5 -3
- package/dist/index.js +20 -3
- package/dist/lib/adapters/providerImageAdapter.js +13 -22
- package/dist/lib/adapters/video/videoAnalyzer.d.ts +4 -4
- package/dist/lib/adapters/video/videoAnalyzer.js +3 -3
- package/dist/lib/agent/directTools.d.ts +20 -289
- package/dist/lib/agent/directTools.js +11 -10
- package/dist/lib/auth/accountPool.d.ts +68 -0
- package/dist/lib/auth/accountPool.js +179 -0
- package/dist/lib/auth/anthropicOAuth.d.ts +15 -5
- package/dist/lib/auth/anthropicOAuth.js +117 -57
- package/dist/lib/auth/index.d.ts +7 -5
- package/dist/lib/auth/index.js +6 -2
- package/dist/lib/auth/tokenStore.d.ts +71 -27
- package/dist/lib/auth/tokenStore.js +342 -64
- package/dist/lib/client/aiSdkAdapter.d.ts +196 -0
- package/dist/lib/client/aiSdkAdapter.js +488 -0
- package/dist/lib/client/auth.d.ts +248 -0
- package/dist/lib/client/auth.js +474 -0
- package/dist/lib/client/errors.d.ts +299 -0
- package/dist/lib/client/errors.js +553 -0
- package/dist/lib/client/httpClient.d.ts +297 -0
- package/dist/lib/client/httpClient.js +838 -0
- package/dist/lib/client/index.d.ts +111 -0
- package/dist/lib/client/index.js +173 -0
- package/dist/lib/client/interceptors.d.ts +283 -0
- package/dist/lib/client/interceptors.js +602 -0
- package/dist/lib/client/reactHooks.d.ts +239 -0
- package/dist/lib/client/reactHooks.js +1160 -0
- package/dist/lib/client/sseClient.d.ts +156 -0
- package/dist/lib/client/sseClient.js +546 -0
- package/dist/lib/client/streamingClient.d.ts +327 -0
- package/dist/lib/client/streamingClient.js +918 -0
- package/dist/lib/client/wsClient.d.ts +130 -0
- package/dist/lib/client/wsClient.js +370 -0
- package/dist/lib/config/configManager.js +2 -2
- package/dist/lib/constants/contextWindows.js +15 -13
- package/dist/lib/constants/enums.d.ts +10 -16
- package/dist/lib/constants/enums.js +12 -18
- package/dist/lib/constants/index.d.ts +0 -10
- package/dist/lib/constants/index.js +1 -1
- package/dist/lib/constants/tokens.d.ts +29 -16
- package/dist/lib/constants/tokens.js +23 -16
- package/dist/lib/core/baseProvider.d.ts +5 -5
- package/dist/lib/core/baseProvider.js +6 -6
- package/dist/lib/core/constants.js +6 -1
- package/dist/lib/core/dynamicModels.js +10 -6
- package/dist/lib/core/evaluationProviders.js +1 -1
- package/dist/lib/core/infrastructure/baseError.d.ts +1 -1
- package/dist/lib/core/infrastructure/baseFactory.d.ts +1 -6
- package/dist/lib/core/infrastructure/baseRegistry.d.ts +6 -5
- package/dist/lib/core/infrastructure/index.d.ts +6 -4
- package/dist/lib/core/infrastructure/index.js +2 -2
- package/dist/lib/core/modelConfiguration.js +3 -1
- package/dist/lib/core/modules/GenerationHandler.d.ts +3 -3
- package/dist/lib/core/modules/GenerationHandler.js +49 -41
- package/dist/lib/core/modules/MessageBuilder.d.ts +5 -5
- package/dist/lib/core/modules/MessageBuilder.js +4 -6
- package/dist/lib/core/modules/StreamHandler.js +26 -12
- package/dist/lib/core/modules/TelemetryHandler.d.ts +4 -6
- package/dist/lib/core/modules/TelemetryHandler.js +7 -6
- package/dist/lib/core/modules/ToolsManager.d.ts +2 -12
- package/dist/lib/core/modules/ToolsManager.js +20 -4
- package/dist/lib/core/modules/Utilities.js +3 -1
- package/dist/lib/core/redisConversationMemoryManager.js +3 -3
- package/dist/lib/core/streamAnalytics.js +23 -9
- package/dist/lib/evaluation/contextBuilder.d.ts +2 -2
- package/dist/lib/evaluation/contextBuilder.js +2 -2
- package/dist/lib/evaluation/index.d.ts +2 -2
- package/dist/lib/evaluation/retryManager.js +1 -1
- package/dist/lib/factories/providerFactory.js +2 -2
- package/dist/lib/features/ppt/constants.js +1 -1
- package/dist/lib/features/ppt/presentationOrchestrator.js +7 -3
- package/dist/lib/features/ppt/slideGenerator.d.ts +2 -1
- package/dist/lib/features/ppt/slideGenerator.js +6 -1
- package/dist/lib/files/fileTools.d.ts +16 -247
- package/dist/lib/files/fileTools.js +16 -15
- package/dist/lib/index.d.ts +5 -3
- package/dist/lib/index.js +20 -3
- package/dist/lib/mcp/batching/requestBatcher.js +1 -1
- package/dist/lib/mcp/externalServerManager.js +5 -2
- package/dist/lib/mcp/factory.js +1 -1
- package/dist/lib/mcp/index.d.ts +1 -1
- package/dist/lib/mcp/index.js +1 -1
- package/dist/lib/mcp/mcpCircuitBreaker.d.ts +1 -0
- package/dist/lib/mcp/mcpCircuitBreaker.js +30 -4
- package/dist/lib/mcp/mcpClientFactory.js +33 -4
- package/dist/lib/mcp/toolDiscoveryService.js +52 -5
- package/dist/lib/mcp/toolRegistry.js +7 -1
- package/dist/lib/memory/memoryRetrievalTools.d.ts +5 -89
- package/dist/lib/memory/memoryRetrievalTools.js +1 -1
- package/dist/lib/middleware/builtin/analytics.js +3 -0
- package/dist/lib/middleware/builtin/autoEvaluation.js +46 -24
- package/dist/lib/middleware/builtin/guardrails.js +4 -0
- package/dist/lib/middleware/builtin/lifecycle.js +10 -6
- package/dist/lib/middleware/factory.d.ts +3 -3
- package/dist/lib/middleware/factory.js +3 -2
- package/dist/lib/middleware/index.d.ts +1 -1
- package/dist/lib/middleware/registry.d.ts +2 -2
- package/dist/lib/middleware/registry.js +1 -0
- package/dist/lib/middleware/utils/guardrailsUtils.d.ts +5 -6
- package/dist/lib/middleware/utils/guardrailsUtils.js +15 -6
- package/dist/lib/neurolink.d.ts +9 -20
- package/dist/lib/neurolink.js +278 -186
- package/dist/lib/observability/retryPolicy.d.ts +2 -13
- package/dist/lib/observability/sampling/samplers.d.ts +2 -11
- package/dist/lib/observability/spanProcessor.d.ts +2 -14
- package/dist/lib/processors/base/BaseFileProcessor.js +1 -1
- package/dist/lib/processors/document/OpenDocumentProcessor.js +5 -3
- package/dist/lib/processors/media/VideoProcessor.js +157 -101
- package/dist/lib/providers/amazonBedrock.js +12 -5
- package/dist/lib/providers/amazonSagemaker.d.ts +5 -5
- package/dist/lib/providers/amazonSagemaker.js +6 -2
- package/dist/lib/providers/anthropic.d.ts +3 -3
- package/dist/lib/providers/anthropic.js +23 -192
- package/dist/lib/providers/anthropicBaseProvider.d.ts +4 -4
- package/dist/lib/providers/anthropicBaseProvider.js +24 -13
- package/dist/lib/providers/azureOpenai.d.ts +2 -2
- package/dist/lib/providers/azureOpenai.js +6 -6
- package/dist/lib/providers/googleAiStudio.d.ts +2 -2
- package/dist/lib/providers/googleAiStudio.js +15 -7
- package/dist/lib/providers/googleNativeGemini3.d.ts +3 -54
- package/dist/lib/providers/googleNativeGemini3.js +14 -10
- package/dist/lib/providers/googleVertex.d.ts +6 -6
- package/dist/lib/providers/googleVertex.js +32 -26
- package/dist/lib/providers/huggingFace.d.ts +4 -4
- package/dist/lib/providers/huggingFace.js +15 -5
- package/dist/lib/providers/litellm.d.ts +4 -4
- package/dist/lib/providers/litellm.js +54 -42
- package/dist/lib/providers/mistral.d.ts +2 -2
- package/dist/lib/providers/mistral.js +5 -4
- package/dist/lib/providers/ollama.d.ts +7 -4
- package/dist/lib/providers/ollama.js +30 -8
- package/dist/lib/providers/openAI.d.ts +2 -2
- package/dist/lib/providers/openAI.js +46 -21
- package/dist/lib/providers/openRouter.d.ts +4 -4
- package/dist/lib/providers/openRouter.js +63 -35
- package/dist/lib/providers/openaiCompatible.d.ts +2 -2
- package/dist/lib/providers/openaiCompatible.js +18 -9
- package/dist/lib/providers/providerTypeUtils.d.ts +28 -0
- package/dist/lib/providers/providerTypeUtils.js +47 -0
- package/dist/lib/providers/sagemaker/config.js +5 -5
- package/dist/lib/providers/sagemaker/language-model.d.ts +23 -13
- package/dist/lib/providers/sagemaker/language-model.js +20 -8
- package/dist/lib/proxy/accountQuota.d.ts +33 -0
- package/dist/lib/proxy/accountQuota.js +163 -0
- package/dist/lib/proxy/claudeFormat.d.ts +143 -0
- package/dist/lib/proxy/claudeFormat.js +596 -0
- package/dist/lib/proxy/cloaking/index.d.ts +44 -0
- package/dist/lib/proxy/cloaking/index.js +87 -0
- package/dist/lib/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
- package/dist/lib/proxy/cloaking/plugins/headerScrubber.js +87 -0
- package/dist/lib/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
- package/dist/lib/proxy/cloaking/plugins/sessionIdentity.js +66 -0
- package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
- package/dist/lib/proxy/cloaking/plugins/systemPromptInjector.js +84 -0
- package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
- package/dist/lib/proxy/cloaking/plugins/tlsFingerprint.js +39 -0
- package/dist/lib/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
- package/dist/lib/proxy/cloaking/plugins/wordObfuscator.js +122 -0
- package/dist/lib/proxy/cloaking/types.d.ts +1 -0
- package/dist/lib/proxy/cloaking/types.js +2 -0
- package/dist/lib/proxy/modelRouter.d.ts +10 -0
- package/dist/lib/proxy/modelRouter.js +30 -0
- package/dist/lib/proxy/oauthFetch.d.ts +36 -0
- package/dist/lib/proxy/oauthFetch.js +368 -0
- package/dist/lib/proxy/proxyConfig.d.ts +42 -0
- package/dist/lib/proxy/proxyConfig.js +500 -0
- package/dist/lib/proxy/proxyFetch.js +2 -1
- package/dist/lib/proxy/requestLogger.d.ts +50 -0
- package/dist/lib/proxy/requestLogger.js +208 -0
- package/dist/lib/proxy/tokenRefresh.d.ts +4 -0
- package/dist/lib/proxy/tokenRefresh.js +125 -0
- package/dist/lib/proxy/usageStats.d.ts +13 -0
- package/dist/lib/proxy/usageStats.js +75 -0
- package/dist/lib/rag/document/loaders.js +1 -1
- package/dist/lib/rag/pipeline/contextAssembly.d.ts +4 -7
- package/dist/lib/rag/ragIntegration.d.ts +2 -14
- package/dist/lib/rag/ragIntegration.js +1 -1
- package/dist/lib/rag/resilience/CircuitBreaker.d.ts +5 -44
- package/dist/lib/rag/resilience/RetryHandler.js +1 -1
- package/dist/lib/rag/retrieval/vectorQueryTool.d.ts +1 -9
- package/dist/lib/rag/retrieval/vectorQueryTool.js +1 -1
- package/dist/lib/sdk/toolRegistration.js +12 -1
- package/dist/lib/server/abstract/baseServerAdapter.js +2 -2
- package/dist/lib/server/adapters/honoAdapter.d.ts +6 -0
- package/dist/lib/server/adapters/honoAdapter.js +76 -10
- package/dist/lib/server/middleware/cache.js +3 -0
- package/dist/lib/server/routes/claudeProxyRoutes.d.ts +44 -0
- package/dist/lib/server/routes/claudeProxyRoutes.js +1601 -0
- package/dist/lib/server/routes/healthRoutes.js +18 -1
- package/dist/lib/server/routes/index.d.ts +7 -0
- package/dist/lib/server/routes/index.js +8 -0
- package/dist/lib/server/streaming/dataStream.d.ts +1 -5
- package/dist/lib/server/streaming/dataStream.js +3 -0
- package/dist/lib/server/utils/validation.d.ts +24 -124
- package/dist/lib/server/utils/validation.js +2 -2
- package/dist/lib/services/server/ai/observability/instrumentation.js +4 -0
- package/dist/lib/telemetry/attributes.d.ts +38 -0
- package/dist/lib/telemetry/attributes.js +40 -0
- package/dist/lib/telemetry/tracers.d.ts +1 -0
- package/dist/lib/telemetry/tracers.js +1 -0
- package/dist/lib/types/authTypes.d.ts +56 -0
- package/dist/lib/types/authTypes.js +9 -0
- package/dist/lib/types/circuitBreakerErrors.d.ts +30 -0
- package/dist/lib/types/circuitBreakerErrors.js +35 -0
- package/dist/lib/types/cli.d.ts +258 -0
- package/dist/lib/types/clientTypes.d.ts +1050 -0
- package/dist/lib/types/clientTypes.js +11 -0
- package/dist/lib/types/common.d.ts +123 -0
- package/dist/lib/types/configTypes.d.ts +49 -0
- package/dist/lib/types/configTypes.js +4 -0
- package/dist/lib/types/conversation.d.ts +0 -5
- package/dist/lib/types/evaluationTypes.d.ts +2 -2
- package/dist/lib/types/fileTypes.d.ts +47 -0
- package/dist/lib/types/generateTypes.d.ts +7 -3
- package/dist/lib/types/guardrails.d.ts +2 -2
- package/dist/lib/types/index.d.ts +4 -1
- package/dist/lib/types/index.js +5 -0
- package/dist/lib/types/middlewareTypes.d.ts +3 -3
- package/dist/lib/types/modelTypes.d.ts +7 -97
- package/dist/lib/types/modelTypes.js +3 -3
- package/dist/lib/types/observability.d.ts +37 -0
- package/dist/lib/types/providers.d.ts +107 -0
- package/dist/lib/types/proxyTypes.d.ts +536 -0
- package/dist/lib/types/proxyTypes.js +17 -0
- package/dist/lib/types/ragTypes.d.ts +49 -1
- package/dist/lib/types/streamTypes.d.ts +37 -13
- package/dist/lib/types/subscriptionTypes.d.ts +77 -0
- package/dist/lib/types/subscriptionTypes.js +2 -0
- package/dist/lib/types/tools.d.ts +45 -1
- package/dist/lib/types/typeAliases.d.ts +8 -0
- package/dist/lib/types/typeAliases.js +1 -0
- package/dist/lib/utils/async/retry.d.ts +4 -33
- package/dist/lib/utils/asyncMutex.d.ts +14 -0
- package/dist/lib/utils/asyncMutex.js +61 -0
- package/dist/lib/utils/errorHandling.d.ts +2 -1
- package/dist/lib/utils/errorHandling.js +14 -6
- package/dist/lib/utils/fileDetector.d.ts +13 -1
- package/dist/lib/utils/fileDetector.js +114 -32
- package/dist/lib/utils/imageProcessor.js +7 -7
- package/dist/lib/utils/json/safeParse.d.ts +1 -8
- package/dist/lib/utils/mcpDefaults.d.ts +1 -1
- package/dist/lib/utils/mcpDefaults.js +11 -2
- package/dist/lib/utils/messageBuilder.d.ts +5 -5
- package/dist/lib/utils/messageBuilder.js +106 -80
- package/dist/lib/utils/modelChoices.d.ts +1 -8
- package/dist/lib/utils/pdfProcessor.d.ts +1 -25
- package/dist/lib/utils/pdfProcessor.js +5 -4
- package/dist/lib/utils/pricing.js +28 -5
- package/dist/lib/utils/providerHealth.d.ts +1 -1
- package/dist/lib/utils/rateLimiter.d.ts +1 -15
- package/dist/lib/utils/redis.d.ts +1 -1
- package/dist/lib/utils/redis.js +3 -3
- package/dist/lib/utils/sanitizers/filename.d.ts +2 -22
- package/dist/lib/utils/sanitizers/index.d.ts +4 -2
- package/dist/lib/utils/sanitizers/svg.d.ts +1 -11
- package/dist/lib/utils/schemaConversion.js +4 -1
- package/dist/lib/utils/thinkingConfig.d.ts +1 -33
- package/dist/lib/utils/tokenUtils.d.ts +1 -39
- package/dist/lib/utils/videoAnalysisProcessor.d.ts +5 -5
- package/dist/lib/utils/videoAnalysisProcessor.js +2 -2
- package/dist/lib/workflow/config.d.ts +89 -1257
- package/dist/lib/workflow/utils/workflowValidation.js +1 -1
- package/dist/mcp/batching/requestBatcher.js +1 -1
- package/dist/mcp/externalServerManager.js +5 -2
- package/dist/mcp/factory.js +1 -1
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/mcpCircuitBreaker.d.ts +1 -0
- package/dist/mcp/mcpCircuitBreaker.js +30 -4
- package/dist/mcp/mcpClientFactory.js +33 -4
- package/dist/mcp/toolDiscoveryService.js +52 -5
- package/dist/mcp/toolRegistry.js +7 -1
- package/dist/memory/memoryRetrievalTools.d.ts +5 -89
- package/dist/memory/memoryRetrievalTools.js +1 -1
- package/dist/middleware/builtin/analytics.js +3 -0
- package/dist/middleware/builtin/autoEvaluation.js +46 -24
- package/dist/middleware/builtin/guardrails.js +4 -0
- package/dist/middleware/builtin/lifecycle.js +10 -6
- package/dist/middleware/factory.d.ts +3 -3
- package/dist/middleware/factory.js +3 -2
- package/dist/middleware/index.d.ts +1 -1
- package/dist/middleware/registry.d.ts +2 -2
- package/dist/middleware/registry.js +1 -0
- package/dist/middleware/utils/guardrailsUtils.d.ts +5 -6
- package/dist/middleware/utils/guardrailsUtils.js +15 -6
- package/dist/neurolink.d.ts +9 -20
- package/dist/neurolink.js +278 -186
- package/dist/observability/retryPolicy.d.ts +2 -13
- package/dist/observability/sampling/samplers.d.ts +2 -11
- package/dist/observability/spanProcessor.d.ts +2 -14
- package/dist/processors/base/BaseFileProcessor.js +1 -1
- package/dist/processors/document/OpenDocumentProcessor.js +5 -3
- package/dist/processors/media/VideoProcessor.js +157 -101
- package/dist/providers/amazonBedrock.js +12 -5
- package/dist/providers/amazonSagemaker.d.ts +5 -5
- package/dist/providers/amazonSagemaker.js +6 -2
- package/dist/providers/anthropic.d.ts +3 -3
- package/dist/providers/anthropic.js +23 -192
- package/dist/providers/anthropicBaseProvider.d.ts +4 -4
- package/dist/providers/anthropicBaseProvider.js +24 -13
- package/dist/providers/azureOpenai.d.ts +2 -2
- package/dist/providers/azureOpenai.js +6 -6
- package/dist/providers/googleAiStudio.d.ts +2 -2
- package/dist/providers/googleAiStudio.js +15 -7
- package/dist/providers/googleNativeGemini3.d.ts +3 -54
- package/dist/providers/googleNativeGemini3.js +14 -10
- package/dist/providers/googleVertex.d.ts +6 -6
- package/dist/providers/googleVertex.js +32 -26
- package/dist/providers/huggingFace.d.ts +4 -4
- package/dist/providers/huggingFace.js +15 -5
- package/dist/providers/litellm.d.ts +4 -4
- package/dist/providers/litellm.js +54 -42
- package/dist/providers/mistral.d.ts +2 -2
- package/dist/providers/mistral.js +5 -4
- package/dist/providers/ollama.d.ts +7 -4
- package/dist/providers/ollama.js +30 -8
- package/dist/providers/openAI.d.ts +2 -2
- package/dist/providers/openAI.js +46 -21
- package/dist/providers/openRouter.d.ts +4 -4
- package/dist/providers/openRouter.js +63 -35
- package/dist/providers/openaiCompatible.d.ts +2 -2
- package/dist/providers/openaiCompatible.js +18 -9
- package/dist/providers/providerTypeUtils.d.ts +28 -0
- package/dist/providers/providerTypeUtils.js +46 -0
- package/dist/providers/sagemaker/config.js +5 -5
- package/dist/providers/sagemaker/language-model.d.ts +23 -13
- package/dist/providers/sagemaker/language-model.js +20 -8
- package/dist/proxy/accountQuota.d.ts +33 -0
- package/dist/proxy/accountQuota.js +162 -0
- package/dist/proxy/claudeFormat.d.ts +143 -0
- package/dist/proxy/claudeFormat.js +595 -0
- package/dist/proxy/cloaking/index.d.ts +44 -0
- package/dist/proxy/cloaking/index.js +86 -0
- package/dist/proxy/cloaking/plugins/headerScrubber.d.ts +9 -0
- package/dist/proxy/cloaking/plugins/headerScrubber.js +86 -0
- package/dist/proxy/cloaking/plugins/sessionIdentity.d.ts +15 -0
- package/dist/proxy/cloaking/plugins/sessionIdentity.js +65 -0
- package/dist/proxy/cloaking/plugins/systemPromptInjector.d.ts +11 -0
- package/dist/proxy/cloaking/plugins/systemPromptInjector.js +83 -0
- package/dist/proxy/cloaking/plugins/tlsFingerprint.d.ts +14 -0
- package/dist/proxy/cloaking/plugins/tlsFingerprint.js +38 -0
- package/dist/proxy/cloaking/plugins/wordObfuscator.d.ts +9 -0
- package/dist/proxy/cloaking/plugins/wordObfuscator.js +121 -0
- package/dist/proxy/cloaking/types.d.ts +1 -0
- package/dist/proxy/cloaking/types.js +1 -0
- package/dist/proxy/modelRouter.d.ts +10 -0
- package/dist/proxy/modelRouter.js +29 -0
- package/dist/proxy/oauthFetch.d.ts +36 -0
- package/dist/proxy/oauthFetch.js +367 -0
- package/dist/proxy/proxyConfig.d.ts +42 -0
- package/dist/proxy/proxyConfig.js +499 -0
- package/dist/proxy/proxyFetch.js +2 -1
- package/dist/proxy/requestLogger.d.ts +50 -0
- package/dist/proxy/requestLogger.js +207 -0
- package/dist/proxy/tokenRefresh.d.ts +4 -0
- package/dist/proxy/tokenRefresh.js +124 -0
- package/dist/proxy/usageStats.d.ts +13 -0
- package/dist/proxy/usageStats.js +74 -0
- package/dist/rag/document/loaders.js +1 -1
- package/dist/rag/pipeline/contextAssembly.d.ts +4 -7
- package/dist/rag/ragIntegration.d.ts +2 -14
- package/dist/rag/ragIntegration.js +1 -1
- package/dist/rag/resilience/CircuitBreaker.d.ts +5 -44
- package/dist/rag/resilience/RetryHandler.js +1 -1
- package/dist/rag/retrieval/vectorQueryTool.d.ts +1 -9
- package/dist/rag/retrieval/vectorQueryTool.js +1 -1
- package/dist/sdk/toolRegistration.js +12 -1
- package/dist/server/abstract/baseServerAdapter.js +2 -2
- package/dist/server/adapters/honoAdapter.d.ts +6 -0
- package/dist/server/adapters/honoAdapter.js +76 -10
- package/dist/server/middleware/cache.js +3 -0
- package/dist/server/routes/claudeProxyRoutes.d.ts +44 -0
- package/dist/server/routes/claudeProxyRoutes.js +1600 -0
- package/dist/server/routes/healthRoutes.js +18 -1
- package/dist/server/routes/index.d.ts +7 -0
- package/dist/server/routes/index.js +8 -0
- package/dist/server/streaming/dataStream.d.ts +1 -5
- package/dist/server/streaming/dataStream.js +3 -0
- package/dist/server/utils/validation.d.ts +24 -124
- package/dist/server/utils/validation.js +2 -2
- package/dist/services/server/ai/observability/instrumentation.js +4 -0
- package/dist/telemetry/attributes.d.ts +38 -0
- package/dist/telemetry/attributes.js +40 -0
- package/dist/telemetry/tracers.d.ts +1 -0
- package/dist/telemetry/tracers.js +1 -0
- package/dist/types/authTypes.d.ts +56 -0
- package/dist/types/authTypes.js +8 -0
- package/dist/types/circuitBreakerErrors.d.ts +30 -0
- package/dist/types/circuitBreakerErrors.js +34 -0
- package/dist/types/cli.d.ts +258 -0
- package/dist/types/clientTypes.d.ts +1050 -0
- package/dist/types/clientTypes.js +10 -0
- package/dist/types/common.d.ts +123 -0
- package/dist/types/configTypes.d.ts +49 -0
- package/dist/types/configTypes.js +4 -0
- package/dist/types/conversation.d.ts +0 -5
- package/dist/types/evaluationTypes.d.ts +2 -2
- package/dist/types/fileTypes.d.ts +47 -0
- package/dist/types/generateTypes.d.ts +7 -3
- package/dist/types/guardrails.d.ts +2 -2
- package/dist/types/index.d.ts +4 -1
- package/dist/types/index.js +5 -0
- package/dist/types/middlewareTypes.d.ts +3 -3
- package/dist/types/modelTypes.d.ts +7 -97
- package/dist/types/modelTypes.js +3 -3
- package/dist/types/observability.d.ts +37 -0
- package/dist/types/providers.d.ts +107 -0
- package/dist/types/proxyTypes.d.ts +536 -0
- package/dist/types/proxyTypes.js +16 -0
- package/dist/types/ragTypes.d.ts +49 -1
- package/dist/types/streamTypes.d.ts +37 -13
- package/dist/types/subscriptionTypes.d.ts +77 -0
- package/dist/types/subscriptionTypes.js +2 -0
- package/dist/types/tools.d.ts +45 -1
- package/dist/types/typeAliases.d.ts +8 -0
- package/dist/types/typeAliases.js +1 -0
- package/dist/utils/async/retry.d.ts +4 -33
- package/dist/utils/asyncMutex.d.ts +14 -0
- package/dist/utils/asyncMutex.js +60 -0
- package/dist/utils/errorHandling.d.ts +2 -1
- package/dist/utils/errorHandling.js +14 -6
- package/dist/utils/fileDetector.d.ts +13 -1
- package/dist/utils/fileDetector.js +114 -32
- package/dist/utils/imageProcessor.js +7 -7
- package/dist/utils/json/safeParse.d.ts +1 -8
- package/dist/utils/mcpDefaults.d.ts +1 -1
- package/dist/utils/mcpDefaults.js +11 -2
- package/dist/utils/messageBuilder.d.ts +5 -5
- package/dist/utils/messageBuilder.js +106 -80
- package/dist/utils/modelChoices.d.ts +1 -8
- package/dist/utils/pdfProcessor.d.ts +1 -25
- package/dist/utils/pdfProcessor.js +5 -4
- package/dist/utils/pricing.js +28 -5
- package/dist/utils/rateLimiter.d.ts +1 -15
- package/dist/utils/redis.d.ts +1 -1
- package/dist/utils/redis.js +3 -3
- package/dist/utils/sanitizers/filename.d.ts +2 -22
- package/dist/utils/sanitizers/index.d.ts +4 -2
- package/dist/utils/sanitizers/svg.d.ts +1 -11
- package/dist/utils/schemaConversion.js +4 -1
- package/dist/utils/thinkingConfig.d.ts +1 -33
- package/dist/utils/tokenUtils.d.ts +1 -39
- package/dist/utils/videoAnalysisProcessor.d.ts +5 -5
- package/dist/utils/videoAnalysisProcessor.js +2 -2
- package/dist/workflow/config.d.ts +89 -1257
- package/dist/workflow/utils/workflowValidation.js +1 -1
- package/docs-site/mcp-server/index.js +2 -3
- package/package.json +138 -105
- package/dist/lib/memory/mem0Initializer.d.ts +0 -46
- package/dist/lib/memory/mem0Initializer.js +0 -85
- package/dist/memory/mem0Initializer.d.ts +0 -46
- package/dist/memory/mem0Initializer.js +0 -84
|
@@ -119,7 +119,8 @@ export function createHealthRoutes(basePath = "/api") {
|
|
|
119
119
|
available: !!memory,
|
|
120
120
|
type: memory?.constructor.name || "none",
|
|
121
121
|
};
|
|
122
|
-
|
|
122
|
+
// Build the base health response
|
|
123
|
+
const healthResponse = {
|
|
123
124
|
status: "ok",
|
|
124
125
|
timestamp: new Date().toISOString(),
|
|
125
126
|
uptime: process.uptime() * 1000,
|
|
@@ -147,6 +148,22 @@ export function createHealthRoutes(basePath = "/api") {
|
|
|
147
148
|
servers: externalServers,
|
|
148
149
|
},
|
|
149
150
|
};
|
|
151
|
+
// Add proxy account pool status when proxy mode is active
|
|
152
|
+
if (ctx.metadata?.accountPool) {
|
|
153
|
+
const pool = ctx.metadata.accountPool;
|
|
154
|
+
const allAccounts = pool.getAllAccounts();
|
|
155
|
+
const statusCounts = {};
|
|
156
|
+
for (const a of allAccounts) {
|
|
157
|
+
statusCounts[a.status] = (statusCounts[a.status] || 0) + 1;
|
|
158
|
+
}
|
|
159
|
+
healthResponse.proxy = {
|
|
160
|
+
totalAccounts: allAccounts.length,
|
|
161
|
+
statusDistribution: statusCounts,
|
|
162
|
+
healthyCount: pool.getHealthyCount(),
|
|
163
|
+
strategy: pool.getStrategy(),
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
return healthResponse;
|
|
150
167
|
},
|
|
151
168
|
description: "Detailed health information",
|
|
152
169
|
tags: ["health"],
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { RouteDefinition, RouteGroup } from "../types.js";
|
|
6
6
|
export { createAgentRoutes } from "./agentRoutes.js";
|
|
7
|
+
export { createClaudeProxyRoutes } from "./claudeProxyRoutes.js";
|
|
7
8
|
export { createHealthRoutes } from "./healthRoutes.js";
|
|
8
9
|
export { createMCPRoutes } from "./mcpRoutes.js";
|
|
9
10
|
export { createMemoryRoutes } from "./memoryRoutes.js";
|
|
@@ -27,6 +28,12 @@ export type CreateRoutesOptions = {
|
|
|
27
28
|
* default endpoint definitions.
|
|
28
29
|
*/
|
|
29
30
|
getRoutes?: () => RouteDefinition[];
|
|
31
|
+
/**
|
|
32
|
+
* Enable or disable the Claude-compatible proxy routes.
|
|
33
|
+
* When true, registers /v1/messages, /v1/models, and /v1/messages/count_tokens
|
|
34
|
+
* endpoints that accept Anthropic API format requests.
|
|
35
|
+
*/
|
|
36
|
+
claudeProxy?: boolean;
|
|
30
37
|
};
|
|
31
38
|
/**
|
|
32
39
|
* Create all standard routes
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
* Pre-built route definitions for common NeuroLink endpoints
|
|
4
4
|
*/
|
|
5
5
|
import { createAgentRoutes } from "./agentRoutes.js";
|
|
6
|
+
import { createClaudeProxyRoutes } from "./claudeProxyRoutes.js";
|
|
7
|
+
// ClaudeProxyDeps removed
|
|
6
8
|
import { createHealthRoutes } from "./healthRoutes.js";
|
|
7
9
|
import { createMCPRoutes } from "./mcpRoutes.js";
|
|
8
10
|
import { createMemoryRoutes } from "./memoryRoutes.js";
|
|
@@ -10,6 +12,8 @@ import { createOpenApiRoutes } from "./openApiRoutes.js";
|
|
|
10
12
|
import { createToolRoutes } from "./toolRoutes.js";
|
|
11
13
|
// Re-export route builders from individual files
|
|
12
14
|
export { createAgentRoutes } from "./agentRoutes.js";
|
|
15
|
+
export { createClaudeProxyRoutes } from "./claudeProxyRoutes.js";
|
|
16
|
+
// ClaudeProxyDeps removed
|
|
13
17
|
export { createHealthRoutes } from "./healthRoutes.js";
|
|
14
18
|
export { createMCPRoutes } from "./mcpRoutes.js";
|
|
15
19
|
export { createMemoryRoutes } from "./memoryRoutes.js";
|
|
@@ -31,6 +35,10 @@ export function createAllRoutes(basePath = "/api", options) {
|
|
|
31
35
|
if (options?.enableSwagger) {
|
|
32
36
|
routes.push(createOpenApiRoutes(basePath, options.getRoutes));
|
|
33
37
|
}
|
|
38
|
+
// Conditionally add Claude-compatible proxy routes
|
|
39
|
+
if (options?.claudeProxy) {
|
|
40
|
+
routes.push(createClaudeProxyRoutes(undefined, basePath));
|
|
41
|
+
}
|
|
34
42
|
return routes;
|
|
35
43
|
}
|
|
36
44
|
/**
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Compatible with AI SDK's data stream format
|
|
5
5
|
*/
|
|
6
6
|
import type { DataStreamWriter } from "../types.js";
|
|
7
|
+
import type { CloseHandler } from "../../types/index.js";
|
|
7
8
|
/**
|
|
8
9
|
* Data stream event types
|
|
9
10
|
*/
|
|
@@ -259,10 +260,6 @@ export type SSEEventOptions = {
|
|
|
259
260
|
* ```
|
|
260
261
|
*/
|
|
261
262
|
export declare function formatSSEEvent(options: SSEEventOptions): string;
|
|
262
|
-
/**
|
|
263
|
-
* Close handler type
|
|
264
|
-
*/
|
|
265
|
-
type CloseHandler = () => void;
|
|
266
263
|
/**
|
|
267
264
|
* Base class for data stream writers
|
|
268
265
|
* Provides common functionality for streaming data
|
|
@@ -341,4 +338,3 @@ export declare class WebStreamWriter extends BaseDataStreamWriter {
|
|
|
341
338
|
writeEvent(eventType: string, data: unknown): void;
|
|
342
339
|
protected doClose(): void;
|
|
343
340
|
}
|
|
344
|
-
export {};
|
|
@@ -341,6 +341,9 @@ export function formatSSEEvent(options) {
|
|
|
341
341
|
}
|
|
342
342
|
return lines.join("\n") + "\n\n";
|
|
343
343
|
}
|
|
344
|
+
// ============================================
|
|
345
|
+
// WebStreamWriter (Legacy Compatibility)
|
|
346
|
+
// ============================================
|
|
344
347
|
/**
|
|
345
348
|
* Base class for data stream writers
|
|
346
349
|
* Provides common functionality for streaming data
|
|
@@ -7,59 +7,21 @@ import { z } from "zod";
|
|
|
7
7
|
* Agent execute request schema
|
|
8
8
|
*/
|
|
9
9
|
export declare const AgentExecuteRequestSchema: z.ZodObject<{
|
|
10
|
-
input: z.ZodUnion<[z.ZodString, z.ZodObject<{
|
|
10
|
+
input: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
11
11
|
text: z.ZodString;
|
|
12
|
-
images: z.ZodOptional<z.ZodArray<z.ZodString
|
|
13
|
-
files: z.ZodOptional<z.ZodArray<z.ZodString
|
|
14
|
-
},
|
|
15
|
-
text: string;
|
|
16
|
-
images?: string[] | undefined;
|
|
17
|
-
files?: string[] | undefined;
|
|
18
|
-
}, {
|
|
19
|
-
text: string;
|
|
20
|
-
images?: string[] | undefined;
|
|
21
|
-
files?: string[] | undefined;
|
|
22
|
-
}>]>;
|
|
12
|
+
images: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
13
|
+
files: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
14
|
+
}, z.core.$strip>]>;
|
|
23
15
|
provider: z.ZodOptional<z.ZodString>;
|
|
24
16
|
model: z.ZodOptional<z.ZodString>;
|
|
25
17
|
systemPrompt: z.ZodOptional<z.ZodString>;
|
|
26
18
|
temperature: z.ZodOptional<z.ZodNumber>;
|
|
27
19
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
28
|
-
tools: z.ZodOptional<z.ZodArray<z.ZodString
|
|
20
|
+
tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
29
21
|
stream: z.ZodOptional<z.ZodBoolean>;
|
|
30
22
|
sessionId: z.ZodOptional<z.ZodString>;
|
|
31
23
|
userId: z.ZodOptional<z.ZodString>;
|
|
32
|
-
},
|
|
33
|
-
input: string | {
|
|
34
|
-
text: string;
|
|
35
|
-
images?: string[] | undefined;
|
|
36
|
-
files?: string[] | undefined;
|
|
37
|
-
};
|
|
38
|
-
provider?: string | undefined;
|
|
39
|
-
model?: string | undefined;
|
|
40
|
-
userId?: string | undefined;
|
|
41
|
-
stream?: boolean | undefined;
|
|
42
|
-
sessionId?: string | undefined;
|
|
43
|
-
maxTokens?: number | undefined;
|
|
44
|
-
systemPrompt?: string | undefined;
|
|
45
|
-
temperature?: number | undefined;
|
|
46
|
-
tools?: string[] | undefined;
|
|
47
|
-
}, {
|
|
48
|
-
input: string | {
|
|
49
|
-
text: string;
|
|
50
|
-
images?: string[] | undefined;
|
|
51
|
-
files?: string[] | undefined;
|
|
52
|
-
};
|
|
53
|
-
provider?: string | undefined;
|
|
54
|
-
model?: string | undefined;
|
|
55
|
-
userId?: string | undefined;
|
|
56
|
-
stream?: boolean | undefined;
|
|
57
|
-
sessionId?: string | undefined;
|
|
58
|
-
maxTokens?: number | undefined;
|
|
59
|
-
systemPrompt?: string | undefined;
|
|
60
|
-
temperature?: number | undefined;
|
|
61
|
-
tools?: string[] | undefined;
|
|
62
|
-
}>;
|
|
24
|
+
}, z.core.$strip>;
|
|
63
25
|
/**
|
|
64
26
|
* Tool execute request schema
|
|
65
27
|
*/
|
|
@@ -68,17 +30,7 @@ export declare const ToolExecuteRequestSchema: z.ZodObject<{
|
|
|
68
30
|
arguments: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
69
31
|
sessionId: z.ZodOptional<z.ZodString>;
|
|
70
32
|
userId: z.ZodOptional<z.ZodString>;
|
|
71
|
-
},
|
|
72
|
-
name: string;
|
|
73
|
-
arguments: Record<string, unknown>;
|
|
74
|
-
userId?: string | undefined;
|
|
75
|
-
sessionId?: string | undefined;
|
|
76
|
-
}, {
|
|
77
|
-
name: string;
|
|
78
|
-
userId?: string | undefined;
|
|
79
|
-
sessionId?: string | undefined;
|
|
80
|
-
arguments?: Record<string, unknown> | undefined;
|
|
81
|
-
}>;
|
|
33
|
+
}, z.core.$strip>;
|
|
82
34
|
/**
|
|
83
35
|
* Tool arguments schema (for direct tool execution)
|
|
84
36
|
*/
|
|
@@ -88,86 +40,48 @@ export declare const ToolArgumentsSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>
|
|
|
88
40
|
*/
|
|
89
41
|
export declare const SessionIdParamSchema: z.ZodObject<{
|
|
90
42
|
sessionId: z.ZodString;
|
|
91
|
-
},
|
|
92
|
-
sessionId: string;
|
|
93
|
-
}, {
|
|
94
|
-
sessionId: string;
|
|
95
|
-
}>;
|
|
43
|
+
}, z.core.$strip>;
|
|
96
44
|
/**
|
|
97
45
|
* MCP server name parameter schema
|
|
98
46
|
*/
|
|
99
47
|
export declare const ServerNameParamSchema: z.ZodObject<{
|
|
100
48
|
name: z.ZodString;
|
|
101
|
-
},
|
|
102
|
-
name: string;
|
|
103
|
-
}, {
|
|
104
|
-
name: string;
|
|
105
|
-
}>;
|
|
49
|
+
}, z.core.$strip>;
|
|
106
50
|
/**
|
|
107
51
|
* Tool name parameter schema
|
|
108
52
|
*/
|
|
109
53
|
export declare const ToolNameParamSchema: z.ZodObject<{
|
|
110
54
|
name: z.ZodString;
|
|
111
|
-
},
|
|
112
|
-
name: string;
|
|
113
|
-
}, {
|
|
114
|
-
name: string;
|
|
115
|
-
}>;
|
|
55
|
+
}, z.core.$strip>;
|
|
116
56
|
/**
|
|
117
57
|
* Tool search query schema
|
|
118
58
|
*/
|
|
119
59
|
export declare const ToolSearchQuerySchema: z.ZodObject<{
|
|
120
60
|
q: z.ZodOptional<z.ZodString>;
|
|
121
61
|
source: z.ZodOptional<z.ZodString>;
|
|
122
|
-
limit: z.ZodOptional<z.
|
|
123
|
-
},
|
|
124
|
-
source?: string | undefined;
|
|
125
|
-
limit?: number | undefined;
|
|
126
|
-
q?: string | undefined;
|
|
127
|
-
}, {
|
|
128
|
-
source?: string | undefined;
|
|
129
|
-
limit?: string | undefined;
|
|
130
|
-
q?: string | undefined;
|
|
131
|
-
}>;
|
|
62
|
+
limit: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>, z.ZodNumber>>;
|
|
63
|
+
}, z.core.$strip>;
|
|
132
64
|
/**
|
|
133
65
|
* Generic ID parameter schema (for session endpoints using :id)
|
|
134
66
|
*/
|
|
135
67
|
export declare const IdParamSchema: z.ZodObject<{
|
|
136
68
|
id: z.ZodString;
|
|
137
|
-
},
|
|
138
|
-
id: string;
|
|
139
|
-
}, {
|
|
140
|
-
id: string;
|
|
141
|
-
}>;
|
|
69
|
+
}, z.core.$strip>;
|
|
142
70
|
/**
|
|
143
71
|
* Sessions list query schema (with optional pagination and filtering)
|
|
144
72
|
*/
|
|
145
73
|
export declare const SessionsListQuerySchema: z.ZodObject<{
|
|
146
74
|
userId: z.ZodOptional<z.ZodString>;
|
|
147
|
-
limit: z.ZodOptional<z.
|
|
148
|
-
offset: z.ZodOptional<z.
|
|
149
|
-
},
|
|
150
|
-
userId?: string | undefined;
|
|
151
|
-
offset?: number | undefined;
|
|
152
|
-
limit?: number | undefined;
|
|
153
|
-
}, {
|
|
154
|
-
userId?: string | undefined;
|
|
155
|
-
offset?: string | undefined;
|
|
156
|
-
limit?: string | undefined;
|
|
157
|
-
}>;
|
|
75
|
+
limit: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>, z.ZodNumber>>;
|
|
76
|
+
offset: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>, z.ZodNumber>>;
|
|
77
|
+
}, z.core.$strip>;
|
|
158
78
|
/**
|
|
159
79
|
* Session messages query schema (for pagination)
|
|
160
80
|
*/
|
|
161
81
|
export declare const SessionMessagesQuerySchema: z.ZodObject<{
|
|
162
|
-
limit: z.ZodOptional<z.
|
|
163
|
-
offset: z.ZodOptional<z.
|
|
164
|
-
},
|
|
165
|
-
offset?: number | undefined;
|
|
166
|
-
limit?: number | undefined;
|
|
167
|
-
}, {
|
|
168
|
-
offset?: string | undefined;
|
|
169
|
-
limit?: string | undefined;
|
|
170
|
-
}>;
|
|
82
|
+
limit: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>, z.ZodNumber>>;
|
|
83
|
+
offset: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<number, string>>, z.ZodNumber>>;
|
|
84
|
+
}, z.core.$strip>;
|
|
171
85
|
/**
|
|
172
86
|
* Embed request schema (single text)
|
|
173
87
|
*/
|
|
@@ -175,31 +89,15 @@ export declare const EmbedRequestSchema: z.ZodObject<{
|
|
|
175
89
|
text: z.ZodString;
|
|
176
90
|
provider: z.ZodOptional<z.ZodString>;
|
|
177
91
|
model: z.ZodOptional<z.ZodString>;
|
|
178
|
-
},
|
|
179
|
-
text: string;
|
|
180
|
-
provider?: string | undefined;
|
|
181
|
-
model?: string | undefined;
|
|
182
|
-
}, {
|
|
183
|
-
text: string;
|
|
184
|
-
provider?: string | undefined;
|
|
185
|
-
model?: string | undefined;
|
|
186
|
-
}>;
|
|
92
|
+
}, z.core.$strip>;
|
|
187
93
|
/**
|
|
188
94
|
* Embed many request schema (batch texts)
|
|
189
95
|
*/
|
|
190
96
|
export declare const EmbedManyRequestSchema: z.ZodObject<{
|
|
191
|
-
texts: z.ZodArray<z.ZodString
|
|
97
|
+
texts: z.ZodArray<z.ZodString>;
|
|
192
98
|
provider: z.ZodOptional<z.ZodString>;
|
|
193
99
|
model: z.ZodOptional<z.ZodString>;
|
|
194
|
-
},
|
|
195
|
-
texts: string[];
|
|
196
|
-
provider?: string | undefined;
|
|
197
|
-
model?: string | undefined;
|
|
198
|
-
}, {
|
|
199
|
-
texts: string[];
|
|
200
|
-
provider?: string | undefined;
|
|
201
|
-
model?: string | undefined;
|
|
202
|
-
}>;
|
|
100
|
+
}, z.core.$strip>;
|
|
203
101
|
/**
|
|
204
102
|
* Standardized error response format
|
|
205
103
|
*/
|
|
@@ -229,9 +127,11 @@ export declare function createErrorResponse(code: string, message: string, detai
|
|
|
229
127
|
export type ValidationResult<T> = {
|
|
230
128
|
success: true;
|
|
231
129
|
data: T;
|
|
130
|
+
error?: undefined;
|
|
232
131
|
} | {
|
|
233
132
|
success: false;
|
|
234
133
|
error: ErrorResponse;
|
|
134
|
+
data?: undefined;
|
|
235
135
|
};
|
|
236
136
|
/**
|
|
237
137
|
* Validate request body against a Zod schema
|
|
@@ -33,14 +33,14 @@ export const AgentExecuteRequestSchema = z.object({
|
|
|
33
33
|
*/
|
|
34
34
|
export const ToolExecuteRequestSchema = z.object({
|
|
35
35
|
name: z.string().min(1, "Tool name is required"),
|
|
36
|
-
arguments: z.record(z.unknown()).default({}),
|
|
36
|
+
arguments: z.record(z.string(), z.unknown()).default({}),
|
|
37
37
|
sessionId: z.string().optional(),
|
|
38
38
|
userId: z.string().optional(),
|
|
39
39
|
});
|
|
40
40
|
/**
|
|
41
41
|
* Tool arguments schema (for direct tool execution)
|
|
42
42
|
*/
|
|
43
|
-
export const ToolArgumentsSchema = z.record(z.unknown());
|
|
43
|
+
export const ToolArgumentsSchema = z.record(z.string(), z.unknown());
|
|
44
44
|
/**
|
|
45
45
|
* Memory session ID parameter schema
|
|
46
46
|
*/
|
|
@@ -381,12 +381,14 @@ export function initializeOpenTelemetry(config) {
|
|
|
381
381
|
currentConfig = config;
|
|
382
382
|
isCredentialsValid = true;
|
|
383
383
|
// Create span processor for external provider mode
|
|
384
|
+
// shouldExportSpan: export all spans (v5 default filters to gen_ai spans only)
|
|
384
385
|
langfuseProcessor = new LangfuseSpanProcessor({
|
|
385
386
|
publicKey: config.publicKey,
|
|
386
387
|
secretKey: config.secretKey,
|
|
387
388
|
baseUrl: config.baseUrl || "https://cloud.langfuse.com",
|
|
388
389
|
environment: config.environment || "dev",
|
|
389
390
|
release: config.release || "v1.0.0",
|
|
391
|
+
shouldExportSpan: () => true,
|
|
390
392
|
});
|
|
391
393
|
usingExternalProvider = true;
|
|
392
394
|
isInitialized = true;
|
|
@@ -471,12 +473,14 @@ export function initializeOpenTelemetry(config) {
|
|
|
471
473
|
currentConfig = config;
|
|
472
474
|
isCredentialsValid = true;
|
|
473
475
|
// Step 1: Create LangfuseSpanProcessor for standalone mode
|
|
476
|
+
// shouldExportSpan: export all spans (v5 default filters to gen_ai spans only)
|
|
474
477
|
langfuseProcessor = new LangfuseSpanProcessor({
|
|
475
478
|
publicKey: config.publicKey,
|
|
476
479
|
secretKey: config.secretKey,
|
|
477
480
|
baseUrl: config.baseUrl || "https://cloud.langfuse.com",
|
|
478
481
|
environment: config.environment || "dev",
|
|
479
482
|
release: config.release || "v1.0.0",
|
|
483
|
+
shouldExportSpan: () => true,
|
|
480
484
|
});
|
|
481
485
|
logger.debug(`${LOG_PREFIX} Created LangfuseSpanProcessor`, {
|
|
482
486
|
baseUrl: config.baseUrl || "https://cloud.langfuse.com",
|
|
@@ -44,6 +44,44 @@ export declare const ATTR: {
|
|
|
44
44
|
readonly MSG_HAS_SYSTEM_PROMPT: "message.has_system_prompt";
|
|
45
45
|
readonly MSG_TOTAL_CONTENT_LENGTH: "message.total_content_length";
|
|
46
46
|
readonly MSG_IS_MULTIMODAL: "message.is_multimodal";
|
|
47
|
+
readonly FILE_NAME: "file.name";
|
|
48
|
+
readonly FILE_MIMETYPE: "file.mimetype";
|
|
49
|
+
readonly FILE_SIZE_BYTES: "file.size_bytes";
|
|
50
|
+
readonly FILE_CATEGORY: "file.category";
|
|
51
|
+
readonly FILE_OUTPUT_LENGTH: "file.output_length";
|
|
52
|
+
readonly FILE_SUCCESS: "file.success";
|
|
53
|
+
readonly FILE_PROCESSOR_USED: "file.processor_used";
|
|
54
|
+
readonly FILE_CONFIDENCE: "file.detection_confidence";
|
|
55
|
+
readonly FILE_HAS_IMAGES: "file.has_images";
|
|
56
|
+
readonly FILE_IMAGE_COUNT: "file.image_count";
|
|
57
|
+
readonly FILE_ERROR: "file.error";
|
|
58
|
+
readonly FILE_SKIPPED_REASON: "file.skipped_reason";
|
|
59
|
+
readonly FILE_TOTAL_COUNT: "file.total_count";
|
|
60
|
+
readonly FILE_INCLUDED_COUNT: "file.included_count";
|
|
61
|
+
readonly FILE_CONTENT_TYPE: "file.content_type";
|
|
62
|
+
readonly VIDEO_DURATION_SEC: "video.duration_sec";
|
|
63
|
+
readonly VIDEO_WIDTH: "video.width";
|
|
64
|
+
readonly VIDEO_HEIGHT: "video.height";
|
|
65
|
+
readonly VIDEO_CODEC: "video.codec";
|
|
66
|
+
readonly VIDEO_AUDIO_CODEC: "video.audio_codec";
|
|
67
|
+
readonly VIDEO_FORMAT: "video.format";
|
|
68
|
+
readonly VIDEO_BITRATE: "video.bitrate";
|
|
69
|
+
readonly VIDEO_KEYFRAMES_EXTRACTED: "video.keyframes_extracted";
|
|
70
|
+
readonly VIDEO_TARGET_FRAMES: "video.target_frames";
|
|
71
|
+
readonly VIDEO_INTERVAL_SEC: "video.interval_sec";
|
|
72
|
+
readonly VIDEO_FRAME_QUALITY: "video.frame_quality";
|
|
73
|
+
readonly VIDEO_FRAME_RESIZE_PX: "video.frame_resize_px";
|
|
74
|
+
readonly VIDEO_FRAMES_RESIZED: "video.frames_resized";
|
|
75
|
+
readonly VIDEO_TOTAL_FRAME_BYTES: "video.total_frame_bytes";
|
|
76
|
+
readonly VIDEO_HAS_SUBTITLES: "video.has_subtitles";
|
|
77
|
+
readonly VIDEO_SUBTITLE_LENGTH: "video.subtitle_length";
|
|
78
|
+
readonly VIDEO_TEXT_CONTENT_LENGTH: "video.text_content_length";
|
|
79
|
+
readonly VIDEO_HAS_METADATA: "video.has_metadata";
|
|
80
|
+
readonly VIDEO_HAS_KEYFRAMES: "video.has_keyframes";
|
|
81
|
+
readonly VIDEO_TEMP_PATH: "video.temp_path";
|
|
82
|
+
readonly VIDEO_BYTES_WRITTEN: "video.bytes_written";
|
|
83
|
+
readonly VIDEO_WRITE_DURATION_MS: "video.write_duration_ms";
|
|
84
|
+
readonly VIDEO_STEP: "video.step";
|
|
47
85
|
readonly CONTEXT_STAGE: "context.compaction_stage";
|
|
48
86
|
readonly CONTEXT_TOKENS_BEFORE: "context.tokens_before";
|
|
49
87
|
readonly CONTEXT_TOKENS_AFTER: "context.tokens_after";
|
|
@@ -50,6 +50,46 @@ export const ATTR = {
|
|
|
50
50
|
MSG_HAS_SYSTEM_PROMPT: "message.has_system_prompt",
|
|
51
51
|
MSG_TOTAL_CONTENT_LENGTH: "message.total_content_length",
|
|
52
52
|
MSG_IS_MULTIMODAL: "message.is_multimodal",
|
|
53
|
+
// File processing
|
|
54
|
+
FILE_NAME: "file.name",
|
|
55
|
+
FILE_MIMETYPE: "file.mimetype",
|
|
56
|
+
FILE_SIZE_BYTES: "file.size_bytes",
|
|
57
|
+
FILE_CATEGORY: "file.category",
|
|
58
|
+
FILE_OUTPUT_LENGTH: "file.output_length",
|
|
59
|
+
FILE_SUCCESS: "file.success",
|
|
60
|
+
FILE_PROCESSOR_USED: "file.processor_used",
|
|
61
|
+
FILE_CONFIDENCE: "file.detection_confidence",
|
|
62
|
+
FILE_HAS_IMAGES: "file.has_images",
|
|
63
|
+
FILE_IMAGE_COUNT: "file.image_count",
|
|
64
|
+
FILE_ERROR: "file.error",
|
|
65
|
+
FILE_SKIPPED_REASON: "file.skipped_reason",
|
|
66
|
+
FILE_TOTAL_COUNT: "file.total_count",
|
|
67
|
+
FILE_INCLUDED_COUNT: "file.included_count",
|
|
68
|
+
FILE_CONTENT_TYPE: "file.content_type",
|
|
69
|
+
// Video processing
|
|
70
|
+
VIDEO_DURATION_SEC: "video.duration_sec",
|
|
71
|
+
VIDEO_WIDTH: "video.width",
|
|
72
|
+
VIDEO_HEIGHT: "video.height",
|
|
73
|
+
VIDEO_CODEC: "video.codec",
|
|
74
|
+
VIDEO_AUDIO_CODEC: "video.audio_codec",
|
|
75
|
+
VIDEO_FORMAT: "video.format",
|
|
76
|
+
VIDEO_BITRATE: "video.bitrate",
|
|
77
|
+
VIDEO_KEYFRAMES_EXTRACTED: "video.keyframes_extracted",
|
|
78
|
+
VIDEO_TARGET_FRAMES: "video.target_frames",
|
|
79
|
+
VIDEO_INTERVAL_SEC: "video.interval_sec",
|
|
80
|
+
VIDEO_FRAME_QUALITY: "video.frame_quality",
|
|
81
|
+
VIDEO_FRAME_RESIZE_PX: "video.frame_resize_px",
|
|
82
|
+
VIDEO_FRAMES_RESIZED: "video.frames_resized",
|
|
83
|
+
VIDEO_TOTAL_FRAME_BYTES: "video.total_frame_bytes",
|
|
84
|
+
VIDEO_HAS_SUBTITLES: "video.has_subtitles",
|
|
85
|
+
VIDEO_SUBTITLE_LENGTH: "video.subtitle_length",
|
|
86
|
+
VIDEO_TEXT_CONTENT_LENGTH: "video.text_content_length",
|
|
87
|
+
VIDEO_HAS_METADATA: "video.has_metadata",
|
|
88
|
+
VIDEO_HAS_KEYFRAMES: "video.has_keyframes",
|
|
89
|
+
VIDEO_TEMP_PATH: "video.temp_path",
|
|
90
|
+
VIDEO_BYTES_WRITTEN: "video.bytes_written",
|
|
91
|
+
VIDEO_WRITE_DURATION_MS: "video.write_duration_ms",
|
|
92
|
+
VIDEO_STEP: "video.step",
|
|
53
93
|
// Context
|
|
54
94
|
CONTEXT_STAGE: "context.compaction_stage",
|
|
55
95
|
CONTEXT_TOKENS_BEFORE: "context.tokens_before",
|
|
@@ -12,4 +12,5 @@ export declare const tracers: {
|
|
|
12
12
|
readonly context: import("@opentelemetry/api").Tracer;
|
|
13
13
|
readonly middleware: import("@opentelemetry/api").Tracer;
|
|
14
14
|
readonly processor: import("@opentelemetry/api").Tracer;
|
|
15
|
+
readonly file: import("@opentelemetry/api").Tracer;
|
|
15
16
|
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auth-related type definitions for NeuroLink
|
|
3
|
+
*
|
|
4
|
+
* Canonical location for OAuth token storage types and token refresher contracts.
|
|
5
|
+
* All auth type imports should reference this module (or the barrel re-export
|
|
6
|
+
* via src/lib/types/index.ts).
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* OAuth tokens structure for storage.
|
|
10
|
+
* Stricter version of OAuthTokens with required fields for persistent storage.
|
|
11
|
+
*/
|
|
12
|
+
export type StoredOAuthTokens = {
|
|
13
|
+
/** The access token for API authentication */
|
|
14
|
+
accessToken: string;
|
|
15
|
+
/** The refresh token for obtaining new access tokens (optional for some OAuth flows) */
|
|
16
|
+
refreshToken?: string;
|
|
17
|
+
/** Unix timestamp (ms) when the access token expires */
|
|
18
|
+
expiresAt: number;
|
|
19
|
+
/** Token type, typically "Bearer" */
|
|
20
|
+
tokenType: string;
|
|
21
|
+
/** Optional OAuth scopes granted */
|
|
22
|
+
scope?: string;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Token refresher function type.
|
|
26
|
+
* Takes a refresh token and returns new tokens.
|
|
27
|
+
*/
|
|
28
|
+
export type TokenRefresher = (refreshToken: string) => Promise<StoredOAuthTokens>;
|
|
29
|
+
/**
|
|
30
|
+
* Internal storage format for multi-provider tokens
|
|
31
|
+
*/
|
|
32
|
+
export type TokenStorageData = {
|
|
33
|
+
/** Version of the storage format */
|
|
34
|
+
version: string;
|
|
35
|
+
/** Last modified timestamp */
|
|
36
|
+
lastModified: number;
|
|
37
|
+
/** Tokens indexed by provider name */
|
|
38
|
+
providers: Record<string, StoredProviderTokens>;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Per-provider token storage structure
|
|
42
|
+
*/
|
|
43
|
+
export type StoredProviderTokens = {
|
|
44
|
+
/** The stored tokens */
|
|
45
|
+
tokens: StoredOAuthTokens;
|
|
46
|
+
/** When the tokens were stored */
|
|
47
|
+
createdAt: number;
|
|
48
|
+
/** When the tokens were last accessed */
|
|
49
|
+
lastAccessed: number;
|
|
50
|
+
/** Whether this provider's tokens are permanently disabled */
|
|
51
|
+
disabled?: boolean;
|
|
52
|
+
/** When the tokens were disabled (Unix ms) */
|
|
53
|
+
disabledAt?: number;
|
|
54
|
+
/** Reason the tokens were disabled (e.g., "refresh_failed") */
|
|
55
|
+
disabledReason?: string;
|
|
56
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auth-related type definitions for NeuroLink
|
|
3
|
+
*
|
|
4
|
+
* Canonical location for OAuth token storage types and token refresher contracts.
|
|
5
|
+
* All auth type imports should reference this module (or the barrel re-export
|
|
6
|
+
* via src/lib/types/index.ts).
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Circuit Breaker Error Classes
|
|
3
|
+
* Shared error types for circuit breaker implementations across the codebase.
|
|
4
|
+
* Lives in types/ to avoid circular dependencies between utils/ and mcp/.
|
|
5
|
+
*/
|
|
6
|
+
import type { CircuitBreakerState } from "./mcpTypes.js";
|
|
7
|
+
/**
|
|
8
|
+
* Typed error thrown when a circuit breaker is open or half-open call limit is reached.
|
|
9
|
+
* Contains structured metadata so callers can build actionable error messages
|
|
10
|
+
* for AI models and downstream consumers.
|
|
11
|
+
*/
|
|
12
|
+
export declare class CircuitBreakerOpenError extends Error {
|
|
13
|
+
/** The circuit breaker name (e.g., "tool-execution-bitbucket-server-add_comment") */
|
|
14
|
+
readonly breakerName: string;
|
|
15
|
+
/** ISO timestamp when the circuit breaker will transition to half-open and allow a retry */
|
|
16
|
+
readonly retryAfter: string;
|
|
17
|
+
/** Milliseconds until the circuit breaker will allow a retry */
|
|
18
|
+
readonly retryAfterMs: number;
|
|
19
|
+
/** Current circuit breaker state ("open" or "half-open") */
|
|
20
|
+
readonly breakerState: CircuitBreakerState;
|
|
21
|
+
/** Number of failures that caused the circuit to open */
|
|
22
|
+
readonly failureCount: number;
|
|
23
|
+
constructor(options: {
|
|
24
|
+
breakerName: string;
|
|
25
|
+
retryAfter: Date;
|
|
26
|
+
retryAfterMs: number;
|
|
27
|
+
breakerState: CircuitBreakerState;
|
|
28
|
+
failureCount: number;
|
|
29
|
+
});
|
|
30
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Circuit Breaker Error Classes
|
|
3
|
+
* Shared error types for circuit breaker implementations across the codebase.
|
|
4
|
+
* Lives in types/ to avoid circular dependencies between utils/ and mcp/.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Typed error thrown when a circuit breaker is open or half-open call limit is reached.
|
|
8
|
+
* Contains structured metadata so callers can build actionable error messages
|
|
9
|
+
* for AI models and downstream consumers.
|
|
10
|
+
*/
|
|
11
|
+
export class CircuitBreakerOpenError extends Error {
|
|
12
|
+
/** The circuit breaker name (e.g., "tool-execution-bitbucket-server-add_comment") */
|
|
13
|
+
breakerName;
|
|
14
|
+
/** ISO timestamp when the circuit breaker will transition to half-open and allow a retry */
|
|
15
|
+
retryAfter;
|
|
16
|
+
/** Milliseconds until the circuit breaker will allow a retry */
|
|
17
|
+
retryAfterMs;
|
|
18
|
+
/** Current circuit breaker state ("open" or "half-open") */
|
|
19
|
+
breakerState;
|
|
20
|
+
/** Number of failures that caused the circuit to open */
|
|
21
|
+
failureCount;
|
|
22
|
+
constructor(options) {
|
|
23
|
+
const retryAfterStr = options.retryAfter.toISOString();
|
|
24
|
+
super(`Circuit breaker '${options.breakerName}' is ${options.breakerState}. ` +
|
|
25
|
+
`Tool temporarily unavailable after ${options.failureCount} failures. ` +
|
|
26
|
+
`Retry after: ${retryAfterStr} (${Math.ceil(options.retryAfterMs / 1000)}s).`);
|
|
27
|
+
this.name = "CircuitBreakerOpenError";
|
|
28
|
+
this.breakerName = options.breakerName;
|
|
29
|
+
this.retryAfter = retryAfterStr;
|
|
30
|
+
this.retryAfterMs = options.retryAfterMs;
|
|
31
|
+
this.breakerState = options.breakerState;
|
|
32
|
+
this.failureCount = options.failureCount;
|
|
33
|
+
}
|
|
34
|
+
}
|