@juspay/neurolink 12.35.4 → 12.36.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 +3 -3
- package/README.md +10 -10
- package/dist/browser/neurolink.min.js +381 -381
- package/dist/cli/commands/setup.js +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/neurolink.d.ts +1 -1
- package/dist/neurolink.js +2 -2
- package/dist/providers/openaiCompatCatalog.d.ts +2 -2
- package/dist/providers/openaiCompatCatalog.js +2 -2
- package/dist/proxy/codexOutboundFallback.d.ts +35 -0
- package/dist/proxy/codexOutboundFallback.js +515 -0
- package/dist/proxy/otelLogSink.d.ts +2 -2
- package/dist/proxy/otelLogSink.js +44 -4
- package/dist/proxy/otlpLogTransport.js +25 -2
- package/dist/proxy/requestLogger.js +20 -1
- package/dist/routing/modelCatalog.d.ts +1 -1
- package/dist/routing/modelCatalog.js +1 -1
- package/dist/types/codex.d.ts +137 -1
- package/dist/utils/modelChoices.d.ts +5 -4
- package/dist/utils/modelChoices.js +11 -10
- package/dist/utils/providerHealth.d.ts +1 -1
- package/dist/utils/providerHealth.js +1 -1
- package/docs-site/static/search-index.json +151 -151
- package/package.json +1 -1
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
{"objectID":"556077ecd212a861d46a7b069bfe8243ccebb383fa394531e49c9abfafdcf890","title":"6. Observability","url":"/docs/about/pipe-architecture#6-observability","content":"Every stage emits OpenTelemetry spans. The full trace covers:\nContext build duration\nToken counts (input + output)\nTool execution times\nMemory read/write latency\nProvider-specific attributes (model, temperature, finish reason)\n\nExporters: Langfuse, OTLP, Jaeger, Zipkin, Prometheus, Datadog, NewRelic, Honeycomb, Console.","hierarchy":{"lvl0":"About","lvl1":"Pipe Architecture","lvl2":"6. Observability","lvl3":""}},
|
|
131
131
|
{"objectID":"9aafb7162a034e292934afb13bd6ce2ca9177be0a13fd292a734637840f23775","title":"Key Files","url":"/docs/about/pipe-architecture#key-files","content":"| File | Purpose |\n| --------------------------------------- | -------------------------------------------- |\n| src/lib/neurolink.ts | Main SDK class — orchestrates all six stages |\n| src/lib/factories/providerRegistry.ts | Provider registration with dynamic imports |\n| src/lib/context/budgetChecker.ts | Pre-generation context budget validation |\n| src/lib/context/contextCompactor.ts | Multi-stage compaction orchestrator |\n| src/lib/mcp/toolRegistry.ts | Tool management and MCP integration |\n| src/lib/rag/ragIntegration.ts | RAG auto-pipeline setup |\n| src/lib/telemetry/ | OpenTelemetry instrumentation |","hierarchy":{"lvl0":"About","lvl1":"Pipe Architecture","lvl2":"Key Files","lvl3":""}},
|
|
132
132
|
{"objectID":"a93f30940dbf4ce2d9ef1cc11bcfe70eb476e3b1e3ec734597880bbd699b5606","title":"Design Invariants","url":"/docs/about/pipe-architecture#design-invariants","content":"These never change regardless of provider, model, or connector:\nDynamic imports only — No static imports of providers in the registry (prevents circular deps)\nStream is the primitive for text — generate() is always stream collected; nothing in the text path bypasses stream(). decide() is a separate inference type that returns typed judgments and never enters this path.\nBudget checked before every text call — no generate()/stream() call without a budget check. A decide() call carries its own input ceilings instead, enforced by the provider.\nTools are always external — MCP protocol for all tool integrations, including built-ins\nMemory is scoped — Each conversation has isolated memory; no cross-contamination","hierarchy":{"lvl0":"About","lvl1":"Pipe Architecture","lvl2":"Design Invariants","lvl3":""}},
|
|
133
|
-
{"objectID":"1083b3420d2c0db59846347281059ffb8b3de773cbdcb879b080fe6d480cd572","title":"NeuroLink Vision & Roadmap","url":"/docs/about/vision","content":"NeuroLink Vision & Roadmap\n\nThe Future of AI: Edge-first execution and continuous streaming architectures\n\n🔮 The Future of AI: Edge-First & Streaming-Native\n\nThe Fundamental Shift\n\nA fundamental transformation is happening in AI: Edge-first execution makes LLM usage practically free.\n\nAs AI models move closer to users—running on edge devices, local machines, regional infrastructure, and in-browser—the marginal cost of inference approaches zero. This isn't incremental improvement. This changes everything.\n\n🌍 Edge-First AI: Run Anywhere, Pay Nothing\n\nThe Economics of Edge AI\n\nWhen LLMs run on user devices or regional edge, compute is free. Storage is free. Inference is free.\n\nWhy This Matters\n\n| Traditional Cloud AI | Edge-First AI |\n| ------------------------------- | ------------------------ |\n| $2,000/month for 1M requests | $0/month |\n| Network latency: 200-500ms | Local latency: \\ When AI runs at the edge, the marginal cost of inference becomes zero.\nWhen streams run continuously, the marginal cost of availability becomes zero.\nWhen both are true, AI becomes as ubiquitous as electricity.\n\nWhat This Enables\nReal-Time Everything\nLive translation in conversations\nInstant code completion while typing\nReal-time fraud detection in payments\nContinuous health monitoring\nAlways-on personal assistants\nUnlimited AI Interactions\nNo per-request costs to limit usage\nExperiment freely without budget concerns\nBuild AI-first products without economic constraints\nScale to billions of requests at zero marginal cost\nPerfect Privacy\nData processing happens on user devices\nNo cloud uploads, no third-party access\nGDPR/HIPAA compliant by design\nUsers own their data completely\nGovernment/regulatory compliance automatic\nOffline Capability\nAI works without internet\nEdge models run anywhere\nResilient to network issues\nNo cloud dependencies\nWorks in remote locations\nDeveloper Freedom\nBuild without provider lock-in\nSwitch models freely (all work the same way)\nDeploy anywhere (cloud, edge, device, browser)\nOwn your infrastructure\nNo vendor dependencies\n\n🚀 How to Participate in This Future\n\nUse NeuroLink Today\n\nStart building with NeuroLink:\nQuick Start Guide - Get running in \\<5 minutes\nProvider Setup - Configure
|
|
133
|
+
{"objectID":"1083b3420d2c0db59846347281059ffb8b3de773cbdcb879b080fe6d480cd572","title":"NeuroLink Vision & Roadmap","url":"/docs/about/vision","content":"NeuroLink Vision & Roadmap\n\nThe Future of AI: Edge-first execution and continuous streaming architectures\n\n🔮 The Future of AI: Edge-First & Streaming-Native\n\nThe Fundamental Shift\n\nA fundamental transformation is happening in AI: Edge-first execution makes LLM usage practically free.\n\nAs AI models move closer to users—running on edge devices, local machines, regional infrastructure, and in-browser—the marginal cost of inference approaches zero. This isn't incremental improvement. This changes everything.\n\n🌍 Edge-First AI: Run Anywhere, Pay Nothing\n\nThe Economics of Edge AI\n\nWhen LLMs run on user devices or regional edge, compute is free. Storage is free. Inference is free.\n\nWhy This Matters\n\n| Traditional Cloud AI | Edge-First AI |\n| ------------------------------- | ------------------------ |\n| $2,000/month for 1M requests | $0/month |\n| Network latency: 200-500ms | Local latency: \\ When AI runs at the edge, the marginal cost of inference becomes zero.\nWhen streams run continuously, the marginal cost of availability becomes zero.\nWhen both are true, AI becomes as ubiquitous as electricity.\n\nWhat This Enables\nReal-Time Everything\nLive translation in conversations\nInstant code completion while typing\nReal-time fraud detection in payments\nContinuous health monitoring\nAlways-on personal assistants\nUnlimited AI Interactions\nNo per-request costs to limit usage\nExperiment freely without budget concerns\nBuild AI-first products without economic constraints\nScale to billions of requests at zero marginal cost\nPerfect Privacy\nData processing happens on user devices\nNo cloud uploads, no third-party access\nGDPR/HIPAA compliant by design\nUsers own their data completely\nGovernment/regulatory compliance automatic\nOffline Capability\nAI works without internet\nEdge models run anywhere\nResilient to network issues\nNo cloud dependencies\nWorks in remote locations\nDeveloper Freedom\nBuild without provider lock-in\nSwitch models freely (all work the same way)\nDeploy anywhere (cloud, edge, device, browser)\nOwn your infrastructure\nNo vendor dependencies\n\n🚀 How to Participate in This Future\n\nUse NeuroLink Today\n\nStart building with NeuroLink:\nQuick Start Guide - Get running in \\<5 minutes\nProvider Setup - Configure supported providers\nSDK Integration - Build with TypeScript\nProduction Deployment - Enterprise setup\n\nContribute to Edge & Streaming Features\n\nHelp us build the future:\nEdge Deployment Kits: CloudFlare Workers, Lambda@Edge templates\nBrowser LLM Support: WebGPU integration\nStreaming Architecture: Protocol design and implementation\nExample Applications: Showcase edge + streaming patterns\n\nContributing Guide - How to contribute\n\nShare Your Use Cases\n\nTell us how you're using NeuroLink:\nEdge deployments: What works, what doesn't\nStreaming needs: Where continuous context matters\nPrivacy requirements: Compliance and security needs\nPerformance goals: Latency and cost targets\n\nGitHub Discussions - Join the conversation\n\n🎯 Join Us in Building This Future\n\nNeuroLink started as a production tool at Juspay to solve today's AI integration problems. But we're building for tomorrow—where AI is everywhere, costs nothing, and just works.\n\nIf You Believe in This Vision:\n\n✅ Use NeuroLink today for multi-provider AI\n✅ Contribute to edge-first and streaming features\n✅ Share your use cases to help us prioritize\n✅ Join the community to shape the future of AI infrastructure\n\nThe future of AI is edge-first, streaming-native, and practically free.\n\nNeuroLink is building the infrastructure to power that future.\n\nWelcome aboard.\n\nDocument maintained by: NeuroLink Core Team\nLast updated: March 2026\nNext review: Q3 2026 (after Phase 3 planning)","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"","lvl3":""}},
|
|
134
134
|
{"objectID":"5fcb53ab536f2cffaef276173e033cb9712a852233f3bbf6f04986ef826845db","title":"NeuroLink Vision & Roadmap","url":"/docs/about/vision#neurolink-vision-roadmap","content":"The Future of AI: Edge-first execution and continuous streaming architectures","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"NeuroLink Vision & Roadmap","lvl3":""}},
|
|
135
135
|
{"objectID":"179ed4cfa698f5619a89e45bef29ffb3dbb0a28269b2f3e501d95b5b06144ca0","title":"The Fundamental Shift","url":"/docs/about/vision#the-fundamental-shift","content":"A fundamental transformation is happening in AI: Edge-first execution makes LLM usage practically free.\n\nAs AI models move closer to users—running on edge devices, local machines, regional infrastructure, and in-browser—the marginal cost of inference approaches zero. This isn't incremental improvement. This changes everything.","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"The Fundamental Shift","lvl3":""}},
|
|
136
136
|
{"objectID":"2217000b17b8306979068110dadba347afaa519ac2716a3bead244060bdabade","title":"The Economics of Edge AI","url":"/docs/about/vision#the-economics-of-edge-ai","content":"When LLMs run on user devices or regional edge, compute is free. Storage is free. Inference is free.","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"The Economics of Edge AI","lvl3":""}},
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
{"objectID":"bba7e1897313e3737e1e1d7c4285c0f0b41e1438560822e2301139f840a1f24f","title":"The Streaming Solution","url":"/docs/about/vision#the-streaming-solution","content":"Continuous Stream Model:\n\nInstead of starting fresh each time, maintain a continuous stream to your LLM that:\nRuns 24/7 on edge infrastructure (local machine, regional edge, user browser)\nMaintains perfect context across sessions (no context window limits)\nConnects/disconnects as needed (like WebSocket, but for AI)\nCosts nothing to keep alive (edge compute is free)","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"The Streaming Solution","lvl3":""}},
|
|
141
141
|
{"objectID":"7b2c2e4083a75c704054788f25145243cae6aaa053f4dc154f93a3770a9dce22","title":"How Continuous Streams Work","url":"/docs/about/vision#how-continuous-streams-work","content":"Traditional Request/Response:\n\nContinuous Streaming (NeuroLink's Vision):","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"How Continuous Streams Work","lvl3":""}},
|
|
142
142
|
{"objectID":"a321f88817ec635afc361ac9300f848af7c20c1a6130336b281db0c71deb4fc5","title":"Why Continuous Streams Change Everything","url":"/docs/about/vision#why-continuous-streams-change-everything","content":"| Traditional AI | Continuous Streaming AI |\n| ---------------------------------------- | ------------------------------- |\n| Cold start every request | Always warm, instant response |\n| Limited context window (200K tokens max) | Infinite context memory |\n| Expensive per-token costs | Free on edge |\n| Stateless, forgets everything | Stateful, remembers everything |\n| Batch processing | Real-time continuous processing |\n| High latency (network + cold start) | Sub-100ms responses |","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Why Continuous Streams Change Everything","lvl3":""}},
|
|
143
|
-
{"objectID":"695b825ee1abb3d7dfa8560a77b79ae0bb07ff1da80fa2bd6069445886921195","title":"Phase 1: Universal Integration ✅ COMPLETE","url":"/docs/about/vision#phase-1-universal-integration-complete","content":"Status: Complete — in production use at Juspay\n\nWhat We Built:\n✅
|
|
143
|
+
{"objectID":"695b825ee1abb3d7dfa8560a77b79ae0bb07ff1da80fa2bd6069445886921195","title":"Phase 1: Universal Integration ✅ COMPLETE","url":"/docs/about/vision#phase-1-universal-integration-complete","content":"Status: Complete — in production use at Juspay\n\nWhat We Built:\n✅ AI providers unified under one API\n✅ Enterprise features (proxy, Redis, failover, telemetry)\n✅ SDK + CLI for any workflow\n✅ Real-time streaming with tool support\n✅ 6 built-in tools + any MCP-compliant server\n✅ Production deployment at scale (15M+ requests/month)\n\nYou can use this today.\n\nGet Started Now →","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Phase 1: Universal Integration ✅ COMPLETE","lvl3":""}},
|
|
144
144
|
{"objectID":"03f6c09431a0abe505dab45cc757b528402676a09cb80dd3fb96c9806bafc3c7","title":"Phase 2: Edge-Native Execution 🚧 IN PROGRESS","url":"/docs/about/vision#phase-2-edge-native-execution-in-progress","content":"Goal: Make local/edge AI as easy as cloud AI\n\nWhat We're Building:\n✅ Ollama integration - Local LLMs, zero cost, complete privacy (Done)\n✅ LiteLLM proxy - 100+ models through one local endpoint (Done)\n🚧 Edge deployment kits - CloudFlare Workers, Lambda@Edge templates (In Progress)\n🚧 Browser LLM support - Run models entirely in-browser (WebGPU) (Research)\n🚧 Regional routing - Automatic provider selection based on user location (Design)\n\nTimeline: Q1-Q2 2025\n\nWhy It Matters: Every request runs \\<100ms, costs $0, never touches cloud","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Phase 2: Edge-Native Execution 🚧 IN PROGRESS","lvl3":""}},
|
|
145
145
|
{"objectID":"8fc5d2489aaf7a90fa71f3826e623f395c8419e877654af6d66cf3d85c376b7c","title":"Phase 3: Continuous Streaming Architecture 📋 PLANNED","url":"/docs/about/vision#phase-3-continuous-streaming-architecture-planned","content":"Goal: Long-running, stateful LLM streams with infinite context\n\nWhat We're Building:\n📋 Stream management - Connect, disconnect, reconnect to persistent streams\n📋 Infinite context - No token limits, perfect memory across sessions\n📋 Edge orchestration - Streams run on user devices or regional edge\n📋 Automatic failover - Seamless cloud fallback if edge unavailable\n📋 Multi-stream coordination - Coordinate multiple specialized streams\n\nTimeline: Q3-Q4 2025\n\nWhy It Matters: AI becomes ambient, always available, costs nothing","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Phase 3: Continuous Streaming Architecture 📋 PLANNED","lvl3":""}},
|
|
146
146
|
{"objectID":"3b18188089291551ff1079bc4c79b6ab38fce495ac239e65026bbcc71ad34b52","title":"Phase 4: AI-Powered Everything 🔮 FUTURE","url":"/docs/about/vision#phase-4-ai-powered-everything-future","content":"Vision: Every application has embedded AI, every user has personal AI assistants\n\nThe Future We're Building Toward:\nEvery App AI-Native: Embedded LLMs in all software\nPersonal AI Assistants: Running locally on your devices\nZero-Cost Inference: Edge execution makes AI practically free\nPerfect Memory: Continuous streams maintain infinite context\nInstant Responses: Edge compute = sub-100ms latency\nComplete Privacy: Your data never leaves your infrastructure","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Phase 4: AI-Powered Everything 🔮 FUTURE","lvl3":""}},
|
|
@@ -150,14 +150,14 @@
|
|
|
150
150
|
{"objectID":"fcb318c306ccdb9332c9f4655eca3de25327605dc0d29fef460800c222b6f12f","title":"3. Perfect Privacy","url":"/docs/about/vision#3-perfect-privacy","content":"Data processing happens on user devices\nNo cloud uploads, no third-party access\nGDPR/HIPAA compliant by design\nUsers own their data completely\nGovernment/regulatory compliance automatic","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"3. Perfect Privacy","lvl3":""}},
|
|
151
151
|
{"objectID":"909e2fcfa686454a6e3e1cbaa3a5f82cde74701a7807c0e4990f3c612b398ac7","title":"4. Offline Capability","url":"/docs/about/vision#4-offline-capability","content":"AI works without internet\nEdge models run anywhere\nResilient to network issues\nNo cloud dependencies\nWorks in remote locations","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"4. Offline Capability","lvl3":""}},
|
|
152
152
|
{"objectID":"666161cdb9538fbd7517167d959520f3ce418b05b58ddce7e96708f23d17d67c","title":"5. Developer Freedom","url":"/docs/about/vision#5-developer-freedom","content":"Build without provider lock-in\nSwitch models freely (all work the same way)\nDeploy anywhere (cloud, edge, device, browser)\nOwn your infrastructure\nNo vendor dependencies","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"5. Developer Freedom","lvl3":""}},
|
|
153
|
-
{"objectID":"dbfd0458b9ad4cd41c504f56cf1dadb81a00fed1b6fdb1c4f711f1af0e919ebd","title":"Use NeuroLink Today","url":"/docs/about/vision#use-neurolink-today","content":"Start building with NeuroLink:\nQuick Start Guide - Get running in \\<5 minutes\nProvider Setup - Configure
|
|
153
|
+
{"objectID":"dbfd0458b9ad4cd41c504f56cf1dadb81a00fed1b6fdb1c4f711f1af0e919ebd","title":"Use NeuroLink Today","url":"/docs/about/vision#use-neurolink-today","content":"Start building with NeuroLink:\nQuick Start Guide - Get running in \\<5 minutes\nProvider Setup - Configure supported providers\nSDK Integration - Build with TypeScript\nProduction Deployment - Enterprise setup","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Use NeuroLink Today","lvl3":""}},
|
|
154
154
|
{"objectID":"9e4a88e460a6fcfe5c4a5e9cb17b9abbd1e2eb71cc9024c7b1ac1904a56e070a","title":"Contribute to Edge & Streaming Features","url":"/docs/about/vision#contribute-to-edge-streaming-features","content":"Help us build the future:\nEdge Deployment Kits: CloudFlare Workers, Lambda@Edge templates\nBrowser LLM Support: WebGPU integration\nStreaming Architecture: Protocol design and implementation\nExample Applications: Showcase edge + streaming patterns\n\nContributing Guide - How to contribute","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Contribute to Edge & Streaming Features","lvl3":""}},
|
|
155
155
|
{"objectID":"c47d3ea31b9350d8a7e39af83361be6a5c078cffb786893cc053a933cc4ca99b","title":"Share Your Use Cases","url":"/docs/about/vision#share-your-use-cases","content":"Tell us how you're using NeuroLink:\nEdge deployments: What works, what doesn't\nStreaming needs: Where continuous context matters\nPrivacy requirements: Compliance and security needs\nPerformance goals: Latency and cost targets\n\nGitHub Discussions - Join the conversation","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"Share Your Use Cases","lvl3":""}},
|
|
156
156
|
{"objectID":"a01f19466002f1a4decfb4e57a7976034cd068b42a0beb84e7cbda9e6ff6cefa","title":"🎯 Join Us in Building This Future","url":"/docs/about/vision#-join-us-in-building-this-future","content":"NeuroLink started as a production tool at Juspay to solve today's AI integration problems. But we're building for tomorrow—where AI is everywhere, costs nothing, and just works.","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"🎯 Join Us in Building This Future","lvl3":""}},
|
|
157
157
|
{"objectID":"6d274f87d0b1b39d152ef548c717b98a5ca0af1e46da78fa7976343ebc419f3a","title":"If You Believe in This Vision:","url":"/docs/about/vision#if-you-believe-in-this-vision","content":"✅ Use NeuroLink today for multi-provider AI\n✅ Contribute to edge-first and streaming features\n✅ Share your use cases to help us prioritize\n✅ Join the community to shape the future of AI infrastructure\n\nThe future of AI is edge-first, streaming-native, and practically free.\n\nNeuroLink is building the infrastructure to power that future.\n\nWelcome aboard.\n\nDocument maintained by: NeuroLink Core Team\nLast updated: March 2026\nNext review: Q3 2026 (after Phase 3 planning)","hierarchy":{"lvl0":"About","lvl1":"NeuroLink Vision & Roadmap","lvl2":"If You Believe in This Vision:","lvl3":""}},
|
|
158
|
-
{"objectID":"2c08ee20f6c6005a0d3d88aec0910caea8b54d8f9478d1e4bf7b7e73c9bbccf9","title":"Why the NeuroLink Core Stays Thin","url":"/docs/about/why-the-core-stays-thin","content":"Why the NeuroLink Core Stays Thin\n\nBreadth without bloat: what's actually in the package, and why unused capability costs you nothing at runtime\n\nNeuroLink's pitch is breadth: one install covers 17 capability domains — providers, MCP, evals,\nRAG, observability, voice, media, workflows, and more. Breadth claims like that earn a reasonable\nreflex: \"so it's another bloated framework that drags in everything whether I need it or not.\"\nThat reflex is fair, and it's the one framework abandonments over the last two years keep citing.\nSo instead of asking you to take breadth-without-bloat on faith, here's what's actually in the\npackage and why the surface doesn't have to cost you disk space, install time, or attack surface\nyou didn't ask for.\n\nProviders load on demand, not on import\n\nNeuroLink ships
|
|
158
|
+
{"objectID":"2c08ee20f6c6005a0d3d88aec0910caea8b54d8f9478d1e4bf7b7e73c9bbccf9","title":"Why the NeuroLink Core Stays Thin","url":"/docs/about/why-the-core-stays-thin","content":"Why the NeuroLink Core Stays Thin\n\nBreadth without bloat: what's actually in the package, and why unused capability costs you nothing at runtime\n\nNeuroLink's pitch is breadth: one install covers 17 capability domains — providers, MCP, evals,\nRAG, observability, voice, media, workflows, and more. Breadth claims like that earn a reasonable\nreflex: \"so it's another bloated framework that drags in everything whether I need it or not.\"\nThat reflex is fair, and it's the one framework abandonments over the last two years keep citing.\nSo instead of asking you to take breadth-without-bloat on faith, here's what's actually in the\npackage and why the surface doesn't have to cost you disk space, install time, or attack surface\nyou didn't ask for.\n\nProviders load on demand, not on import\n\nNeuroLink ships named provider integrations plus a generic OpenAI-compatible adapter. None\nof them run at import time. src/lib/factories/providerRegistry.ts resolves a provider name to a\ndynamic import() of that provider's module only when you actually request it — Anthropic's\nclient only loads if you call createBestAIProvider(\"anthropic\") or equivalent; Ollama, LiteLLM,\nHugging Face, Bedrock, Vertex, and the rest are each behind their own await import(\"../providers/<name>.js\")\nline, one per provider, all in that same file. Ask for OpenAI and only the OpenAI\nprovider module executes — the rest never get evaluated.\n\nHeavy media/document deps are optional and lazy\n\nThe 35 packages that do real work in image, video, audio, and document processing —\nsharp, ffmpeg-static/fluent-ffmpeg, pdf-parse, mammoth, exceljs,\npptxgenjs, the LiveKit voice-agent plugins, bullmq, fastify/koa/express server adapters —\nare declared in optionalDependencies, not dependencies, in package.json. Being optional means\na package manager can skip them entirely if install fails or if you opt out; being lazy on top of\nthat means the code that needs them doesn't touch them until the feature runs. sharp is a good\nexample: NeuroLink's video processor only calls (await import(\"sharp\")).default inside the\nframe-resize path (src/lib/processors/media/VideoProcessor.ts), not anywhere near startup. If you\nnever touch video, sharp's native bindings never load into your process.\n\nThe package exposes real subpath entry points, not one giant bundle\n\npackage.json's exports map lists separate entry points — ./voice, ./music, ./avatar,\n./image-gen, ./workflow, ./rag, ./files, ./processors/*, ./adapters/*, ./livekit —\nalongside the default . entry. That's what lets a bundler tree-shake: importing\n@juspay/neurolink/rag doesn't pull the voice stack into your bundle graph. The package also\ndeclares \"type\": \"module\" and a sideEffects array scoped to **/*.css plus the compiled\nvoice/music/avatar entry files — everything else is marked side-effect-free, which is the signal\nbundlers use to safely drop unused exports instead of keeping code \"just in case.\"\n\nOne interface, swappable implementations\n\nEvery provider — whether it's a first-party AI SDK wrapper or a bare HTTP client for something\nlike llama.cpp — implements the same AIProvider contract defined against BaseProvider\n(src/lib/core/baseProvider.ts). Generation, streaming, tool calls, and lifecycle hooks are all\nexpressed once, at the interface level, so adding provider #25 is additive (a new file + a new\nimport() branch in the registry), not a change to the surface every existing provider has to pay\nfor.\n\nWhere we're heavy today, honestly\n\nLazy import() stops code from running until it's needed, but it doesn't stop npm install\nfrom downloading everything in dependencies (as opposed to optionalDependencies).\n@aws-sdk/client-bedrock, @aws-sdk/client-bedrock-runtime, @aws-sdk/client-sagemaker-runtime,\n@aws-sdk/credential-provider-node, @google-cloud/vertexai, @google-cloud/text-to-speech, and\n@huggingface/inference now live in optionalDependencies — matching the treatment\nmedia/document deps already get.\n\nOptional doesn't mean skipped by default: a plain npm install still downloads all seven, same as\nit always has for sharp or pdf-parse. What optional buys you is the ability to opt out —\nnpm install --omit=optional, or an npm client falling back gracefully when one of them fails to\nbuild on an unsupported platform, drops them without breaking anything else. We verified that\ndirectly: a clean --omit=optional install still runs import('@juspay/neurolink'),\nneurolink --version, and the CLI entry point directly (node dist/cli/index.js --version)\ncorrectly, and asking for a provider whose SDK got skipped — Bedrock or SageMaker, say — fails\nwith a plain, actionable error at the moment you request that provider, not a crash at import\ntime.\n\nThat safety only holds because all seven are genuinely lazy — nothing reachable from\nimport '@juspay/neurolink' (or from the CLI's startup path) touches them at load time. Three of\nthem weren't, until the audits that found it: @google-cloud/vertexai was a top-of-file import in\nthe built-in websearchGrounding","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"","lvl3":""}},
|
|
159
159
|
{"objectID":"aa2a97d1fbf62d32d4c2b89cedf6e8756457ec9552abdcc39df8e49353dc0a4a","title":"Why the NeuroLink Core Stays Thin","url":"/docs/about/why-the-core-stays-thin#why-the-neurolink-core-stays-thin","content":"Breadth without bloat: what's actually in the package, and why unused capability costs you nothing at runtime\n\nNeuroLink's pitch is breadth: one install covers 17 capability domains — providers, MCP, evals,\nRAG, observability, voice, media, workflows, and more. Breadth claims like that earn a reasonable\nreflex: \"so it's another bloated framework that drags in everything whether I need it or not.\"\nThat reflex is fair, and it's the one framework abandonments over the last two years keep citing.\nSo instead of asking you to take breadth-without-bloat on faith, here's what's actually in the\npackage and why the surface doesn't have to cost you disk space, install time, or attack surface\nyou didn't ask for.","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"Why the NeuroLink Core Stays Thin","lvl3":""}},
|
|
160
|
-
{"objectID":"ea24a1ae9ea7219b37355473fc345224ee1e97305283ff930e1f36b603bb38ea","title":"Providers load on demand, not on import","url":"/docs/about/why-the-core-stays-thin#providers-load-on-demand-not-on-import","content":"NeuroLink ships
|
|
160
|
+
{"objectID":"ea24a1ae9ea7219b37355473fc345224ee1e97305283ff930e1f36b603bb38ea","title":"Providers load on demand, not on import","url":"/docs/about/why-the-core-stays-thin#providers-load-on-demand-not-on-import","content":"NeuroLink ships named provider integrations plus a generic OpenAI-compatible adapter. None\nof them run at import time. src/lib/factories/providerRegistry.ts resolves a provider name to a\ndynamic import() of that provider's module only when you actually request it — Anthropic's\nclient only loads if you call createBestAIProvider(\"anthropic\") or equivalent; Ollama, LiteLLM,\nHugging Face, Bedrock, Vertex, and the rest are each behind their own await import(\"../providers/<name>.js\")\nline, one per provider, all in that same file. Ask for OpenAI and only the OpenAI\nprovider module executes — the rest never get evaluated.","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"Providers load on demand, not on import","lvl3":""}},
|
|
161
161
|
{"objectID":"8d37817e98f3351bfb570122b7aeeacd5673de163c03e3fdc2249f22ba153b01","title":"Heavy media/document deps are optional and lazy","url":"/docs/about/why-the-core-stays-thin#heavy-mediadocument-deps-are-optional-and-lazy","content":"The 35 packages that do real work in image, video, audio, and document processing —\nsharp, ffmpeg-static/fluent-ffmpeg, pdf-parse, mammoth, exceljs,\npptxgenjs, the LiveKit voice-agent plugins, bullmq, fastify/koa/express server adapters —\nare declared in optionalDependencies, not dependencies, in package.json. Being optional means\na package manager can skip them entirely if install fails or if you opt out; being lazy on top of\nthat means the code that needs them doesn't touch them until the feature runs. sharp is a good\nexample: NeuroLink's video processor only calls (await import(\"sharp\")).default inside the\nframe-resize path (src/lib/processors/media/VideoProcessor.ts), not anywhere near startup. If you\nnever touch video, sharp's native bindings never load into your process.","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"Heavy media/document deps are optional and lazy","lvl3":""}},
|
|
162
162
|
{"objectID":"3539bbad3542a55c88f34d80ddd1bc1fce27889c57cf8aca66e6273e6f344bba","title":"The package exposes real subpath entry points, not one giant bundle","url":"/docs/about/why-the-core-stays-thin#the-package-exposes-real-subpath-entry-points-not-one-giant-bundle","content":"package.json's exports map lists separate entry points — ./voice, ./music, ./avatar,\n./image-gen, ./workflow, ./rag, ./files, ./processors/*, ./adapters/*, ./livekit —\nalongside the default . entry. That's what lets a bundler tree-shake: importing\n@juspay/neurolink/rag doesn't pull the voice stack into your bundle graph. The package also\ndeclares \"type\": \"module\" and a sideEffects array scoped to **/*.css plus the compiled\nvoice/music/avatar entry files — everything else is marked side-effect-free, which is the signal\nbundlers use to safely drop unused exports instead of keeping code \"just in case.\"","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"The package exposes real subpath entry points, not one giant bundle","lvl3":""}},
|
|
163
163
|
{"objectID":"becaa9cd1d3ca9248464018e639eac6f6c2b7cd66931086213e50c253aa4d607","title":"One interface, swappable implementations","url":"/docs/about/why-the-core-stays-thin#one-interface-swappable-implementations","content":"Every provider — whether it's a first-party AI SDK wrapper or a bare HTTP client for something\nlike llama.cpp — implements the same AIProvider contract defined against BaseProvider\n(src/lib/core/baseProvider.ts). Generation, streaming, tool calls, and lifecycle hooks are all\nexpressed once, at the interface level, so adding provider #25 is additive (a new file + a new\nimport() branch in the registry), not a change to the surface every existing provider has to pay\nfor.","hierarchy":{"lvl0":"About","lvl1":"Why the NeuroLink Core Stays Thin","lvl2":"One interface, swappable implementations","lvl3":""}},
|
|
@@ -278,15 +278,15 @@
|
|
|
278
278
|
{"objectID":"28619badc7e577a1d29dad93c9bf86d4b36629d0dd8bc1d1ea575e0f2cf259ee","title":"Performance Optimization","url":"/docs/advanced/factory-patterns-complete-guide#performance-optimization-1","content":"Cache Domain Configurations: Reuse domain configs across requests\nMonitor Enhancement Time: Track processing time in production\nUse Batch Enhancements: Combine multiple enhancements efficiently\nEnable Analytics Selectively: Only when needed for performance","hierarchy":{"lvl0":"Advanced","lvl1":"NeuroLink Factory Patterns - Complete Implementation Guide","lvl2":"Performance Optimization","lvl3":""}},
|
|
279
279
|
{"objectID":"2a3d2c26efbf8e14e257fb4ce8e6fa6e6ad7e0fb50234c9c02f6f55bc471a62f","title":"Error Handling","url":"/docs/advanced/factory-patterns-complete-guide#error-handling","content":"Always Handle Enhancement Failures: Factory patterns should never break core functionality\nLog Enhancement Metadata: Track enhancement success/failure for monitoring\nUse Validation Judiciously: Enable validation in development, consider disabling in production for performance","hierarchy":{"lvl0":"Advanced","lvl1":"NeuroLink Factory Patterns - Complete Implementation Guide","lvl2":"Error Handling","lvl3":""}},
|
|
280
280
|
{"objectID":"da80621bd2c81b9846c9a688fd6d2818c15c4ac1278f0720237d3d608a283120","title":"Conclusion","url":"/docs/advanced/factory-patterns-complete-guide#conclusion","content":"The NeuroLink Factory Infrastructure provides a comprehensive, production-ready framework for domain-agnostic AI enhancement. With zero breaking changes, extensive test coverage, and flexible enhancement patterns, it enables powerful domain-specific AI interactions while maintaining the simplicity and reliability of the existing NeuroLink SDK.\n\nThe factory patterns scale from simple domain configuration to complex multi-enhancement workflows, making them suitable for any application from basic chatbots to enterprise AI systems requiring sophisticated domain expertise and analytics tracking.","hierarchy":{"lvl0":"Advanced","lvl1":"NeuroLink Factory Patterns - Complete Implementation Guide","lvl2":"Conclusion","lvl3":""}},
|
|
281
|
-
{"objectID":"c6195d69e8507af484f7b546748ef9e24e0a3f0830b302a621078695d30554b2","title":"Factory Pattern Migration Guide","url":"/docs/advanced/factory-patterns","content":"Factory Pattern Migration Guide\n\nOverview\n\nNeuroLink has been refactored to use a unified factory pattern architecture where
|
|
282
|
-
{"objectID":"e1fbb3f6c4772e0c6b8fdab79ea987445b405779abd4e704b529a1c7027733a5","title":"Overview","url":"/docs/advanced/factory-patterns#overview","content":"NeuroLink has been refactored to use a unified factory pattern architecture where
|
|
283
|
-
{"objectID":"f01f032c4a2a3ab3836f627b474c1abe402de7bf927e4d802f874143b9af4235","title":"1. Unified BaseProvider Architecture","url":"/docs/advanced/factory-patterns#1-unified-baseprovider-architecture","content":"
|
|
284
|
-
{"objectID":"cee8027d57ee843cee86a6c97eb9d046dbe7e21a69ce4b512946efc45205cc41","title":"2. Automatic Tool Support","url":"/docs/advanced/factory-patterns#2-automatic-tool-support","content":"
|
|
285
|
-
{"objectID":"aa2c23eaf2b0c2e2be76dc3084b8444c0b70d366332d093c32a84e2528261082","title":"3. Simplified Provider Implementation","url":"/docs/advanced/factory-patterns#3-simplified-provider-implementation","content":"Providers no longer need to implement their own tool handling - they inherit it from BaseProvider. This means:\nNo more executeGenerate methods in individual providers\nConsistent tool behavior across
|
|
281
|
+
{"objectID":"c6195d69e8507af484f7b546748ef9e24e0a3f0830b302a621078695d30554b2","title":"Factory Pattern Migration Guide","url":"/docs/advanced/factory-patterns","content":"Factory Pattern Migration Guide\n\nOverview\n\nNeuroLink has been refactored to use a unified factory pattern architecture where providers inherit from a common BaseProvider class. This provides consistent tool support and behavior across supported AI providers.\n\nWhat Changed\nUnified BaseProvider Architecture\n\nProviders now inherit from BaseProvider, which provides:\nBuilt-in tool support (6 core tools)\nConsistent generate() and stream() methods\nAnalytics and evaluation capabilities\nStandardized error handling\nAutomatic Tool Support\n\nProviders automatically include these tools:\ngetCurrentTime - Get current date and time\nreadFile - Read file contents\nlistDirectory - List directory contents\ncalculateMath - Perform calculations\nwriteFile - Write to files\nsearchFiles - Search for files by pattern\nSimplified Provider Implementation\n\nProviders no longer need to implement their own tool handling - they inherit it from BaseProvider. This means:\nNo more executeGenerate methods in individual providers\nConsistent tool behavior across supported providers\nLess code duplication\n\nMigration Steps\n\nFor Users\n\nGood news! There are no breaking changes. Your existing code will continue to work exactly as before.\n\nTool Usage (No Changes Required)\n\nDisabling Tools (New Option)\n\nFor Provider Developers\n\nIf you've created custom providers, you'll need to update them to use the new pattern:\n\nBefore (Old Pattern)\n\nAfter (New Pattern)\n\nProvider Tool Support Status\n\nAfter the refactoring, here's the current status of tool support:\n\n| Provider | Status | Notes |\n| ------------ | ----------------- | ---------------------------------------------------- |\n| OpenAI | ✅ Full Support | All tools working correctly |\n| Google AI | ✅ Full Support | Excellent tool execution |\n| Anthropic | ✅ Full Support | Working after max_tokens fix |\n| Azure OpenAI | ✅ Full Support | Same as OpenAI |\n| Mistral | ✅ Full Support | Good tool support |\n| HuggingFace | ⚠️ Partial | Model sees tools but may describe instead of execute |\n| Vertex AI | ⚠️ Partial | Tools available but may not execute |\n| Ollama | ❌ Limited | Requires specific models (e.g., gemma3n) |\n| Bedrock | ✅ Full Support\\* | Requires valid AWS credentials |\n\nBenefits of the New Architecture\nConsistency: Providers behave the same way with tools\nMaintainability: Less code duplication, easier to update\nReliability: Centralized tool handling reduces bugs\nExtensibility: Easy to add new tools for providers at once\nTesting: Simplified testing with consistent behavior\n\nCommon Issues and Solutions\n\nIssue: Provider Not Using Tools\n\nSolution: Check if your model supports function calling. Some models (especially older or smaller ones) may not support tools.\n\nIssue: HuggingFace Describing Tools Instead of Using Them\n\nSolution: This is a model limitation. Use models that support function calling:\nmistralai/Mixtral-8x7B-Instruct-v0.1\nmistralai/Mistral-7B-Instruct-v0.2\n\nIssue: Ollama Returns Empty Content\n\nSolution: Use models that support tool calling:\n\nIssue: Vertex AI Not Using Tools\n\nSolution: This may require schema formatting adjustments. The Vertex provider needs to format tools according to Google's Gemini API schema.\n\nFuture Improvements\nDynamic Tool Loading: Ability to add custom tools at runtime\nProvider-Specific Tool Formatting: Automatic adaptation of tool schemas for each provider\nTool Usage Analytics: Detailed metrics on which tools are used most\nTool Caching: Cache tool results for better performance\n\nSupport\n\nIf you encounter any issues with the migration:\nCheck the provider status documentation\nReview the provider configuration guide\nOpen an issue on GitHub with details about your use case\n\nRemember: No breaking changes! Your existing code continues to work. The factory pattern refactoring improves the internal architecture while maintaining full backward compatibility.","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"","lvl3":""}},
|
|
282
|
+
{"objectID":"e1fbb3f6c4772e0c6b8fdab79ea987445b405779abd4e704b529a1c7027733a5","title":"Overview","url":"/docs/advanced/factory-patterns#overview","content":"NeuroLink has been refactored to use a unified factory pattern architecture where providers inherit from a common BaseProvider class. This provides consistent tool support and behavior across supported AI providers.","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Overview","lvl3":""}},
|
|
283
|
+
{"objectID":"f01f032c4a2a3ab3836f627b474c1abe402de7bf927e4d802f874143b9af4235","title":"1. Unified BaseProvider Architecture","url":"/docs/advanced/factory-patterns#1-unified-baseprovider-architecture","content":"Providers now inherit from BaseProvider, which provides:\nBuilt-in tool support (6 core tools)\nConsistent generate() and stream() methods\nAnalytics and evaluation capabilities\nStandardized error handling","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"1. Unified BaseProvider Architecture","lvl3":""}},
|
|
284
|
+
{"objectID":"cee8027d57ee843cee86a6c97eb9d046dbe7e21a69ce4b512946efc45205cc41","title":"2. Automatic Tool Support","url":"/docs/advanced/factory-patterns#2-automatic-tool-support","content":"Providers automatically include these tools:\ngetCurrentTime - Get current date and time\nreadFile - Read file contents\nlistDirectory - List directory contents\ncalculateMath - Perform calculations\nwriteFile - Write to files\nsearchFiles - Search for files by pattern","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"2. Automatic Tool Support","lvl3":""}},
|
|
285
|
+
{"objectID":"aa2c23eaf2b0c2e2be76dc3084b8444c0b70d366332d093c32a84e2528261082","title":"3. Simplified Provider Implementation","url":"/docs/advanced/factory-patterns#3-simplified-provider-implementation","content":"Providers no longer need to implement their own tool handling - they inherit it from BaseProvider. This means:\nNo more executeGenerate methods in individual providers\nConsistent tool behavior across supported providers\nLess code duplication","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"3. Simplified Provider Implementation","lvl3":""}},
|
|
286
286
|
{"objectID":"86d70d915acdc3b44f307a6b520059845be38b4e81b2e52cce24bb9abc3edc83","title":"For Users","url":"/docs/advanced/factory-patterns#for-users","content":"Good news! There are no breaking changes. Your existing code will continue to work exactly as before.","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"For Users","lvl3":""}},
|
|
287
287
|
{"objectID":"bc63907d67e45dc5b0bf70d6f38f067bb5f6fb78caa9dbf87a931fcb08b25876","title":"For Provider Developers","url":"/docs/advanced/factory-patterns#for-provider-developers","content":"If you've created custom providers, you'll need to update them to use the new pattern:","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"For Provider Developers","lvl3":""}},
|
|
288
288
|
{"objectID":"d5baf3cc166eadb899b8b3ec96343a289e6578f97cfabe10f343e97967fc781b","title":"Provider Tool Support Status","url":"/docs/advanced/factory-patterns#provider-tool-support-status","content":"After the refactoring, here's the current status of tool support:\n\n| Provider | Status | Notes |\n| ------------ | ----------------- | ---------------------------------------------------- |\n| OpenAI | ✅ Full Support | All tools working correctly |\n| Google AI | ✅ Full Support | Excellent tool execution |\n| Anthropic | ✅ Full Support | Working after max_tokens fix |\n| Azure OpenAI | ✅ Full Support | Same as OpenAI |\n| Mistral | ✅ Full Support | Good tool support |\n| HuggingFace | ⚠️ Partial | Model sees tools but may describe instead of execute |\n| Vertex AI | ⚠️ Partial | Tools available but may not execute |\n| Ollama | ❌ Limited | Requires specific models (e.g., gemma3n) |\n| Bedrock | ✅ Full Support\\* | Requires valid AWS credentials |","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Provider Tool Support Status","lvl3":""}},
|
|
289
|
-
{"objectID":"81adf8656716613f0b16078865a8f472548c274ff61064a79ed4bd5f0864effc","title":"Benefits of the New Architecture","url":"/docs/advanced/factory-patterns#benefits-of-the-new-architecture","content":"Consistency:
|
|
289
|
+
{"objectID":"81adf8656716613f0b16078865a8f472548c274ff61064a79ed4bd5f0864effc","title":"Benefits of the New Architecture","url":"/docs/advanced/factory-patterns#benefits-of-the-new-architecture","content":"Consistency: Providers behave the same way with tools\nMaintainability: Less code duplication, easier to update\nReliability: Centralized tool handling reduces bugs\nExtensibility: Easy to add new tools for providers at once\nTesting: Simplified testing with consistent behavior","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Benefits of the New Architecture","lvl3":""}},
|
|
290
290
|
{"objectID":"5a00f643d737c3d5f664f4d5343612485e7cbee65a7b25ba3385f5b2dc46c2f3","title":"Issue: Provider Not Using Tools","url":"/docs/advanced/factory-patterns#issue-provider-not-using-tools","content":"Solution: Check if your model supports function calling. Some models (especially older or smaller ones) may not support tools.","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Issue: Provider Not Using Tools","lvl3":""}},
|
|
291
291
|
{"objectID":"5468d676003346b5b73b22385b4ba748b49c6104f7ef79e9d741ff91992fc60a","title":"Issue: HuggingFace Describing Tools Instead of Using Them","url":"/docs/advanced/factory-patterns#issue-huggingface-describing-tools-instead-of-using-them","content":"Solution: This is a model limitation. Use models that support function calling:\nmistralai/Mixtral-8x7B-Instruct-v0.1\nmistralai/Mistral-7B-Instruct-v0.2","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Issue: HuggingFace Describing Tools Instead of Using Them","lvl3":""}},
|
|
292
292
|
{"objectID":"09138271807d52bd82973c6161251f23d0d534118286a356017d87d7f64b1c6b","title":"Issue: Ollama Returns Empty Content","url":"/docs/advanced/factory-patterns#issue-ollama-returns-empty-content","content":"Solution: Use models that support tool calling:\n\n`bash","hierarchy":{"lvl0":"Advanced","lvl1":"Factory Pattern Migration Guide","lvl2":"Issue: Ollama Returns Empty Content","lvl3":""}},
|
|
@@ -520,11 +520,11 @@
|
|
|
520
520
|
{"objectID":"8808ba67debf1606303ecc0aaa21f46aad53b23e0545e852ae816da0f8d1b70e","title":"Network Commands","url":"/docs/agents/VERIFICATION#network-commands","content":"[ ] neurolink network create - available\n[ ] neurolink network list - available\n[ ] neurolink network execute - available\n[ ] neurolink network run (alias for execute) - available\n\nSee CLI-COVERAGE.md for full flag reference and usage\nexamples.","hierarchy":{"lvl0":"Agents","lvl1":"Multi-Agent Networks Verification Checklist","lvl2":"Network Commands","lvl3":""}},
|
|
521
521
|
{"objectID":"3bf417c52feb21b5fcbad8ff3162a8bae02e1245c62819c46ed375c3d373c2ee","title":"Final Verification Summary","url":"/docs/agents/VERIFICATION#final-verification-summary","content":"| Category | Method | Status |\n| -------------------- | ---------------------------------------------------- | ------ |\n| Agent Class | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| AgentNetwork | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| MessageBus | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| HubSpokeTopology | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| MeshTopology | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| HierarchicalTopology | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |\n| CLI Commands | Manual smoke test (neurolink agent --help) | ? |\n| Integration | pnpm exec tsx test/continuous-test-suite-agents.ts | ? |","hierarchy":{"lvl0":"Agents","lvl1":"Multi-Agent Networks Verification Checklist","lvl2":"Final Verification Summary","lvl3":""}},
|
|
522
522
|
{"objectID":"0e38ebba0b49d2df35a436aec7b1df78eb32193aba379664f377a9d1029ec49a","title":"Sign-Off","url":"/docs/agents/VERIFICATION#sign-off","content":"[ ] Integration tests passing\n[ ] CLI commands smoke-tested\n[ ] Performance acceptable\n[ ] Documentation complete\n\nVerified by: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ Date: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\","hierarchy":{"lvl0":"Agents","lvl1":"Multi-Agent Networks Verification Checklist","lvl2":"Sign-Off","lvl3":""}},
|
|
523
|
-
{"objectID":"1dcbe493b12b60692a8a9f9e2f47b6789f2a5f0cb86b6fb64bf93493eb0d6c64","title":"🧠 AI Analysis Tools","url":"/docs/ai-analysis-tools","content":"🧠 AI Analysis Tools\n\nNeuroLink features 3 specialized AI Analysis Tools for AI optimization and workflow enhancement. These tools work seamlessly behind our factory method interface, providing enterprise-grade AI analysis capabilities.\n\n🏆 Production Status\n\nProduction Ready: 20/20 Tests Passing (100% Success Rate)\n✅ 3 AI Analysis Tools Implemented: Complete AI optimization and analysis capabilities\n✅ Enterprise Integration: Professional web interface with full API endpoints\n✅ Performance Validated: All tools execute under 1ms individually, 7 seconds total for full suite\n✅ Production Infrastructure: Rich context, permissions, error handling, comprehensive validation\n\n🔧 Available Tools\nAI Usage Analysis - analyzeAIUsage()\n\nAnalyze AI usage patterns, token consumption, and cost optimization across
|
|
523
|
+
{"objectID":"1dcbe493b12b60692a8a9f9e2f47b6789f2a5f0cb86b6fb64bf93493eb0d6c64","title":"🧠 AI Analysis Tools","url":"/docs/ai-analysis-tools","content":"🧠 AI Analysis Tools\n\nNeuroLink features 3 specialized AI Analysis Tools for AI optimization and workflow enhancement. These tools work seamlessly behind our factory method interface, providing enterprise-grade AI analysis capabilities.\n\n🏆 Production Status\n\nProduction Ready: 20/20 Tests Passing (100% Success Rate)\n✅ 3 AI Analysis Tools Implemented: Complete AI optimization and analysis capabilities\n✅ Enterprise Integration: Professional web interface with full API endpoints\n✅ Performance Validated: All tools execute under 1ms individually, 7 seconds total for full suite\n✅ Production Infrastructure: Rich context, permissions, error handling, comprehensive validation\n\n🔧 Available Tools\nAI Usage Analysis - analyzeAIUsage()\n\nAnalyze AI usage patterns, token consumption, and cost optimization across your configured providers.\n\nFeatures:\nToken Usage Analytics: Detailed breakdown by provider and time period\nCost Optimization: Identify most cost-effective providers for your workload\nUsage Patterns: Detect peak usage times and optimization opportunities\nProvider Comparison: Side-by-side cost and performance analysis\nProvider Performance Benchmarking - benchmarkProviders()\n\nAdvanced benchmarking with latency, quality, and cost metrics across configured AI providers.\n\nFeatures:\nLatency Testing: Measure real response times across providers\nQuality Assessment: Evaluate output quality for different prompt types\nCost Efficiency: Calculate cost per token and value metrics\nProvider Rankings: Automatic ranking by performance criteria\nPrompt Parameter Optimization - optimizePrompt()\n\nOptimize prompt parameters (temperature, max tokens, style) for better output quality.\n\nFeatures:\nParameter Tuning: Automatic optimization of temperature, max tokens, style\nQuality Prediction: Estimate quality improvements from parameter changes\nAlternative Suggestions: Multiple parameter sets for different use cases\nStyle Optimization: Adjust parameters for specific writing styles\n\n🎯 Business Benefits\n\nCost Optimization\nProvider Cost Analysis: Identify most cost-effective providers for your workload\nUsage Pattern Insights: Detect opportunities to reduce token consumption\nBudget Planning: Predict costs based on historical usage patterns\n\nPerformance Enhancement\nReal-time Benchmarking: Continuous performance monitoring across providers\nQuality Metrics: Measure and improve output quality over time\nLatency Optimization: Choose fastest providers for time-sensitive applications\n\nParameter Intelligence\nAutomated Tuning: Remove guesswork from prompt parameter selection\nQuality Prediction: Understand impact of parameter changes before implementation\nStyle Adaptation: Optimize parameters for different content types\n\n🌐 Interactive Web Interface\n\nAll AI Analysis Tools are available through our unified demo application with professional UI:\n\nFeatures\n✅ Real-time Analysis: Interactive forms for all 3 analysis tools\n✅ API Endpoints: Full REST API at /api/ai/analyze-usage, /api/ai/benchmark-performance, /api/ai/optimize-parameters\n✅ JSON Results: Comprehensive analysis results with visual feedback\n✅ Simulation Mode: Fallback to realistic simulated responses for demonstration\n\nAPI Endpoints\n\nAnalyze AI Usage\n\nBenchmark Performance\n\nOptimize Parameters\n\n🎬 Visual Documentation\n\nScreenshots\nAI Usage Analysis Interface: Interactive form with real-time token analysis\nPerformance Benchmarking: Provider comparison with latency and quality metrics\nParameter Optimization: Prompt tuning interface with multiple suggestions\n\nDemo Videos\n\nAll analysis tools are demonstrated in our comprehensive demo videos:\nVisual Demos - Real-time analysis and optimization demonstrations\n\n🔧 Technical Implementation\n\nMCP Integration\n\nAI Analysis Tools are implemented as MCP (Model Context Protocol) tools that work internally behind our factory methods:\n\nError Handling\nGraceful Fallback: Tools fall back to simulation mode if AI providers unavailable\nComprehensive Validation: Input validation and error reporting\nProduction Logging: Detailed logging for debugging and monitoring\n\nPerformance Metrics\nTool Execution: Individual tools execute under 1ms\nSuite Execution: Complete analysis suite runs in ~7 seconds\nAPI Response: REST endpoints respond within 2-5 seconds\nError Recovery: Automatic fallback to simulation mode on provider failures\n\n🚀 Getting Started\nInstall NeuroLink: npm install @juspay/neurolink\nSet up providers: Configure at least one AI provider (see Provider Configuration) (now with authentication and model availability checks)\nTry the tools: Use factory methods or visit the demo application\nIntegrate APIs: Use REST endpoints for web applications\n\n📚 Related Documentation\nMain README - Project overview and quick start\nAI Workflow Tools - Development lifecycle tools\nMCP Foundation - Technical architecture details\nAPI Reference - Complete TypeScript API\nVisual Demos - Screenshots and videos\n\nEnterprise AI Analysis - Transform your AI development workflow with data-driven insight","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"","lvl3":""}},
|
|
524
524
|
{"objectID":"66690692e64f192b8fce4bc12064c12cd35dcbeaf9fb1990c69ccda1b84f0a58","title":"🧠 AI Analysis Tools","url":"/docs/ai-analysis-tools#-ai-analysis-tools","content":"NeuroLink features 3 specialized AI Analysis Tools for AI optimization and workflow enhancement. These tools work seamlessly behind our factory method interface, providing enterprise-grade AI analysis capabilities.","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"🧠 AI Analysis Tools","lvl3":""}},
|
|
525
525
|
{"objectID":"ea8da74b416b1adbb43bbb8d705549eb806e256ee9a12f302e0b8812cfa100ef","title":"🏆 Production Status","url":"/docs/ai-analysis-tools#-production-status","content":"Production Ready: 20/20 Tests Passing (100% Success Rate)\n✅ 3 AI Analysis Tools Implemented: Complete AI optimization and analysis capabilities\n✅ Enterprise Integration: Professional web interface with full API endpoints\n✅ Performance Validated: All tools execute under 1ms individually, 7 seconds total for full suite\n✅ Production Infrastructure: Rich context, permissions, error handling, comprehensive validation","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"🏆 Production Status","lvl3":""}},
|
|
526
|
-
{"objectID":"b5bb3d3ac6141db777c7b58baac837ce10d4a35cc79794fb84a1a7c9f03c0d00","title":"1. AI Usage Analysis - analyzeAIUsage()","url":"/docs/ai-analysis-tools#1-ai-usage-analysis---analyzeaiusage","content":"Analyze AI usage patterns, token consumption, and cost optimization across
|
|
527
|
-
{"objectID":"e56c57d9e2c4bebca178d66bdb3825da39c6a402aa5cb3e360375dca3780f568","title":"2. Provider Performance Benchmarking - benchmarkProviders()","url":"/docs/ai-analysis-tools#2-provider-performance-benchmarking---benchmarkproviders","content":"Advanced benchmarking with latency, quality, and cost metrics across
|
|
526
|
+
{"objectID":"b5bb3d3ac6141db777c7b58baac837ce10d4a35cc79794fb84a1a7c9f03c0d00","title":"1. AI Usage Analysis - analyzeAIUsage()","url":"/docs/ai-analysis-tools#1-ai-usage-analysis---analyzeaiusage","content":"Analyze AI usage patterns, token consumption, and cost optimization across your configured providers.\n\nFeatures:\nToken Usage Analytics: Detailed breakdown by provider and time period\nCost Optimization: Identify most cost-effective providers for your workload\nUsage Patterns: Detect peak usage times and optimization opportunities\nProvider Comparison: Side-by-side cost and performance analysis","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"1. AI Usage Analysis - analyzeAIUsage()","lvl3":""}},
|
|
527
|
+
{"objectID":"e56c57d9e2c4bebca178d66bdb3825da39c6a402aa5cb3e360375dca3780f568","title":"2. Provider Performance Benchmarking - benchmarkProviders()","url":"/docs/ai-analysis-tools#2-provider-performance-benchmarking---benchmarkproviders","content":"Advanced benchmarking with latency, quality, and cost metrics across configured AI providers.\n\nFeatures:\nLatency Testing: Measure real response times across providers\nQuality Assessment: Evaluate output quality for different prompt types\nCost Efficiency: Calculate cost per token and value metrics\nProvider Rankings: Automatic ranking by performance criteria","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"2. Provider Performance Benchmarking - benchmarkProviders()","lvl3":""}},
|
|
528
528
|
{"objectID":"ccc0ec328fa4e1bf6569b75db1aab6acded275c4c3724465fdae50fb7658c641","title":"3. Prompt Parameter Optimization - optimizePrompt()","url":"/docs/ai-analysis-tools#3-prompt-parameter-optimization---optimizeprompt","content":"Optimize prompt parameters (temperature, max tokens, style) for better output quality.\n\nFeatures:\nParameter Tuning: Automatic optimization of temperature, max tokens, style\nQuality Prediction: Estimate quality improvements from parameter changes\nAlternative Suggestions: Multiple parameter sets for different use cases\nStyle Optimization: Adjust parameters for specific writing styles","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"3. Prompt Parameter Optimization - optimizePrompt()","lvl3":""}},
|
|
529
529
|
{"objectID":"b4acf2c29169709cf647011258869b62fcc281a8966741775480b1d545212969","title":"Cost Optimization","url":"/docs/ai-analysis-tools#cost-optimization","content":"Provider Cost Analysis: Identify most cost-effective providers for your workload\nUsage Pattern Insights: Detect opportunities to reduce token consumption\nBudget Planning: Predict costs based on historical usage patterns","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"Cost Optimization","lvl3":""}},
|
|
530
530
|
{"objectID":"6fa479f08fe4d34a1987229dc9244c0aea3fbeb096a2b900b7ac4de2c543ffd9","title":"Performance Enhancement","url":"/docs/ai-analysis-tools#performance-enhancement","content":"Real-time Benchmarking: Continuous performance monitoring across providers\nQuality Metrics: Measure and improve output quality over time\nLatency Optimization: Choose fastest providers for time-sensitive applications","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"Performance Enhancement","lvl3":""}},
|
|
@@ -539,7 +539,7 @@
|
|
|
539
539
|
{"objectID":"2d85636dfd7fae3624eb9a194ab51b1de91702965d5482f2986a28e36143cb7d","title":"Performance Metrics","url":"/docs/ai-analysis-tools#performance-metrics","content":"Tool Execution: Individual tools execute under 1ms\nSuite Execution: Complete analysis suite runs in ~7 seconds\nAPI Response: REST endpoints respond within 2-5 seconds\nError Recovery: Automatic fallback to simulation mode on provider failures","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"Performance Metrics","lvl3":""}},
|
|
540
540
|
{"objectID":"de9e31f569da491c78051955d3cb4e157104b14ead5fd10a21447a96b7e65f36","title":"🚀 Getting Started","url":"/docs/ai-analysis-tools#-getting-started","content":"Install NeuroLink: npm install @juspay/neurolink\nSet up providers: Configure at least one AI provider (see Provider Configuration) (now with authentication and model availability checks)\nTry the tools: Use factory methods or visit the demo application\nIntegrate APIs: Use REST endpoints for web applications","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"🚀 Getting Started","lvl3":""}},
|
|
541
541
|
{"objectID":"dfec0c50580feab838da9596a104c686eb1d154f090d71a99bf556dab7c7b721","title":"📚 Related Documentation","url":"/docs/ai-analysis-tools#-related-documentation","content":"Main README - Project overview and quick start\nAI Workflow Tools - Development lifecycle tools\nMCP Foundation - Technical architecture details\nAPI Reference - Complete TypeScript API\nVisual Demos - Screenshots and videos\n\nEnterprise AI Analysis - Transform your AI development workflow with data-driven insights and optimization recommendations.","hierarchy":{"lvl0":"Ai Analysis Tools","lvl1":"🧠 AI Analysis Tools","lvl2":"📚 Related Documentation","lvl3":""}},
|
|
542
|
-
{"objectID":"0c3ca4d7eec12de7fee3b64b95a83e48bfeaac676547551c8fc6ad41ad074f0d","title":"🚀 NeuroLink AI Enhancements - Complete Documentation","url":"/docs/ai-enhancements","content":"🚀 NeuroLink AI Enhancements - Complete Documentation\n\nOverview\n\nNeuroLink v3.1.0 introduces 6 powerful AI enhancement features that transform it from a basic AI SDK into a comprehensive AI development platform with quality monitoring and analytics capabilities.\n\n🆕 New Features\nResponse Quality Evaluation ⭐\n\nAI-powered quality scoring using fast, cost-effective models to evaluate response quality on multiple dimensions.\n\nMetrics:\nRelevance (1-10): How well the response addresses the prompt\nAccuracy (1-10): Factual correctness of the information\nCompleteness (1-10): Whether the response fully answers the question\nOverall (1-10): Combined quality assessment\n\nConfiguration:\nUsage Analytics 📊\n\nComprehensive tracking of AI usage patterns, costs, and performance metrics.\n\nMetrics Captured:\nToken usage (input, output, total)\nEstimated costs (based on provider pricing)\nResponse time\nProvider and model used\nCustom context data\nTimestamp\n\nSupported Cost Estimation:\nOpenAI (GPT-4, GPT-4 Turbo, GPT-3.5 Turbo)\nAnthropic (Claude 3 Opus, Sonnet, Haiku)\nGoogle AI (Gemini Pro, Gemini 2.5 Flash)\nGeneric Context Flow 🔄\n\nPass custom context objects through the entire AI request lifecycle for domain-specific tracking and analytics.\n\nUse Cases:\nUser identification (userId, sessionId)\nDomain-specific metadata (department, project)\nRequest categorization (priority, type)\nCustom business logic data\nQuality Monitoring 📈\n\nAnalytics and evaluation data returned in response objects for user-controlled alerting and monitoring.\n\nNo External Dependencies:\nAll data stays within NeuroLink ecosystem\nUsers control what to do with the data\nNo forced external endpoints or webhooks\n\n🛠️ SDK Usage\n\nBasic Usage with Analytics\n\nUsage with Quality Evaluation\n\nCombined Analytics and Evaluation\n\n🖥️ CLI Usage\n\nAnalytics Tracking\n\nQuality Evaluation\n\nCustom Context\n\nAll Features Combined\nUniversal Evaluation System 🌐\n\nEnterprise-grade multi-provider evaluation with intelligent fallback, cost optimization, and performance tuning.\n\nKey Features:\
|
|
542
|
+
{"objectID":"0c3ca4d7eec12de7fee3b64b95a83e48bfeaac676547551c8fc6ad41ad074f0d","title":"🚀 NeuroLink AI Enhancements - Complete Documentation","url":"/docs/ai-enhancements","content":"🚀 NeuroLink AI Enhancements - Complete Documentation\n\nOverview\n\nNeuroLink v3.1.0 introduces 6 powerful AI enhancement features that transform it from a basic AI SDK into a comprehensive AI development platform with quality monitoring and analytics capabilities.\n\n🆕 New Features\nResponse Quality Evaluation ⭐\n\nAI-powered quality scoring using fast, cost-effective models to evaluate response quality on multiple dimensions.\n\nMetrics:\nRelevance (1-10): How well the response addresses the prompt\nAccuracy (1-10): Factual correctness of the information\nCompleteness (1-10): Whether the response fully answers the question\nOverall (1-10): Combined quality assessment\n\nConfiguration:\nUsage Analytics 📊\n\nComprehensive tracking of AI usage patterns, costs, and performance metrics.\n\nMetrics Captured:\nToken usage (input, output, total)\nEstimated costs (based on provider pricing)\nResponse time\nProvider and model used\nCustom context data\nTimestamp\n\nSupported Cost Estimation:\nOpenAI (GPT-4, GPT-4 Turbo, GPT-3.5 Turbo)\nAnthropic (Claude 3 Opus, Sonnet, Haiku)\nGoogle AI (Gemini Pro, Gemini 2.5 Flash)\nGeneric Context Flow 🔄\n\nPass custom context objects through the entire AI request lifecycle for domain-specific tracking and analytics.\n\nUse Cases:\nUser identification (userId, sessionId)\nDomain-specific metadata (department, project)\nRequest categorization (priority, type)\nCustom business logic data\nQuality Monitoring 📈\n\nAnalytics and evaluation data returned in response objects for user-controlled alerting and monitoring.\n\nNo External Dependencies:\nAll data stays within NeuroLink ecosystem\nUsers control what to do with the data\nNo forced external endpoints or webhooks\n\n🛠️ SDK Usage\n\nBasic Usage with Analytics\n\nUsage with Quality Evaluation\n\nCombined Analytics and Evaluation\n\n🖥️ CLI Usage\n\nAnalytics Tracking\n\nQuality Evaluation\n\nCustom Context\n\nAll Features Combined\nUniversal Evaluation System 🌐\n\nEnterprise-grade multi-provider evaluation with intelligent fallback, cost optimization, and performance tuning.\n\nKey Features:\nMulti-Provider Support: Google AI, OpenAI, Anthropic, Vertex, Bedrock, Azure, Ollama, Hugging Face, Mistral\nIntelligent Fallback: Automatic provider selection when primary fails\nCost Optimization: Provider-specific cost calculations and budget awareness\nPerformance Modes: Fast, balanced, and quality evaluation options\nRetry Logic: Robust error handling with exponential backoff\n\nConfiguration:\n\nUsage:\n\nCLI Usage:\nLighthouse Enhanced Evaluation 🎯\n\nDomain-aware evaluation with 6-dimensional scoring based on Lighthouse AI platform patterns.\n\nEnhanced Scoring Dimensions:\nRelevance Score (1-10): How well response addresses the prompt\nAccuracy Score (1-10): Factual correctness of information\nCompleteness Score (1-10): Whether response fully answers question\nDomain Alignment (1-10): Expertise alignment with specified domain\nTerminology Accuracy (1-10): Proper use of domain-specific terms\nTool Effectiveness (1-10): How well MCP tools were utilized\n\nAdvanced Features:\nContext Integration: Tool usage tracking and conversation history\nDomain Expertise: Specialized evaluation prompts for specific domains\nEnterprise Telemetry: Structured logging with OpenTelemetry patterns\nBackward Compatibility: Full compatibility with Universal Evaluation System\n\nCLI Usage:\n\nSDK Usage:\n\n📋 Interface Reference\n\nEnhanced TextGenerationOptions\n\nAnalyticsData Structure\n\nEvaluationData Structure\n\n🔧 Configuration\n\nEnvironment Variables\n\nCost Estimation Configuration\n\nBuilt-in pricing for major providers (updated regularly):\n\n🚀 Performance Considerations\n\nPerformance Impact\nFeatures Disabled (default): Zero overhead\nAnalytics Only: \\<5ms additional processing\nEvaluation Only: Depends on evaluation model (recommend fast models)\nBoth Enabled: Minimal combined impact\n\nCost Optimization\nAnalytics: No additional API costs (local processing)\nEvaluation: Additional API calls to evaluation model\nRecommendation: Use fast, cheap models like Gemini 2.5 Flash for evaluation\n\nScaling Recommendations\nUse analytics for all production requests\nUse evaluation for critical or customer-facing content\nImplement sampling for high-volume applications\nCache evaluation results for similar prompts\n\n🛡️ Security & Privacy\nNo External Transmission: All data stays within NeuroLink ecosystem\nUser Control: You decide what to do with analytics/evaluation data\nContext Security: Context objects support any data format you control\nProvider Security: Same security model as existing NeuroLink providers\n\n🔄 Migration Guide\n\nFrom v3.0.x to v3.1.x\n\nZero Breaking Changes! All existing code continues to work unchanged.\n\nCLI Migration\n\n📚 Examples & Use Cases\n\nCustomer Support Analytics\n\nContent Generation Pipeline\n\nCost Monitoring Dashboard\n\n🎯 Best Practices\nEnable Analytics by Default: Track all production usage\nSelective Evaluation: Use for critical or customer-facing content\nMeaningful Context: Include user/session IDs for tracking\nQuality Thresholds: Set minimum quality score","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"","lvl3":""}},
|
|
543
543
|
{"objectID":"512ceed0db78e7f0d674d5e37f90436adc5b945cda65d883131596e99e69a0a6","title":"Overview","url":"/docs/ai-enhancements#overview","content":"NeuroLink v3.1.0 introduces 6 powerful AI enhancement features that transform it from a basic AI SDK into a comprehensive AI development platform with quality monitoring and analytics capabilities.","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Overview","lvl3":""}},
|
|
544
544
|
{"objectID":"d2122d692220c6532895d03b0cc8014c1663ff0479ac29ae7a4012c2d41eae55","title":"1. Response Quality Evaluation ⭐","url":"/docs/ai-enhancements#1-response-quality-evaluation-","content":"AI-powered quality scoring using fast, cost-effective models to evaluate response quality on multiple dimensions.\n\nMetrics:\nRelevance (1-10): How well the response addresses the prompt\nAccuracy (1-10): Factual correctness of the information\nCompleteness (1-10): Whether the response fully answers the question\nOverall (1-10): Combined quality assessment\n\nConfiguration:\n\n`bash","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"1. Response Quality Evaluation ⭐","lvl3":""}},
|
|
545
545
|
{"objectID":"9136704b56c2ed8a21fe9b3f36eeeecd37ea82d47ad8e42e087c3e6876baa285","title":"Optional environment variables","url":"/docs/ai-enhancements#optional-environment-variables","content":"NEUROLINKEVALUATIONMODEL=gemini-2.5-flash\nNEUROLINKEVALUATIONPROVIDER=google-ai\n`","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Optional environment variables","lvl3":""}},
|
|
@@ -557,7 +557,7 @@
|
|
|
557
557
|
{"objectID":"4ec3cef712d6cca4a3c2482777fad60bfb686d5b4c65e8be94e8c055df8f666b","title":"Context appears in analytics data for tracking","url":"/docs/ai-enhancements#context-appears-in-analytics-data-for-tracking","content":"`","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Context appears in analytics data for tracking","lvl3":""}},
|
|
558
558
|
{"objectID":"99797b075d2fa6f8219510f2bfa2c37028a1ee86c0f1690395f469dfbe3e492f","title":"All Features Combined","url":"/docs/ai-enhancements#all-features-combined","content":"`bash","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"All Features Combined","lvl3":""}},
|
|
559
559
|
{"objectID":"54a1be91463ed5aba200f5bcd864f4f09ef3c2691eaac2867069de2876f32252","title":"Use all enhancement features together","url":"/docs/ai-enhancements#use-all-enhancement-features-together","content":"npx @juspay/neurolink generate \"Generate marketing copy for AI product\" \\\n --enable-analytics \\\n --enable-evaluation \\\n --context '{\"campaign\":\"q1-2025\",\"target\":\"developers\",\"budget\":\"high\"}' \\\n --provider openai \\\n --temperature 0.8 \\\n --debug\n`","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Use all enhancement features together","lvl3":""}},
|
|
560
|
-
{"objectID":"f73ce5cc4748212c04a2d0ecb918e6e913ba8b463da3666a8301dd9364ff4ae1","title":"5. Universal Evaluation System 🌐","url":"/docs/ai-enhancements#5-universal-evaluation-system-","content":"Enterprise-grade multi-provider evaluation with intelligent fallback, cost optimization, and performance tuning.\n\nKey Features:\
|
|
560
|
+
{"objectID":"f73ce5cc4748212c04a2d0ecb918e6e913ba8b463da3666a8301dd9364ff4ae1","title":"5. Universal Evaluation System 🌐","url":"/docs/ai-enhancements#5-universal-evaluation-system-","content":"Enterprise-grade multi-provider evaluation with intelligent fallback, cost optimization, and performance tuning.\n\nKey Features:\nMulti-Provider Support: Google AI, OpenAI, Anthropic, Vertex, Bedrock, Azure, Ollama, Hugging Face, Mistral\nIntelligent Fallback: Automatic provider selection when primary fails\nCost Optimization: Provider-specific cost calculations and budget awareness\nPerformance Modes: Fast, balanced, and quality evaluation options\nRetry Logic: Robust error handling with exponential backoff\n\nConfiguration:\n\n`bash","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"5. Universal Evaluation System 🌐","lvl3":""}},
|
|
561
561
|
{"objectID":"c5b8c93c2a78edddf2837a27279c62d890f91fddf57ba40e54f1c5971a3d929d","title":"Primary evaluation setup","url":"/docs/ai-enhancements#primary-evaluation-setup","content":"NEUROLINKEVALUATIONPROVIDER=google-ai\nNEUROLINKEVALUATIONMODE=fast\nNEUROLINKEVALUATIONFALLBACK_ENABLED=true\nNEUROLINKEVALUATIONFALLBACK_PROVIDERS=openai,anthropic,vertex","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Primary evaluation setup","lvl3":""}},
|
|
562
562
|
{"objectID":"b036f6d4fafc2138e4d4fd6f1f26e45a2fd64a7c9b1970f22b6fb4779f5728cf","title":"Cost optimization","url":"/docs/ai-enhancements#cost-optimization","content":"NEUROLINKEVALUATIONPREFER_CHEAP=true\nNEUROLINKEVALUATIONMAXCOSTPER_EVAL=0.01","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Cost optimization","lvl3":""}},
|
|
563
563
|
{"objectID":"49ea85018663a897b47d6278ee3285e382241cb631986b270e86295e75d8c60d","title":"Performance tuning","url":"/docs/ai-enhancements#performance-tuning","content":"NEUROLINKEVALUATIONTIMEOUT=10000\nNEUROLINKEVALUATIONRETRY_ATTEMPTS=2\ntypescript\n// Automatic provider selection\nconst result = await sdk.generate({\n input: { text: \"Explain quantum computing\" },\n enableEvaluation: true, // Uses configured evaluation system\n});\n\n// Will try: google-ai → openai → anthropic → vertex (if primary fails)\nbash","hierarchy":{"lvl0":"Ai Enhancements","lvl1":"🚀 NeuroLink AI Enhancements - Complete Documentation","lvl2":"Performance tuning","lvl3":""}},
|
|
@@ -1522,12 +1522,12 @@
|
|
|
1522
1522
|
{"objectID":"ffe5ad120992d05a60a13f1d04246f74a89bc13c3f737221ac91efe0a6771fb2","title":"Chain Composition","url":"/docs/cookbook/tool-chaining#chain-composition","content":"Combine multiple chains:","hierarchy":{"lvl0":"Cookbook","lvl1":"Tool Chaining with MCP","lvl2":"Chain Composition","lvl3":""}},
|
|
1523
1523
|
{"objectID":"0d06f318504ca1fd2c07c38065c4267a76a8f068816f3523eb215013da736fbb","title":"Best Practices","url":"/docs/cookbook/tool-chaining#best-practices","content":"Keep chains short: 3-5 steps maximum\nValidate early: Check results at each step\nHandle errors: Define recovery strategy\nUse templates: Standardize common patterns\nLog extensively: Track chain execution\nTest chains: Verify each step independently\nDocument dependencies: Clear step relationships","hierarchy":{"lvl0":"Cookbook","lvl1":"Tool Chaining with MCP","lvl2":"Best Practices","lvl3":""}},
|
|
1524
1524
|
{"objectID":"9c95df0df862fb0ef8f1783451c23f945fe97d7586ae2498f8282d9bda24cc6b","title":"See Also","url":"/docs/cookbook/tool-chaining#see-also","content":"MCP Integration Guide\nError Recovery\nBatch Processing\nSDK Custom Tools","hierarchy":{"lvl0":"Cookbook","lvl1":"Tool Chaining with MCP","lvl2":"See Also","lvl3":""}},
|
|
1525
|
-
{"objectID":"ce868a67c39b647fa16971a2c169ecee1f02565547d5aa2b0c3c64d62d979575","title":"Visual Demos","url":"/docs/demos","content":"Visual Demos\n\nExperience NeuroLink through comprehensive visual demonstrations, screenshots, and interactive examples.\n\n🎯 What You'll See Here\n\nThis section showcases NeuroLink's capabilities through visual content, making it easy to understand features before implementation.\nScreenshots — High-quality screenshots of CLI commands, web interfaces, and development workflows.\nVideos — Video demonstrations of NeuroLink features, from basic usage to advanced integrations.\nInteractive Demo — Live web demonstration with real AI generation across any provider you've configured.\n\n🚀 Quick Preview\n\nCLI in Action\n\nThe CLI provides a professional interface with comprehensive help, auto-completion, and rich output formatting.\n\nWeb Interface\n\nThe interactive web demo showcases all features with live AI generation across multiple providers.\n\n🖥️ Featured Demonstrations\n\nCommand Line Interface\n\nCheck the status of all configured AI providers with detailed diagnostics.\n\nGenerate content with analytics and evaluation enabled.\n\nBuilt-in tools working seamlessly across
|
|
1525
|
+
{"objectID":"ce868a67c39b647fa16971a2c169ecee1f02565547d5aa2b0c3c64d62d979575","title":"Visual Demos","url":"/docs/demos","content":"Visual Demos\n\nExperience NeuroLink through comprehensive visual demonstrations, screenshots, and interactive examples.\n\n🎯 What You'll See Here\n\nThis section showcases NeuroLink's capabilities through visual content, making it easy to understand features before implementation.\nScreenshots — High-quality screenshots of CLI commands, web interfaces, and development workflows.\nVideos — Video demonstrations of NeuroLink features, from basic usage to advanced integrations.\nInteractive Demo — Live web demonstration with real AI generation across any provider you've configured.\n\n🚀 Quick Preview\n\nCLI in Action\n\nThe CLI provides a professional interface with comprehensive help, auto-completion, and rich output formatting.\n\nWeb Interface\n\nThe interactive web demo showcases all features with live AI generation across multiple providers.\n\n🖥️ Featured Demonstrations\n\nCommand Line Interface\n\nCheck the status of all configured AI providers with detailed diagnostics.\n\nGenerate content with analytics and evaluation enabled.\n\nBuilt-in tools working seamlessly across providers you've configured.\n\nWeb Applications\n\nProfessional applications for business automation and content generation.\n\nCode generation, API development, and technical documentation.\n\nContent creation, storytelling, and creative writing assistance.\n\n🎬 Video Highlights\n\nQuick Start (2 minutes)\n\n \n \n Your browser does not support the video tag.\n \n\nComplete quick start demonstration from installation to first AI generation\n\nAdvanced Features (5 minutes)\n\n \n \n Your browser does not support the video tag.\n \n\nAnalytics, evaluation, custom tools, and MCP integration showcase\n\nEnterprise Workflow (8 minutes)\n\n \n \n Your browser does not support the video tag.\n \n\nProduction deployment, monitoring, and business automation examples\n\n🌐 Interactive Demo\n\nExperience NeuroLink live without installation:\n\nVisit our Interactive Demo to try NeuroLink with real AI providers.\n\nFeatures:\nLive AI Generation - Works with any provider you've configured\nReal-time Analytics - See costs and performance\nBuilt-in Tools - Experience MCP integration\nMultiple Use Cases - Business, creative, and technical examples\n :::\n\nDemo Highlights\nNo API Keys Required - Try basic functionality immediately\nProvider Comparison - See differences between AI providers\nPerformance Metrics - Real-time response times and costs\nTool Integration - Experience built-in tools in action\n\n📱 Platform Coverage\n\nDesktop/CLI Demos\nTerminal recordings with asciinema\nStep-by-step tutorials with screenshots\nError handling demonstrations\nAdvanced workflow examples\n\nWeb Interface Demos\nResponsive design across devices\nReal-time streaming visualization\nAnalytics dashboards\nConfiguration management\n\nMobile Optimization\nTouch-friendly interfaces\nResponsive layouts for small screens\nProgressive enhancement for all devices\n\n🎨 Visual Assets\n\nAll visual content is organized and optimized for:\nHigh resolution screenshots (2x retina)\nWeb-optimized videos (WebM + MP4)\nConsistent branding across all materials\nAccessibility with alt text and captions\n\n🔗 Integration Examples\n\nDocumentation Embedding\n\nPresentation Materials\nSlide templates for talks and presentations\nLogo assets in multiple formats\nBrand guidelines for consistent usage\nSocial media preview images\n\n📊 Performance Demonstrations\n\nBefore/After Comparisons\n\nSee the impact of NeuroLink's optimizations:\n68% faster provider status checks\nReal-time streaming vs. batch processing\nCost optimization across providers\nError recovery and fallback mechanisms\n\nBenchmark Results\n\nVisual representations of:\nResponse time comparisons\nCost analysis across providers\nQuality metrics from evaluation system\nResource usage monitoring\n\n🆘 Getting Help\n\nIf you have questions about any of the demonstrations:\nTroubleshooting Guide - Common issues\nFAQ - Frequently asked questions\nGitHub Issues - Report problems\nExamples - Code implementations","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"","lvl3":""}},
|
|
1526
1526
|
{"objectID":"5b9d72bcd11dd53980c3f840ee6547ff637abf5efcff22d51b8d4e8837863609","title":"Visual Demos","url":"/docs/demos#visual-demos","content":"Experience NeuroLink through comprehensive visual demonstrations, screenshots, and interactive examples.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Visual Demos","lvl3":""}},
|
|
1527
1527
|
{"objectID":"2cd0ec92f9696666dd92522e9af6bcabdd217f75e09d3d67d32ce4b17d4b7051","title":"🎯 What You'll See Here","url":"/docs/demos#-what-youll-see-here","content":"This section showcases NeuroLink's capabilities through visual content, making it easy to understand features before implementation.\nScreenshots — High-quality screenshots of CLI commands, web interfaces, and development workflows.\nVideos — Video demonstrations of NeuroLink features, from basic usage to advanced integrations.\nInteractive Demo — Live web demonstration with real AI generation across any provider you've configured.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"🎯 What You'll See Here","lvl3":""}},
|
|
1528
1528
|
{"objectID":"60dd215f1e5f92f6924213231a294f593310ecb1f1e98629eb1576ee0f224c2d","title":"CLI in Action","url":"/docs/demos#cli-in-action","content":"The CLI provides a professional interface with comprehensive help, auto-completion, and rich output formatting.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"CLI in Action","lvl3":""}},
|
|
1529
1529
|
{"objectID":"8a6842272904028166e7bfbccf1f8f4d6d2ac2d24b1ef45828cea9d8b1961e46","title":"Web Interface","url":"/docs/demos#web-interface","content":"The interactive web demo showcases all features with live AI generation across multiple providers.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Web Interface","lvl3":""}},
|
|
1530
|
-
{"objectID":"266b3432614326afef40270a4a35f07b6c1a42aba348c7473a88fb88e72ac793","title":"Command Line Interface","url":"/docs/demos#command-line-interface","content":"Check the status of all configured AI providers with detailed diagnostics.\n\nGenerate content with analytics and evaluation enabled.\n\nBuilt-in tools working seamlessly across
|
|
1530
|
+
{"objectID":"266b3432614326afef40270a4a35f07b6c1a42aba348c7473a88fb88e72ac793","title":"Command Line Interface","url":"/docs/demos#command-line-interface","content":"Check the status of all configured AI providers with detailed diagnostics.\n\nGenerate content with analytics and evaluation enabled.\n\nBuilt-in tools working seamlessly across providers you've configured.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Command Line Interface","lvl3":""}},
|
|
1531
1531
|
{"objectID":"9eb1722e76764542dae18b9cc97849c96aabb420ed22f8008b9cc65305173556","title":"Web Applications","url":"/docs/demos#web-applications","content":"Professional applications for business automation and content generation.\n\nCode generation, API development, and technical documentation.\n\nContent creation, storytelling, and creative writing assistance.","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Web Applications","lvl3":""}},
|
|
1532
1532
|
{"objectID":"f1c0b03a0a67602bf49a32dea7069854073bf26763951ff074414e5cee300fc5","title":"Quick Start (2 minutes)","url":"/docs/demos#quick-start-2-minutes","content":"Your browser does not support the video tag.\n \n\nComplete quick start demonstration from installation to first AI generation","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Quick Start (2 minutes)","lvl3":""}},
|
|
1533
1533
|
{"objectID":"c7398c945326eb389e975f8cc68fff941bb1c33166b059fdb8bb3df6179d1f5f","title":"Advanced Features (5 minutes)","url":"/docs/demos#advanced-features-5-minutes","content":"Your browser does not support the video tag.\n \n\nAnalytics, evaluation, custom tools, and MCP integration showcase","hierarchy":{"lvl0":"Demos","lvl1":"Visual Demos","lvl2":"Advanced Features (5 minutes)","lvl3":""}},
|
|
@@ -2054,24 +2054,24 @@
|
|
|
2054
2054
|
{"objectID":"166a9ad65e1515e9db6e67931e2910308aa192b2153625dfafbb3b9c1587ec54","title":"Conclusion","url":"/docs/development/cli-factory-impact-assessment#conclusion","content":"The Phase 1 Factory Infrastructure implementation successfully integrates with the NeuroLink CLI while maintaining 100% backward compatibility and zero breaking changes.","hierarchy":{"lvl0":"Development","lvl1":"CLI Factory Integration Impact Assessment","lvl2":"Conclusion","lvl3":""}},
|
|
2055
2055
|
{"objectID":"33820fd465ea242b750f15ef7f8a6fb6f83190494901ec7149fa28bc900f3c16","title":"Key Achievements:","url":"/docs/development/cli-factory-impact-assessment#key-achievements","content":"✅ All existing CLI commands work identically \n✅ New enhancement capabilities added seamlessly \n✅ Performance impact is negligible (\\<10ms per command) \n✅ Comprehensive test coverage validates compatibility \n✅ Optional enhancement adoption path provided","hierarchy":{"lvl0":"Development","lvl1":"CLI Factory Integration Impact Assessment","lvl2":"Key Achievements:","lvl3":""}},
|
|
2056
2056
|
{"objectID":"227cfa13d1bc577de415cfeabe65b8137752c4af9a3959c967b71d94ae1d232c","title":"User Benefits:","url":"/docs/development/cli-factory-impact-assessment#user-benefits","content":"Immediate: No changes required, everything works as before\nEnhanced: Optional analytics and evaluation capabilities\nFuture-ready: Foundation for advanced factory pattern features\n\nThe implementation demonstrates that sophisticated factory patterns can be integrated into existing CLI applications without disrupting user workflows while providing a foundation for powerful new capabilities.","hierarchy":{"lvl0":"Development","lvl1":"CLI Factory Integration Impact Assessment","lvl2":"User Benefits:","lvl3":""}},
|
|
2057
|
-
{"objectID":"7653c2d9a00bf549a0ab64dca9097afd52a6915d35aed3204ab36d4beb3c2442","title":"🏭 Factory Pattern Architecture","url":"/docs/development/factory-architecture","content":"🏭 Factory Pattern Architecture\n\nUnderstanding NeuroLink's unified architecture with BaseProvider inheritance and automatic tool support.\n\n📋 Overview\n\nNeuroLink uses a Factory Pattern architecture with BaseProvider inheritance to provide consistent functionality across
|
|
2057
|
+
{"objectID":"7653c2d9a00bf549a0ab64dca9097afd52a6915d35aed3204ab36d4beb3c2442","title":"🏭 Factory Pattern Architecture","url":"/docs/development/factory-architecture","content":"🏭 Factory Pattern Architecture\n\nUnderstanding NeuroLink's unified architecture with BaseProvider inheritance and automatic tool support.\n\n📋 Overview\n\nNeuroLink uses a Factory Pattern architecture with BaseProvider inheritance to provide consistent functionality across supported AI providers. This design eliminates code duplication and ensures each provider has the same core capabilities, including built-in tool support.\n\nKey Benefits\n✅ Zero Code Duplication: Shared logic in BaseProvider\n✅ Automatic Tool Support: Providers inherit 6 built-in tools\n✅ Consistent Interface: Same methods across supported providers\n✅ Easy Provider Addition: Minimal code for new providers\n✅ Centralized Updates: Fix once, apply everywhere\n\n🏗️ Architecture Components\nBaseProvider (Core Foundation)\n\nThe BaseProvider class is the foundation of all AI providers:\nProvider-Specific Implementation\n\nEach provider extends BaseProvider with minimal code:\nFactory Pattern Implementation\n\nThe factory creates providers with consistent configuration:\n\n🔧 Built-in Tool System\n\nTool Registration in BaseProvider\n\nProviders automatically get these tools:\n\nTool Conversion for AI Models\n\nBaseProvider converts tools to provider-specific format:\n\n🌟 Factory Pattern Benefits\nConsistent Provider Creation\nEasy Provider Addition\n\nAdding a new provider requires minimal code:\nCentralized Feature Addition\n\nAdd features once in BaseProvider, and providers get them:\n\n📊 Architecture Diagram\n\n🎯 Design Principles\nSingle Responsibility\n\nEach component has one clear purpose:\nBaseProvider: Core functionality and tool management\nProvider Classes: Provider-specific API integration\nFactory: Provider instantiation\nRegistry: Provider registration and lookup\nOpen/Closed Principle\nOpen for extension: Easy to add new providers\nClosed for modification: Core logic doesn't change\nDependency Inversion\nProviders depend on BaseProvider abstraction\nHigh-level modules don't depend on low-level details\nInterface Segregation\nClean, minimal interface for each provider\nOnly implement what's needed\n\n🔄 Request Flow\n\nHere's how a request flows through the architecture:\n\n💡 Real-World Benefits\n\nBefore Factory Pattern (Old Architecture)\n\nAfter Factory Pattern (Current Architecture)\n\n🚀 Future Extensibility\n\nThe factory pattern makes it easy to add new features:\nNew Tool Categories\nProvider Capabilities\nMiddleware System\n\n📚 Code Examples\n\nCreating Providers\n\nUsing Built-in Tools\n\nExtending with Custom Tools\n\n🏆 Summary\n\nThe Factory Pattern architecture provides:\nUnified Experience: Providers work the same way\nAutomatic Tools: 6 built-in tools for supported providers\nEasy Extension: Add providers with minimal code\nClean Code: No duplication, clear separation\nFuture-Proof: Easy to add new features\n\nThis architecture ensures NeuroLink remains maintainable, extensible, and consistent as new AI providers and features are added.\n\n🎥 Video Generation Handler Architecture\n\nVideo generation via Veo 3.1 follows the same factory pattern architecture with specialized handling for long-running operations.\n\nVideo Handler Implementation\n\nIntegration with BaseProvider\n\nFactory Pattern Benefits for Video Generation\nProvider-Specific Features: Video generation is only available on Vertex AI, but the architecture allows graceful handling:\nAutomatic Provider Routing: Factory can route video requests to Vertex AI:\nConsistent Error Handling: Video-specific errors follow the same pattern:\n\nArchitecture Diagram\n\nKey Design Decisions\nSeparation of Concerns: Video handler is separate from core provider logic\nExtensibility: Easy to add image generation, audio generation, etc.\nConsistent Interface: Same generate() method for text and video\nProvider-Specific Features: Only Vertex AI supports video, handled gracefully\nError Handling: Unified error codes across all features\n\nUnderstanding the architecture helps you build better AI applications! 🚀","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"","lvl3":""}},
|
|
2058
2058
|
{"objectID":"4a713e6b0aefc8075df59cb6e9a6c98d6ae2baf102143111fe6474a6a0cfe34a","title":"🏭 Factory Pattern Architecture","url":"/docs/development/factory-architecture#-factory-pattern-architecture","content":"Understanding NeuroLink's unified architecture with BaseProvider inheritance and automatic tool support.","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"🏭 Factory Pattern Architecture","lvl3":""}},
|
|
2059
|
-
{"objectID":"5dadb668cd312ec1f7eff140aff200a1ec9991b13768fba31f8739c10764e636","title":"📋 Overview","url":"/docs/development/factory-architecture#-overview","content":"NeuroLink uses a Factory Pattern architecture with BaseProvider inheritance to provide consistent functionality across
|
|
2060
|
-
{"objectID":"8e3e82d01fd07dd00dfd27095f09d4749d40b4894183667b1c37d7f96bc25dc7","title":"Key Benefits","url":"/docs/development/factory-architecture#key-benefits","content":"✅ Zero Code Duplication: Shared logic in BaseProvider\n✅ Automatic Tool Support:
|
|
2059
|
+
{"objectID":"5dadb668cd312ec1f7eff140aff200a1ec9991b13768fba31f8739c10764e636","title":"📋 Overview","url":"/docs/development/factory-architecture#-overview","content":"NeuroLink uses a Factory Pattern architecture with BaseProvider inheritance to provide consistent functionality across supported AI providers. This design eliminates code duplication and ensures each provider has the same core capabilities, including built-in tool support.","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"📋 Overview","lvl3":""}},
|
|
2060
|
+
{"objectID":"8e3e82d01fd07dd00dfd27095f09d4749d40b4894183667b1c37d7f96bc25dc7","title":"Key Benefits","url":"/docs/development/factory-architecture#key-benefits","content":"✅ Zero Code Duplication: Shared logic in BaseProvider\n✅ Automatic Tool Support: Providers inherit 6 built-in tools\n✅ Consistent Interface: Same methods across supported providers\n✅ Easy Provider Addition: Minimal code for new providers\n✅ Centralized Updates: Fix once, apply everywhere","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"Key Benefits","lvl3":""}},
|
|
2061
2061
|
{"objectID":"7bf8f7c438d806fa65aab600e3777e1854f2248dcfa701d2acf938313260e4e5","title":"1. BaseProvider (Core Foundation)","url":"/docs/development/factory-architecture#1-baseprovider-core-foundation","content":"The BaseProvider class is the foundation of all AI providers:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"1. BaseProvider (Core Foundation)","lvl3":""}},
|
|
2062
2062
|
{"objectID":"5b6ed455b31b69ad82a1ce2a4584726b502df700cf612fd32691c8f97acc4912","title":"2. Provider-Specific Implementation","url":"/docs/development/factory-architecture#2-provider-specific-implementation","content":"Each provider extends BaseProvider with minimal code:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"2. Provider-Specific Implementation","lvl3":""}},
|
|
2063
2063
|
{"objectID":"653fce94fb29f8649ef07355845877b2999bf066593e94c374651a73fcee10e2","title":"3. Factory Pattern Implementation","url":"/docs/development/factory-architecture#3-factory-pattern-implementation","content":"The factory creates providers with consistent configuration:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"3. Factory Pattern Implementation","lvl3":""}},
|
|
2064
|
-
{"objectID":"c4a2eb40e163f1fa8b9bcc90ae489c31d284692476f8bc58e8bc5537bed8d108","title":"Tool Registration in BaseProvider","url":"/docs/development/factory-architecture#tool-registration-in-baseprovider","content":"
|
|
2064
|
+
{"objectID":"c4a2eb40e163f1fa8b9bcc90ae489c31d284692476f8bc58e8bc5537bed8d108","title":"Tool Registration in BaseProvider","url":"/docs/development/factory-architecture#tool-registration-in-baseprovider","content":"Providers automatically get these tools:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"Tool Registration in BaseProvider","lvl3":""}},
|
|
2065
2065
|
{"objectID":"5601d2f077e7145f40c145ccc4cd7a37cbc20eb937578d6dfd0f1c94101377c1","title":"Tool Conversion for AI Models","url":"/docs/development/factory-architecture#tool-conversion-for-ai-models","content":"BaseProvider converts tools to provider-specific format:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"Tool Conversion for AI Models","lvl3":""}},
|
|
2066
2066
|
{"objectID":"c12f4aadd63c3cf9ee33cdc74b372b6147ae4ec33440cf30805dd0dbe0b8b8e5","title":"2. Easy Provider Addition","url":"/docs/development/factory-architecture#2-easy-provider-addition","content":"Adding a new provider requires minimal code:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"2. Easy Provider Addition","lvl3":""}},
|
|
2067
|
-
{"objectID":"860657bced1b0d8d3c72047f96649457b7ef41117b0ec0a577ea57f52140ac38","title":"3. Centralized Feature Addition","url":"/docs/development/factory-architecture#3-centralized-feature-addition","content":"Add features once in BaseProvider,
|
|
2067
|
+
{"objectID":"860657bced1b0d8d3c72047f96649457b7ef41117b0ec0a577ea57f52140ac38","title":"3. Centralized Feature Addition","url":"/docs/development/factory-architecture#3-centralized-feature-addition","content":"Add features once in BaseProvider, and providers get them:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"3. Centralized Feature Addition","lvl3":""}},
|
|
2068
2068
|
{"objectID":"54c23a3388f8cc3d1523c04f4171297c5dc287d4a8d9d7224e09a08e94178a5c","title":"1. Single Responsibility","url":"/docs/development/factory-architecture#1-single-responsibility","content":"Each component has one clear purpose:\nBaseProvider: Core functionality and tool management\nProvider Classes: Provider-specific API integration\nFactory: Provider instantiation\nRegistry: Provider registration and lookup","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"1. Single Responsibility","lvl3":""}},
|
|
2069
2069
|
{"objectID":"33c912790bc03eafdca577f8405c81b8780d011b814767b43160dff414195512","title":"2. Open/Closed Principle","url":"/docs/development/factory-architecture#2-openclosed-principle","content":"Open for extension: Easy to add new providers\nClosed for modification: Core logic doesn't change","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"2. Open/Closed Principle","lvl3":""}},
|
|
2070
2070
|
{"objectID":"6c25fd1ed1a24ae339cb2e2454b91787f5bef13112dfd7da5e69adbdc0399a5a","title":"3. Dependency Inversion","url":"/docs/development/factory-architecture#3-dependency-inversion","content":"Providers depend on BaseProvider abstraction\nHigh-level modules don't depend on low-level details","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"3. Dependency Inversion","lvl3":""}},
|
|
2071
2071
|
{"objectID":"5df1eee54967e1f5418691ef5a6390976b4c9eb9bf440af9526dbd720a52ec33","title":"4. Interface Segregation","url":"/docs/development/factory-architecture#4-interface-segregation","content":"Clean, minimal interface for each provider\nOnly implement what's needed","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"4. Interface Segregation","lvl3":""}},
|
|
2072
2072
|
{"objectID":"7fdfd517eeeeeab1baf449be579bf4c13ccb1c991c8827253423445c07fead94","title":"🔄 Request Flow","url":"/docs/development/factory-architecture#-request-flow","content":"Here's how a request flows through the architecture:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"🔄 Request Flow","lvl3":""}},
|
|
2073
2073
|
{"objectID":"6bcbf2f37cc4e2b47f49fea1404c98c68178de1ea02f69ffded79fa087601c8a","title":"🚀 Future Extensibility","url":"/docs/development/factory-architecture#-future-extensibility","content":"The factory pattern makes it easy to add new features:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"🚀 Future Extensibility","lvl3":""}},
|
|
2074
|
-
{"objectID":"007cbf07b462a333cece275e1c810875dd83d69ec9fe6657c4cbe6946336d5e9","title":"🏆 Summary","url":"/docs/development/factory-architecture#-summary","content":"The Factory Pattern architecture provides:\nUnified Experience:
|
|
2074
|
+
{"objectID":"007cbf07b462a333cece275e1c810875dd83d69ec9fe6657c4cbe6946336d5e9","title":"🏆 Summary","url":"/docs/development/factory-architecture#-summary","content":"The Factory Pattern architecture provides:\nUnified Experience: Providers work the same way\nAutomatic Tools: 6 built-in tools for supported providers\nEasy Extension: Add providers with minimal code\nClean Code: No duplication, clear separation\nFuture-Proof: Easy to add new features\n\nThis architecture ensures NeuroLink remains maintainable, extensible, and consistent as new AI providers and features are added.","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"🏆 Summary","lvl3":""}},
|
|
2075
2075
|
{"objectID":"cf7efb25d3b7a2babf2584abb6a92798e06c9006b03567b643fdb4b282fbe41f","title":"🎥 Video Generation Handler Architecture","url":"/docs/development/factory-architecture#-video-generation-handler-architecture","content":"Video generation via Veo 3.1 follows the same factory pattern architecture with specialized handling for long-running operations.","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"🎥 Video Generation Handler Architecture","lvl3":""}},
|
|
2076
2076
|
{"objectID":"18e3ab07fb9afe2bb09eb6f3e0204902695fc594c24895a123a0bbec044aab5c","title":"Factory Pattern Benefits for Video Generation","url":"/docs/development/factory-architecture#factory-pattern-benefits-for-video-generation","content":"Provider-Specific Features: Video generation is only available on Vertex AI, but the architecture allows graceful handling:\nAutomatic Provider Routing: Factory can route video requests to Vertex AI:\nConsistent Error Handling: Video-specific errors follow the same pattern:","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"Factory Pattern Benefits for Video Generation","lvl3":""}},
|
|
2077
2077
|
{"objectID":"8ffc8d10abcc7bd7ec83d262a7379a2e2ffa95d496588f05961fec9bdeed4f1e","title":"Key Design Decisions","url":"/docs/development/factory-architecture#key-design-decisions","content":"Separation of Concerns: Video handler is separate from core provider logic\nExtensibility: Easy to add image generation, audio generation, etc.\nConsistent Interface: Same generate() method for text and video\nProvider-Specific Features: Only Vertex AI supports video, handled gracefully\nError Handling: Unified error codes across all features\n\nUnderstanding the architecture helps you build better AI applications! 🚀","hierarchy":{"lvl0":"Development","lvl1":"🏭 Factory Pattern Architecture","lvl2":"Key Design Decisions","lvl3":""}},
|
|
@@ -2252,7 +2252,7 @@
|
|
|
2252
2252
|
{"objectID":"611da1cea62fd0b5bf313f3659615743913252c6ba487823808c87bee60efd00","title":"Never log secrets","url":"/docs/development/logging-guidelines#never-log-secrets","content":"API keys, tokens, credentials, presigned URL query strings, user prompt content\nand absolute host paths must not reach a log or a thrown error message.\nsrc/lib/utils/logSanitize.ts has the helpers, and they are the reason several\npast leaks are closed:\n\n| Helper | Use for |\n| --------------------------- | ------------------------------------------------------------------------------------------ |\n| redactUrlForError(url) | A URL in a log or error — strips query and fragment, so a presigned token cannot survive. |\n| redactUrlCredentials | A URL that may carry user:password@. |\n| redactPathFromMessage | A filesystem path in a message. |\n| sanitizeErrorCause | An error from Node/undici — these embed the full request URL or path in their own message. |\n| sanitizeHeaders | A header bag before logging it. |\n| sanitizeRecord | An arbitrary object, with string truncation. |\n| safeDebugSerialize | A large value in a debug log, length-capped. |\n| transformParamsForLogging | Tool-call parameters before logging them (this one lives in transformationUtils.ts). |\n\nThe rule for errors is the same as for logs: an error message is read by more\npeople than a log line, not fewer.","hierarchy":{"lvl0":"Development","lvl1":"Logging Guidelines","lvl2":"Never log secrets","lvl3":""}},
|
|
2253
2253
|
{"objectID":"c8bf38e894176c3436e15411303845f458ecf58f7bc7da0d105ecaf057adf7f4","title":"Per-instance routing","url":"/docs/development/logging-guidelines#per-instance-routing","content":"The logger routes per instance, so a worker's onLog bridge\n(NeuroLink.createWorkerInstance({ onLog })) receives only that worker's own\nevents, not everything in the process. The SDK entry points — generate,\nstream, generateText — run their bodies inside an AsyncLocalStorage\nscope carrying the instance's id, so a log call anywhere beneath them is\nattributed without threading an instance through every call site. Two things\nsit outside the scope by construction: logs emitted while a consumer drains a\nreturned stream (iteration runs in the consumer's context), and logs emitted\noutside any call — construction, background MCP reconnects, module init —\nwhich stay unattributed rather than being charged to an arbitrary instance.\n\nWorkerInstanceOptions.onLog's JSDoc (src/lib/types/isolatedAgent.ts) is\nthe authoritative description of this behaviour; check it before relying on\nthe routing in a new integration.\n\nA process-wide sink installed with logger.setEventEmitter() still receives\neverything either way.","hierarchy":{"lvl0":"Development","lvl1":"Logging Guidelines","lvl2":"Per-instance routing","lvl3":""}},
|
|
2254
2254
|
{"objectID":"fcd10d804aaa898a37f6d1303fbf6b07499f6bcd5b7e90e8f727aedec7b3f8e8","title":"Checklist for a new log call","url":"/docs/development/logging-guidelines#checklist-for-a-new-log-call","content":"Level matches the table above, and a routine branch is debug.\nMessage is a constant with a [Component] prefix; variables are in the data\n object.\nAnything expensive to build is behind logger.shouldLog(\"debug\").\nNo key, token, credential, prompt body, presigned URL or absolute host path\n in either the message or the data — run it through logSanitize.ts if in\n doubt.","hierarchy":{"lvl0":"Development","lvl1":"Logging Guidelines","lvl2":"Checklist for a new log call","lvl3":""}},
|
|
2255
|
-
{"objectID":"b7ea7ebd627e70d0c3debd74687c71a4ad7cb1a63a6b24e2a4818736e0129778","title":"Provider-Agnostic Testing Framework - January 2025 Snapshot","url":"/docs/development/provider-testing","content":"⚠️ HISTORICAL DOCUMENT (January 2025) — This is a snapshot of the provider-agnostic testing milestone when 9 providers were live. The current product ships
|
|
2255
|
+
{"objectID":"b7ea7ebd627e70d0c3debd74687c71a4ad7cb1a63a6b24e2a4818736e0129778","title":"Provider-Agnostic Testing Framework - January 2025 Snapshot","url":"/docs/development/provider-testing","content":"⚠️ HISTORICAL DOCUMENT (January 2025) — This is a snapshot of the provider-agnostic testing milestone when 9 providers were live. The current product ships many provider integrations (incl. voice and the decision-only decide() type). For the up-to-date provider list and capability matrix, see the README and Provider Capabilities Audit.\n\nProvider-Agnostic Testing Framework - January 2025 Snapshot\n\nUpdated: January 20, 2025 \nStatus: COMPLETE SUCCESS — 9/9 providers verified working at the time of writing \nObjective: Complete provider testing after resolving critical configuration bug\n\n🎯 MISSION ACCOMPLISHED\n\nProblem Solved\n\nThe previous testing framework was hardcoded to Google AI, making it impossible to validate other providers during migration. This has been completely fixed.\n\nSolution Implemented\n\n✅ Provider-agnostic test runner \n✅ Configurable environment validation \n✅ Dynamic provider switching \n✅ Hugging Face implementation complete\n✅ Ready for comprehensive testing phase\n\n🔧 IMPLEMENTATION DETAILS\nEnhanced Test Runner (run-parallel-tests.js)\n\nProvider Configuration System\n\nUsage Examples\n\nEnvironment Validation\n✅ Automatic API key detection\n✅ Clear error messages for missing credentials\n✅ Provider-specific configuration validation\n✅ Dynamic environment variable setup\nProvider-Agnostic Test Files\n\nDynamic Provider Detection\n\nUpdated Test Files\n✅ test/basic-functionality.test.ts - Provider-agnostic\n✅ test/analytics-features.test.ts - Provider-agnostic\n🔄 Additional test files can be updated using same pattern\n\n🧪 VALIDATION RESULTS\n\nGoogle AI Provider Testing\n\nOpenAI Provider Testing\n\nKey Observations\n✅ Both providers pass all tests\n✅ OpenAI is slightly faster (6.15s vs 9.08s)\n✅ Same test suite validates both providers\n✅ No code changes needed between providers\n\n🚀 STRATEGIC BENEFITS\nMigration Confidence\nBaseline Established: Google AI provider validated and working\nTarget Confirmed: OpenAI provider already operational\nTest Coverage: Universal test suite applies to all providers\nRegression Prevention: Any breaking changes immediately detected\nDevelopment Velocity\nParallel Testing: Can test multiple providers simultaneously\nQuick Validation: Individual provider testing in \\<10 seconds\nClear Feedback: Provider-specific error messages and success metrics\nAutomated Reports: JSON reports saved per provider\nQuality Assurance\nNo Manual Testing: Automated validation across all providers\nConsistent Coverage: Same test scenarios for all providers\nPerformance Monitoring: Response time tracking per provider\nEnvironment Validation: Automatic credential checking\n\n📋 NEXT STEPS FOR PHASE 3\n\n✅ Migration Complete - All Providers Operational\n\nWith the provider-agnostic testing framework and factory pattern complete:\n\n✅ Factory Pattern Implementation Complete\n✅ BaseProvider: All 9 providers (at the time of writing) extend BaseProvider (verified)\n✅ Custom Vercel AI SDK: Azure, HuggingFace, Ollama use custom implementations\n✅ Official Vercel AI SDK: OpenAI, Anthropic, Bedrock, Google AI, Mistral\n✅ 100% Success Rate: All 9 providers in this snapshot tested and operational\n\n✅ Architecture Achievements\n✅ No External Package Issues: Custom implementations solve compatibility problems\n✅ Universal Analytics: Analytics helper integrated across all providers\n✅ Unified Interface: Single parameter handling system operational\n✅ Enterprise Ready: Complete factory-first MCP architecture\n\nTesting Strategy for Phase 3\n\n🎯 SUCCESS CRITERIA MET\n\nOriginal Requirements\n✅ Fix testing script to be provider agnostic\n✅ Test with OpenAI first (already implemented)\n✅ Validate provider-agnostic functionality working\n\nAdditional Achievements\n✅ Support for 4 providers (Google AI, OpenAI, Anthropic, Bedrock)\n✅ Automatic environment validation\n✅ Clear error messaging\n✅ Performance benchmarking\n✅ JSON report generation\n\n🏆 CONCLUSION\n\nThe provider-agnostic testing framework is now complete and operational.\nProblem Solved: No longer bound to Google AI\nQuality Assured: Both existing providers validated\nFoundation Ready: Perfect infrastructure for Phase 3 migration\nDevelopment Ready: Can proceed with confidence\n\nWe can now begin Phase 3 migration knowing that every step can be validated immediately with comprehensive, provider-agnostic testing.","hierarchy":{"lvl0":"Development","lvl1":"Provider-Agnostic Testing Framework - January 2025 Snapshot","lvl2":"","lvl3":""}},
|
|
2256
2256
|
{"objectID":"40155d0164fbc188b20eb8158f339edd47393bae047ec9d23dc1a22745059fa8","title":"Provider-Agnostic Testing Framework - January 2025 Snapshot","url":"/docs/development/provider-testing#provider-agnostic-testing-framework---january-2025-snapshot","content":"Updated: January 20, 2025 \nStatus: COMPLETE SUCCESS — 9/9 providers verified working at the time of writing \nObjective: Complete provider testing after resolving critical configuration bug","hierarchy":{"lvl0":"Development","lvl1":"Provider-Agnostic Testing Framework - January 2025 Snapshot","lvl2":"Provider-Agnostic Testing Framework - January 2025 Snapshot","lvl3":""}},
|
|
2257
2257
|
{"objectID":"3212634220f7620a7f5dd8d7ffa3a5fb8b359e4c6722504ae1d7881d0020a6da","title":"Problem Solved","url":"/docs/development/provider-testing#problem-solved","content":"The previous testing framework was hardcoded to Google AI, making it impossible to validate other providers during migration. This has been completely fixed.","hierarchy":{"lvl0":"Development","lvl1":"Provider-Agnostic Testing Framework - January 2025 Snapshot","lvl2":"Problem Solved","lvl3":""}},
|
|
2258
2258
|
{"objectID":"7f3693bb49886451df629951ddeab92578715dda9bfabbd5d34a0d0c16c747a2","title":"Solution Implemented","url":"/docs/development/provider-testing#solution-implemented","content":"✅ Provider-agnostic test runner \n✅ Configurable environment validation \n✅ Dynamic provider switching \n✅ Hugging Face implementation complete\n✅ Ready for comprehensive testing phase","hierarchy":{"lvl0":"Development","lvl1":"Provider-Agnostic Testing Framework - January 2025 Snapshot","lvl2":"Solution Implemented","lvl3":""}},
|
|
@@ -2336,61 +2336,61 @@
|
|
|
2336
2336
|
{"objectID":"06453fe78480b6ae73c599e3820862490a2b30ddd72bd4dc0d65052855dae72c","title":"Test Data Requirements:","url":"/docs/development/testing-plan#test-data-requirements","content":"Mock AI provider responses\nTest WebSocket messages\nSample telemetry data\nChat conversation samples","hierarchy":{"lvl0":"Development","lvl1":"🧪 COMPREHENSIVE TESTING & VERIFICATION PLAN","lvl2":"Test Data Requirements:","lvl3":""}},
|
|
2337
2337
|
{"objectID":"759cf99082dba9a208b8b190c152cc5fc54c637c0e8826d7369b8994ab20ac6f","title":"Test Results Documentation:","url":"/docs/development/testing-plan#test-results-documentation","content":"Phase Results Summary - Pass/fail status for each phase\nPerformance Benchmarks - Before/after performance metrics\nIntegration Test Results - Real-world scenario outcomes\nBug Report - Any issues discovered during testing\nProduction Readiness Certificate - Final validation sign-off","hierarchy":{"lvl0":"Development","lvl1":"🧪 COMPREHENSIVE TESTING & VERIFICATION PLAN","lvl2":"Test Results Documentation:","lvl3":""}},
|
|
2338
2338
|
{"objectID":"2866fdda44a9f55d463a0c10f0d478793ec401edbb3ac475a9ff2a3cbbaf019d","title":"Updated Documentation:","url":"/docs/development/testing-plan#updated-documentation","content":"API Reference - Reflecting actual implementation\nExamples & Tutorials - Working code samples\nTroubleshooting Guide - Common issues and solutions\nPerformance Guide - Optimization recommendations\n\nReady for Execution: This plan provides comprehensive validation of all Lighthouse integration work while ensuring zero breaking changes and optimal performance.\n\nEstimated Total Time: 3 hours for complete validation\nCritical Path: Phase A must pass before proceeding to subsequent phases\nSuccess Rate Target: 100% pass rate for Critical criteria, 90%+ for Important criteria","hierarchy":{"lvl0":"Development","lvl1":"🧪 COMPREHENSIVE TESTING & VERIFICATION PLAN","lvl2":"Updated Documentation:","lvl3":""}},
|
|
2339
|
-
{"objectID":"51b6b861923c4ecf8410549bd73ebac7e465ba84aef90c9a499f86d45bd8225b","title":"🧪 NeuroLink Testing Guide —
|
|
2340
|
-
{"objectID":"4d9bb1de4ad3dfd116e55dc2d6b220825f5b43875d3fd78069496be8d856ff06","title":"🎉 Provider Testing Status","url":"/docs/development/testing#-provider-testing-status","content":"
|
|
2341
|
-
{"objectID":"8fc0eade856296973641598d92d1d671410031324b34910f255b9daf62bbc200","title":"Quick Provider Validation","url":"/docs/development/testing#quick-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2342
|
-
{"objectID":"e522bb68d746cfa26559e2fe3c17775ecced454e5eb5b1672cc734c310a125aa","title":"Test any provider via the CLI","url":"/docs/development/testing#test-any-provider-via-the-cli","content":"pnpm cli generate \"test\" --provider openai\npnpm cli generate \"test\" --provider anthropic\npnpm cli generate \"test\" --provider google-ai\npnpm cli generate \"test\" --provider deepseek\npnpm cli generate \"test\" --provider nvidia-nim\npnpm cli generate \"test\" --provider lm-studio\npnpm cli generate \"test\" --provider llamacpp\npnpm cli generate \"test\" --provider azure\npnpm cli generate \"test\" --provider mistral\npnpm cli generate \"test\" --provider ollama\npnpm cli generate \"test\" --provider vertex","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2343
|
-
{"objectID":"8304dacf623fd9daa0ab9a22acb9078e123f9aa467efbddbbe074af13c2cdd7a","title":"Test with enhancements (any provider works)","url":"/docs/development/testing#test-with-enhancements-any-provider-works","content":"pnpm cli generate \"test\" --provider google-ai --enable-analytics --enable-evaluation --debug\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2344
|
-
{"objectID":"962667c0956afc2243878258732206629fd012fb4cb4e266ca1cc92a76ec19ff","title":"Comprehensive Testing","url":"/docs/development/testing#comprehensive-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2345
|
-
{"objectID":"2abd04954506b423a74683585841f9bb5def930dedf02265b11096a04f7206e8","title":"Run full validation suite","url":"/docs/development/testing#run-full-validation-suite","content":"./validate-fixes.sh","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2346
|
-
{"objectID":"c0b895cc1390ca0f55f528c530bfe7f242648eb4408ae0634ae626fd6fcddc85","title":"Run comprehensive CLI tests","url":"/docs/development/testing#run-comprehensive-cli-tests","content":"node CLICOMPREHENSIVETESTS.js","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2347
|
-
{"objectID":"1444bf3290ae917bf6534b6e32f1f109f4451832b05c5743fa58efce2c979f7b","title":"Run before/after comparison","url":"/docs/development/testing#run-beforeafter-comparison","content":"node BEFOREAFTERCOMPARISON.js\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2348
|
-
{"objectID":"08c576cff131fac374c1c3a4375497793b511d4a53730510268c77e78416c89c","title":"Google AI Provider Validation","url":"/docs/development/testing#google-ai-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2349
|
-
{"objectID":"dbbd1df0dafb3c972c66761e7a286f29d6c648b6e9c5578051e634ad2e3401c7","title":"Test working model","url":"/docs/development/testing#test-working-model","content":"node ./dist/cli/index.js generate \"Hello\" --provider google-ai --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2350
|
-
{"objectID":"0216650963a9f582f523ec8c08f4fab7eb75ba4754d4ec751c1d8d9e6bfb400e","title":"Expected: No empty responses or fallbacks","url":"/docs/development/testing#expected-no-empty-responses-or-fallbacks","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2351
|
-
{"objectID":"13e82c8c22a2f7a24a2f34bc6d2183eb55ecff140bbd00ae93a892baaa9bd135","title":"OpenAI Provider Validation","url":"/docs/development/testing#openai-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2352
|
-
{"objectID":"f03fd4d28918a7fd77dbac824938c702f1486b54448009be7671ddd21f42591b","title":"Test OpenAI fallback","url":"/docs/development/testing#test-openai-fallback","content":"node ./dist/cli/index.js generate \"Hello\" --provider openai --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2353
|
-
{"objectID":"7de61b60e3aa538d051db0159fc80e3cbb63e4d0e4e04f37b6e801dad8a5f53f","title":"Expected: Accurate token counting (no NaN values)","url":"/docs/development/testing#expected-accurate-token-counting-no-nan-values","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2354
|
-
{"objectID":"f33aaba473bdf45c26d05793d64b2496936048e97d7e18b4e7cd943a60fec0db","title":"Multi-Provider Testing","url":"/docs/development/testing#multi-provider-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2355
|
-
{"objectID":"3040499d040ec7a9763949d3a928959dcf5ac65b964393671e1449b704c14857","title":"Test provider auto-selection","url":"/docs/development/testing#test-provider-auto-selection","content":"node ./dist/cli/index.js generate \"Hello\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2356
|
-
{"objectID":"6fcbf2c32c2277f72918a7923d587cecc8cf1e24d899694c95a46e1c2c25a8cd","title":"Expected: Graceful fallback if primary provider fails","url":"/docs/development/testing#expected-graceful-fallback-if-primary-provider-fails","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2357
|
-
{"objectID":"dbd1a1a8d7dc9ac0d259cdeef2ab1f7f5342e4e7d8c76def6624531e85139ac1","title":"Ensure No Breaking Changes","url":"/docs/development/testing#ensure-no-breaking-changes","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2358
|
-
{"objectID":"03974bf1b097b8efb16b817e92ef49803eacd3d3e178b4a1aa07b45a1a4ac866","title":"Test existing CLI commands (no enhancement flags)","url":"/docs/development/testing#test-existing-cli-commands-no-enhancement-flags","content":"node ./dist/cli/index.js generate \"Simple test\"\nnode ./dist/cli/index.js generate \"Simple test\"\nnode ./dist/cli/index.js gen \"Simple test\"","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2359
|
-
{"objectID":"8fb36dbdf2d8b1b6eb3d7edcdc8304649093d7b7a6cf9da64944bc1932382b8d","title":"Expected: All existing functionality works","url":"/docs/development/testing#expected-all-existing-functionality-works","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2360
|
-
{"objectID":"a0cab3a3fc984cfbe3985ae09fe6e79f141999deddd7b70548cfa578e9051a34","title":"Invalid Model Names","url":"/docs/development/testing#invalid-model-names","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2361
|
-
{"objectID":"c27b650b086910c0aeea0926a7081ace904ca5b4225d6a65de89c53f291e8484","title":"Test deprecated model handling","url":"/docs/development/testing#test-deprecated-model-handling","content":"node ./dist/cli/index.js generate \"test\" --provider google-ai --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2362
|
-
{"objectID":"1012fab5a00e125facac7dd6150f09d516d8f6af8e942b1dcca53b81bceb0f40","title":"Expected: Clear error message or automatic correction","url":"/docs/development/testing#expected-clear-error-message-or-automatic-correction","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2363
|
-
{"objectID":"5ddd754a280b4b927eb3dc046a889c6532f10c54a985864fd8228bda0a9f92d4","title":"Missing API Keys","url":"/docs/development/testing#missing-api-keys","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2364
|
-
{"objectID":"ef41be5889fafebb18d04e1c630e4960538a9cb519889de44c5160c0b98213f7","title":"Test without API keys","url":"/docs/development/testing#test-without-api-keys","content":"unset GOOGLEAIAPI_KEY\nunset OPENAIAPIKEY\nnode ./dist/cli/index.js generate \"test\" --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2365
|
-
{"objectID":"3e6ecdfc6fc0f3b6fbc2b555bc4872547b558fca8f46928ad51cd5439dde5dd4","title":"Expected: Helpful setup instructions","url":"/docs/development/testing#expected-helpful-setup-instructions","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2366
|
-
{"objectID":"6f84c9acd43c65eed6e126ecb28707eac9dbf9d2251aa495da657c84519144ac","title":"Network Issues","url":"/docs/development/testing#network-issues","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2367
|
-
{"objectID":"535fb979e4072fd5943718b60f942cfe2581e59d94f02bf0ab3f9c5296aed133","title":"Test with invalid API endpoint (simulated)","url":"/docs/development/testing#test-with-invalid-api-endpoint-simulated","content":"node ./dist/cli/index.js generate \"test\" --timeout 5s --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2368
|
-
{"objectID":"4a4ddc7e1ba7da05e8ac247d462c74e1d4796c47ca815b27edd6210911545a66","title":"Expected: Fallback to other providers if available","url":"/docs/development/testing#expected-fallback-to-other-providers-if-available","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2369
|
-
{"objectID":"732e97053310081527b3956475ec8f9543528f27634cb9a9437be97491fc022e","title":"Response Time Validation","url":"/docs/development/testing#response-time-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2370
|
-
{"objectID":"83436dd951e6c29193b97a7214bf39e68bba4321e298f87657bd15499ff55728","title":"Test response times with analytics","url":"/docs/development/testing#test-response-times-with-analytics","content":"node ./dist/cli/index.js generate \"Short prompt\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2371
|
-
{"objectID":"54a5273f2a0a118c577477cba7fa9d269a1f8bb310d8094e136c6392808b60ee","title":"Expected: Analytics data doesn't significantly slow requests","url":"/docs/development/testing#expected-analytics-data-doesnt-significantly-slow-requests","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2372
|
-
{"objectID":"e5a5c046c23621ae139301e8c65dd604dc84439b8e7b885e3334496a1056537c","title":"Token Counting Accuracy","url":"/docs/development/testing#token-counting-accuracy","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2373
|
-
{"objectID":"ccd90219360ecc36f15b0643eba076beb6ece97d47df2e726c02d5551923af2f","title":"Test accurate token counting","url":"/docs/development/testing#test-accurate-token-counting","content":"node ./dist/cli/index.js generate \"This is a test prompt for token counting\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2374
|
-
{"objectID":"33c361903e5d2155aee10120ed991aaf5c4ebc49b12169c7ffeb49e51b659acf","title":"Expected: Token counts match actual usage","url":"/docs/development/testing#expected-token-counts-match-actual-usage","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2375
|
-
{"objectID":"b879714c080fe2a85b50539fb224809866bec0b5ae9df829069f821f3356d017","title":"Analytics Data Completeness","url":"/docs/development/testing#analytics-data-completeness","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2376
|
-
{"objectID":"ab64c1128474c05c7de4a45c9d0206d74b008e7e99e3de844bbb54a021289d3e","title":"Test analytics data structure","url":"/docs/development/testing#test-analytics-data-structure","content":"node ./dist/cli/index.js generate \"Business email\" --enable-analytics --context '{\"project\":\"test\"}' --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2377
|
-
{"objectID":"f785281351d1476ace01b4412ce6621b8a6e47dc55e1f7263e647a4fa5ddc580","title":"- timestamp: ISO string","url":"/docs/development/testing#--timestamp-iso-string","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2378
|
-
{"objectID":"83e222546aabbdc6c7bc9f23c5d11b80d63b2b7fef71fcbe3ea2093f44cfb7d8","title":"Evaluation Data Validation","url":"/docs/development/testing#evaluation-data-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2379
|
-
{"objectID":"cb4404c5157f480b12911f00292e0578971e88becf2998f836a5f86f2e82139c","title":"Test evaluation scoring","url":"/docs/development/testing#test-evaluation-scoring","content":"node ./dist/cli/index.js generate \"Explain quantum physics\" --enable-evaluation --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2380
|
-
{"objectID":"ab73a02c6fd432b8740d1624770287217547ab7d9cea1f53080f9611db83937b","title":"- evaluationTime: number","url":"/docs/development/testing#--evaluationtime-number","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2381
|
-
{"objectID":"a762e4c091d9b3e54bd2a51a4cdf02851c6636cae857996467d2a9437ec085a2","title":"Context Flow Testing","url":"/docs/development/testing#context-flow-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2382
|
-
{"objectID":"d7eb0273fcdf438807e6ad66b71d1b1511436d60f50712f7246d76e3a4441865","title":"Test context preservation","url":"/docs/development/testing#test-context-preservation","content":"node ./dist/cli/index.js generate \"Help with task\" --context '{\"userId\":\"123\",\"department\":\"sales\"}' --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2383
|
-
{"objectID":"f4d4540747aa848513d17bd416fc18287b535713ed1a03fbce8f311b4fe6bdf6","title":"Expected: Context available throughout request chain","url":"/docs/development/testing#expected-context-available-throughout-request-chain","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2384
|
-
{"objectID":"19720de4c8ed35a547ab099355e2fd5175800e0930b25b1d218940db0baf60f1","title":"Common Issues","url":"/docs/development/testing#common-issues","content":"Empty Responses from Google AI\nCheck model name in .env file\nUse gemini-2.5-pro instead of deprecated models\nVerify API key is valid\nNaN Token Counts\nUsually indicates provider API failure\nCheck model configuration and API keys\nTest with --debug flag for detailed logs\nEnhancement Data Missing\nEnsure using --debug flag to see enhancement output\nVerify enhancement flags are correctly specified\nCheck that provider is working (not falling back)\nCLI Commands Not Found\nRun npm run build:cli to rebuild CLI\nCheck that dist/cli/index.js exists\nVerify Node.js version compatibility","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2385
|
-
{"objectID":"66eea4e65b778a0521203afbc43ff698e78df2a376ad66427ac83c227d77c081","title":"Debug Commands","url":"/docs/development/testing#debug-commands","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2386
|
-
{"objectID":"67d89ab41aec29dc1893e5e5fc6f086c5b1b31a95c6b6aa40677d932d03c9594","title":"Comprehensive debug information","url":"/docs/development/testing#comprehensive-debug-information","content":"node ./dist/cli/index.js generate \"debug test\" --provider google-ai --enable-analytics --enable-evaluation --context '{\"debug\":true}' --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2387
|
-
{"objectID":"d6a5b4654b0448dc17e98a0644da6c0251088520c2b778bd1b2fcf5169c5abd5","title":"Check provider status","url":"/docs/development/testing#check-provider-status","content":"node ./dist/cli/index.js status","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2388
|
-
{"objectID":"da0c759ab4959c695f7ba6d3682869e4b64af5010353fe3dfbcfed51eedec072","title":"Test specific provider","url":"/docs/development/testing#test-specific-provider","content":"node ./dist/cli/index.js generate \"provider test\" --provider openai --debug\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2389
|
-
{"objectID":"5b50f79d5e15b3b0476213bafa40c4be8a431bdd409be9330906e070ad72fb52","title":"Validation Script Usage","url":"/docs/development/testing#validation-script-usage","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2390
|
-
{"objectID":"838736a3fa982ded222301f415ca1ecc28a8bd1b718e40878f35ec514a555c23","title":"Run complete validation suite","url":"/docs/development/testing#run-complete-validation-suite","content":"./validate-fixes.sh","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2391
|
-
{"objectID":"489bc8592279699a24f5d95b3f635c1f1f30a8310b3d5d247e1f3109c6228d23","title":"Run specific test categories","url":"/docs/development/testing#run-specific-test-categories","content":"./validate-fixes.sh --cli-only\n./validate-fixes.sh --sdk-only\n./validate-fixes.sh --providers-only\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2392
|
-
{"objectID":"b9d3b2dedf68c9fecf0095380d37100ad6f63a1a5b4166af3428764814c5a2e4","title":"CI/CD Integration","url":"/docs/development/testing#cicd-integration","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2393
|
-
{"objectID":"8914e25e0d42823489948b21e26bde8f722750852c2514cf994cdc6e6b720611","title":"Add to CI pipeline","url":"/docs/development/testing#add-to-ci-pipeline","content":"npm run test\nnpm run build:cli\n./validate-fixes.sh --ci-mode\n`\n\nThis testing guide ensures all enhancement features work correctly while maintaining backward compatibility and providing clear troubleshooting guidance.","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide —
|
|
2339
|
+
{"objectID":"51b6b861923c4ecf8410549bd73ebac7e465ba84aef90c9a499f86d45bd8225b","title":"🧪 NeuroLink Testing Guide — Providers Validated in CI","url":"/docs/development/testing","content":"🧪 NeuroLink Testing Guide — Providers Validated in CI\n\n🎉 Provider Testing Status\n\nProviders supported — validated in CI where credentials are configured (unconfigured providers are skipped): OpenAI, Anthropic, Google AI, Google Vertex, AWS Bedrock, Azure OpenAI, Mistral, Hugging Face, Ollama, LiteLLM, AWS SageMaker, OpenAI-compatible, OpenRouter, DeepSeek, NVIDIA NIM, LM Studio, llama.cpp, TypeSafe Jev — plus voice (OpenAI TTS, ElevenLabs, Deepgram, Azure Speech, Google TTS/STT, Whisper, OpenAI Realtime, Gemini Live).\n\nQuick Provider Validation\n\nComprehensive Testing\n\nExpected Results\n\nCLI Enhancement Output:\n\nSDK Enhancement Output:\n\nProvider Testing\n\nGoogle AI Provider Validation\n\nOpenAI Provider Validation\n\nMulti-Provider Testing\n\nBackward Compatibility Testing\n\nEnsure No Breaking Changes\n\nTest Existing SDK Integration\n\nError Handling Testing\n\nInvalid Model Names\n\nMissing API Keys\n\nNetwork Issues\n\nPerformance Testing\n\nResponse Time Validation\n\nToken Counting Accuracy\n\nEnhancement Feature Validation\n\nAnalytics Data Completeness\n\nEvaluation Data Validation\n\nContext Flow Testing\n\nTroubleshooting Guide\n\nCommon Issues\nEmpty Responses from Google AI\nCheck model name in .env file\nUse gemini-2.5-pro instead of deprecated models\nVerify API key is valid\nNaN Token Counts\nUsually indicates provider API failure\nCheck model configuration and API keys\nTest with --debug flag for detailed logs\nEnhancement Data Missing\nEnsure using --debug flag to see enhancement output\nVerify enhancement flags are correctly specified\nCheck that provider is working (not falling back)\nCLI Commands Not Found\nRun npm run build:cli to rebuild CLI\nCheck that dist/cli/index.js exists\nVerify Node.js version compatibility\n\nDebug Commands\n\nTest Automation\n\nValidation Script Usage\n\nCI/CD Integration\n\nThis testing guide ensures all enhancement features work correctly while maintaining backward compatibility and providing clear troubleshooting guidance.","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"","lvl3":""}},
|
|
2340
|
+
{"objectID":"4d9bb1de4ad3dfd116e55dc2d6b220825f5b43875d3fd78069496be8d856ff06","title":"🎉 Provider Testing Status","url":"/docs/development/testing#-provider-testing-status","content":"Providers supported — validated in CI where credentials are configured (unconfigured providers are skipped): OpenAI, Anthropic, Google AI, Google Vertex, AWS Bedrock, Azure OpenAI, Mistral, Hugging Face, Ollama, LiteLLM, AWS SageMaker, OpenAI-compatible, OpenRouter, DeepSeek, NVIDIA NIM, LM Studio, llama.cpp, TypeSafe Jev — plus voice (OpenAI TTS, ElevenLabs, Deepgram, Azure Speech, Google TTS/STT, Whisper, OpenAI Realtime, Gemini Live).","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"🎉 Provider Testing Status","lvl3":""}},
|
|
2341
|
+
{"objectID":"8fc0eade856296973641598d92d1d671410031324b34910f255b9daf62bbc200","title":"Quick Provider Validation","url":"/docs/development/testing#quick-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Quick Provider Validation","lvl3":""}},
|
|
2342
|
+
{"objectID":"e522bb68d746cfa26559e2fe3c17775ecced454e5eb5b1672cc734c310a125aa","title":"Test any provider via the CLI","url":"/docs/development/testing#test-any-provider-via-the-cli","content":"pnpm cli generate \"test\" --provider openai\npnpm cli generate \"test\" --provider anthropic\npnpm cli generate \"test\" --provider google-ai\npnpm cli generate \"test\" --provider deepseek\npnpm cli generate \"test\" --provider nvidia-nim\npnpm cli generate \"test\" --provider lm-studio\npnpm cli generate \"test\" --provider llamacpp\npnpm cli generate \"test\" --provider azure\npnpm cli generate \"test\" --provider mistral\npnpm cli generate \"test\" --provider ollama\npnpm cli generate \"test\" --provider vertex","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test any provider via the CLI","lvl3":""}},
|
|
2343
|
+
{"objectID":"8304dacf623fd9daa0ab9a22acb9078e123f9aa467efbddbbe074af13c2cdd7a","title":"Test with enhancements (any provider works)","url":"/docs/development/testing#test-with-enhancements-any-provider-works","content":"pnpm cli generate \"test\" --provider google-ai --enable-analytics --enable-evaluation --debug\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test with enhancements (any provider works)","lvl3":""}},
|
|
2344
|
+
{"objectID":"962667c0956afc2243878258732206629fd012fb4cb4e266ca1cc92a76ec19ff","title":"Comprehensive Testing","url":"/docs/development/testing#comprehensive-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Comprehensive Testing","lvl3":""}},
|
|
2345
|
+
{"objectID":"2abd04954506b423a74683585841f9bb5def930dedf02265b11096a04f7206e8","title":"Run full validation suite","url":"/docs/development/testing#run-full-validation-suite","content":"./validate-fixes.sh","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Run full validation suite","lvl3":""}},
|
|
2346
|
+
{"objectID":"c0b895cc1390ca0f55f528c530bfe7f242648eb4408ae0634ae626fd6fcddc85","title":"Run comprehensive CLI tests","url":"/docs/development/testing#run-comprehensive-cli-tests","content":"node CLICOMPREHENSIVETESTS.js","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Run comprehensive CLI tests","lvl3":""}},
|
|
2347
|
+
{"objectID":"1444bf3290ae917bf6534b6e32f1f109f4451832b05c5743fa58efce2c979f7b","title":"Run before/after comparison","url":"/docs/development/testing#run-beforeafter-comparison","content":"node BEFOREAFTERCOMPARISON.js\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Run before/after comparison","lvl3":""}},
|
|
2348
|
+
{"objectID":"08c576cff131fac374c1c3a4375497793b511d4a53730510268c77e78416c89c","title":"Google AI Provider Validation","url":"/docs/development/testing#google-ai-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Google AI Provider Validation","lvl3":""}},
|
|
2349
|
+
{"objectID":"dbbd1df0dafb3c972c66761e7a286f29d6c648b6e9c5578051e634ad2e3401c7","title":"Test working model","url":"/docs/development/testing#test-working-model","content":"node ./dist/cli/index.js generate \"Hello\" --provider google-ai --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test working model","lvl3":""}},
|
|
2350
|
+
{"objectID":"0216650963a9f582f523ec8c08f4fab7eb75ba4754d4ec751c1d8d9e6bfb400e","title":"Expected: No empty responses or fallbacks","url":"/docs/development/testing#expected-no-empty-responses-or-fallbacks","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: No empty responses or fallbacks","lvl3":""}},
|
|
2351
|
+
{"objectID":"13e82c8c22a2f7a24a2f34bc6d2183eb55ecff140bbd00ae93a892baaa9bd135","title":"OpenAI Provider Validation","url":"/docs/development/testing#openai-provider-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"OpenAI Provider Validation","lvl3":""}},
|
|
2352
|
+
{"objectID":"f03fd4d28918a7fd77dbac824938c702f1486b54448009be7671ddd21f42591b","title":"Test OpenAI fallback","url":"/docs/development/testing#test-openai-fallback","content":"node ./dist/cli/index.js generate \"Hello\" --provider openai --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test OpenAI fallback","lvl3":""}},
|
|
2353
|
+
{"objectID":"7de61b60e3aa538d051db0159fc80e3cbb63e4d0e4e04f37b6e801dad8a5f53f","title":"Expected: Accurate token counting (no NaN values)","url":"/docs/development/testing#expected-accurate-token-counting-no-nan-values","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Accurate token counting (no NaN values)","lvl3":""}},
|
|
2354
|
+
{"objectID":"f33aaba473bdf45c26d05793d64b2496936048e97d7e18b4e7cd943a60fec0db","title":"Multi-Provider Testing","url":"/docs/development/testing#multi-provider-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Multi-Provider Testing","lvl3":""}},
|
|
2355
|
+
{"objectID":"3040499d040ec7a9763949d3a928959dcf5ac65b964393671e1449b704c14857","title":"Test provider auto-selection","url":"/docs/development/testing#test-provider-auto-selection","content":"node ./dist/cli/index.js generate \"Hello\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test provider auto-selection","lvl3":""}},
|
|
2356
|
+
{"objectID":"6fcbf2c32c2277f72918a7923d587cecc8cf1e24d899694c95a46e1c2c25a8cd","title":"Expected: Graceful fallback if primary provider fails","url":"/docs/development/testing#expected-graceful-fallback-if-primary-provider-fails","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Graceful fallback if primary provider fails","lvl3":""}},
|
|
2357
|
+
{"objectID":"dbd1a1a8d7dc9ac0d259cdeef2ab1f7f5342e4e7d8c76def6624531e85139ac1","title":"Ensure No Breaking Changes","url":"/docs/development/testing#ensure-no-breaking-changes","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Ensure No Breaking Changes","lvl3":""}},
|
|
2358
|
+
{"objectID":"03974bf1b097b8efb16b817e92ef49803eacd3d3e178b4a1aa07b45a1a4ac866","title":"Test existing CLI commands (no enhancement flags)","url":"/docs/development/testing#test-existing-cli-commands-no-enhancement-flags","content":"node ./dist/cli/index.js generate \"Simple test\"\nnode ./dist/cli/index.js generate \"Simple test\"\nnode ./dist/cli/index.js gen \"Simple test\"","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test existing CLI commands (no enhancement flags)","lvl3":""}},
|
|
2359
|
+
{"objectID":"8fb36dbdf2d8b1b6eb3d7edcdc8304649093d7b7a6cf9da64944bc1932382b8d","title":"Expected: All existing functionality works","url":"/docs/development/testing#expected-all-existing-functionality-works","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: All existing functionality works","lvl3":""}},
|
|
2360
|
+
{"objectID":"a0cab3a3fc984cfbe3985ae09fe6e79f141999deddd7b70548cfa578e9051a34","title":"Invalid Model Names","url":"/docs/development/testing#invalid-model-names","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Invalid Model Names","lvl3":""}},
|
|
2361
|
+
{"objectID":"c27b650b086910c0aeea0926a7081ace904ca5b4225d6a65de89c53f291e8484","title":"Test deprecated model handling","url":"/docs/development/testing#test-deprecated-model-handling","content":"node ./dist/cli/index.js generate \"test\" --provider google-ai --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test deprecated model handling","lvl3":""}},
|
|
2362
|
+
{"objectID":"1012fab5a00e125facac7dd6150f09d516d8f6af8e942b1dcca53b81bceb0f40","title":"Expected: Clear error message or automatic correction","url":"/docs/development/testing#expected-clear-error-message-or-automatic-correction","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Clear error message or automatic correction","lvl3":""}},
|
|
2363
|
+
{"objectID":"5ddd754a280b4b927eb3dc046a889c6532f10c54a985864fd8228bda0a9f92d4","title":"Missing API Keys","url":"/docs/development/testing#missing-api-keys","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Missing API Keys","lvl3":""}},
|
|
2364
|
+
{"objectID":"ef41be5889fafebb18d04e1c630e4960538a9cb519889de44c5160c0b98213f7","title":"Test without API keys","url":"/docs/development/testing#test-without-api-keys","content":"unset GOOGLEAIAPI_KEY\nunset OPENAIAPIKEY\nnode ./dist/cli/index.js generate \"test\" --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test without API keys","lvl3":""}},
|
|
2365
|
+
{"objectID":"3e6ecdfc6fc0f3b6fbc2b555bc4872547b558fca8f46928ad51cd5439dde5dd4","title":"Expected: Helpful setup instructions","url":"/docs/development/testing#expected-helpful-setup-instructions","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Helpful setup instructions","lvl3":""}},
|
|
2366
|
+
{"objectID":"6f84c9acd43c65eed6e126ecb28707eac9dbf9d2251aa495da657c84519144ac","title":"Network Issues","url":"/docs/development/testing#network-issues","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Network Issues","lvl3":""}},
|
|
2367
|
+
{"objectID":"535fb979e4072fd5943718b60f942cfe2581e59d94f02bf0ab3f9c5296aed133","title":"Test with invalid API endpoint (simulated)","url":"/docs/development/testing#test-with-invalid-api-endpoint-simulated","content":"node ./dist/cli/index.js generate \"test\" --timeout 5s --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test with invalid API endpoint (simulated)","lvl3":""}},
|
|
2368
|
+
{"objectID":"4a4ddc7e1ba7da05e8ac247d462c74e1d4796c47ca815b27edd6210911545a66","title":"Expected: Fallback to other providers if available","url":"/docs/development/testing#expected-fallback-to-other-providers-if-available","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Fallback to other providers if available","lvl3":""}},
|
|
2369
|
+
{"objectID":"732e97053310081527b3956475ec8f9543528f27634cb9a9437be97491fc022e","title":"Response Time Validation","url":"/docs/development/testing#response-time-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Response Time Validation","lvl3":""}},
|
|
2370
|
+
{"objectID":"83436dd951e6c29193b97a7214bf39e68bba4321e298f87657bd15499ff55728","title":"Test response times with analytics","url":"/docs/development/testing#test-response-times-with-analytics","content":"node ./dist/cli/index.js generate \"Short prompt\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test response times with analytics","lvl3":""}},
|
|
2371
|
+
{"objectID":"54a5273f2a0a118c577477cba7fa9d269a1f8bb310d8094e136c6392808b60ee","title":"Expected: Analytics data doesn't significantly slow requests","url":"/docs/development/testing#expected-analytics-data-doesnt-significantly-slow-requests","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Analytics data doesn't significantly slow requests","lvl3":""}},
|
|
2372
|
+
{"objectID":"e5a5c046c23621ae139301e8c65dd604dc84439b8e7b885e3334496a1056537c","title":"Token Counting Accuracy","url":"/docs/development/testing#token-counting-accuracy","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Token Counting Accuracy","lvl3":""}},
|
|
2373
|
+
{"objectID":"ccd90219360ecc36f15b0643eba076beb6ece97d47df2e726c02d5551923af2f","title":"Test accurate token counting","url":"/docs/development/testing#test-accurate-token-counting","content":"node ./dist/cli/index.js generate \"This is a test prompt for token counting\" --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test accurate token counting","lvl3":""}},
|
|
2374
|
+
{"objectID":"33c361903e5d2155aee10120ed991aaf5c4ebc49b12169c7ffeb49e51b659acf","title":"Expected: Token counts match actual usage","url":"/docs/development/testing#expected-token-counts-match-actual-usage","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Token counts match actual usage","lvl3":""}},
|
|
2375
|
+
{"objectID":"b879714c080fe2a85b50539fb224809866bec0b5ae9df829069f821f3356d017","title":"Analytics Data Completeness","url":"/docs/development/testing#analytics-data-completeness","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Analytics Data Completeness","lvl3":""}},
|
|
2376
|
+
{"objectID":"ab64c1128474c05c7de4a45c9d0206d74b008e7e99e3de844bbb54a021289d3e","title":"Test analytics data structure","url":"/docs/development/testing#test-analytics-data-structure","content":"node ./dist/cli/index.js generate \"Business email\" --enable-analytics --context '{\"project\":\"test\"}' --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test analytics data structure","lvl3":""}},
|
|
2377
|
+
{"objectID":"f785281351d1476ace01b4412ce6621b8a6e47dc55e1f7263e647a4fa5ddc580","title":"- timestamp: ISO string","url":"/docs/development/testing#--timestamp-iso-string","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"- timestamp: ISO string","lvl3":""}},
|
|
2378
|
+
{"objectID":"83e222546aabbdc6c7bc9f23c5d11b80d63b2b7fef71fcbe3ea2093f44cfb7d8","title":"Evaluation Data Validation","url":"/docs/development/testing#evaluation-data-validation","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Evaluation Data Validation","lvl3":""}},
|
|
2379
|
+
{"objectID":"cb4404c5157f480b12911f00292e0578971e88becf2998f836a5f86f2e82139c","title":"Test evaluation scoring","url":"/docs/development/testing#test-evaluation-scoring","content":"node ./dist/cli/index.js generate \"Explain quantum physics\" --enable-evaluation --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test evaluation scoring","lvl3":""}},
|
|
2380
|
+
{"objectID":"ab73a02c6fd432b8740d1624770287217547ab7d9cea1f53080f9611db83937b","title":"- evaluationTime: number","url":"/docs/development/testing#--evaluationtime-number","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"- evaluationTime: number","lvl3":""}},
|
|
2381
|
+
{"objectID":"a762e4c091d9b3e54bd2a51a4cdf02851c6636cae857996467d2a9437ec085a2","title":"Context Flow Testing","url":"/docs/development/testing#context-flow-testing","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Context Flow Testing","lvl3":""}},
|
|
2382
|
+
{"objectID":"d7eb0273fcdf438807e6ad66b71d1b1511436d60f50712f7246d76e3a4441865","title":"Test context preservation","url":"/docs/development/testing#test-context-preservation","content":"node ./dist/cli/index.js generate \"Help with task\" --context '{\"userId\":\"123\",\"department\":\"sales\"}' --enable-analytics --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test context preservation","lvl3":""}},
|
|
2383
|
+
{"objectID":"f4d4540747aa848513d17bd416fc18287b535713ed1a03fbce8f311b4fe6bdf6","title":"Expected: Context available throughout request chain","url":"/docs/development/testing#expected-context-available-throughout-request-chain","content":"`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Expected: Context available throughout request chain","lvl3":""}},
|
|
2384
|
+
{"objectID":"19720de4c8ed35a547ab099355e2fd5175800e0930b25b1d218940db0baf60f1","title":"Common Issues","url":"/docs/development/testing#common-issues","content":"Empty Responses from Google AI\nCheck model name in .env file\nUse gemini-2.5-pro instead of deprecated models\nVerify API key is valid\nNaN Token Counts\nUsually indicates provider API failure\nCheck model configuration and API keys\nTest with --debug flag for detailed logs\nEnhancement Data Missing\nEnsure using --debug flag to see enhancement output\nVerify enhancement flags are correctly specified\nCheck that provider is working (not falling back)\nCLI Commands Not Found\nRun npm run build:cli to rebuild CLI\nCheck that dist/cli/index.js exists\nVerify Node.js version compatibility","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Common Issues","lvl3":""}},
|
|
2385
|
+
{"objectID":"66eea4e65b778a0521203afbc43ff698e78df2a376ad66427ac83c227d77c081","title":"Debug Commands","url":"/docs/development/testing#debug-commands","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Debug Commands","lvl3":""}},
|
|
2386
|
+
{"objectID":"67d89ab41aec29dc1893e5e5fc6f086c5b1b31a95c6b6aa40677d932d03c9594","title":"Comprehensive debug information","url":"/docs/development/testing#comprehensive-debug-information","content":"node ./dist/cli/index.js generate \"debug test\" --provider google-ai --enable-analytics --enable-evaluation --context '{\"debug\":true}' --debug","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Comprehensive debug information","lvl3":""}},
|
|
2387
|
+
{"objectID":"d6a5b4654b0448dc17e98a0644da6c0251088520c2b778bd1b2fcf5169c5abd5","title":"Check provider status","url":"/docs/development/testing#check-provider-status","content":"node ./dist/cli/index.js status","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Check provider status","lvl3":""}},
|
|
2388
|
+
{"objectID":"da0c759ab4959c695f7ba6d3682869e4b64af5010353fe3dfbcfed51eedec072","title":"Test specific provider","url":"/docs/development/testing#test-specific-provider","content":"node ./dist/cli/index.js generate \"provider test\" --provider openai --debug\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Test specific provider","lvl3":""}},
|
|
2389
|
+
{"objectID":"5b50f79d5e15b3b0476213bafa40c4be8a431bdd409be9330906e070ad72fb52","title":"Validation Script Usage","url":"/docs/development/testing#validation-script-usage","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Validation Script Usage","lvl3":""}},
|
|
2390
|
+
{"objectID":"838736a3fa982ded222301f415ca1ecc28a8bd1b718e40878f35ec514a555c23","title":"Run complete validation suite","url":"/docs/development/testing#run-complete-validation-suite","content":"./validate-fixes.sh","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Run complete validation suite","lvl3":""}},
|
|
2391
|
+
{"objectID":"489bc8592279699a24f5d95b3f635c1f1f30a8310b3d5d247e1f3109c6228d23","title":"Run specific test categories","url":"/docs/development/testing#run-specific-test-categories","content":"./validate-fixes.sh --cli-only\n./validate-fixes.sh --sdk-only\n./validate-fixes.sh --providers-only\n`","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Run specific test categories","lvl3":""}},
|
|
2392
|
+
{"objectID":"b9d3b2dedf68c9fecf0095380d37100ad6f63a1a5b4166af3428764814c5a2e4","title":"CI/CD Integration","url":"/docs/development/testing#cicd-integration","content":"`bash","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"CI/CD Integration","lvl3":""}},
|
|
2393
|
+
{"objectID":"8914e25e0d42823489948b21e26bde8f722750852c2514cf994cdc6e6b720611","title":"Add to CI pipeline","url":"/docs/development/testing#add-to-ci-pipeline","content":"npm run test\nnpm run build:cli\n./validate-fixes.sh --ci-mode\n`\n\nThis testing guide ensures all enhancement features work correctly while maintaining backward compatibility and providing clear troubleshooting guidance.","hierarchy":{"lvl0":"Development","lvl1":"🧪 NeuroLink Testing Guide — Providers Validated in CI","lvl2":"Add to CI pipeline","lvl3":""}},
|
|
2394
2394
|
{"objectID":"6e38e7480932000ddf9ecf61ffb29cd5ba0b87e39894e3871a18a9f6f8dc5524","title":"Documentation Versioning","url":"/docs/development/versioning","content":"Documentation Versioning\n\nManaging documentation versions across releases using mike\n\nOverview\n\nNeuroLink documentation uses mike to maintain multiple versions of documentation for different releases. This allows users to view documentation for the specific version they're using.\n\nBenefits\nVersion-specific docs: Users can view docs matching their installed version\nPreserved history: Old versions remain accessible\nEasy switching: Version selector in navigation\nAutomated deployment: Integrate with CI/CD for automatic publishing\n\nSetup\nInstall Dependencies\nVerify Configuration\n\nThe mkdocs.yml already includes mike configuration:\n\nLocal Usage\n\nCreate First Version\n\nDeploy New Version\n\nList All Versions\n\nOutput:\n\nServe Versioned Docs Locally\n\nVisit http://localhost:8000 to test version switching.\n\nDelete a Version\n\nVersion Management Workflow\n\nFor Minor Releases (1.0 → 1.1)\n\nFor Major Releases (1.x → 2.0)\n\nFor Patch Releases (1.0.0 → 1.0.1)\n\nCI/CD Integration\n\nGitHub Actions Workflow\n\nCreate .github/workflows/docs.yml:\n\nAutomatic Version Detection\n\nBest Practices\nVersion Naming\nStable releases: 1.0, 1.1, 2.0 (match npm version)\nPre-releases: 1.0-beta, 2.0-rc1\nDevelopment: dev (always latest from main branch)\nAlias Strategy\nVersion Cleanup\nDocumentation Updates\n\nFor bug fixes to old versions:\n\nAdvanced Configuration\n\nCustom Version Selector\n\nAdd to mkdocs.yml:\n\nVersion Warnings\n\nAdd version-specific warnings in docs/index.md:\n\nTroubleshooting\n\nIssue: \"gh-pages branch not found\"\n\nIssue: Version selector not appearing\n\nVerify mike is installed:\n\nCheck mkdocs.yml configuration:\n\nIssue: Wrong default version\n\nVersion History\n\n| Version | Release Date | Status | Notes |\n| ------- | ---------------- | -------------- | --------------------- |\n| 7.47.x | Current | ✅ Active | Latest features |\n| 7.46.x | 2024-12 | ✅ Active | Previous stable |\n| 7.45.x | 2024-11 | ⚠️ Old | Security updates only |\n| < 7.45 | 2024 and earlier | ❌ Unsupported | Upgrade recommended |\n\nRelated Documentation\nContributing - How to contribute documentation\nDevelopment Setup - Local development environment\nArchitecture - Documentation structure\n\nAdditional Resources\nmike Documentation - Official mike guide\nMkDocs Material Versioning - Material theme versioning\nGitHub Pages - Hosting documentation","hierarchy":{"lvl0":"Development","lvl1":"Documentation Versioning","lvl2":"","lvl3":""}},
|
|
2395
2395
|
{"objectID":"e93b7f831e0fae0433eba697498889c8d09b69aecf3fbf3eda30c0965c348afa","title":"Documentation Versioning","url":"/docs/development/versioning#documentation-versioning","content":"Managing documentation versions across releases using mike","hierarchy":{"lvl0":"Development","lvl1":"Documentation Versioning","lvl2":"Documentation Versioning","lvl3":""}},
|
|
2396
2396
|
{"objectID":"9cd60208b8c84605e89660a919d9094bb8345ba244f95c376d65305ad8e80ea3","title":"Overview","url":"/docs/development/versioning#overview","content":"NeuroLink documentation uses mike to maintain multiple versions of documentation for different releases. This allows users to view documentation for the specific version they're using.","hierarchy":{"lvl0":"Development","lvl1":"Documentation Versioning","lvl2":"Overview","lvl3":""}},
|
|
@@ -2608,8 +2608,8 @@
|
|
|
2608
2608
|
{"objectID":"f283ec766223fa981594075b52d5edf537ebfb630e7ba1343782de0003ea2cd2","title":"Git revert failures","url":"/docs/features/autoresearch#git-revert-failures","content":"AutoResearch requires a clean working tree for reverts. If you have uncommitted changes outside mutable paths, commit or stash them first.","hierarchy":{"lvl0":"Features","lvl1":"AutoResearch - Autonomous AI Experiment Engine","lvl2":"Git revert failures","lvl3":""}},
|
|
2609
2609
|
{"objectID":"6e1d3efcbcd2958a47bd91d71b60a4f1fb9bae5db434a0f80b84c8c207a80af0","title":"State file corruption","url":"/docs/features/autoresearch#state-file-corruption","content":"If .autoresearch/state.json becomes invalid, use reset to clear it:\n\nThen re-initialize with init. Your git branch and committed experiments are preserved.","hierarchy":{"lvl0":"Features","lvl1":"AutoResearch - Autonomous AI Experiment Engine","lvl2":"State file corruption","lvl3":""}},
|
|
2610
2610
|
{"objectID":"3f9da31ccb4193e87888801724b536c1b3d42e0265faca0faf47b0632b1283a2","title":"FAQ","url":"/docs/features/autoresearch#faq","content":"Q: What providers work with AutoResearch?\nA: Any provider supported by NeuroLink. The AI needs tool-calling capability, so use models that support function calling (GPT-4o, Claude Sonnet, Gemini Flash/Pro, etc.).\n\nQ: Can I use AutoResearch with Python/ML training scripts?\nA: Yes — that's the primary use case. Set runCommand to your training script and configure the metric pattern to parse your output format.\n\nQ: How does the AI decide what to change?\nA: The AI reads the research program (program.md), the current code, and past experiment results. It proposes changes based on this context, using its understanding of the domain. The quality of your program document directly affects the quality of proposals.\n\nQ: What happens if the experiment crashes?\nA: The crash is detected via non-zero exit code or output parsing. The result is recorded as crash status, the candidate is reverted, and the loop continues with a new proposal.\n\nQ: Can I run AutoResearch on a remote server?\nA: Yes. Use the TaskManager integration with BullMQ (Redis) for scheduled runs. The repo must be accessible on the machine running NeuroLink.\n\nQ: How do I stop a running experiment?\nA: For run-once: Ctrl+C. For scheduled tasks: neurolink autoresearch stop <taskId> or await neurolink.tasks.delete(taskId).\n\nQ: Is there a limit on experiment count?\nA: Set maxExperiments in config or --max-runs in CLI. Without a limit, research continues indefinitely until manually stopped.\n\nQ: Can multiple AutoResearch sessions run on the same repo?\nA: Not recommended. Each session operates on its own git branch, but concurrent filesystem operations on the same repo can conflict. Use separate working directories or git worktrees for parallel sessions.\n\nQ: Does AutoResearch work with structuredOutput?\nA: No. AutoResearch uses tool calling (function calling) which is mutually exclusive with structuredOutput JSON schemas on Gemini providers. This is an API limitation, not a bug.","hierarchy":{"lvl0":"Features","lvl1":"AutoResearch - Autonomous AI Experiment Engine","lvl2":"FAQ","lvl3":""}},
|
|
2611
|
-
{"objectID":"b62fe03b51882b07b58c3e35542449b69a1cdfa87de89867ee32b32e4a915257","title":"The model catalogue","url":"/docs/features/classifier-router-catalog","content":"The model catalogue\n\nThe classifier router has always routed\nacross a pool you declare — the set of models you are willing to be billed\nfor is not something NeuroLink can invent. The catalogue is an opt-in way to\nwiden that pool: it builds candidates from the model registry, intersected\nwith the credentials this host actually holds, and hands them to the\njev strategy as one choice\nquestion.\n\nThe registry is 64 models across 7 providers (openai 21, anthropic 19,\nazure 7, ollama 6, bedrock 5, mistral 4, google-ai 2), with 132 aliases on top\nof those 64 ids —
|
|
2612
|
-
{"objectID":"d64b5f675ca9b47c7f4d4861bb339a5e6948e3d44b307d80ee1ee80cae9dece1","title":"The model catalogue","url":"/docs/features/classifier-router-catalog#the-model-catalogue","content":"The classifier router has always routed\nacross a pool you declare — the set of models you are willing to be billed\nfor is not something NeuroLink can invent. The catalogue is an opt-in way to\nwiden that pool: it builds candidates from the model registry, intersected\nwith the credentials this host actually holds, and hands them to the\njev strategy as one choice\nquestion.\n\nThe registry is 64 models across 7 providers (openai 21, anthropic 19,\nazure 7, ollama 6, bedrock 5, mistral 4, google-ai 2), with 132 aliases on top\nof those 64 ids —
|
|
2611
|
+
{"objectID":"b62fe03b51882b07b58c3e35542449b69a1cdfa87de89867ee32b32e4a915257","title":"The model catalogue","url":"/docs/features/classifier-router-catalog","content":"The model catalogue\n\nThe classifier router has always routed\nacross a pool you declare — the set of models you are willing to be billed\nfor is not something NeuroLink can invent. The catalogue is an opt-in way to\nwiden that pool: it builds candidates from the model registry, intersected\nwith the credentials this host actually holds, and hands them to the\njev strategy as one choice\nquestion.\n\nThe registry is 64 models across 7 providers (openai 21, anthropic 19,\nazure 7, ollama 6, bedrock 5, mistral 4, google-ai 2), with 132 aliases on top\nof those 64 ids — only a subset of the providers NeuroLink can call. The\ncatalogue is strictly an addition to a declared pool, never a replacement\nfor one: a host routing over LiteLLM, OpenRouter, an OpenAI-compatible\nendpoint, or anything self-hosted still declares those members by hand, and\nenrichCandidate ranks declared and catalogue members together on one scale\nrather than sorting them into separate buckets. Enabling catalog widens the\npool for the 7 providers it knows; it does not make the rest of the\nregistered providers appear.\n\nThe degradation contract. catalog.enabled defaults to unset, and\nbuildModelCatalog() returns [] when it is. Nothing about routing changes\nuntil you turn it on: the declared pool remains the only source of\ncandidates.\n\nA declared pool and an enabled catalog combine: declared members win on a\nduplicate id (or provider/model when no id is set), so a hand-declared\noverride always beats the catalogue's own entry for the same model.\n\nBuilding the routable pool\n\nbuildModelCatalog() starts from every model the registry knows and removes:\ndeprecated models, unless includeDeprecated: true\nproviders this host has no reachable credentials for (see below)\nproviders not in catalog.providers, when that list is set\nmodels whose context window is below catalog.minContextWindow\n\nReachability is deliberately permissive, in two directions. A provider\nwhose credentials resolve through an external chain — Bedrock's AWS default\nchain, Vertex's several auth paths — is kept even though no single env var\nproves it is configured; a local runtime with no credential at all (Ollama, LM\nStudio) is likewise kept. What this actually filters out is the common case: a\ncloud provider with one named API-key env var that is simply unset. The worst\ncase of being too permissive is a candidate that fails at call time and falls\nback, which the router already handles.\n\nWhat is left is capped to maxModels (default 120) by a tier-neutral merit\nscore — tierScore(model, \"moderate\") — so a truncated list, if there is one,\nkeeps the models most likely to be broadly useful rather than whichever the\nregistry happened to list first. The default never truncates today: the\nwhole registry is 64 models, well under the cap. maxModels is a guard\nagainst a future registry that outgrows what a single question can carry, not\na limit anyone is currently hitting.\n\nOne line per model\n\nEach surviving model becomes a ClassifierCandidate and renderCandidate()\nturns it into one terse line for jev's criteria map. The order and the\nprecedence are both deliberate:\ndescription always renders first, when present.\ntiers, when declared, renders next as intended for\ntrivial/simple tasks — the host's most direct statement of where a\n model belongs.\nContext window and capability flags always render. These are facts\n about the model (\"accepts images\", \"128K context\"), not opinions about\n how good it is, so nothing suppresses them.\nDeclared cost/quality replace the registry's own opinion, rather\n than sitting beside it. When either is set, the line adds capability N\n(higher is more capable) / relative cost N (lower is cheaper) and\n suppresses the registry's price, speed bucket, quality bucket, and\n \"strong at …\" use-case scores entirely. When neither is set, the registry\n fills all of that in exactly as it always did.\n\nTwo real renders, from the same model, show the difference:\n\nThis precedence exists because the registry's opinion used to win, and a\nlive measurement showed it silently overriding the host's own routing\nintent. A pool member declared exactly the second line above — an explicit\nstatement that this model is for rote work — but the registry rates the\nsame underlying model highly on general benchmarks, so the old rendering\nappended its own \"high quality\" and \"strong at coding, analysis, reasoning\"\non top. Five registry clauses against one line of host prose, and the host\nlost: a hard concurrency-bug task routed to the cheap model in 5 of 8 runs,\nbecause the model-pick question asks for \"the cheapest one that can still\ncomplete this request correctly\" and had just been told the cheap one was\nhigh quality and strong at reasoning. The declared quality: 2 never\nreached the model at all — only description did. After the fix, the same\n15-prompt suite (trivial/simple/conversational/hard/expert) routed 15/15 to\nthe intended pool member, and the hard prompt went 8/8 to the capable model\n(previously 3/8","hierarchy":{"lvl0":"Features","lvl1":"The model catalogue","lvl2":"","lvl3":""}},
|
|
2612
|
+
{"objectID":"d64b5f675ca9b47c7f4d4861bb339a5e6948e3d44b307d80ee1ee80cae9dece1","title":"The model catalogue","url":"/docs/features/classifier-router-catalog#the-model-catalogue","content":"The classifier router has always routed\nacross a pool you declare — the set of models you are willing to be billed\nfor is not something NeuroLink can invent. The catalogue is an opt-in way to\nwiden that pool: it builds candidates from the model registry, intersected\nwith the credentials this host actually holds, and hands them to the\njev strategy as one choice\nquestion.\n\nThe registry is 64 models across 7 providers (openai 21, anthropic 19,\nazure 7, ollama 6, bedrock 5, mistral 4, google-ai 2), with 132 aliases on top\nof those 64 ids — only a subset of the providers NeuroLink can call. The\ncatalogue is strictly an addition to a declared pool, never a replacement\nfor one: a host routing over LiteLLM, OpenRouter, an OpenAI-compatible\nendpoint, or anything self-hosted still declares those members by hand, and\nenrichCandidate ranks declared and catalogue members together on one scale\nrather than sorting them into separate buckets. Enabling catalog widens the\npool for the 7 providers it knows; it does not make the rest of the\nregistered providers appear.\n\nThe degradation contract. catalog.enabled defaults to unset, and\nbuildModelCatalog() returns [] when it is. Nothing about routing changes\nuntil you turn it on: the declared pool remains the only source of\ncandidates.\n\nA declared pool and an enabled catalog combine: declared members win on a\nduplicate id (or provider/model when no id is set), so a hand-declared\noverride always beats the catalogue's own entry for the same model.","hierarchy":{"lvl0":"Features","lvl1":"The model catalogue","lvl2":"The model catalogue","lvl3":""}},
|
|
2613
2613
|
{"objectID":"071858e4fe13a1d63ea7f7c9dc52e1d185fcca54e327ec105d54cc20fea25543","title":"Building the routable pool","url":"/docs/features/classifier-router-catalog#building-the-routable-pool","content":"buildModelCatalog() starts from every model the registry knows and removes:\ndeprecated models, unless includeDeprecated: true\nproviders this host has no reachable credentials for (see below)\nproviders not in catalog.providers, when that list is set\nmodels whose context window is below catalog.minContextWindow\n\nReachability is deliberately permissive, in two directions. A provider\nwhose credentials resolve through an external chain — Bedrock's AWS default\nchain, Vertex's several auth paths — is kept even though no single env var\nproves it is configured; a local runtime with no credential at all (Ollama, LM\nStudio) is likewise kept. What this actually filters out is the common case: a\ncloud provider with one named API-key env var that is simply unset. The worst\ncase of being too permissive is a candidate that fails at call time and falls\nback, which the router already handles.\n\nWhat is left is capped to maxModels (default 120) by a tier-neutral merit\nscore — tierScore(model, \"moderate\") — so a truncated list, if there is one,\nkeeps the models most likely to be broadly useful rather than whichever the\nregistry happened to list first. The default never truncates today: the\nwhole registry is 64 models, well under the cap. maxModels is a guard\nagainst a future registry that outgrows what a single question can carry, not\na limit anyone is currently hitting.","hierarchy":{"lvl0":"Features","lvl1":"The model catalogue","lvl2":"Building the routable pool","lvl3":""}},
|
|
2614
2614
|
{"objectID":"2cad48473fb9c200377fe1a4b2f1e1feea861afe5ae7ee9a53caf6cbe313cc4a","title":"One line per model","url":"/docs/features/classifier-router-catalog#one-line-per-model","content":"Each surviving model becomes a ClassifierCandidate and renderCandidate()\nturns it into one terse line for jev's criteria map. The order and the\nprecedence are both deliberate:\ndescription always renders first, when present.\ntiers, when declared, renders next as intended for\ntrivial/simple tasks — the host's most direct statement of where a\n model belongs.\nContext window and capability flags always render. These are facts\n about the model (\"accepts images\", \"128K context\"), not opinions about\n how good it is, so nothing suppresses them.\nDeclared cost/quality replace the registry's own opinion, rather\n than sitting beside it. When either is set, the line adds capability N\n(higher is more capable) / relative cost N (lower is cheaper) and\n suppresses the registry's price, speed bucket, quality bucket, and\n \"strong at …\" use-case scores entirely. When neither is set, the registry\n fills all of that in exactly as it always did.\n\nTwo real renders, from the same model, show the difference:\n\n`","hierarchy":{"lvl0":"Features","lvl1":"The model catalogue","lvl2":"One line per model","lvl3":""}},
|
|
2615
2615
|
{"objectID":"ed0bc85ff16693c3ce8715b098e802cd31abaf513fd4a5e1ec8305d00a5e44a9","title":"No declared cost/quality — the registry fills in:","url":"/docs/features/classifier-router-catalog#no-declared-costquality-the-registry-fills-in","content":"GPT-4 Omni Mini; 128K context; 0.01c per 1K in; fast speed; high quality; supports vision, tools, reasoning, code, multimodal; strong at coding, analysis, conversation, reasoning, translation, summarization","hierarchy":{"lvl0":"Features","lvl1":"The model catalogue","lvl2":"No declared cost/quality — the registry fills in:","lvl3":""}},
|
|
@@ -3296,7 +3296,7 @@
|
|
|
3296
3296
|
{"objectID":"f5a8b702e8237dd44e4c2afa5b0fe4b35914c8fbb7d3db35d767d62d5d59735d","title":"Data Retention","url":"/docs/features/conversation-history#data-retention","content":"Set TTL on sessions - Auto-delete old conversations\n\n`\nArchive regularly - Export to long-term storage","hierarchy":{"lvl0":"Features","lvl1":"Redis Conversation History Export","lvl2":"Data Retention","lvl3":""}},
|
|
3297
3297
|
{"objectID":"8c905694c375e261af4d54a36b967993336d56d93c3c95c2d81c0eb97a9a810d","title":"Related Features","url":"/docs/features/conversation-history#related-features","content":"CLI Loop Sessions - Persistent conversation mode\nConversation Memory - Full memory system docs\nAnalytics Integration - Track conversation metrics","hierarchy":{"lvl0":"Features","lvl1":"Redis Conversation History Export","lvl2":"Related Features","lvl3":""}},
|
|
3298
3298
|
{"objectID":"1f4d41e856ac4f9383479d49927a679708395521350a6d1225814a09b491b2ab","title":"Migration Notes","url":"/docs/features/conversation-history#migration-notes","content":"If upgrading from in-memory to Redis-backed storage:\nEnable Redis in configuration\nExisting in-memory sessions will be lost (not migrated)\nNew sessions automatically stored in Redis\nExport functionality only works with Redis store\nConsider gradual rollout with feature flag\n\nFor complete conversation memory system documentation, see conversation-memory.md.","hierarchy":{"lvl0":"Features","lvl1":"Redis Conversation History Export","lvl2":"Migration Notes","lvl3":""}},
|
|
3299
|
-
{"objectID":"b2470c9e1d7e3606393dd20eff3c0c67db2dd4286351faae35b7df97b72b2989","title":"Credential Validation","url":"/docs/features/credential-validation","content":"Added in v9.59.0, NeuroLink ships a typed ModelAccessDeniedError and a pre-flight sdk.checkCredentials() API. Together they let you validate provider credentials before wiring them into a long-running flow — useful for setup wizards, health checks, and surfacing actionable errors to users instead of opaque HTTP 401/403s.\n\nsdk.checkCredentials()\n\nProbes a single provider with a real 1-token generation call (maxTokens: 16, tools disabled) and returns a structured status. The signature is:\n\nImplementation lives in src/lib/neurolink.ts.\n\nBasic usage\n\nProbing a specific model\n\nStatus reference\n\n| status | Meaning |\n| ----------- | --------------------------------------------------------------------- |\n| \"ok\" | Credentials valid; the probe succeeded. |\n| \"missing\" | Required env vars / per-call credentials are not set. |\n| \"expired\" | OAuth token / temporary credentials have expired. |\n| \"denied\" | Model access denied — see ModelAccessDeniedError below. |\n| \"network\" | Network failure reaching the provider (DNS, TLS, timeout). |\n| \"unknown\" | An unclassified provider error; inspect detail for the raw message. |\n\ndetail is a short human-readable message suitable for surfacing in a setup UI or log line.\n\nProbing several providers\n\ncheckCredentials() validates one provider per call. To check multiple providers, run them concurrently:\n\nModelAccessDeniedError\n\nWhen a generate/stream call hits a model-access policy (e.g. the team is not allowed to use a particular model, or a tier-restricted model is requested), NeuroLink throws a typed ModelAccessDeniedError instead of a generic Error. This makes it catchable by the providerFallback orchestrator and lets you produce actionable UI.\n\nError shape\n\nThe exact definition lives in src/lib/types/errors.ts.\n\nCLI\n\nNeuroLink does not ship a dedicated check-credentials CLI command. The closest operator-facing command is:\n\nFor programmatic credential validation in scripts, call the SDK directly:\n\nCombining with Provider Fallback\n\nThe most common pattern: validate at boot, surface configuration errors to operators, then let runtime requests use providerFallback for the model-access denial cases that survive validation.\n\nSetup Wizard Pattern\n\nPer-call credential overrides are also supported on generate() / stream() — see Per-Request Credentials.\n\nRelated\nProvider Fallback — catch ModelAccessDeniedError and switch to an allowed model\nPer-Request Credentials — pass credentials per-call or per-instance\nProvider Setup — initial configuration for
|
|
3299
|
+
{"objectID":"b2470c9e1d7e3606393dd20eff3c0c67db2dd4286351faae35b7df97b72b2989","title":"Credential Validation","url":"/docs/features/credential-validation","content":"Added in v9.59.0, NeuroLink ships a typed ModelAccessDeniedError and a pre-flight sdk.checkCredentials() API. Together they let you validate provider credentials before wiring them into a long-running flow — useful for setup wizards, health checks, and surfacing actionable errors to users instead of opaque HTTP 401/403s.\n\nsdk.checkCredentials()\n\nProbes a single provider with a real 1-token generation call (maxTokens: 16, tools disabled) and returns a structured status. The signature is:\n\nImplementation lives in src/lib/neurolink.ts.\n\nBasic usage\n\nProbing a specific model\n\nStatus reference\n\n| status | Meaning |\n| ----------- | --------------------------------------------------------------------- |\n| \"ok\" | Credentials valid; the probe succeeded. |\n| \"missing\" | Required env vars / per-call credentials are not set. |\n| \"expired\" | OAuth token / temporary credentials have expired. |\n| \"denied\" | Model access denied — see ModelAccessDeniedError below. |\n| \"network\" | Network failure reaching the provider (DNS, TLS, timeout). |\n| \"unknown\" | An unclassified provider error; inspect detail for the raw message. |\n\ndetail is a short human-readable message suitable for surfacing in a setup UI or log line.\n\nProbing several providers\n\ncheckCredentials() validates one provider per call. To check multiple providers, run them concurrently:\n\nModelAccessDeniedError\n\nWhen a generate/stream call hits a model-access policy (e.g. the team is not allowed to use a particular model, or a tier-restricted model is requested), NeuroLink throws a typed ModelAccessDeniedError instead of a generic Error. This makes it catchable by the providerFallback orchestrator and lets you produce actionable UI.\n\nError shape\n\nThe exact definition lives in src/lib/types/errors.ts.\n\nCLI\n\nNeuroLink does not ship a dedicated check-credentials CLI command. The closest operator-facing command is:\n\nFor programmatic credential validation in scripts, call the SDK directly:\n\nCombining with Provider Fallback\n\nThe most common pattern: validate at boot, surface configuration errors to operators, then let runtime requests use providerFallback for the model-access denial cases that survive validation.\n\nSetup Wizard Pattern\n\nPer-call credential overrides are also supported on generate() / stream() — see Per-Request Credentials.\n\nRelated\nProvider Fallback — catch ModelAccessDeniedError and switch to an allowed model\nPer-Request Credentials — pass credentials per-call or per-instance\nProvider Setup — initial configuration for supported providers\nTroubleshooting — error reference and resolution guide","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"","lvl3":""}},
|
|
3300
3300
|
{"objectID":"46449341ad79be4d2645e786dd7bd9c493acc4851ef0e6582435a5f053c6e789","title":"sdk.checkCredentials()","url":"/docs/features/credential-validation#sdkcheckcredentials","content":"Probes a single provider with a real 1-token generation call (maxTokens: 16, tools disabled) and returns a structured status. The signature is:\n\nImplementation lives in src/lib/neurolink.ts.","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"sdk.checkCredentials()","lvl3":""}},
|
|
3301
3301
|
{"objectID":"187bc45a1141451913afe4ba39720fd9f5a222b7ee69cd6f1f37ce8c7246c813","title":"Status reference","url":"/docs/features/credential-validation#status-reference","content":"| status | Meaning |\n| ----------- | --------------------------------------------------------------------- |\n| \"ok\" | Credentials valid; the probe succeeded. |\n| \"missing\" | Required env vars / per-call credentials are not set. |\n| \"expired\" | OAuth token / temporary credentials have expired. |\n| \"denied\" | Model access denied — see ModelAccessDeniedError below. |\n| \"network\" | Network failure reaching the provider (DNS, TLS, timeout). |\n| \"unknown\" | An unclassified provider error; inspect detail for the raw message. |\n\ndetail is a short human-readable message suitable for surfacing in a setup UI or log line.","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Status reference","lvl3":""}},
|
|
3302
3302
|
{"objectID":"8c297800d157544564db0f6c8fb6e86b59ed703da1e3f089cc9117988944c911","title":"Probing several providers","url":"/docs/features/credential-validation#probing-several-providers","content":"checkCredentials() validates one provider per call. To check multiple providers, run them concurrently:","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Probing several providers","lvl3":""}},
|
|
@@ -3306,10 +3306,10 @@
|
|
|
3306
3306
|
{"objectID":"46bf176f46254d8491bfe69cc68ccb606df5782f8cfccf6cad3d54b6c3da7897","title":"Check provider connectivity / status","url":"/docs/features/credential-validation#check-provider-connectivity-status","content":"npx @juspay/neurolink status\ntypescript\nconst r = await neurolink.checkCredentials({ provider });\nprocess.exit(r.status === \"ok\" ? 0 : 1);\n`","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Check provider connectivity / status","lvl3":""}},
|
|
3307
3307
|
{"objectID":"8c51b1c7b3c37d1429ac1f0ae431c072cb364c1eebb1a9c634115a17ddaafd4d","title":"Combining with Provider Fallback","url":"/docs/features/credential-validation#combining-with-provider-fallback","content":"The most common pattern: validate at boot, surface configuration errors to operators, then let runtime requests use providerFallback for the model-access denial cases that survive validation.","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Combining with Provider Fallback","lvl3":""}},
|
|
3308
3308
|
{"objectID":"563c0e0700562c72770c62d5f532e84fc3ee56570cbf15ac9c6f43228041b77e","title":"Setup Wizard Pattern","url":"/docs/features/credential-validation#setup-wizard-pattern","content":"Per-call credential overrides are also supported on generate() / stream() — see Per-Request Credentials.","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Setup Wizard Pattern","lvl3":""}},
|
|
3309
|
-
{"objectID":"e9c0ee2866d85055fb3a31d68362756a3fde836cb8ef78eb471ccc19c5c62443","title":"Related","url":"/docs/features/credential-validation#related","content":"Provider Fallback — catch ModelAccessDeniedError and switch to an allowed model\nPer-Request Credentials — pass credentials per-call or per-instance\nProvider Setup — initial configuration for
|
|
3310
|
-
{"objectID":"0be17b4592b7a6e40fdc4145e101660a63d7b276620da4433ada9e9ffd24d7ed","title":"CSV File Support","url":"/docs/features/csv-support","content":"CSV File Support\n\nNeuroLink provides seamless CSV file support as a multimodal input type - attach CSV files directly to your AI prompts for data analysis, insights, and processing.\n\nOverview\n\nCSV support in NeuroLink works just like image support - it's a multimodal input that gets automatically processed and injected into your prompts. The system:\nAuto-detects CSV files using FileDetector (magic bytes, MIME types, extensions, content heuristics)\nParses CSV data using a streaming parser for memory efficiency\nFormats CSV content into LLM-optimized text (markdown/json)\nInjects formatted CSV data into your prompt text\nWorks
|
|
3309
|
+
{"objectID":"e9c0ee2866d85055fb3a31d68362756a3fde836cb8ef78eb471ccc19c5c62443","title":"Related","url":"/docs/features/credential-validation#related","content":"Provider Fallback — catch ModelAccessDeniedError and switch to an allowed model\nPer-Request Credentials — pass credentials per-call or per-instance\nProvider Setup — initial configuration for supported providers\nTroubleshooting — error reference and resolution guide","hierarchy":{"lvl0":"Features","lvl1":"Credential Validation","lvl2":"Related","lvl3":""}},
|
|
3310
|
+
{"objectID":"0be17b4592b7a6e40fdc4145e101660a63d7b276620da4433ada9e9ffd24d7ed","title":"CSV File Support","url":"/docs/features/csv-support","content":"CSV File Support\n\nNeuroLink provides seamless CSV file support as a multimodal input type - attach CSV files directly to your AI prompts for data analysis, insights, and processing.\n\nOverview\n\nCSV support in NeuroLink works just like image support - it's a multimodal input that gets automatically processed and injected into your prompts. The system:\nAuto-detects CSV files using FileDetector (magic bytes, MIME types, extensions, content heuristics)\nParses CSV data using a streaming parser for memory efficiency\nFormats CSV content into LLM-optimized text (markdown/json)\nInjects formatted CSV data into your prompt text\nWorks across supported AI providers (not limited to vision models)\n\nDelimiter auto-detection: the delimiter is detected from the content (comma, tab / .tsv, semicolon, or pipe) — so tab- and semicolon-separated files parse into the correct columns instead of collapsing into one. Comma remains the default on ambiguity, and parsing is RFC-4180 quote-aware (a delimiter inside a \"…\" quoted field, e.g. \"Smith, John\", does not split the field). The detected delimiter is reported in metadata.detectedDelimiter.\n\nQuick Start\n\nSDK Usage\n\nCLI Usage\n\nAPI Reference\n\nGenerateOptions\n\nCSV Input Types\n\nCSV files can be provided as:\nFile paths: \"./data.csv\" or \"/absolute/path/data.csv\"\nURLs: \"https://example.com/data.csv\"\nBuffers: Buffer.from(\"name,age\\nAlice,30\")\nData URIs: \"data:text/csv;base64,...\"\n\nCSV Processing Options\n\nmaxRows\n\nLimit the number of rows processed (default: 1000). Useful for large datasets.\n\nformatStyle\n\nControl how CSV data is formatted for the LLM:\nraw (default, RECOMMENDED): Original CSV format with proper escaping\nBest for large files and minimal token usage\nPreserves original structure\nHandles commas, quotes, newlines correctly\nFile size stays minimal (63KB stays 63KB, not 199KB)\njson: JSON array format\nBest for structured data processing\nEasy to parse programmatically\nHigher token usage (can expand 3x for large files)\nmarkdown: Markdown table format\nBest for small datasets (\\ (#384)\n- **Token limits**: Large CSV files may exceed provider token limits\n- **Streaming**: CSV content is parsed and formatted before sending (not streamed to LLM)\n\n## Error Handling\n\n\n\n## Related Features\n\n- **[Office Documents](/docs/features/office-documents)**: DOCX, PPTX, XLSX processing\n- **[PDF Support](/docs/features/pdf-support)**: PDF document processing\n- **Image Support**: Similar multimodal input for images\n- **File Detection**: Auto-detect file types with confidence scores\n- **Memory Efficient**: Streaming parser for large files\n- **Provider Agnostic**: Works across supported providers\n- **CLI Integration**: Full CLI support with options\n\n## Summary\n\n- CSV support is **multimodal input** (like images)\n- Use csvFiles array or files array (auto-detect)\n- Customize with csvOptions (maxRows, formatStyle, includeHeaders)\n- Works across **supported providers** (not just vision models)\n- **Memory efficient** streaming parser\n- CLI support with --csv, --file, --csv-max-rows, --csv-format`\nOnly types exposed from package (not classes)","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"","lvl3":""}},
|
|
3311
3311
|
{"objectID":"50558bfd6450513e97d26d0c5dec26864d0a62867d9822b5b8d676671c120203","title":"CSV File Support","url":"/docs/features/csv-support#csv-file-support","content":"NeuroLink provides seamless CSV file support as a multimodal input type - attach CSV files directly to your AI prompts for data analysis, insights, and processing.","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"CSV File Support","lvl3":""}},
|
|
3312
|
-
{"objectID":"0b2183adf9e9cdf34c79d946245c47fa211c5973595f4ffa43ca19654c7e5183","title":"Overview","url":"/docs/features/csv-support#overview","content":"CSV support in NeuroLink works just like image support - it's a multimodal input that gets automatically processed and injected into your prompts. The system:\nAuto-detects CSV files using FileDetector (magic bytes, MIME types, extensions, content heuristics)\nParses CSV data using a streaming parser for memory efficiency\nFormats CSV content into LLM-optimized text (markdown/json)\nInjects formatted CSV data into your prompt text\nWorks
|
|
3312
|
+
{"objectID":"0b2183adf9e9cdf34c79d946245c47fa211c5973595f4ffa43ca19654c7e5183","title":"Overview","url":"/docs/features/csv-support#overview","content":"CSV support in NeuroLink works just like image support - it's a multimodal input that gets automatically processed and injected into your prompts. The system:\nAuto-detects CSV files using FileDetector (magic bytes, MIME types, extensions, content heuristics)\nParses CSV data using a streaming parser for memory efficiency\nFormats CSV content into LLM-optimized text (markdown/json)\nInjects formatted CSV data into your prompt text\nWorks across supported AI providers (not limited to vision models)\n\nDelimiter auto-detection: the delimiter is detected from the content (comma, tab / .tsv, semicolon, or pipe) — so tab- and semicolon-separated files parse into the correct columns instead of collapsing into one. Comma remains the default on ambiguity, and parsing is RFC-4180 quote-aware (a delimiter inside a \"…\" quoted field, e.g. \"Smith, John\", does not split the field). The detected delimiter is reported in metadata.detectedDelimiter.","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Overview","lvl3":""}},
|
|
3313
3313
|
{"objectID":"d92dfaa87c1e409e260c02d2fbef266f735e9d8a274e61b42c32619031875928","title":"CLI Usage","url":"/docs/features/csv-support#cli-usage","content":"`bash","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"CLI Usage","lvl3":""}},
|
|
3314
3314
|
{"objectID":"561deacc9447cbcbe6d0aaa718e672c272200b3317761b70dc2901799bbe387a","title":"Attach CSV files to your prompt","url":"/docs/features/csv-support#attach-csv-files-to-your-prompt","content":"neurolink generate \"Analyze this sales data\" --csv sales.csv","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Attach CSV files to your prompt","lvl3":""}},
|
|
3315
3315
|
{"objectID":"f9c0b14b57f208f3acdab9bd2cf17030fbe344f52dfed7892dc02133bf4dff6e","title":"Multiple CSV files","url":"/docs/features/csv-support#multiple-csv-files","content":"neurolink generate \"Compare these datasets\" --csv q1.csv --csv q2.csv","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Multiple CSV files","lvl3":""}},
|
|
@@ -3335,8 +3335,8 @@
|
|
|
3335
3335
|
{"objectID":"4f1c95c8681e4d6c09ce1c766dd656e93ac9d46eb9c260b07b52f403cbe9ba05","title":"4. Provide Clear Instructions","url":"/docs/features/csv-support#4-provide-clear-instructions","content":"Give the AI clear instructions about what to analyze:","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"4. Provide Clear Instructions","lvl3":""}},
|
|
3336
3336
|
{"objectID":"3a7bb8857dd8b7fd19c3b7d2cd58af0ba2ebc1e4e417cab6d595670be0650f45","title":"5. Use Auto-Detection","url":"/docs/features/csv-support#5-use-auto-detection","content":"Let FileDetector handle mixed file types:","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"5. Use Auto-Detection","lvl3":""}},
|
|
3337
3337
|
{"objectID":"a78bcf758e0d2cbf2d2e9ad39bb04c851848618fb55718447904be31d350055b","title":"Limitations","url":"/docs/features/csv-support#limitations","content":"Max file size: 10MB by default (configurable)\nMax rows: 1000 by default (configurable)\nEncoding: auto-detected via BOM + chardet (UTF-8 / UTF-16 / Windows-1252 / Latin-1 …), or forced with encoding (#362)\nPer-row size: a single row is capped at 10MB to bound memory; larger rows fail fast with a clear error (#371)\nParse timeout: parsing is time-bounded (30s strings / 5min files); on timeout partial rows are returned with metadata.parseTimedOut (#379)\nRow shape: parsed rows are validated to be string-keyed objects with string values; a malformed row aborts the parse with [CSVProcessor] Invalid CSV row <n> (#384)\nToken limits: Large CSV files may exceed provider token limits\nStreaming: CSV content is parsed and formatted before sending (not streamed to LLM)","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Limitations","lvl3":""}},
|
|
3338
|
-
{"objectID":"1e48831d1c4fc775af2633d0340bdeb3d11c96abc213cbdd814a53d14ce500df","title":"Related Features","url":"/docs/features/csv-support#related-features","content":"Office Documents: DOCX, PPTX, XLSX processing\nPDF Support: PDF document processing\nImage Support: Similar multimodal input for images\nFile Detection: Auto-detect file types with confidence scores\nMemory Efficient: Streaming parser for large files\nProvider Agnostic: Works
|
|
3339
|
-
{"objectID":"19734b9ffaeb8376dfcebd944730a4cedae77bc1e7ed769733b8b71b1758c421","title":"Summary","url":"/docs/features/csv-support#summary","content":"CSV support is multimodal input (like images)\nUse csvFiles array or files array (auto-detect)\nCustomize with csvOptions (maxRows, formatStyle, includeHeaders)\nWorks
|
|
3338
|
+
{"objectID":"1e48831d1c4fc775af2633d0340bdeb3d11c96abc213cbdd814a53d14ce500df","title":"Related Features","url":"/docs/features/csv-support#related-features","content":"Office Documents: DOCX, PPTX, XLSX processing\nPDF Support: PDF document processing\nImage Support: Similar multimodal input for images\nFile Detection: Auto-detect file types with confidence scores\nMemory Efficient: Streaming parser for large files\nProvider Agnostic: Works across supported providers\nCLI Integration: Full CLI support with options","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Related Features","lvl3":""}},
|
|
3339
|
+
{"objectID":"19734b9ffaeb8376dfcebd944730a4cedae77bc1e7ed769733b8b71b1758c421","title":"Summary","url":"/docs/features/csv-support#summary","content":"CSV support is multimodal input (like images)\nUse csvFiles array or files array (auto-detect)\nCustomize with csvOptions (maxRows, formatStyle, includeHeaders)\nWorks across supported providers (not just vision models)\nMemory efficient streaming parser\nCLI support with --csv, --file, --csv-max-rows, --csv-format\nOnly types exposed from package (not classes)","hierarchy":{"lvl0":"Features","lvl1":"CSV File Support","lvl2":"Summary","lvl3":""}},
|
|
3340
3340
|
{"objectID":"fce0b532226adb069bbeb5459dc5e4ec28037617ca805845768d918653ddbfd5","title":"The `decide` inference type","url":"/docs/features/decide-inference-type","content":"The decide inference type\n\nDeep-dive: generate, stream, decide: a third inference type for NeuroLink —\nwhy this shipped as a provider rather than a subsystem, the five call sites, and the four\ntransport bugs found by adding the Vercel AI Gateway (two of which produced plausible output).\n\nNeuroLink recognises three inference types. Two of them produce text:\n\n| Type | Call | Produces |\n| ------------ | ------------------------ | ------------------------------------------ |\n| generate | neurolink.generate() | text |\n| stream | neurolink.stream() | text, incrementally |\n| decide | neurolink.decide() | typed, calibrated judgements — no text |\n\nA decision model takes one state plus a map of named, typed questions and\nreturns one typed answer per question, all evaluated in a single parallel pass.\nThere is no text anywhere in the response, so nothing has to be parsed back out\nof prose. TypeSafe's Jev was the first such model; Convai Innovations' open-weights\nLaya is the second.\n\nThis is not neurolink.evaluate(), which scores an\nalready-generated response with RAGAS scorers. Different feature, different\nword.\n\nThe three primitives\n\n| Type | Question | Answer fields |\n| --------- | ------------------------------ | ------------------------------------------------ |\n| boolean | Is this statement true? | probability (0–1) — no confidence |\n| choice | Which option from this set? | choice, probabilities, confidence |\n| score | Rate against an ordered rubric | score, legend, probabilities, confidence |\n\nAll three mix freely in one call.\n\nVocabulary note. TypeSafe calls the yes/no primitive a noul and answers\nit in a field of the same name. The Vercel AI SDK and Pydantic AI both renamed\nthat to boolean/probability when exposing it, and NeuroLink follows them —\nthe vendor's spelling is translated inside TypeSafeProvider, so a second\ndecision provider slots in without changing any call site.\n\nConfidence is not probability\n\nprobabilities says what the model thinks. confidence says _whether you\nshould act on it_. It is calibrated — derived from the distribution, not\nself-reported — which is what makes it usable as a gate.\n\nCalibration is a property of groups of answers, not a promise about any\none. Across many answers, those scored 0.8 are right about 80% of the time.\nIt does not mean a specific 0.8 answer is right.\n\nA boolean carries no confidence of its own. Use decisionBooleanConfidence(p)\n— distance from a coin flip, so 0.5 → 0 and 0/1 → 1. Note also that a boolean\nand an equivalent two-option choice are not guaranteed to agree, and\ncomplementary booleans do not reliably sum to 1, so a threshold tuned on one\nquestion shape does not transfer to another.\n\nEnabling it\n\nGet a key at console.typesafe.ai/keys.\n\nLaya, at a Laya server or a LiteLLM proxy route\n\nLaya has no built-in endpoint. The base URL and key can equally come from the\nconfig passed to the SDK, new NeuroLink({ credentials: { laya: { baseURL, apiKey } } }),\nor per call; config set there counts when NeuroLink picks the default decision\nprovider, exactly as the environment does.\n\nWhen a TypeSafe key (TYPESAFE_API_KEY or AI_GATEWAY_API_KEY) is configured\nalongside Laya, TypeSafe is the default; Laya runs where a caller names it\n(provider: \"laya\") or when neither TypeSafe key is set. Laya counts as\nconfigured only with both its key and its base URL. See the\nLaya provider guide.\n\nThe degradation contract. resolveDefaultDecisionProvider() returns\nundefined when no decision provider has its key set, and tryDecide() returns\nnull on any failure. There is no configuration in which a missing, invalid,\nslow or unreachable decision model changes NeuroLink's observable behaviour —\nit only ever falls back to what it did before.\n\nA credential the service does not accept disables that provider instance rather\nthan paying a round trip on every later call to be told so again.\n\nTwo transports\n\nThe same model is reachable two ways. Which one runs is decided once, in the\nconstructor:\n\n| | Direct | Vercel AI Gateway |\n| ------------------- | ------------------ | --------------------------------------------- |\n| Key | TYPESAFE_API_KEY | AI_GATEWAY_API_KEY |\n| Endpoint | api.typesafe.ai | ai-gateway.vercel.sh/v4/ai/evaluation-model |\n| Model named in | request body | ai-model-id header |\n| Question vocabulary | noul | boolean |\n| confidence | on each answer | on providerMetadata, not on the answer |\n| Billed by | TypeSafe | Vercel |\n\nHolding both keys keeps the direct transport, so the confidence f","hierarchy":{"lvl0":"Features","lvl1":"The `decide` inference type","lvl2":"","lvl3":""}},
|
|
3341
3341
|
{"objectID":"f91e7ef7473aa411ff8c0d3b04381325781477c1876408ffd5469dbaf2d9584c","title":"The decide inference type","url":"/docs/features/decide-inference-type#the-decide-inference-type","content":"Deep-dive: generate, stream, decide: a third inference type for NeuroLink —\nwhy this shipped as a provider rather than a subsystem, the five call sites, and the four\ntransport bugs found by adding the Vercel AI Gateway (two of which produced plausible output).\n\nNeuroLink recognises three inference types. Two of them produce text:\n\n| Type | Call | Produces |\n| ------------ | ------------------------ | ------------------------------------------ |\n| generate | neurolink.generate() | text |\n| stream | neurolink.stream() | text, incrementally |\n| decide | neurolink.decide() | typed, calibrated judgements — no text |\n\nA decision model takes one state plus a map of named, typed questions and\nreturns one typed answer per question, all evaluated in a single parallel pass.\nThere is no text anywhere in the response, so nothing has to be parsed back out\nof prose. TypeSafe's Jev was the first such model; Convai Innovations' open-weights\nLaya is the second.\n\nThis is not neurolink.evaluate(), which scores an\nalready-generated response with RAGAS scorers. Different feature, different\nword.","hierarchy":{"lvl0":"Features","lvl1":"The `decide` inference type","lvl2":"The decide inference type","lvl3":""}},
|
|
3342
3342
|
{"objectID":"2c0f154b9ae29f0af1a097de9ccb435db1e8f5c35a4df8bb91526eadb7b5eb97","title":"The three primitives","url":"/docs/features/decide-inference-type#the-three-primitives","content":"| Type | Question | Answer fields |\n| --------- | ------------------------------ | ------------------------------------------------ |\n| boolean | Is this statement true? | probability (0–1) — no confidence |\n| choice | Which option from this set? | choice, probabilities, confidence |\n| score | Rate against an ordered rubric | score, legend, probabilities, confidence |\n\nAll three mix freely in one call.\n\nVocabulary note. TypeSafe calls the yes/no primitive a noul and answers\nit in a field of the same name. The Vercel AI SDK and Pydantic AI both renamed\nthat to boolean/probability when exposing it, and NeuroLink follows them —\nthe vendor's spelling is translated inside TypeSafeProvider, so a second\ndecision provider slots in without changing any call site.","hierarchy":{"lvl0":"Features","lvl1":"The `decide` inference type","lvl2":"The three primitives","lvl3":""}},
|
|
@@ -3556,10 +3556,10 @@
|
|
|
3556
3556
|
{"objectID":"e3366024d1a12d0c73fbcb1592927d2dcc0d92c12eaea661cf5164bb7217c32f","title":"Feature Guides","url":"/docs/features","content":"Feature Guides\n\nComprehensive guides for all NeuroLink features organized by category. Each guide includes setup, usage patterns, configuration, and troubleshooting.\n\nLatest Features (Q1 2026)\n\n| Feature | Description |\n| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| decide Inference Type | A third inference type alongside generate/stream: typed, calibrated boolean/choice/score judgments in one parallel pass — no text. ~400ms, ~$0.00002 per decision. First provider is TypeSafe Jev; Laya, open-weights and self-hosted, is the second. Fail-open: a no-op without a key. |\n| Model Routing with a Decision Model | One round trip answers difficulty, capabilities, risk, context scope and the model pick, with asymmetric confidence bars (0.3 up / 0.6 down). |\n| Model Catalogue | Ranks the 64-model registry as an addition to a host-declared pool, never a replacement. One choice question ranks all N candidates. |\n| Context Budget | A per-request compaction threshold derived from how much context the request actually needs. Only ever lowers the default, never raises it. |\n| Relevance Compaction | Stage 0 of the compaction pipeline: asks which earlier messages the current request still needs, plus a quality gate on the generated summary. |\n| Tool Routing with a Decision Model | One calibrated yes/no per MCP server, dropping only on a confident \"no\" — replaces a 15s LLM call at ~400ms. |\n| RAG Retrieval Planning | Per-query topK breadth and whether to use hybrid / graph / rerank. Opt-in via RAGPipeline. |\n| Real-time Voice Services | Bidirectional realtime voice APIs — OpenAI Realtime and Gemini Live. Full-duplex audio streaming with tool calls, barge-in, and interruption. |\n| LiveKit Voice Agent | WebRTC voice agent using LiveKit for the real-time loop (transport, VAD, turn-taking, worker-per-call scaling) with NeuroLink as the brain (LLM, tools, memory). Cloud or self-hosted. |\n| Provider Fallback & Model Chains | providerFallback callback + modelChain config (v9.58.0) — centralized multi-provider fallba","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"","lvl3":""}},
|
|
3557
3557
|
{"objectID":"a477c76a577a17e7aeaf89736289a0a41734b4bcfe479a523cdd9e2051bd0ba7","title":"Feature Guides","url":"/docs/features#feature-guides","content":"Comprehensive guides for all NeuroLink features organized by category. Each guide includes setup, usage patterns, configuration, and troubleshooting.","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Feature Guides","lvl3":""}},
|
|
3558
3558
|
{"objectID":"a43e81fa4a6c594f8b6b4cfc216db1356d75b3e4ebb54279dd2da7f69001d28f","title":"Latest Features (Q1 2026)","url":"/docs/features#latest-features-q1-2026","content":"| Feature | Description |\n| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| decide Inference Type | A third inference type alongside generate/stream: typed, calibrated boolean/choice/score judgments in one parallel pass — no text. ~400ms, ~$0.00002 per decision. First provider is TypeSafe Jev; Laya, open-weights and self-hosted, is the second. Fail-open: a no-op without a key. |\n| Model Routing with a Decision Model | One round trip answers difficulty, capabilities, risk, context scope and the model pick, with asymmetric confidence bars (0.3 up / 0.6 down). |\n| Model Catalogue | Ranks the 64-model registry as an addition to a host-declared pool, never a replacement. One choice question ranks all N candidates. ","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Latest Features (Q1 2026)","lvl3":""}},
|
|
3559
|
-
{"objectID":"84c604ce940f85fbe8aa8d94675e4c1dae80b22ede558d58102426598f6a7d06","title":"Core Features (shipped 2025)","url":"/docs/features#core-features-shipped-2025","content":"| Feature | Description
|
|
3560
|
-
{"objectID":"f64aba3e564a8f56064839c33b533971468da990a9cc95d86ceb1e9d13223478","title":"Earlier Core Features (shipped Q3 2025)","url":"/docs/features#earlier-core-features-shipped-q3-2025","content":"| Feature | Description
|
|
3561
|
-
{"objectID":"fbd682fc148477639d38ab175c38363d003a1464834e84b2a48d88087d001b91","title":"Platform Capabilities at a Glance","url":"/docs/features#platform-capabilities-at-a-glance","content":"| Category | Features | Documentation |\n| ------------------------ | ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |\n| Provider unification |
|
|
3562
|
-
{"objectID":"71822e016bf07461e8af1f4f98755ff09c6a0af3daac91dc0cc0326dce7f06d1","title":"AI Provider Integration","url":"/docs/features#ai-provider-integration","content":"NeuroLink supports
|
|
3559
|
+
{"objectID":"84c604ce940f85fbe8aa8d94675e4c1dae80b22ede558d58102426598f6a7d06","title":"Core Features (shipped 2025)","url":"/docs/features#core-features-shipped-2025","content":"| Feature | Description |\n| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |\n| Image Generation | Generate images from text prompts using Gemini models via Vertex AI or Google AI Studio. |\n| Enterprise HITL | Production-ready HITL with approval workflows, confidence thresholds, and enterprise patterns. |\n| Interactive CLI | AI development environment with loop mode, session variables, and conversation memory. |\n| MCP Tools Showcase | Complete guide to 6 built-in tools and connecting external MCP servers across 6 categories. |\n| Human-in-the-Loop (HITL) | Pause AI tool execution for user approval before risky operations like file deletion or API calls. |\n| Guardrails Middleware | Content filtering, PII detection, and safety checks for AI outputs with zero configuration. |\n| Redis Conversation Export | Export complete session history as JSON for analytics, debugging, and compliance auditing. |\n| Context Compaction | Automatic conversation compression for long-running sessions to stay within token limits. |\n| LiteLLM Integration | Access 100+ AI models across a broad range of AI providers through unified LiteLLM routing interface. |\n| SageMaker Integration | Deploy and use custom-trained models on AWS SageMaker infrastructure with full control. |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Core Features (shipped 2025)","lvl3":""}},
|
|
3560
|
+
{"objectID":"f64aba3e564a8f56064839c33b533971468da990a9cc95d86ceb1e9d13223478","title":"Earlier Core Features (shipped Q3 2025)","url":"/docs/features#earlier-core-features-shipped-q3-2025","content":"| Feature | Description |\n| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |\n| Multimodal Chat Experiences | Stream text and images together with automatic provider fallbacks and format conversion. |\n| CSV File Support | Process CSV files for data analysis with automatic format conversion. Works across supported providers. |\n| PDF File Support | Process PDF documents for visual analysis and content extraction. Native provider support. |\n| Office Documents | Process DOCX, PPTX, XLSX files for document analysis. Native Bedrock, Vertex, Anthropic support. |\n| Auto Evaluation Engine | Automated quality scoring and metrics export for AI response validation using LLM-as-judge. |\n| CLI Loop Sessions | Persistent interactive mode with conversation memory and session state for prompt engineering. |\n| Regional Streaming Controls | Region-specific model deployment and routing for compliance and latency optimization. |\n| Provider Orchestration Brain | Adaptive provider and model selection with intelligent fallbacks based on task classification. |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Earlier Core Features (shipped Q3 2025)","lvl3":""}},
|
|
3561
|
+
{"objectID":"fbd682fc148477639d38ab175c38363d003a1464834e84b2a48d88087d001b91","title":"Platform Capabilities at a Glance","url":"/docs/features#platform-capabilities-at-a-glance","content":"| Category | Features | Documentation |\n| ------------------------ | ------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |\n| Provider unification | Provider integrations with automatic failover, cost-aware routing, providerFallback policy, modelChain config | Provider Setup |\n| Multimodal pipeline | Stream images + CSV data + PDF documents + Office files across providers with auto-detection for mixed file types. | Multimodal Guide, CSV Support, PDF Support, Office Docs |\n| Voice pipeline | TTS (6 providers) + STT (4 providers) + realtime APIs (OpenAI Realtime, Gemini Live) | TTS Guide, STT Guide, Realtime Services |\n| Quality & governance | Auto-evaluation engine (14 scorers), guardrails middleware, HITL workflows, audit logging | Auto Evaluation, Guardrails, HITL |\n| Memory & context | Per-user condensed memory (S3/Redis/SQLite), Redis session export, 5-stage context compaction | Conversation Memory, Memory, Redis Export |\n| CLI tooling | Loop sessions, setup wizard, config validation, Redis auto-detect, JSON output, TTS/STT flags | CLI Loop, CLI Commands |\n| Enterprise ops | Claude proxy, OTLP observability, OpenObserve dashboard, regional routing,","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Platform Capabilities at a Glance","lvl3":""}},
|
|
3562
|
+
{"objectID":"71822e016bf07461e8af1f4f98755ff09c6a0af3daac91dc0cc0326dce7f06d1","title":"AI Provider Integration","url":"/docs/features#ai-provider-integration","content":"NeuroLink supports many AI providers with unified API access:\n\n| Provider | Key Features | Free Tier | Tool Support | Status | Documentation |\n| --------------------- | ---------------------------------------- | ------------ | ------------ | ---------- | ----------------------------------------------------------------------------------------------------------- |\n| OpenAI | GPT-4o, GPT-4o-mini, o1 models | No | Full | Production | Setup Guide |\n| Anthropic | Claude 4.6, 4.5/4.0 Sonnet, Opus, Haiku | No | Full | Production | Setup Guide, Subscription Guide |\n| Google AI | Gemini 3 Flash/Pro, Gemini 2.5 Flash/Pro | Free Tier | Full | Production | Setup Guide |\n| AWS Bedrock | Claude, Titan, Llama, Nova | No | Full | Production | Setup Guide |\n| Google Vertex | Gemini via GCP | No | Full | Production | Setup Guide |\n| Azure OpenAI | GPT-4, GPT-4o, o1 | No | Full | Production | Setup Guide |\n| LiteLLM | 100+ models unified | Varies | Full | Production | Integration Guide |\n| AWS SageMaker | Custom deployed models | No | Full | Production | Integration Guide |\n| Mistral AI | Mistral Large, Small | Free Tier | Full | Production | Setup Guide ","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"AI Provider Integration","lvl3":""}},
|
|
3563
3563
|
{"objectID":"a059b5877fe4f99abd8eaef030c84dbbad6788f1b0fb3eda3f13391a49191096","title":"Interactive Setup Wizard","url":"/docs/features#interactive-setup-wizard","content":"NeuroLink includes a revolutionary interactive setup wizard that guides users through provider configuration in 2-3 minutes:\n\n`bash","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Interactive Setup Wizard","lvl3":""}},
|
|
3564
3564
|
{"objectID":"dc28dea0405bc1b4e32ddc4cc74e79ad386f019644e00d8e25b546cab3d7932c","title":"Launch interactive setup wizard","url":"/docs/features#launch-interactive-setup-wizard","content":"npx @juspay/neurolink setup","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Launch interactive setup wizard","lvl3":""}},
|
|
3565
3565
|
{"objectID":"7630f844976b486b7711e43c6398d829d3d93b78d722dd37a872ea08685922d5","title":"Provider-specific guided setup","url":"/docs/features#provider-specific-guided-setup","content":"npx @juspay/neurolink setup --provider openai\nnpx @juspay/neurolink setup --provider bedrock\n\n\n**Wizard Features:**\n\n- Secure credential collection with validation\n- Real-time authentication testing\n- Automatic .env` file creation\nRecommended model selection\nQuick-start command examples\nInteractive provider discovery","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Provider-specific guided setup","lvl3":""}},
|
|
@@ -3588,7 +3588,7 @@
|
|
|
3588
3588
|
{"objectID":"793abedc47b3a45489689d77b646431971e56ce23a71d29a1d7fa7e3318e7ad8","title":"Exit the session","url":"/docs/features#exit-the-session","content":"neurolink » exit\n`\n\nComplete Loop Guide - Full documentation with all commands","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Exit the session","lvl3":""}},
|
|
3589
3589
|
{"objectID":"164b1ae9f7c7eb2f50d998d5b8c755eee88a19a0248684adfaa42e5a1674e18a","title":"Production Capabilities","url":"/docs/features#production-capabilities","content":"| Feature | Description | Use Case | Documentation |\n| ---------------------------- | ----------------------------------- | ---------------------------- | ----------------------------------------------------------------- |\n| Enterprise Proxy | Corporate proxy support | Behind firewalls | Proxy Setup |\n| Redis Memory | Distributed conversation state | Multi-instance deployment | Redis Guide |\n| Cost Optimization | Automatic cheapest model selection | Budget control | Cost Guide |\n| Multi-Provider Failover | Automatic provider switching | High availability | Failover Guide |\n| Telemetry & Monitoring | OpenTelemetry integration | Observability | Observability Guide |\n| Security Hardening | Credential management, auditing | Compliance | Security Guide |\n| Custom Model Hosting | SageMaker integration | Private models | SageMaker Guide |\n| Load Balancing | LiteLLM proxy integration | Scale & routing | Load Balancing Guide |\n| Audit Trails | Comprehensive logging | Compliance | Audit Guide |\n| Configuration Management | Environment & credential management | Multi-environment deployment | Config Guide |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Production Capabilities","lvl3":""}},
|
|
3590
3590
|
{"objectID":"96340b4d64ab075d5784d9013a40bf6d857fcda9154292346b5a2b24fff4e7b8","title":"Human-in-the-Loop (HITL) Policy Engine","url":"/docs/features#human-in-the-loop-hitl-policy-engine","content":"Enterprise-grade approval system for sensitive operations:\n\nHITL Capabilities:\nUser consent for dangerous operations\nConfigurable policy engine\nComprehensive audit trail logging\nTimeout handling\nBulk approval for batch operations","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Human-in-the-Loop (HITL) Policy Engine","lvl3":""}},
|
|
3591
|
-
{"objectID":"c81fd2f8780d547e81f6ea98ef097272fa09287c1f9f13a4954cde4378778e19","title":"Advanced Proxy Support","url":"/docs/features#advanced-proxy-support","content":"Corporate network compatibility:\n\n| Proxy Type | Support | Features
|
|
3591
|
+
{"objectID":"c81fd2f8780d547e81f6ea98ef097272fa09287c1f9f13a4954cde4378778e19","title":"Advanced Proxy Support","url":"/docs/features#advanced-proxy-support","content":"Corporate network compatibility:\n\n| Proxy Type | Support | Features |\n| -------------------- | ------- | ---------------------------------------- |\n| AWS Proxy | Full | AWS-specific proxy configuration |\n| HTTP/HTTPS Proxy | Full | Proxy support across supported providers |\n| No-Proxy Bypass | Full | Bypass configuration and utilities |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Advanced Proxy Support","lvl3":""}},
|
|
3592
3592
|
{"objectID":"15f245fee8b38a5783018e5867e335b078b5b03bbfa9cf2ed1e181e3e94aad13","title":"Enhanced Guardrails","url":"/docs/features#enhanced-guardrails","content":"AI-powered content security:\nContent Filtering: Automatic content screening\nToxicity Detection: Toxic content filtering\nPII Redaction: Privacy protection and PII detection\nCustom Rules: Configurable policy rules\nSecurity Reporting: Detailed security event reporting","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Enhanced Guardrails","lvl3":""}},
|
|
3593
3593
|
{"objectID":"af17d7cb6a64c95bf45ad63fd19adcc4db8f3bf34c93d5918f81d4555a8728fe","title":"Security & Compliance","url":"/docs/features#security-compliance","content":"Deployable within SOC 2 Type II environments — NeuroLink itself is not audited or certified\nDeployable on ISO 27001-certified infrastructure — that certification is your infrastructure's, not NeuroLink's\nGDPR-conscious data handling (EU-region providers selectable; you own compliance)\nDeployable in HIPAA-aligned configurations — you are responsible for a compliant setup\nHardened OS verified (SELinux, AppArmor)\nZero credential logging\nEncrypted configuration storage\n\nEnterprise Deployment Guide - Complete production patterns","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Security & Compliance","lvl3":""}},
|
|
3594
3594
|
{"objectID":"656519a66c6e75c3518f426f95a3478a44549339df28f6ee4f6ca762cfbe2992","title":"Advanced Middleware Architecture","url":"/docs/features#advanced-middleware-architecture","content":"Pluggable request/response processing for custom workflows:","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Advanced Middleware Architecture","lvl3":""}},
|
|
@@ -3597,7 +3597,7 @@
|
|
|
3597
3597
|
{"objectID":"827f201374ae1ffd3131fbce5ed9e64e77eefc0cb6fef9cc788c624169cbb591","title":"Intelligent Cost Optimization","url":"/docs/features#intelligent-cost-optimization","content":"Model Resolver: Cost optimization algorithms and intelligent routing\nPerformance Routing: Speed-optimized provider selection\nConcurrent Initialization: Reduced latency through parallel loading\nCaching Strategies: Intelligent response and configuration caching","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Intelligent Cost Optimization","lvl3":""}},
|
|
3598
3598
|
{"objectID":"6b26b4b828ef5c0cc5cc15e2402c41de74cb58d1f290153b83e405a48901936f","title":"Advanced SageMaker Features","url":"/docs/features#advanced-sagemaker-features","content":"Beyond basic integration - enterprise-grade custom model deployment:\n\n| Feature | Description | Status |\n| ---------------------------- | ---------------------------------------------------- | ----------- |\n| Adaptive Semaphore | Dynamic concurrency control for optimal throughput | Implemented |\n| Structured Output Parser | Complex response parsing and validation | Implemented |\n| Capability Detection | Automatic endpoint capability discovery | Implemented |\n| Batch Inference | Efficient batch processing for high-volume workloads | Implemented |\n| Diagnostics System | Real-time endpoint monitoring and debugging | Implemented |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Advanced SageMaker Features","lvl3":""}},
|
|
3599
3599
|
{"objectID":"d19b1338259a288805f8a2eb47fc10040666a90ee4bdfa3846f31f3bf3a3a275","title":"Error Handling & Resilience","url":"/docs/features#error-handling-resilience","content":"Production-grade fault tolerance:\nMCP Circuit Breaker: Fault tolerance with state management\nError Hierarchies: Comprehensive error types for HITL, providers, and MCP\nGraceful Degradation: Intelligent fallback strategies\nRetry Logic: Configurable retry with exponential backoff\n\nPerformance Optimization Guide - Complete optimization strategies","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Error Handling & Resilience","lvl3":""}},
|
|
3600
|
-
{"objectID":"ca876274dff5d751bc09c60e4de804f44917d9e0599697c2cd17362e3e6148bd","title":"Advanced Integrations","url":"/docs/features#advanced-integrations","content":"| Integration | Description
|
|
3600
|
+
{"objectID":"ca876274dff5d751bc09c60e4de804f44917d9e0599697c2cd17362e3e6148bd","title":"Advanced Integrations","url":"/docs/features#advanced-integrations","content":"| Integration | Description |\n| -------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |\n| LiteLLM Integration | Access 100+ models across a broad range of AI providers via LiteLLM routing with unified interface. |\n| SageMaker Integration | Deploy and call custom endpoints directly from NeuroLink CLI/SDK with full control. |\n| Memory | Per-user condensed memory with S3/Redis/SQLite storage and LLM-powered condensation. |\n| Enterprise Proxy | Configure outbound policies and compliance posture for corporate environments. |\n| Configuration Management | Manage environments, regions, and credentials safely across deployments. |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Advanced Integrations","lvl3":""}},
|
|
3601
3601
|
{"objectID":"0d74f47963b8a59cf58901d344f8d1e987d3bb286cb012ed22278f415c051d3f","title":"Advanced Features","url":"/docs/features#advanced-features","content":"| Feature | Description |\n| ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |\n| 🏭 Factory Pattern Architecture | Unified provider interface with automatic fallbacks and type-safe implementations. |\n| 🗄️ Conversation Memory | Deep dive into memory management and Redis integration. |\n| 🔧 Custom Middleware | Build request/response hooks for logging, filtering, and custom processing. |\n| ⚡ Performance Optimization | Caching, connection pooling, and latency optimization strategies. |\n| 📊 Telemetry & Observability | OpenTelemetry integration for distributed tracing and monitoring. |\n| 🧪 Testing Guide | Provider-agnostic testing, mocking, and quality assurance strategies. |\n| 📊 Analytics & Evaluation | Usage tracking, cost monitoring, and quality scoring for AI responses. |\n| ⚡ Streaming | Real-time token streaming with provider-specific optimizations. |\n| Thinking Configuration | Configure extended thinking levels for supported models (Anthropic, Gemini 2.5+). |\n| Structured Output | JSON schema-based structured output with provider-specific formatting. |\n| Text-to-Speech (TTS) | Basic TTS support via Google Cloud TTS (Neural2, Wavenet, Standard voices). |","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"Advanced Features","lvl3":""}},
|
|
3602
3602
|
{"objectID":"9c1dd453df8293552c84f52e9dd08ca4cd003afe799a2561dc4101aa9c2a304a","title":"See Also","url":"/docs/features#see-also","content":"Getting Started - Quick start and installation\nCLI Reference - Command-line interface documentation\nSDK Reference - TypeScript API documentation\nEnterprise Guides - Production deployment patterns\nTutorials - Step-by-step implementation guides\nExamples - Real-world code samples","hierarchy":{"lvl0":"Features","lvl1":"Feature Guides","lvl2":"See Also","lvl3":""}},
|
|
3603
3603
|
{"objectID":"83f5b0de036a8a17898acf6e57b876b24b8eab4db20af614b766816e4da47913","title":"LiveKit Voice Agent — Real-Time Voice over WebRTC","url":"/docs/features/livekit-voice-agent","content":"LiveKit Voice Agent — Real-Time Voice over WebRTC\n\nA WebRTC voice agent that uses LiveKit for the real-time media loop and NeuroLink as the brain (LLM, tools, memory).\n\nTable of Contents\nProblem Statement & Solution\nArchitecture Overview\nDeployment Topologies (Cloud & Self-Hosted)\nCore Components\nHow NeuroLink Owns the Brain\nRuntime Flow\nUsage Example\nSource Layout\nConfiguration\nTuning the Voice Loop (VAD, Turn Detection, Interruption, Language)\nConversation Memory\nImplementation Plan\nOperational Behavior\nError Handling & Troubleshooting\nExtensibility Roadmap\n\nProblem Statement & Solution\n\nThe Challenge\n\nThe original NeuroLink voice agent (see voice-agent.md) runs a browser-to-server loop over a WebSocket. That design works, but a WebSocket transport carries structural limits for real-time audio:\nTCP head-of-line blocking and no jitter buffer cause choppy audio on lossy networks\nno built-in acoustic echo cancellation — the assistant can be transcribed by its own mic input\nraw PCM is ~8–10× the bandwidth of a compressed codec, and all of it flows through the application server\nvoice-activity detection runs on the application server's event loop, capping per-process concurrency\nSvelteKit and similar frameworks cannot accept the WebSocket upgrade without a custom server entry\n\nThe Solution\n\nThe LiveKit voice agent moves the transport to WebRTC via LiveKit, while keeping NeuroLink as the brain. LiveKit (an open-source WebRTC platform with a managed cloud and a self-hostable server) provides the parts that are hard to build correctly:\nWebRTC transport with echo cancellation, jitter buffering, packet-loss concealment, and Opus compression\nvoice-activity detection, turn detection, and interruption handling\na worker/job model that runs each call in its own process for isolation and horizontal scaling\n\nNeuroLink remains responsible for the conversation itself:\nthe LLM (any NeuroLink provider — Bedrock/Claude, OpenAI, Gemini, etc.)\ntool calling (MCP and registered tools), decided and executed inside neurolink.stream()\nconversation memory, keyed by a stable conversationId\n\nKey Benefits\nProduction-grade real-time audio without building media plumbing\nNeuroLink stays the brain — generate()/stream(), tools, and memory are unchanged\nWorker-per-call scaling provided by the LiveKit Agents runtime\nCloud or self-hosted with identical application code\nProvider-agnostic brain layer that can later back other transports\n\nArchitecture Overview\n\nSystem Flow Diagram\n\nDivision of Responsibility\n\n| Concern | Owner |\n| ------------------------------------------- | ----------------------------------- |\n| WebRTC transport, AEC, jitter, Opus | LiveKit |\n| VAD, turn detection, interruption | LiveKit Agents |\n| Worker-per-call process isolation & scaling | LiveKit Agents |\n| STT / TTS | LiveKit plugins (configurable) |\n| LLM, tool-calling, memory | NeuroLink |\n| Conversation history source of truth | NeuroLink memory (conversationId) |\n\nDeployment Topologies (Cloud & Self-Hosted)\n\nThe application code is identical across topologies; only LIVEKIT_URL and credentials change.\n\nTopology A — LiveKit Cloud (managed)\nRooms are created automatically on LiveKit's servers on first join.\nThe worker connects outbound to Cloud and receives dispatched Jobs over that connection — no inbound exposure or tunneling is required, even in local development.\nBilling is per participant-minute (a free Build tier is suitable for development).\nUse when: fastest setup, minimal media ops, dev/staging, or production without running media infrastructure.\n\nTopology B — Self-Hosted LiveKit (in-house)\nThe livekit-server (open source) runs on your own infrastructure (for example, Kubernetes behind your ingress/service mesh).\nMedia stays inside your network; there is no per-minute media fee — you pay only for compute and bandwidth.\nUse when: cost control at scale, data-residency/compliance requirements, or full control over the media path.\n\nLocal Development\nConsole mode: the worker runs standalone using the host machine's microphone and speakers — no LiveKit server and no browser required. Best for iterating on the brain loop.\nLocal server: livekit-server --dev (placeholder credentials, no external dependencies) with the browser and worker on localhost.\nCloud from local: point local LIVEKIT_URL at a Cloud project. Because the worker connects outbound, Cloud can dispatch Jobs to a locally-running worker without tunneling.\n\nCore Components\nLiveKit Agents Worker\n\nA long-lived Node process built on @livekit/agents. It registers with the LiveKit server under an agentName (for example, neurolink-voice). For each room, LiveKit dispatches a Job, which the runtime runs in its own process — this is the worker-per-call isolation that bounds the ","hierarchy":{"lvl0":"Features","lvl1":"LiveKit Voice Agent — Real-Time Voice over WebRTC","lvl2":"","lvl3":""}},
|
|
@@ -3869,7 +3869,7 @@
|
|
|
3869
3869
|
{"objectID":"a32b726022ea495ce0c2f3b5495bddf2c2061044d8aea54e85eb352a66fdc948","title":"Auto-detect CSV files","url":"/docs/features/multimodal-chat#auto-detect-csv-files","content":"npx @juspay/neurolink generate \"Analyze sales trends\" \\\n --file ./sales_2024.csv","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Auto-detect CSV files","lvl3":""}},
|
|
3870
3870
|
{"objectID":"7843d3f99da1c4a6b19bc18cc3014937a447f66b9ebfc3ed6b18b7ee6d1c5531","title":"Explicit CSV with options","url":"/docs/features/multimodal-chat#explicit-csv-with-options","content":"npx @juspay/neurolink generate \"Summarize data\" \\\n --csv ./data.csv \\\n --csv-max-rows 500 \\\n --csv-format raw\n`","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Explicit CSV with options","lvl3":""}},
|
|
3871
3871
|
{"objectID":"bcadeaa569124a46c1c0764dcd93d7a884c68d9edda56ecd8abe1d63191ba15a","title":"Format Options","url":"/docs/features/multimodal-chat#format-options","content":"raw (default) - Best for large files, minimal token usage\njson - Structured data, easier parsing, higher token usage\nmarkdown - Readable tables, good for small datasets (\\<100 rows)","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Format Options","lvl3":""}},
|
|
3872
|
-
{"objectID":"aa2d789c76c869e3ccf1c475f7d872f4f56d13b7fff317c8b757fa26da1bfae2","title":"Best Practices","url":"/docs/features/multimodal-chat#best-practices-1","content":"Use raw format for large files to minimize token usage\nUse JSON format for structured data processing\nLimit to 1000 rows by default (configurable up to 10K)\nCombine CSV with visualization images for comprehensive analysis\nWorks
|
|
3872
|
+
{"objectID":"aa2d789c76c869e3ccf1c475f7d872f4f56d13b7fff317c8b757fa26da1bfae2","title":"Best Practices","url":"/docs/features/multimodal-chat#best-practices-1","content":"Use raw format for large files to minimize token usage\nUse JSON format for structured data processing\nLimit to 1000 rows by default (configurable up to 10K)\nCombine CSV with visualization images for comprehensive analysis\nWorks across supported providers (not just vision-capable models)","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Best Practices","lvl3":""}},
|
|
3873
3873
|
{"objectID":"064b7e792ab9b07be4fbac1b0c005e7108f719ff6a967d99f1856b5bafaff68c","title":"Quick Start","url":"/docs/features/multimodal-chat#quick-start-1","content":"`bash","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Quick Start","lvl3":""}},
|
|
3874
3874
|
{"objectID":"d79221dc9d6684d605708a62a8eb5ec6452797fe909257f7b653d49755cbeab8","title":"Auto-detect PDF files","url":"/docs/features/multimodal-chat#auto-detect-pdf-files","content":"npx @juspay/neurolink generate \"Summarize this report\" \\\n --file ./financial-report.pdf \\\n --provider vertex","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Auto-detect PDF files","lvl3":""}},
|
|
3875
3875
|
{"objectID":"821650bf5345151ab1de75384d75ea7c6ce2c795d8d82bc74b04243ac30833cf","title":"Explicit PDF processing","url":"/docs/features/multimodal-chat#explicit-pdf-processing","content":"npx @juspay/neurolink generate \"Extract key terms\" \\\n --pdf ./contract.pdf \\\n --provider anthropic","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Chat Experiences","lvl2":"Explicit PDF processing","lvl3":""}},
|
|
@@ -3885,7 +3885,7 @@
|
|
|
3885
3885
|
{"objectID":"d0eb9507c22f810f741db122a450315f7e8ca7480886a360ba58883956f5d62b","title":"Provider Support Matrix","url":"/docs/features/multimodal#provider-support-matrix","content":"Not all providers support all multimodal capabilities. Use this matrix to select the right provider for your use case.","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Provider Support Matrix","lvl3":""}},
|
|
3886
3886
|
{"objectID":"8c7a44d915f72bd0d66d990b00f455bbf48d2380a71a6d201170291b30de77d3","title":"Vision (Images)","url":"/docs/features/multimodal#vision-images","content":"| Provider | Supported | Recommended Models | Max Images | Max Size | Notes |\n| --------------------- | --------- | ------------------------------------------------------ | ---------- | -------- | ------------------------------------ |\n| OpenAI | ✅ | gpt-4o, gpt-4o-mini, gpt-5.2 | 10 | ~20 MB | Best for general vision tasks |\n| Azure OpenAI | ✅ | gpt-4o, gpt-4o-mini | 10 | ~20 MB | Same as OpenAI |\n| Google AI Studio | ✅ | gemini-2.5-pro, gemini-2.5-flash, gemini-3-flash | 16 | ~20 MB | Excellent for visual reasoning |\n| Google Vertex AI | ✅ | gemini-2.5-pro, gemini-2.5-flash, Claude models | 16/20 | ~20 MB | Gemini: 16 images, Claude: 20 images |\n| Anthropic | ✅ | claude-3.5-sonnet, claude-3.7-sonnet | 20 | ~20 MB | Strong visual understanding |\n| AWS Bedrock | ✅ | Claude models | 20 | ~20 MB | Same as Anthropic |\n| Ollama | ✅ | llava, bakllava, llava-phi3 | 10 | Varies | Local vision models |\n| LiteLLM | ✅ | Depends on upstream | 10 | Varies | Proxy to vision-capable models |\n| Mistral | ✅ | pixtral-12b-2409, pixtral-large-2411 | 10 | ~20 MB | Multimodal Mistral models |\n| OpenRouter | ✅ | Depends on model | 10 | Varies | Routes to various vision models |\n| Hugging Face | ⚠️ | Limited | Varies | Varies | Model-dependent |\n| AWS SageMaker | ❌ | N","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Vision (Images)","lvl3":""}},
|
|
3887
3887
|
{"objectID":"73d7935973c0a686585af87403eac8b065162f05b5a7c956894d5cc17807712d","title":"PDF Documents","url":"/docs/features/multimodal#pdf-documents","content":"| Provider | Supported | Max Size | Max Pages | Processing Mode | Notes |\n| --------------------- | --------- | -------- | --------- | ---------------- | --------------------------------------- |\n| Google Vertex AI | ✅ | 5 MB | 100 | Native PDF | Best for document analysis |\n| Anthropic | ✅ | 5 MB | 100 | Native PDF | Claude excels at document understanding |\n| AWS Bedrock | ✅ | 5 MB | 100 | Native PDF | Via Claude models |\n| Google AI Studio | ✅ | 2000 MB | 100 | Native PDF | Handles very large files |\n| OpenAI | ✅ | 10 MB | 100 | Files API | gpt-4o, gpt-4o-mini, o1 |\n| Azure OpenAI | ✅ | 10 MB | 100 | Files API | Uses OpenAI Files API |\n| LiteLLM | ✅ | 10 MB | 100 | Proxy | Depends on upstream model |\n| OpenAI Compatible | ✅ | 10 MB | 100 | Varies | Server-dependent |\n| Mistral | ✅ | 10 MB | 100 | Native PDF | Native support |\n| Hugging Face | ✅ | 10 MB | 100 | Model-dependent | Varies by model |\n| Ollama | ❌ | - | - | - | Not supported |\n| OpenRouter | ⚠️ | Varies | Varies | Depends on model | Route-dependent |\n| AWS SageMaker | ❌ | - | - | - | Not supported |","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"PDF Documents","lvl3":""}},
|
|
3888
|
-
{"objectID":"96bf471d5383c56e1f0144483b12e8a6f6c221ab852ed86b42f9ea057e68a91d","title":"CSV/Spreadsheet Data","url":"/docs/features/multimodal#csvspreadsheet-data","content":"| Provider
|
|
3888
|
+
{"objectID":"96bf471d5383c56e1f0144483b12e8a6f6c221ab852ed86b42f9ea057e68a91d","title":"CSV/Spreadsheet Data","url":"/docs/features/multimodal#csvspreadsheet-data","content":"| Provider | Supported | Max Rows | Format Options | Notes |\n| ----------------------- | --------- | -------- | ------------------- | --------------------------------- |\n| Supported Providers | ✅ | 10,000 | raw, json, markdown | Broad support - processed as text |\n\nCSV support works across supported providers because files are converted to text before sending to the AI model. The file is parsed and formatted (raw CSV, JSON, or Markdown table) before inclusion in the prompt.\n\nFormat Recommendations:\nRaw format - Best for large files (minimal token usage)\nJSON format - Best for structured data processing\nMarkdown format - Best for small datasets (\\<100 rows), readable tables","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"CSV/Spreadsheet Data","lvl3":""}},
|
|
3889
3889
|
{"objectID":"b52c712e324d5d40df527e8a5877d9ea0ae63d2ae80bd022cfbaffc9c3c91a82","title":"Audio Input","url":"/docs/features/multimodal#audio-input","content":"| Provider | Native Audio | Transcription | Real-time | Max Duration | Notes |\n| -------------------- | ------------ | ------------- | --------- | ------------ | ----------------------------------- |\n| Google AI Studio | ✅ | ✅ | ✅ | 1 hour | Best for real-time voice |\n| Google Vertex AI | ✅ | ✅ | ✅ | 1 hour | Native Gemini audio support |\n| OpenAI | ❌ | ✅ Whisper | ❌ | 25 MB | Excellent transcription accuracy |\n| Azure OpenAI | ❌ | ✅ Whisper | ❌ | 25 MB | Via Whisper integration |\n| Anthropic | ❌ | Via fallback | ❌ | - | Uses transcription approach |\n| AWS Bedrock | ❌ | Via fallback | ❌ | - | Uses transcription approach |\n| Others | ❌ | Via fallback | ❌ | - | Audio transcribed before processing |\n\nFor comprehensive audio documentation, see the Audio Input Guide.","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Audio Input","lvl3":""}},
|
|
3890
3890
|
{"objectID":"6c75d56315cf5bcec368645e07a84c0b2b067c8052da1028e9deb65d16aab9ee","title":"Video","url":"/docs/features/multimodal#video","content":"Two mechanisms, and which one a provider gets changes what it can answer.\n\nNative (inline) — the video file itself travels in the request. The model\nsees continuous motion and hears the audio track. Only Google's Gemini front\nends accept this today.\n\nFrame extraction — ffmpeg pulls keyframes at intervals and they are\nattached as ordinary images, alongside a metadata summary in the prompt text.\nThe model sees a handful of stills and hears nothing.\n\n| Provider | Mechanism | Inline ceiling | Audio track | Default frame budget |\n| ------------------------------------ | ---------------- | -------------- | ----------- | -------------------- |\n| Google AI Studio | Native (inline) | 14 MB | ✅ heard | 16 (fallback only) |\n| Google Vertex AI (Gemini models) | Native (inline) | 14 MB | ✅ heard | 16 (fallback only) |\n| OpenAI / Azure OpenAI | Frame extraction | – | ❌ | 8 |\n| Anthropic / AWS Bedrock | Frame extraction | – | ❌ | 8 |\n| Mistral | Frame extraction | – | ❌ | 8 |\n| LiteLLM / OpenRouter | Frame extraction | – | ❌ | 8 |\n| Ollama / llama.cpp | Frame extraction | – | ❌ | 4 |\n\nThe 14 MB ceiling is one shared source-byte budget for the whole request,\nnot a separate per-clip limit. Before a clip ships natively, its bytes are\nadded to the source bytes of every inline part already in the request, and\nthe clip is delivered only if the total stays within 14 MB. Those parts\ninclude images (keyframes among them), PDFs, audio and any clip accepted\nearlier. With nothing else attached, that reduces to the clip's own size.\nThe budget is in source bytes because inline data travels as base64 in a\nJSON body, which costs four bytes per th","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Video","lvl3":""}},
|
|
3891
3891
|
{"objectID":"623b369433add73c32c5d31532a82b33ea81350ec9e96ead3a7dc6262db5c09f","title":"Supported containers","url":"/docs/features/multimodal#supported-containers","content":".mp4, .webm, .mov, .avi, .mkv, .mpeg, .flv, .wmv, .3gp and\nthe other formats in the detector's video registry are all accepted for frame\nextraction. Inline delivery is narrower — it is limited to the containers\nGemini reads directly (mp4, mpeg, mov, avi, flv, webm, wmv, 3gpp) — and a\ncontainer outside that set falls back to keyframes rather than being\nre-encoded. Transcoding a long recording mid-request costs minutes of CPU for\na payload that would usually breach the inline ceiling anyway.","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Supported containers","lvl3":""}},
|
|
@@ -3906,7 +3906,7 @@
|
|
|
3906
3906
|
{"objectID":"ea777a57bbb0c3b0c3628e13bf1bb3ea8f10a683f8e3fe97dc2e182e1d389240","title":"Auto-detect CSV","url":"/docs/features/multimodal#auto-detect-csv","content":"npx @juspay/neurolink generate \"Analyze sales trends\" \\\n --file ./sales_2024.csv","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Auto-detect CSV","lvl3":""}},
|
|
3907
3907
|
{"objectID":"0ffdeaf2a4d433739fb1f96c6487b2e35e254c4459ead6ecbfd3dcb3a98de8b3","title":"Explicit CSV with options","url":"/docs/features/multimodal#explicit-csv-with-options","content":"npx @juspay/neurolink generate \"Summarize data\" \\\n --csv ./data.csv \\\n --csv-max-rows 500 \\\n --csv-format raw\ntypescript\n// Auto-detect (recommended)\nawait neurolink.generate({\n input: {\n text: \"Analyze this sales data\",\n files: [\"./sales.csv\"], // Auto-detected as CSV\n },\n});\n\n// Explicit CSV with options\nawait neurolink.generate({\n input: {\n text: \"Compare quarterly data\",\n csvFiles: [\"./q1.csv\", \"./q2.csv\"],\n },\n csvOptions: {\n maxRows: 1000,\n formatStyle: \"json\", // or \"raw\", \"markdown\"\n },\n});\n`","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Explicit CSV with options","lvl3":""}},
|
|
3908
3908
|
{"objectID":"93535721732536c013e0204b266f2a131be12a7745f6c88a6e61cdeb76704728","title":"CSV Format Options","url":"/docs/features/multimodal#csv-format-options","content":"Three format styles:\nRaw format (default)\nBest for large files\nMinimal token usage\nPreserves original CSV structure\nJSON format\nStructured data processing\nEasier for AI to parse\nHigher token usage\nMarkdown format\nReadable tables\nGood for small datasets (\\<100 rows)\nModerate token usage","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"CSV Format Options","lvl3":""}},
|
|
3909
|
-
{"objectID":"427b303d134e7e002fe1fbb0ae86243f33506e795e3029cdfb7994c2014c0db4","title":"CSV Best Practices","url":"/docs/features/multimodal#csv-best-practices","content":"Use raw format for large files to minimize token usage\nUse JSON format for structured processing when AI needs to manipulate data\nLimit to 1000 rows by default (configurable up to 10,000)\nCombine CSV with visualization images for comprehensive analysis\nWorks
|
|
3909
|
+
{"objectID":"427b303d134e7e002fe1fbb0ae86243f33506e795e3029cdfb7994c2014c0db4","title":"CSV Best Practices","url":"/docs/features/multimodal#csv-best-practices","content":"Use raw format for large files to minimize token usage\nUse JSON format for structured processing when AI needs to manipulate data\nLimit to 1000 rows by default (configurable up to 10,000)\nCombine CSV with visualization images for comprehensive analysis\nWorks across supported providers (not just vision-capable models)","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"CSV Best Practices","lvl3":""}},
|
|
3910
3910
|
{"objectID":"5f2f649cdd7639b3fc3fb30871df07bf3331ad446ac4d23340aaab8976ccf1a7","title":"Frame-extraction options","url":"/docs/features/multimodal#frame-extraction-options","content":"These control the keyframes and are ignored by a provider on the native path.\n\nWithout an explicit frames, the interval is chosen from the clip's duration\n— roughly every second for clips under 10s, widening to every three minutes\nfor recordings over half an hour, always capped at 100 frames.","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Frame-extraction options","lvl3":""}},
|
|
3911
3911
|
{"objectID":"2c4c2bb10b6fea62d177994e6df1345d05606b65f8122b3c969cf214df3363f1","title":"CLI usage","url":"/docs/features/multimodal#cli-usage","content":"`bash","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"CLI usage","lvl3":""}},
|
|
3912
3912
|
{"objectID":"915a9e9701a9e6b02890e744550ed66754549288fa044c90bd2dd873e6b48c2a","title":"Auto-detect","url":"/docs/features/multimodal#auto-detect","content":"neurolink generate \"Describe this video\" --file demo.mp4 --provider google-ai","hierarchy":{"lvl0":"Features","lvl1":"Multimodal Capabilities Guide","lvl2":"Auto-detect","lvl3":""}},
|
|
@@ -4126,7 +4126,7 @@
|
|
|
4126
4126
|
{"objectID":"af5efdaa7ba1811d537c1c7aca8a0143cd8496be1e9db86526d34003cf427dbb","title":"Streaming with Credentials","url":"/docs/features/per-request-credentials#streaming-with-credentials","content":"credentials works identically on stream(). Note that neurolink.stream()\nreturns a StreamResult wrapper — iterate over its .stream property:","hierarchy":{"lvl0":"Features","lvl1":"Per-Request Credentials","lvl2":"Streaming with Credentials","lvl3":""}},
|
|
4127
4127
|
{"objectID":"ea70e911923bd079e70af1c36bda14c16bdd9bfcec49f236a9d0550d6602502a","title":"Multi-Tenant Request Handler","url":"/docs/features/per-request-credentials#multi-tenant-request-handler","content":"A typical pattern for a multi-tenant API endpoint. Note the provider-name →\ncredential-key mapping: the registered provider names (google-ai,\nopenai-compatible, huggingface) differ from their NeurolinkCredentials\nslot keys (googleAiStudio, openaiCompatible, huggingFace), so map\nexplicitly to avoid runtime surprises.\n\nNote: This example assumes API-key authentication. Providers like Bedrock\n(which use accessKeyId/secretAccessKey) and Ollama (which use baseURL)\nrequire different credential shapes — see the Provider Credential Reference above.","hierarchy":{"lvl0":"Features","lvl1":"Per-Request Credentials","lvl2":"Multi-Tenant Request Handler","lvl3":""}},
|
|
4128
4128
|
{"objectID":"66e3491e17a04ce42e1b0d37adcf1fca17f24feb6bb3771d62a010949e62aa0d","title":"Limitations","url":"/docs/features/per-request-credentials#limitations","content":"CLI does not support --credentials — passing API keys as CLI flags would expose them in shell history, process lists, and log aggregators. Use environment variables for CLI usage instead.\nNo credential rotation within a streaming call — credentials are resolved once when generate() or stream() is called; you cannot swap keys mid-stream.\nNo built-in secret storage — NeuroLink passes credentials directly to the underlying provider SDK. Key storage, rotation, and encryption are the caller's responsibility. Consider integrating with a secrets manager (AWS Secrets Manager, HashiCorp Vault, Passetto) before injecting credentials into calls.\nOllama accepts only baseURL — Ollama does not use API keys; only the endpoint URL can be overridden.\nUnrecognised fields are silently ignored — each provider only reads the fields documented in the reference table above. Passing extra fields has no effect.\nInternal fallback switches providers — When a provider call fails and NeuroLink's internal fallback activates (selecting a different provider), the per-request credentials scoped to the original provider do not apply to the fallback provider. The fallback provider resolves credentials from its own instance-level or environment-variable sources. If you need strict per-call credential control and want to prevent fallback provider switches, set disableInternalFallback: true on the stream/generate call.","hierarchy":{"lvl0":"Features","lvl1":"Per-Request Credentials","lvl2":"Limitations","lvl3":""}},
|
|
4129
|
-
{"objectID":"40b1b0dcd156e0f047058e051fba53dc2694754d03963600bf6419d6beae000c","title":"Key Files","url":"/docs/features/per-request-credentials#key-files","content":"| File | Purpose |\n| --------------------------------------- | -------------------------------------------------------------------------- |\n| src/lib/types/providers.ts | NeurolinkCredentials type definition |\n| src/lib/types/configTypes.ts | NeurolinkConstructorConfig.credentials field |\n| src/lib/types/generateTypes.ts | GenerateOptions.credentials + TextGenerationOptions.credentials fields |\n| src/lib/types/streamTypes.ts | StreamOptions.credentials field |\n| src/lib/factories/providerFactory.ts | Per-provider credential slice extraction |\n| src/lib/factories/providerRegistry.ts |
|
|
4129
|
+
{"objectID":"40b1b0dcd156e0f047058e051fba53dc2694754d03963600bf6419d6beae000c","title":"Key Files","url":"/docs/features/per-request-credentials#key-files","content":"| File | Purpose |\n| --------------------------------------- | -------------------------------------------------------------------------- |\n| src/lib/types/providers.ts | NeurolinkCredentials type definition |\n| src/lib/types/configTypes.ts | NeurolinkConstructorConfig.credentials field |\n| src/lib/types/generateTypes.ts | GenerateOptions.credentials + TextGenerationOptions.credentials fields |\n| src/lib/types/streamTypes.ts | StreamOptions.credentials field |\n| src/lib/factories/providerFactory.ts | Per-provider credential slice extraction |\n| src/lib/factories/providerRegistry.ts | Provider factory registrations |\n| src/lib/neurolink.ts | resolveCredentials() merge helper + generate()/stream() threading |","hierarchy":{"lvl0":"Features","lvl1":"Per-Request Credentials","lvl2":"Key Files","lvl3":""}},
|
|
4130
4130
|
{"objectID":"27e690fd1a24b6335b0168109634d1f2708ccff7dc221d910bd84351a3d8eec3","title":"See Also","url":"/docs/features/per-request-credentials#see-also","content":"Authentication Providers -- token validation, RBAC, and session management for your own API endpoints\nObservability Guide -- tracing generate/stream calls. Credentials are passed only to the underlying provider SDK, not captured in NeuroLink span attributes; if you attach custom span enrichment, avoid logging the credentials field.\nSDK API Reference -- complete SDK reference","hierarchy":{"lvl0":"Features","lvl1":"Per-Request Credentials","lvl2":"See Also","lvl3":""}},
|
|
4131
4131
|
{"objectID":"1f6373b4b05729bcff02515fb6d2aef7232356a1136116405f84d26828518c3f","title":"PPT Generation - AI-Powered Presentations","url":"/docs/features/ppt-generation","content":"PPT Generation - AI-Powered Presentations\n\nNeuroLink enables AI-powered PowerPoint presentation generation from text prompts. Transform ideas into professional, visually-appealing presentations with intelligent content planning, multiple slide types, and optional AI-generated images.\n\nOverview\n\nPPT generation in NeuroLink uses a multi-stage pipeline powered by any supported AI provider:\nAccepts a text prompt describing the presentation topic via input.text\nPlans structured content using AI-powered content planning\nGenerates individual slides with appropriate types, layouts, and content\nCreates optional AI-generated images for visual slides\nAssembles a complete .pptx file using pptxgenjs\nReturns a PPTGenerationResult containing file path and metadata\n\nWhat You Get\nProfessional presentations – Generate complete PowerPoint files with 5-50 slides\n35 slide types – From title and content slides to charts, timelines, dashboards, and composite layouts\n5 built-in themes – Modern, Corporate, Creative, Minimal, and Dark\nAI image generation – Optional background and decorative images using Gemini\nUser-provided images – Use your own images instead of AI generation\nSDK integration – Use neurolink.generate() with output.mode: \"ppt\"\nCLI support – Generate presentations directly from command line\nMulti-provider support – Works with Vertex AI, OpenAI, Anthropic, Google AI, Azure, and Bedrock\n\nSupported Providers & Models\n\nProvider Compatibility\n\n| Provider | Recommended Models | Slide Types | Image Gen | Quality | Notes |\n| ----------- | -------------------------------- | ----------- | ----------- | ------- | ------------------------ |\n| vertex | gemini-2.5-pro, gemini-3 | All 35 | ✅ Native | Highest | Full feature support |\n| google-ai | gemini-2.5-pro, gemini-3 | All 35 | ✅ Native | Highest | Full feature support |\n| openai | gpt-4o, gpt-4-turbo | All 35 | ⚠️ External | High | Uses OpenAI for planning |\n| anthropic | claude-4.5-sonnet, claude-3-opus | All 35 | ⚠️ External | Highest | Advanced reasoning |\n| azure | gpt-4o, gpt-4-turbo | All 35 | ⚠️ External | High | Enterprise deployment |\n| bedrock | claude-3-sonnet, titan | All 35 | ⚠️ External | High | AWS integration |\n\nModel Tiers\n\n| Tier | Models | Slide Types | Notes |\n| ---------- | ------------------------------------------------------------------------ | ----------- | ----------------------------- |\n| advanced | claude-4.5-opus, claude-4.5-sonnet, gpt-4o, gemini-2.5-pro, gemini-3-pro | All 35 | Full prompt with all features |\n| basic | gemini-flash, claude-instant, gpt-3.5 | 10 core | Simplified prompt for speed |\n\nPrerequisites\nAI provider credentials configured for your chosen provider\nFor AI images: Vertex AI or Google AI credentials with Gemini access\nSufficient storage: Output files range from 100KB to 10MB+ depending on images\n\nQuick Start\n\nSDK Usage\n\nWith Full Options\n\nWith User-Provided Images\n\nCLI Usage\n\nCLI Arguments\n--outputMode (string, default: text) — Output mode: text, video, or ppt\n--pptPages, --pages (number, default: 10) — Number of slides (5-50)\n--pptTheme (string, default: AI-selected) — Theme: modern, corporate, creative, minimal, dark\n--pptAudience (string, default: AI-selected) — Target audience: business, students, technical, general\n--pptTone (string, default: AI-selected) — Presentation tone: professional, casual, educational, persuasive\n--pptNoImages (boolean, default: false) — Disable AI images for visual slides (images are enabled by default)\n--pptAspectRatio (string, default: 16:9) — Aspect ratio: 16:9 or 4:3\n--pptOutput, --po (string, default: auto-generated) — Output file path\n\nSlide Types\n\nNeuroLink supports 35 distinct slide types organized by category:\n\nOpening/Closing Slides\n\n| Type | Description | Layout Options |\n| ---------------- | -------------------------------- | ---------------------------------- |\n| title | Opening slide with main title | title-centered, title-bottom |\n| section-header | Section divider with large title | title-centered |\n| thank-you | Final slide with contact info | contact-info, title-centered |\n| closing | Summary and next steps | summary-bullets, title-content |\n\nContent Slides\n\n| Type | Description | Layout Options |\n| --------------- | ------------------------------ | ------------------------------ |\n| content | Standard title + bullet points | title-content, image layouts |\n| agenda | Table of contents | title-content, two-column |\n| bullets | Enhanced bullet points | title-content ","hierarchy":{"lvl0":"Features","lvl1":"PPT Generation - AI-Powered Presentations","lvl2":"","lvl3":""}},
|
|
4132
4132
|
{"objectID":"e0c4e26b9e0f958e5f57517b22eaeb1b734afc5617b7a4259a5e070e2542dab7","title":"PPT Generation - AI-Powered Presentations","url":"/docs/features/ppt-generation#ppt-generation---ai-powered-presentations","content":"NeuroLink enables AI-powered PowerPoint presentation generation from text prompts. Transform ideas into professional, visually-appealing presentations with intelligent content planning, multiple slide types, and optional AI-generated images.","hierarchy":{"lvl0":"Features","lvl1":"PPT Generation - AI-Powered Presentations","lvl2":"PPT Generation - AI-Powered Presentations","lvl3":""}},
|
|
@@ -4167,7 +4167,7 @@
|
|
|
4167
4167
|
{"objectID":"837a97078e3a914aabc16f12fa7cd475fc4211678d735b2f7bb8194367d677ae","title":"modelChain config","url":"/docs/features/provider-fallback#modelchain-config","content":"A simple ordered list of model names. NeuroLink walks the chain on each access-denial.\n\nmodelChain is string[] only — bare model names. There is no support for object entries with provider / baseURL per row. The current provider is preserved across the chain; only the model name changes. If you need to switch providers on denial, use providerFallback and return { provider, model }.","hierarchy":{"lvl0":"Features","lvl1":"Provider Fallback & Model Chains","lvl2":"modelChain config","lvl3":""}},
|
|
4168
4168
|
{"objectID":"346e7f061d0dd914e6170977bb1eab9e7bf190f7d8fcf6f3d1045cc48d30ba22","title":"Internal no-output fallback (disableInternalFallback, fallbackOnMaxSteps)","url":"/docs/features/provider-fallback#internal-no-output-fallback-disableinternalfallback-fallbackonmaxsteps","content":"Separate from the orchestration above, stream() carries an internal safety\nnet: when the drained stream produced no non-sentinel text, audio, or image\nchunks and recorded no tool calls or tool results, NeuroLink retries the\nrequest once on a fallback route. An audio-only or image-only stream counts\nas real output and does not trigger the retry. The route's provider and\nmodel are resolved independently: the per-call fallbackProvider /\nfallbackModel options each override their matching FALLBACK_PROVIDER /\nFALLBACK_MODEL environment variable, which overrides the corresponding\nmodel-router value. Two per-call knobs control the retry:\ndisableInternalFallback: true — turn the safety net off entirely. The\n Claude proxy does this so the proxy itself can own fallback order.\nfallbackOnMaxSteps: false — keep the safety net, but exempt turns that\n ended at your own maxSteps bound. A tool-looping turn that runs out of\n step budget produces no final text, which otherwise looks exactly like a\n failed stream to the no-output check — and the retry spends a second\n provider's tokens to exceed a budget you set deliberately. With this set,\n the capped turn is surfaced as-is and reports\n metadata.stopReason === \"step-cap\" after the stream is drained. Default\n (unset) preserves the retry.\n\ngenerate() has no no-output retry, but the same flag governs its two\ninternal fallbacks: the static provider-priority walk that runs when no\nprovider was requested, and the catalog model-fallback walk a provider performs\nwhen the vendor rejects its model as invalid. With\ndisableInternalFallback: true, generate() tries exactly one provider from\nthat static list and surfaces an invalid model as the classified\nInvalidModelError after a single request. A configured ModelPool,\nproviderFallback and modelChain are your own fallback and are unaffected on\neither path: a pool still walks its own candidates.","hierarchy":{"lvl0":"Features","lvl1":"Provider Fallback & Model Chains","lvl2":"Internal no-output fallback (disableInternalFallback, fallbackOnMaxSteps)","lvl3":""}},
|
|
4169
4169
|
{"objectID":"f7eb454e7f6880f1dcb42959f03030932f2ccf5c41ff8317f04fe17de24d2b07","title":"Observability","url":"/docs/features/provider-fallback#observability","content":"When the orchestrator advances past an access-denial, it emits a model.fallback event on the SDK's internal emitter:\n\nThe same event also flows through the OTEL/Langfuse pipeline, so you can monitor fallback frequency in production without subscribing to the in-process emitter.","hierarchy":{"lvl0":"Features","lvl1":"Provider Fallback & Model Chains","lvl2":"Observability","lvl3":""}},
|
|
4170
|
-
{"objectID":"9c51b871367ba3a45cb97dd7259ba5717cc5cc072f50c091b63c661c7a470b7d","title":"Related","url":"/docs/features/provider-fallback#related","content":"Credential Validation — sdk.checkCredentials() and the typed ModelAccessDeniedError\nReal-time Voice Services — fallback also applies to realtime sessions on access denial\nProvider Setup — configuring
|
|
4170
|
+
{"objectID":"9c51b871367ba3a45cb97dd7259ba5717cc5cc072f50c091b63c661c7a470b7d","title":"Related","url":"/docs/features/provider-fallback#related","content":"Credential Validation — sdk.checkCredentials() and the typed ModelAccessDeniedError\nReal-time Voice Services — fallback also applies to realtime sessions on access denial\nProvider Setup — configuring supported providers\nObservability — wiring model.fallback events into your monitoring stack","hierarchy":{"lvl0":"Features","lvl1":"Provider Fallback & Model Chains","lvl2":"Related","lvl3":""}},
|
|
4171
4171
|
{"objectID":"3b5d0122d0762f5202d83a9db0e7430a5ae248ba21c1277692dc84d45ff346bf","title":"Provider Orchestration Brain","url":"/docs/features/provider-orchestration","content":"Provider Orchestration Brain\n\nThe orchestration engine introduced in 7.42.0 pairs a task classifier with a provider/model router. When enabled, NeuroLink inspects each prompt, chooses the most suitable provider/model based on capabilities and availability, and carries that preference through the fallback chain.\n\nHighlights\nBinary task classifier – categorises prompts (analysis vs. creative, etc.) before routing.\nModel router – selects provider/model pairs, honouring local providers like Ollama when available.\nProvider validation – confirms credentials/availability before committing to the route.\nNon-invasive – orchestration augments requests via context so standard fallback logic still applies.\n\nEnabling Orchestration (SDK)\nEnable orchestration for automatic provider/model selection\nTask classifier analyzes prompt to determine best provider\nLog routing decisions to analytics\nValidate routed provider meets quality expectations\nSee which provider/model was selected by the router\n\nThe router adds __orchestratedPreferredProvider to the request context so analytics and downstream logging capture routing decisions.\n\nTuning the Router\nEnvironment awareness – orchestration only routes to providers that pass hasProviderEnvVars, so missing API keys fall back gracefully.\nOllama detection – checks http://localhost:11434/api/tags to verify local models before selection.\nConfidence scores – ModelRouter.route returns confidence and reasoning. Enable debug logs (export NEUROLINK_DEBUG=true) to inspect decisions.\nManual overrides – specifying provider or model bypasses orchestration for that call.\n\nWorking with the CLI\n\nCLI sessions instantiate NeuroLink without orchestration by default. To experiment with the router from the CLI:\nRun Node.js one-liner from CLI\nEnable orchestration in SDK mode\nLet router select best provider for comparison task\nOutput selected provider and model\n\nFuture CLI releases will surface a --enable-orchestration flag; until then keep orchestration for SDK/server workloads.\n\nBest Practices\n\nEnable orchestration in development to understand routing patterns, then pin provider or model in production for predictable behavior. Orchestration is ideal for exploratory workflows; explicit selection ensures consistency in critical paths.\n\nThe default fallback order prioritizes self-hosted providers — LiteLLM and Ollama — before cloud providers. This avoids external API costs and rate limits during development. Ensure your local providers are running to take advantage of this local-first routing.\n\nPair orchestration with evaluation to verify the routed provider meets quality expectations.\nMaintain provider credentials for all potential routes; orchestration skips providers missing keys.\nMonitor debug logs in staging to understand how tasks map to providers before rolling out widely.\nCombine with regional controls (region option) when routing to cloud-specific providers such as Vertex or Bedrock.\n\nTroubleshooting\n\n| Symptom | Action |\n| ----------------------------------- | -------------------------------------------------------------------------------------------------- |\n| Router always returns empty context | Ensure enableOrchestration: true and prompts contain text. |\n| Routed provider never used | Check credentials via neurolink status; orchestration only hints the preferred provider. |\n| Ollama route ignored | Confirm Ollama server running at http://localhost:11434 and model tag matches router suggestion. |\n| Fallback cycles between providers | Pin provider/model explicitly or reduce orchestrated confidence thresholds (see ModelRouter). |\n\nModelPool — failover with per-member cooldown\n\nOrchestration above hints a provider. ModelPool is the separate, explicit\nmechanism that owns selection: you hand it an ordered list of\nprovider/model/region members and it tries them in turn, taking a failed member\nout of rotation for a while rather than retrying it on every call.\n\nFile: src/lib/routing/modelPool.ts · Types: src/lib/types/modelPool.ts\n\nstrategy picks among the members that are currently available: priority\nalways takes the first, round-robin rotates, weighted prefers higher\nweight.\n\nCooldown is classified, not uniform\n\nA failure is classified into a ProviderErrorClass — rate_limit, auth,\ncontext_window, server, network, unknown — and the class decides how\nlong the member sits out:\n\n| Class | Cooldown |\n| -------------------------------------------- | ----------------------------------------- |\n| rate_limit, server, network, unknown | cooldownMs (default 60s) |\n| auth, context_window | permanent for the life of the process |\n\n\"Permanent\" is literal: PERMANENT_COOLDOWN_MS is ten years. The reasoning is\nthat neither ","hierarchy":{"lvl0":"Features","lvl1":"Provider Orchestration Brain","lvl2":"","lvl3":""}},
|
|
4172
4172
|
{"objectID":"4f317fa66a6678bfaf848dc5b575809a95b82ded04ae00dab6cb107a05d97723","title":"Provider Orchestration Brain","url":"/docs/features/provider-orchestration#provider-orchestration-brain","content":"The orchestration engine introduced in 7.42.0 pairs a task classifier with a provider/model router. When enabled, NeuroLink inspects each prompt, chooses the most suitable provider/model based on capabilities and availability, and carries that preference through the fallback chain.","hierarchy":{"lvl0":"Features","lvl1":"Provider Orchestration Brain","lvl2":"Provider Orchestration Brain","lvl3":""}},
|
|
4173
4173
|
{"objectID":"bad00a4fdf2c1282d34f035fbae43b10d1cb83f5a5ebc20a6496dfeadf76f6c3","title":"Highlights","url":"/docs/features/provider-orchestration#highlights","content":"Binary task classifier – categorises prompts (analysis vs. creative, etc.) before routing.\nModel router – selects provider/model pairs, honouring local providers like Ollama when available.\nProvider validation – confirms credentials/availability before committing to the route.\nNon-invasive – orchestration augments requests via context so standard fallback logic still applies.","hierarchy":{"lvl0":"Features","lvl1":"Provider Orchestration Brain","lvl2":"Highlights","lvl3":""}},
|
|
@@ -4783,7 +4783,7 @@
|
|
|
4783
4783
|
{"objectID":"fcfa01797e52ab1944e7eaf5a67e44327b6bf5fa98b6bc359b1f191431398f81","title":"Supported Models","url":"/docs/getting-started/environment-variables#supported-models-8","content":"mistral-tiny - Fastest, most cost-effective\nmistral-small (default) - Balanced performance\nmistral-medium - Enhanced capabilities\nmistral-large - Most capable model","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"Supported Models","lvl3":""}},
|
|
4784
4784
|
{"objectID":"f6c3cb30008c4e93cb54d3c19855a7b711cd21f6d2be5c5992be5aad7ab2fed4","title":"How to Use LiteLLM","url":"/docs/getting-started/environment-variables#how-to-use-litellm","content":"LiteLLM provides access to 100+ AI models through a unified proxy interface:\nLocal Setup: Run LiteLLM locally with your API keys (recommended)\nSelf-Hosted: Deploy your own LiteLLM proxy server\nCloud Deployment: Use cloud-hosted LiteLLM instances","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"How to Use LiteLLM","lvl3":""}},
|
|
4785
4785
|
{"objectID":"df8073a30f7eadd712f3281fdb08836ca593880b0126f80dbfd4b2a603b04eb4","title":"Available Models (Example Configuration)","url":"/docs/getting-started/environment-variables#available-models-example-configuration","content":"openai/gpt-4o - OpenAI GPT-4 Optimized\nanthropic/claude-3-5-sonnet - Anthropic Claude Sonnet\ngoogle/gemini-2.0-flash - Google Gemini Flash\nmistral/mistral-large - Mistral Large model\nMany more via LiteLLM Providers","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"Available Models (Example Configuration)","lvl3":""}},
|
|
4786
|
-
{"objectID":"16d6afbe9b3fa8d860520d6dcc83ce880d114aa7b898c7a415c411e0581f7b31","title":"Benefits","url":"/docs/getting-started/environment-variables#benefits","content":"100+ Models: Access to
|
|
4786
|
+
{"objectID":"16d6afbe9b3fa8d860520d6dcc83ce880d114aa7b898c7a415c411e0581f7b31","title":"Benefits","url":"/docs/getting-started/environment-variables#benefits","content":"100+ Models: Access to a broad range of AI providers through one interface\nCost Optimization: Automatic routing to cost-effective models\nUnified API: OpenAI-compatible API for all models\nLoad Balancing: Automatic failover and load distribution\nAnalytics: Built-in usage tracking and monitoring","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"Benefits","lvl3":""}},
|
|
4787
4787
|
{"objectID":"c6f8a1cbeac3a5649df7fc10e6b3070f8598f774fbf37e0c6ce9d7b12258624f","title":"How to Set Up Amazon SageMaker","url":"/docs/getting-started/environment-variables#how-to-set-up-amazon-sagemaker","content":"Amazon SageMaker allows you to deploy and use your own custom trained models:\nDeploy Your Model to SageMaker:\nTrain your model using SageMaker Training Jobs\nDeploy model to a SageMaker Real-time Endpoint\nNote the endpoint name for configuration\nSet Up AWS Credentials:\nUse IAM user with sagemaker:InvokeEndpoint permission\nOr use IAM role for EC2/Lambda/ECS deployments\nConfigure AWS CLI: aws configure\nConfigure NeuroLink:\nTest Connection:","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"How to Set Up Amazon SageMaker","lvl3":""}},
|
|
4788
4788
|
{"objectID":"95128ec20e9e749c91d5e3088e62d139a59c69b0a40b875b470aa118414b4940","title":"How to Get AWS Credentials for SageMaker","url":"/docs/getting-started/environment-variables#how-to-get-aws-credentials-for-sagemaker","content":"Create IAM User:\nGo to AWS IAM Console\nCreate new user with Programmatic access\nAttach the following policy:\nDownload Credentials:\nSave Access Key ID and Secret Access Key\nSet as environment variables","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"How to Get AWS Credentials for SageMaker","lvl3":""}},
|
|
4789
4789
|
{"objectID":"9b2daca4c5f6f2be9874eca1ba8905fd5513bcff8a7050ac5a746d664bf7d828","title":"Supported Models","url":"/docs/getting-started/environment-variables#supported-models-9","content":"SageMaker supports any custom model you deploy:\nCustom Fine-tuned Models - Your domain-specific models\nFoundation Model Endpoints - Large language models deployed via SageMaker\nMulti-model Endpoints - Multiple models behind single endpoint\nServerless Endpoints - Auto-scaling model deployments","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"Supported Models","lvl3":""}},
|
|
@@ -4867,9 +4867,9 @@
|
|
|
4867
4867
|
{"objectID":"026849e64c4508cd3787981011f9695ae7cc7fe9c37c434b64337d70cc73eb68","title":"Check environment loading","url":"/docs/getting-started/environment-variables#check-environment-loading","content":"node -e \"require('dotenv').config(); console.log(process.env.OPENAIAPIKEY)\"\n`","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"Check environment loading","lvl3":""}},
|
|
4868
4868
|
{"objectID":"ef5399cfb34b518cd328d8048966f1ffc291aab078e851c68f737fd17d887c3e","title":"📖 Related Documentation","url":"/docs/getting-started/environment-variables#-related-documentation","content":"Provider Configuration Guide - Detailed provider setup\nCLI Guide - Complete CLI command reference\nAPI Reference - Programmatic usage examples\nFramework Integration - Next.js, SvelteKit, React","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"📖 Related Documentation","lvl3":""}},
|
|
4869
4869
|
{"objectID":"613424cad7ec338b9e008872f0ede32040b09147bcf00c9683472cf820bff525","title":"🤝 Need Help?","url":"/docs/getting-started/environment-variables#-need-help","content":"📖 Check the troubleshooting section above\n🐛 Report issues in our GitHub repository\n💬 Join our Discord for community support\n📧 Contact us for enterprise support\n\nNext Steps: Once configured, test your setup with npx @juspay/neurolink status and start generating AI content!","hierarchy":{"lvl0":"Getting Started","lvl1":"🔧 Environment Variables Configuration Guide","lvl2":"🤝 Need Help?","lvl3":""}},
|
|
4870
|
-
{"objectID":"12a7c0529934f3aa32b5e5fc4275c287f34cac54735e0c8f73da4e5f235ce6f2","title":"Getting Started","url":"/docs/getting-started","content":"Getting Started\n\nWelcome to NeuroLink! This section will help you get up and running quickly with the Enterprise AI Development Platform.\n\n🚀 What You'll Learn\nQuick Start — Get NeuroLink working in under 2 minutes with basic examples for both CLI and SDK usage.\nInstallation — Detailed installation instructions for different environments and package managers.\nProvider Setup — Configure API keys and credentials for
|
|
4870
|
+
{"objectID":"12a7c0529934f3aa32b5e5fc4275c287f34cac54735e0c8f73da4e5f235ce6f2","title":"Getting Started","url":"/docs/getting-started","content":"Getting Started\n\nWelcome to NeuroLink! This section will help you get up and running quickly with the Enterprise AI Development Platform.\n\n🚀 What You'll Learn\nQuick Start — Get NeuroLink working in under 2 minutes with basic examples for both CLI and SDK usage.\nInstallation — Detailed installation instructions for different environments and package managers.\nProvider Setup — Configure API keys and credentials for supported AI providers with step-by-step guides.\nEnvironment Variables — Complete reference for all environment variables and configuration options.\n\n🎯 Choose Your Path\n\nStart with our Quick Start guide to understand the basics and see NeuroLink in action.\n\nJump to Provider Setup to configure your API keys, then check the CLI Guide.\n\nStart with Claude Proxy for account pooling and local proxy setup, then use Claude Proxy Observability to bring up OpenObserve and the maintained dashboard.\n\nFollow the Installation guide for SDK setup, then explore Framework Integration.\n\nCheck our Provider Comparison to understand the differences and benefits.\n\n🔧 Prerequisites\nNode.js 18+ (for SDK usage)\nnpm/pnpm/yarn (package manager)\nAPI keys for at least one AI provider\n\nYou can start with free providers like Google AI Studio, Hugging Face, or local Ollama to test NeuroLink without costs.\n\n🚦 Next Steps\nQuick Start - Get running in 2 minutes\nProvider Setup - Configure your AI providers\nCLI Guide or SDK Reference - Deep dive into usage\nExamples - See real-world applications","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"","lvl3":""}},
|
|
4871
4871
|
{"objectID":"b0d765c876e121d11333175482464d620229c1f197973fa67042b50b22308662","title":"Getting Started","url":"/docs/getting-started#getting-started","content":"Welcome to NeuroLink! This section will help you get up and running quickly with the Enterprise AI Development Platform.","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"Getting Started","lvl3":""}},
|
|
4872
|
-
{"objectID":"664e045414b3df2ca70149c3156c1559808f274707f33f763a26153903b705c0","title":"🚀 What You'll Learn","url":"/docs/getting-started#-what-youll-learn","content":"Quick Start — Get NeuroLink working in under 2 minutes with basic examples for both CLI and SDK usage.\nInstallation — Detailed installation instructions for different environments and package managers.\nProvider Setup — Configure API keys and credentials for
|
|
4872
|
+
{"objectID":"664e045414b3df2ca70149c3156c1559808f274707f33f763a26153903b705c0","title":"🚀 What You'll Learn","url":"/docs/getting-started#-what-youll-learn","content":"Quick Start — Get NeuroLink working in under 2 minutes with basic examples for both CLI and SDK usage.\nInstallation — Detailed installation instructions for different environments and package managers.\nProvider Setup — Configure API keys and credentials for supported AI providers with step-by-step guides.\nEnvironment Variables — Complete reference for all environment variables and configuration options.","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"🚀 What You'll Learn","lvl3":""}},
|
|
4873
4873
|
{"objectID":"d0599fd459b08ef75aaf3202e7aa8b9edc8b8c6be692dea34736c1f5bb719bc0","title":"🎯 Choose Your Path","url":"/docs/getting-started#-choose-your-path","content":"Start with our Quick Start guide to understand the basics and see NeuroLink in action.\n\nJump to Provider Setup to configure your API keys, then check the CLI Guide.\n\nStart with Claude Proxy for account pooling and local proxy setup, then use Claude Proxy Observability to bring up OpenObserve and the maintained dashboard.\n\nFollow the Installation guide for SDK setup, then explore Framework Integration.\n\nCheck our Provider Comparison to understand the differences and benefits.","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"🎯 Choose Your Path","lvl3":""}},
|
|
4874
4874
|
{"objectID":"dc9ae5044fb0c1b760838ace35478cb2b88be20d999c6a3a43e681e8197373d7","title":"🔧 Prerequisites","url":"/docs/getting-started#-prerequisites","content":"Node.js 18+ (for SDK usage)\nnpm/pnpm/yarn (package manager)\nAPI keys for at least one AI provider\n\nYou can start with free providers like Google AI Studio, Hugging Face, or local Ollama to test NeuroLink without costs.","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"🔧 Prerequisites","lvl3":""}},
|
|
4875
4875
|
{"objectID":"1a7e94c2c9326d04263d5fb9a57f370d340a0afd2a6ed097c94d584a94bdd0d9","title":"🚦 Next Steps","url":"/docs/getting-started#-next-steps","content":"Quick Start - Get running in 2 minutes\nProvider Setup - Configure your AI providers\nCLI Guide or SDK Reference - Deep dive into usage\nExamples - See real-world applications","hierarchy":{"lvl0":"Getting Started","lvl1":"Getting Started","lvl2":"🚦 Next Steps","lvl3":""}},
|
|
@@ -4912,13 +4912,13 @@
|
|
|
4912
4912
|
{"objectID":"8bee50a94bc91cf5273efb43aa2f13a39be6cd72e048c55da55bd80bc74ce8a0","title":"Getting Help","url":"/docs/getting-started/installation#getting-help","content":"Check our Troubleshooting Guide\nReview FAQ\nSearch GitHub Issues\nCreate new issue with:\nNode.js version (node --version)\nOperating system\nError message\nSteps to reproduce","hierarchy":{"lvl0":"Getting Started","lvl1":"Installation","lvl2":"Getting Help","lvl3":""}},
|
|
4913
4913
|
{"objectID":"80210a84a233c58e9a12aa96cedd225ad03c3bfe5344b78032d691be93ae3ba0","title":"Verification Checklist","url":"/docs/getting-started/installation#verification-checklist","content":"[ ] Node.js 18+ installed\n[ ] NeuroLink package installed or accessible via npx\n[ ] API keys configured in .env file\n[ ] neurolink status shows working providers\n[ ] Basic generation command works\n[ ] TypeScript support (if needed)\n[ ] Framework integration (if applicable)","hierarchy":{"lvl0":"Getting Started","lvl1":"Installation","lvl2":"Verification Checklist","lvl3":""}},
|
|
4914
4914
|
{"objectID":"44c035a6ed0dc3b4a04ad68e17bc22de77840cb664eaee4e84f04bb8bd70caaf","title":"Next Steps","url":"/docs/getting-started/installation#next-steps","content":"Quick Start - Test your installation\nProvider Setup - Configure AI providers\nCLI Commands - Learn available commands\nExamples - See implementation patterns","hierarchy":{"lvl0":"Getting Started","lvl1":"Installation","lvl2":"Next Steps","lvl3":""}},
|
|
4915
|
-
{"objectID":"c44f69a5d19212c85a451486bef65999f3ef505311f283fa4a129d90603820ac","title":"⚙️ Provider Configuration Guide","url":"/docs/getting-started/provider-setup","content":"⚙️ Provider Configuration Guide\n\nNeuroLink supports multiple AI providers with flexible authentication methods. This guide covers complete setup for all supported providers.\n\nSupported Providers\n\nThis guide walks through full environment-variable setup for the providers below; the complete roster — including the newer catalog providers and the embedding/media/decision-only providers — is indexed with setup guides at Provider Guides.\n\nProviders configured in this guide\nOpenAI - GPT-4o, GPT-4o-mini, GPT-4-turbo\nAmazon Bedrock - Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3 Haiku\nAmazon SageMaker - Custom models deployed on SageMaker endpoints\nGoogle Vertex AI - Gemini 3 Flash/Pro (preview), Gemini 2.5 Flash, Claude 4.0 Sonnet\nGoogle AI Studio - Gemini 1.5 Pro, Gemini 2.0 Flash, Gemini 1.5 Flash\nAnthropic - Claude 4.5 Opus/Sonnet/Haiku, Claude 4.0 Opus/Sonnet, Claude 3.7 Sonnet\nAzure OpenAI - GPT-4, GPT-3.5-Turbo\nLiteLLM - 100+ models
|
|
4915
|
+
{"objectID":"c44f69a5d19212c85a451486bef65999f3ef505311f283fa4a129d90603820ac","title":"⚙️ Provider Configuration Guide","url":"/docs/getting-started/provider-setup","content":"⚙️ Provider Configuration Guide\n\nNeuroLink supports multiple AI providers with flexible authentication methods. This guide covers complete setup for all supported providers.\n\nSupported Providers\n\nThis guide walks through full environment-variable setup for the providers below; the complete roster — including the newer catalog providers and the embedding/media/decision-only providers — is indexed with setup guides at Provider Guides.\n\nProviders configured in this guide\nOpenAI - GPT-4o, GPT-4o-mini, GPT-4-turbo\nAmazon Bedrock - Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3 Haiku\nAmazon SageMaker - Custom models deployed on SageMaker endpoints\nGoogle Vertex AI - Gemini 3 Flash/Pro (preview), Gemini 2.5 Flash, Claude 4.0 Sonnet\nGoogle AI Studio - Gemini 1.5 Pro, Gemini 2.0 Flash, Gemini 1.5 Flash\nAnthropic - Claude 4.5 Opus/Sonnet/Haiku, Claude 4.0 Opus/Sonnet, Claude 3.7 Sonnet\nAzure OpenAI - GPT-4, GPT-3.5-Turbo\nLiteLLM - 100+ models across a broad range of providers via proxy server\nHugging Face - open models served by the unified router (Llama 3.x, Qwen 2.5, DeepSeek, Mistral)\nOllama - Local AI models including Llama 2, Code Llama, Mistral, Vicuna\nOpenRouter - 300+ models from every major lab via one aggregator endpoint\nMistral AI - Mistral Tiny, Small, Medium, and Large models\nDeepSeek - deepseek-chat (V3) and deepseek-reasoner (R1)\nNVIDIA NIM - Llama 3.3 70B and 400+ catalog models via NVIDIA hosted or self-hosted NIM\nLM Studio - Any model loaded in LM Studio desktop app (local, no API key required)\nllama.cpp - Any GGUF model served by llama-server (local, no API key required)\n\nOther providers (setup guides in the Provider Guides index)\n\nOnboarded via the zero-quirk OpenAI-wire-compatible catalog (Tier 2) — each has its own setup guide under providers/:\nGroq - LPU-accelerated inference; default openai/gpt-oss-120b\nCerebras - Wafer-scale inference; default gpt-oss-120b\nSambaNova - default Meta-Llama-3.3-70B-Instruct\nTogether AI - default meta-llama/Llama-3.3-70B-Instruct-Turbo\nFireworks AI - default accounts/fireworks/models/kimi-k2p6\nPerplexity - search-augmented models; default sonar\nCloudflare Workers AI - edge inference\nxAI - Grok models; default grok-4.6\nBaseten - default zai-org/GLM-5.3-Flash (BASETEN_API_KEY)\nGMI Cloud - default MiniMaxAI/MiniMax-M3 (GMICLOUD_API_KEY)\nInception Labs - diffusion LLMs; default mercury-2 (INCEPTION_LABS_API_KEY)\nio.net Intelligence - decentralized GPU inference; default meta-llama/Llama-3.3-70B-Instruct (IO_INTELLIGENCE_API_KEY)\nMancer - default deepseek-v4-flash (MANCER_API_KEY); no tool calling\nUpstage - Solar models; default solar-pro4 (UPSTAGE_API_KEY)\nAPI Route - OpenAI-compatible passthrough; default claude-sonnet-4-6 (API_ROUTE_API_KEY)\n\nEmbedding, media-generation, and decision-only providers — not part of generate()/stream() provider selection in the same way, but each has a setup guide:\nCohere - chat + embed-english-v3.0 embeddings + reranking\nVoyage AI - embedding-only; default voyage-3.5\nJina AI - embeddings + reranking; default jina-embeddings-v3\nReplicate, Stability AI, Ideogram, Recraft - direct image generation\nTypeSafe Jev - decision-only; serves decide(), not generate()/stream(). Set TYPESAFE_API_KEY (or AI_GATEWAY_API_KEY for the gateway transport)\nLaya - decision-only, open-weights; serves decide() on a Laya server or LiteLLM proxy route you configure. Set LAYA_API_KEY + LAYA_BASE_URL; used when TypeSafe isn't configured\n\nVoice providers (TTS/STT/Realtime) are configured further down in this guide — see OpenAI TTS onward.\n\n💰 Model Availability & Cost Considerations\n\nImportant Notes:\nModel Availability: Specific models may not be available in all regions or require special access\nCost Variations: Pricing differs significantly between providers and models (e.g., Claude 3.5 Sonnet vs GPT-4o)\nRate Limits: Each provider has different rate limits and quota restrictions\nLocal vs Cloud: Ollama (local) has no per-request cost but requires hardware resources\nEnterprise Tiers: AWS Bedrock, Google Vertex AI, and Azure typically offer enterprise pricing\n\nBest Practices:\nUse new NeuroLink() with automatic provider selection for cost-optimized routing\nMonitor usage through built-in analytics to track costs\nConsider local models (Ollama) for development and testing\nCheck provider documentation for current pricing and availability\n\n🏢 Enterprise Proxy Support\n\nProviders support corporate proxy environments automatically. Simply set environment variables:\n\nNo code changes required - NeuroLink automatically detects and uses proxy settings.\n\nFor detailed proxy setup → See Enterprise & Proxy Setup Guide\n\nOpenAI Configuration {#openai}\n\nBasic Setup\n\nOptional Configuration\n\nSupported Models\ngpt-4o (default) - Latest multimodal model\ngpt-4o-mini - Cost-effective variant\ngpt-4-turbo - High-performance model\n\nUsage Example\n\nTimeout Configuration\nDefault Timeout: 30 seconds\nSupported Formats: Milliseconds (30000), human-readable ('30s', '1m', '5m')\nEnvironment Variable: OPE","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"","lvl3":""}},
|
|
4916
4916
|
{"objectID":"44479af76ca558a6630aafa39578fb6543bd892844c3a6c5948ffd58a2d73287","title":"⚙️ Provider Configuration Guide","url":"/docs/getting-started/provider-setup#-provider-configuration-guide","content":"NeuroLink supports multiple AI providers with flexible authentication methods. This guide covers complete setup for all supported providers.","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"⚙️ Provider Configuration Guide","lvl3":""}},
|
|
4917
4917
|
{"objectID":"ed4c54afa059a89c0cb4a7815f361a50933fe695ec62b3df5a0bd4ad2e25e431","title":"Supported Providers","url":"/docs/getting-started/provider-setup#supported-providers","content":"This guide walks through full environment-variable setup for the providers below; the complete roster — including the newer catalog providers and the embedding/media/decision-only providers — is indexed with setup guides at Provider Guides.","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Supported Providers","lvl3":""}},
|
|
4918
|
-
{"objectID":"c0abb48e819713cb16c04d745137321d348118c823351fcf31ab014735dd036e","title":"Providers configured in this guide","url":"/docs/getting-started/provider-setup#providers-configured-in-this-guide","content":"OpenAI - GPT-4o, GPT-4o-mini, GPT-4-turbo\nAmazon Bedrock - Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3 Haiku\nAmazon SageMaker - Custom models deployed on SageMaker endpoints\nGoogle Vertex AI - Gemini 3 Flash/Pro (preview), Gemini 2.5 Flash, Claude 4.0 Sonnet\nGoogle AI Studio - Gemini 1.5 Pro, Gemini 2.0 Flash, Gemini 1.5 Flash\nAnthropic - Claude 4.5 Opus/Sonnet/Haiku, Claude 4.0 Opus/Sonnet, Claude 3.7 Sonnet\nAzure OpenAI - GPT-4, GPT-3.5-Turbo\nLiteLLM - 100+ models
|
|
4918
|
+
{"objectID":"c0abb48e819713cb16c04d745137321d348118c823351fcf31ab014735dd036e","title":"Providers configured in this guide","url":"/docs/getting-started/provider-setup#providers-configured-in-this-guide","content":"OpenAI - GPT-4o, GPT-4o-mini, GPT-4-turbo\nAmazon Bedrock - Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3 Haiku\nAmazon SageMaker - Custom models deployed on SageMaker endpoints\nGoogle Vertex AI - Gemini 3 Flash/Pro (preview), Gemini 2.5 Flash, Claude 4.0 Sonnet\nGoogle AI Studio - Gemini 1.5 Pro, Gemini 2.0 Flash, Gemini 1.5 Flash\nAnthropic - Claude 4.5 Opus/Sonnet/Haiku, Claude 4.0 Opus/Sonnet, Claude 3.7 Sonnet\nAzure OpenAI - GPT-4, GPT-3.5-Turbo\nLiteLLM - 100+ models across a broad range of providers via proxy server\nHugging Face - open models served by the unified router (Llama 3.x, Qwen 2.5, DeepSeek, Mistral)\nOllama - Local AI models including Llama 2, Code Llama, Mistral, Vicuna\nOpenRouter - 300+ models from every major lab via one aggregator endpoint\nMistral AI - Mistral Tiny, Small, Medium, and Large models\nDeepSeek - deepseek-chat (V3) and deepseek-reasoner (R1)\nNVIDIA NIM - Llama 3.3 70B and 400+ catalog models via NVIDIA hosted or self-hosted NIM\nLM Studio - Any model loaded in LM Studio desktop app (local, no API key required)\nllama.cpp - Any GGUF model served by llama-server (local, no API key required)","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Providers configured in this guide","lvl3":""}},
|
|
4919
4919
|
{"objectID":"cc96a04c9f262c3c1f6f8b8e7c82407cc63406705250afd22947a3567e151721","title":"Other providers (setup guides in the Provider Guides index)","url":"/docs/getting-started/provider-setup#other-providers-setup-guides-in-the-provider-guides-index","content":"Onboarded via the zero-quirk OpenAI-wire-compatible catalog (Tier 2) — each has its own setup guide under providers/:\nGroq - LPU-accelerated inference; default openai/gpt-oss-120b\nCerebras - Wafer-scale inference; default gpt-oss-120b\nSambaNova - default Meta-Llama-3.3-70B-Instruct\nTogether AI - default meta-llama/Llama-3.3-70B-Instruct-Turbo\nFireworks AI - default accounts/fireworks/models/kimi-k2p6\nPerplexity - search-augmented models; default sonar\nCloudflare Workers AI - edge inference\nxAI - Grok models; default grok-4.6\nBaseten - default zai-org/GLM-5.3-Flash (BASETEN_API_KEY)\nGMI Cloud - default MiniMaxAI/MiniMax-M3 (GMICLOUD_API_KEY)\nInception Labs - diffusion LLMs; default mercury-2 (INCEPTION_LABS_API_KEY)\nio.net Intelligence - decentralized GPU inference; default meta-llama/Llama-3.3-70B-Instruct (IO_INTELLIGENCE_API_KEY)\nMancer - default deepseek-v4-flash (MANCER_API_KEY); no tool calling\nUpstage - Solar models; default solar-pro4 (UPSTAGE_API_KEY)\nAPI Route - OpenAI-compatible passthrough; default claude-sonnet-4-6 (API_ROUTE_API_KEY)\n\nEmbedding, media-generation, and decision-only providers — not part of generate()/stream() provider selection in the same way, but each has a setup guide:\nCohere - chat + embed-english-v3.0 embeddings + reranking\nVoyage AI - embedding-only; default voyage-3.5\nJina AI - embeddings + reranking; default jina-embeddings-v3\nReplicate, Stability AI, Ideogram, Recraft - direct image generation\nTypeSafe Jev - decision-only; serves decide(), not generate()/stream(). Set TYPESAFE_API_KEY (or AI_GATEWAY_API_KEY for the gateway transport)\nLaya - decision-only, open-weights; serves decide() on a Laya server or LiteLLM proxy route you configure. Set LAYA_API_KEY + LAYA_BASE_URL; used when TypeSafe isn't configured\n\nVoice providers (TTS/STT/Realtime) are configured further down in this guide — see OpenAI TTS onward.","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Other providers (setup guides in the Provider Guides index)","lvl3":""}},
|
|
4920
4920
|
{"objectID":"d17be3311722218280d0e76731e7344c620c18f5073e07abbc826f3922db976a","title":"💰 Model Availability & Cost Considerations","url":"/docs/getting-started/provider-setup#-model-availability-cost-considerations","content":"Important Notes:\nModel Availability: Specific models may not be available in all regions or require special access\nCost Variations: Pricing differs significantly between providers and models (e.g., Claude 3.5 Sonnet vs GPT-4o)\nRate Limits: Each provider has different rate limits and quota restrictions\nLocal vs Cloud: Ollama (local) has no per-request cost but requires hardware resources\nEnterprise Tiers: AWS Bedrock, Google Vertex AI, and Azure typically offer enterprise pricing\n\nBest Practices:\nUse new NeuroLink() with automatic provider selection for cost-optimized routing\nMonitor usage through built-in analytics to track costs\nConsider local models (Ollama) for development and testing\nCheck provider documentation for current pricing and availability","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"💰 Model Availability & Cost Considerations","lvl3":""}},
|
|
4921
|
-
{"objectID":"3a1bd0ccb708d37a59e2db3650f689f77fba69e91ec88142c7c9b85f1c18057d","title":"🏢 Enterprise Proxy Support","url":"/docs/getting-started/provider-setup#-enterprise-proxy-support","content":"
|
|
4921
|
+
{"objectID":"3a1bd0ccb708d37a59e2db3650f689f77fba69e91ec88142c7c9b85f1c18057d","title":"🏢 Enterprise Proxy Support","url":"/docs/getting-started/provider-setup#-enterprise-proxy-support","content":"Providers support corporate proxy environments automatically. Simply set environment variables:\n\nNo code changes required - NeuroLink automatically detects and uses proxy settings.\n\nFor detailed proxy setup → See Enterprise & Proxy Setup Guide","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"🏢 Enterprise Proxy Support","lvl3":""}},
|
|
4922
4922
|
{"objectID":"1b0159447e4aee3ffd31efe28600cf755e4cc49d50f354e1a59d9574199213d2","title":"Supported Models","url":"/docs/getting-started/provider-setup#supported-models","content":"gpt-4o (default) - Latest multimodal model\ngpt-4o-mini - Cost-effective variant\ngpt-4-turbo - High-performance model","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Supported Models","lvl3":""}},
|
|
4923
4923
|
{"objectID":"27581667470b332f3c1c5159d4345a675be587f71dfb0d0b5d2a342adf1d2d44","title":"Timeout Configuration","url":"/docs/getting-started/provider-setup#timeout-configuration","content":"Default Timeout: 30 seconds\nSupported Formats: Milliseconds (30000), human-readable ('30s', '1m', '5m')\nEnvironment Variable: OPENAI_TIMEOUT='45s' (optional)","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Timeout Configuration","lvl3":""}},
|
|
4924
4924
|
{"objectID":"9c310a3f365a46c6628ae6910d2bb72ec8560e43353e044f6c9b73e5ce8d1798","title":"🚨 Critical Setup Requirements","url":"/docs/getting-started/provider-setup#-critical-setup-requirements","content":"⚠️ IMPORTANT: Anthropic Models Require Inference Profile ARN\n\nFor Anthropic Claude models in Bedrock, you MUST use the full inference profile ARN, not simple model names:\n\n`bash","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"🚨 Critical Setup Requirements","lvl3":""}},
|
|
@@ -4991,7 +4991,7 @@
|
|
|
4991
4991
|
{"objectID":"497b3d51224d322e05db352815782bea7fcb3c132fe7cd95610db446a0a5c075","title":"Optional: Default model selection","url":"/docs/getting-started/provider-setup#optional-default-model-selection","content":"`","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Optional: Default model selection","lvl3":""}},
|
|
4992
4992
|
{"objectID":"50905a021f274d78cfbc8774739edd4c66dc2043d18106d5d69fc40fb8203dc4","title":"Rate Limits and Quotas","url":"/docs/getting-started/provider-setup#rate-limits-and-quotas","content":"Google AI Studio includes generous free tier limits:\nFree Tier: 15 requests per minute, 1,500 requests per day\nPaid Usage: Higher limits available with billing enabled\nModel-Specific: Different models may have different rate limits","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Rate Limits and Quotas","lvl3":""}},
|
|
4993
4993
|
{"objectID":"9bdc413342f12139f8eda0ef7773b7d54afce16b483c78401edeb8c488f1dbdf","title":"Security Considerations","url":"/docs/getting-started/provider-setup#security-considerations","content":"API Key Security: Treat API keys as sensitive credentials\nEnvironment Variables: Never commit API keys to version control\nRate Limiting: Implement client-side rate limiting for production apps\nMonitoring: Monitor usage to avoid unexpected charges","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Security Considerations","lvl3":""}},
|
|
4994
|
-
{"objectID":"1485e35ac09dab942a1e2a7e6d1d5eb003edf3993a58b961783f6ae7b076e210","title":"LiteLLM Configuration","url":"/docs/getting-started/provider-setup#litellm-configuration","content":"LiteLLM provides access to 100+ models through a unified proxy server, allowing you to use
|
|
4994
|
+
{"objectID":"1485e35ac09dab942a1e2a7e6d1d5eb003edf3993a58b961783f6ae7b076e210","title":"LiteLLM Configuration","url":"/docs/getting-started/provider-setup#litellm-configuration","content":"LiteLLM provides access to 100+ models through a unified proxy server, allowing you to use supported AI providers through a single interface.","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"LiteLLM Configuration","lvl3":""}},
|
|
4995
4995
|
{"objectID":"f59d9b65be729e58d4c0b353daf2e012c6287960a20a47bc150960b23e1ff903","title":"Prerequisites","url":"/docs/getting-started/provider-setup#prerequisites-1","content":"Install LiteLLM:\nStart LiteLLM proxy server:\n\n`bash","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Prerequisites","lvl3":""}},
|
|
4996
4996
|
{"objectID":"3dcd4a02eb4068b5f9b2688a5997e83cb8d18d32c64a7f7ff433a47ed89cb98c","title":"Basic usage","url":"/docs/getting-started/provider-setup#basic-usage","content":"litellm --port 4000","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"Basic usage","lvl3":""}},
|
|
4997
4997
|
{"objectID":"bd1b9e48d6be39ee40e6d1d56211486b7eda87e1ab0958f0a463047b3b61061c","title":"With configuration file (recommended)","url":"/docs/getting-started/provider-setup#with-configuration-file-recommended","content":"litellm --config litellm_config.yaml --port 4000\n`","hierarchy":{"lvl0":"Getting Started","lvl1":"⚙️ Provider Configuration Guide","lvl2":"With configuration file (recommended)","lvl3":""}},
|
|
@@ -5887,7 +5887,7 @@
|
|
|
5887
5887
|
{"objectID":"e4ebbbc3b9437c3a809d6a052b1682ad075cf5d89deff12e5a1b1c61ac4a1dcd","title":"[LM Studio](/docs/getting-started/provider-setup.md#lm-studio)","url":"/docs/getting-started/providers#lm-studiodocsgetting-startedprovider-setupmdlm-studio","content":"Run any supported model locally with a GUI app\n🖥️ Download and run models via the LM Studio desktop application\n🔍 Auto-discovers the loaded model from /v1/models (no model name required)\n🌐 OpenAI-compatible API at http://localhost:1234/v1 by default\n🆓 No API key needed for local use (key optional for reverse-proxy setups)\n🔄 Aliases: lmstudio, lms\n\nSetup Guide →","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"[LM Studio](/docs/getting-started/provider-setup.md#lm-studio)","lvl3":""}},
|
|
5888
5888
|
{"objectID":"ee135d1d1497d8b7c612159f7ca945ddc9232bb358bbb4fdd13730c71a7ecd42","title":"[llama.cpp](/docs/getting-started/provider-setup.md#llamacpp)","url":"/docs/getting-started/providers#llamacppdocsgetting-startedprovider-setupmdllamacpp","content":"High-performance local inference via llama-server\n⚡ Run GGUF models with llama-server at http://localhost:8080/v1 by default\n🔍 Auto-discovers the loaded model from /v1/models\n🛠️ Tool support requires --jinja flag when starting llama-server\n🆓 No API key needed for local use (key optional for reverse-proxy setups)\n🔄 Aliases: llama.cpp\n\nSetup Guide →","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"[llama.cpp](/docs/getting-started/provider-setup.md#llamacpp)","lvl3":""}},
|
|
5889
5889
|
{"objectID":"cd37ca4358ecd7baa6ede9b31b08ef940e7f29b7eb80ad4eb7c60e58b25068f6","title":"🔌 Aggregators & Proxies","url":"/docs/getting-started/providers#-aggregators-proxies","content":"Access multiple providers through unified interfaces:","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"🔌 Aggregators & Proxies","lvl3":""}},
|
|
5890
|
-
{"objectID":"6ad36ba3488491bb913c7a77b86a278cc86509da88a054975bcded71f5c02130","title":"[OpenRouter](/docs/getting-started/providers/openrouter)","url":"/docs/getting-started/providers#openrouterdocsgetting-startedprovidersopenrouter","content":"300+ models from 60+ providers\n🌐 Single API
|
|
5890
|
+
{"objectID":"6ad36ba3488491bb913c7a77b86a278cc86509da88a054975bcded71f5c02130","title":"[OpenRouter](/docs/getting-started/providers/openrouter)","url":"/docs/getting-started/providers#openrouterdocsgetting-startedprovidersopenrouter","content":"300+ models from 60+ providers\n🌐 Single API across many AI providers (Anthropic, OpenAI, Google, Meta, etc.)\n⚡ Automatic failover and routing\n💰 Competitive pricing with cost optimization\n🎯 Zero lock-in - switch models instantly\n📊 Usage tracking dashboard\n🆓 Free models available\n\nSetup Guide →","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"[OpenRouter](/docs/getting-started/providers/openrouter)","lvl3":""}},
|
|
5891
5891
|
{"objectID":"733a2fa8ea4c547cdcdf502f89f003a2208c0e5828e36e7faaaa94e0903d3d49","title":"[OpenAI Compatible](/docs/getting-started/providers/openai-compatible)","url":"/docs/getting-started/providers#openai-compatibledocsgetting-startedprovidersopenai-compatible","content":"OpenRouter, vLLM, LocalAI, and more\n🌐 100+ models through OpenRouter\n💻 Local deployment with vLLM\n🔓 Self-hosted with LocalAI\n🔄 Drop-in OpenAI replacement\n\nSetup Guide →","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"[OpenAI Compatible](/docs/getting-started/providers/openai-compatible)","lvl3":""}},
|
|
5892
5892
|
{"objectID":"fc415454bfde58f3634df544ef2adb88836c75fb1344b7042af7a9d6fdfa63d4","title":"[LiteLLM](/docs/getting-started/providers/litellm)","url":"/docs/getting-started/providers#litellmdocsgetting-startedproviderslitellm","content":"100+ providers through proxy\n🔄 Unified API for 100+ providers\n📊 Load balancing and fallbacks\n💰 Cost tracking\n🎯 Model routing\n\nSetup Guide →","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"[LiteLLM](/docs/getting-started/providers/litellm)","lvl3":""}},
|
|
5893
5893
|
{"objectID":"faae7281e5a366b4892035d92012602a9e7aaa15cc9d96556b20493e25562498","title":"🧠 Decision-Only Providers {#decision-only-providers}","url":"/docs/getting-started/providers#-decision-only-providers-decision-only-providers","content":"The two providers that serve decide rather than generate/stream. Each\nreturns typed, calibrated judgments and emits no text, so neither appears in\ngeneration fallback chains or the health sweep.","hierarchy":{"lvl0":"Getting Started","lvl1":"AI Provider Guides","lvl2":"🧠 Decision-Only Providers {#decision-only-providers}","lvl3":""}},
|
|
@@ -5970,11 +5970,11 @@
|
|
|
5970
5970
|
{"objectID":"de358abc64cad163c1666dce7b06fc5f7b3637b9568e420ceb9269a526929d54","title":"Running your own Laya server","url":"/docs/getting-started/providers/laya#running-your-own-laya-server","content":"Laya's example server exposes the same /predict route. Point\nLAYA_BASE_URL at it:","hierarchy":{"lvl0":"Getting Started","lvl1":"Laya Provider Guide","lvl2":"Running your own Laya server","lvl3":""}},
|
|
5971
5971
|
{"objectID":"e0dd67e8f79c7801d3e199dcd765a559f64a9d65d43cf1611026725a8ae1ee82","title":"Troubleshooting","url":"/docs/getting-started/providers/laya#troubleshooting","content":"Laya requires a base URL — set LAYA_BASE_URL, or pass\n credentials.laya.baseURL. There is no default endpoint.\nAuthentication failed — the proxy rejected the key. Check it in the\n LiteLLM Dashboard, including its Allowed Routes. The provider instance does\n not retry after a rejection.\nA 403 with error code: 1010 — Cloudflare in front of your proxy blocked\n the client by its signature. Node's fetch is accepted; a proxy or agent that\n rewrites the user agent may not be.\nexceeded the provider's token limit — the state is larger than Laya\n reads. Shorten it, or configure TypeSafe for long inputs.\nBuilt-in routing never uses Laya — a TypeSafe key is also set and takes\n precedence, or Laya has no base URL.","hierarchy":{"lvl0":"Getting Started","lvl1":"Laya Provider Guide","lvl2":"Troubleshooting","lvl3":""}},
|
|
5972
5972
|
{"objectID":"fb160b657869a262fd7735599ce2c2ffd49423f4a0f7c43f4ef5ee74aa4dcde5","title":"See also","url":"/docs/getting-started/providers/laya#see-also","content":"The decide inference type\nTypeSafe (Jev) Provider Guide\nLaya on GitHub","hierarchy":{"lvl0":"Getting Started","lvl1":"Laya Provider Guide","lvl2":"See also","lvl3":""}},
|
|
5973
|
-
{"objectID":"e3ac6498f27344d89bbe65467d6382ad117a8cdd85b1daa4ec6dafe521cc8d44","title":"LiteLLM Provider Guide","url":"/docs/getting-started/providers/litellm","content":"LiteLLM Provider Guide\n\nAccess hundreds of AI models across 100+ providers through the NeuroLink LiteLLM provider via a LiteLLM proxy server\n\nOverview\n\nNeuroLink's litellm provider connects to a LiteLLM proxy server to access hundreds of models across 100+ AI providers (OpenAI, Anthropic, Google, AWS Bedrock, Cohere, Groq, Together AI, and more) through a single OpenAI-compatible API. The proxy adds enterprise features like load balancing, fallbacks, budgets, and rate limiting on top of
|
|
5973
|
+
{"objectID":"e3ac6498f27344d89bbe65467d6382ad117a8cdd85b1daa4ec6dafe521cc8d44","title":"LiteLLM Provider Guide","url":"/docs/getting-started/providers/litellm","content":"LiteLLM Provider Guide\n\nAccess hundreds of AI models across 100+ providers through the NeuroLink LiteLLM provider via a LiteLLM proxy server\n\nOverview\n\nNeuroLink's litellm provider connects to a LiteLLM proxy server to access hundreds of models across 100+ AI providers (OpenAI, Anthropic, Google, AWS Bedrock, Cohere, Groq, Together AI, and more) through a single OpenAI-compatible API. The proxy adds enterprise features like load balancing, fallbacks, budgets, and rate limiting on top of the connected AI providers.\n\nHow It Works\nYou run (or connect to) a LiteLLM proxy server that manages your provider API keys and model routing.\nNeuroLink's litellm provider communicates with this proxy using the OpenAI-compatible protocol.\nModels are referenced using LiteLLM's provider/model format (e.g., openai/gpt-4o-mini, anthropic/claude-3-5-sonnet-20240620).\n\nKey Benefits\n100+ Providers: Access hundreds of models across a broad range of AI providers through one interface\nUnified Model Format: Use provider/model naming across all backends\nLoad Balancing: Distribute requests across multiple providers/models\nCost Tracking: Built-in budget management and spend tracking\nFallbacks: Automatic failover when providers are down\nProxy Mode: Run as standalone proxy server for team-wide use\n\nQuick Start\nSet Up a LiteLLM Proxy Server\n\nBefore using the NeuroLink litellm provider, you need a running LiteLLM proxy. See the Setting Up LiteLLM Proxy section below for full details, or get started quickly:\nConfigure Environment Variables\n\nAdd to your .env file:\nTest the Setup\n\nEnvironment Variables\n\n| Variable | Required | Default | Description |\n| ------------------ | -------- | ----------------------- | ----------------------------------------- |\n| LITELLM_BASE_URL | No | http://localhost:4000 | URL of your LiteLLM proxy server |\n| LITELLM_API_KEY | No | sk-anything | API key for authenticating with the proxy |\n| LITELLM_MODEL | No | openai/gpt-4o-mini | Default model in provider/model format |\n\nDefault Model\n\nThe default model is openai/gpt-4o-mini (from LiteLLMModels.OPENAI_GPT_4O_MINI). Override it by setting LITELLM_MODEL in your environment or passing --model on the CLI.\n\nModel Name Format\n\nLiteLLM uses a provider/model format for model names. Examples:\n\nSee the full list at LiteLLM Supported Providers.\n\nSDK Usage\n\nBasic Usage\n\nWith a Specific Model\n\nStreaming\n\nMulti-Model Workflow\n\nCLI Usage\n\nAvailable Models\n\nThe LiteLLMModels enum provides commonly used model identifiers:\n\n| Enum Value | Model ID |\n| ------------------------------ | -------------------------------------- |\n| OPENAI_GPT_4O_MINI | openai/gpt-4o-mini |\n| OPENAI_GPT_4O | openai/gpt-4o |\n| OPENAI_GPT_5 | openai/gpt-5 |\n| ANTHROPIC_CLAUDE_SONNET_4_6 | anthropic/claude-sonnet-4-6 |\n| ANTHROPIC_CLAUDE_3_5_SONNET | anthropic/claude-3-5-sonnet-20240620 |\n| VERTEX_GEMINI_2_5_PRO | vertex_ai/gemini-2.5-pro |\n| GEMINI_2_0_FLASH | gemini/gemini-2.0-flash |\n| GROQ_LLAMA_3_1_70B_VERSATILE | groq/llama-3.1-70b-versatile |\n| MISTRAL_LARGE | mistral/mistral-large-latest |\n\nYou can also pass any model string your LiteLLM proxy is configured to serve. Use the proxy's /v1/models endpoint to discover available models dynamically.\n\nError Handling\n\nThe LiteLLM provider returns specific error types for common failure scenarios:\n\n| Error | Cause | Resolution |\n| ----------------------------- | ----------------------------------- | -------------------------------------------------------- |\n| NetworkError (ECONNREFUSED) | LiteLLM proxy server is not running | Start the proxy at the configured LITELLM_BASE_URL |\n| AuthenticationError | Invalid LITELLM_API_KEY | Check your API key matches the proxy's master key |\n| RateLimitError | Upstream rate limit exceeded | Wait and retry, or configure load balancing in the proxy |\n| InvalidModelError | Model not configured in proxy | Add the model to your LiteLLM proxy configuration |\n\nSetting Up LiteLLM Proxy\n\nThe NeuroLink litellm provider requires a running LiteLLM proxy server. This section covers how to set one up.\n\nInstall LiteLLM\n\nQuick Start (Single Model)\n\nConfiguration File (Multiple Models)\n\nCreate litellm_config.yaml:\n\nStart the proxy:\n\nLoad Balancing\n\nDistribute requests across multiple providers or API keys:\n\nAutomatic Failover\n\nConfigure fallback providers for reliability:\n\nBudget Management\n\nSet spending limits per virtual key:\n\nDocker Deployment\n\nTroubleshooting\n\nCommon Issues\n\"LiteLLM proxy server not available\"\n\nProblem: The proxy ","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"","lvl3":""}},
|
|
5974
5974
|
{"objectID":"d7435a5ad9fdbf5d14349609fed469d76227dc6098228c3ec8e0c82c3d62944a","title":"LiteLLM Provider Guide","url":"/docs/getting-started/providers/litellm#litellm-provider-guide","content":"Access hundreds of AI models across 100+ providers through the NeuroLink LiteLLM provider via a LiteLLM proxy server","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"LiteLLM Provider Guide","lvl3":""}},
|
|
5975
|
-
{"objectID":"27c251c8bbd323623221b411910908f9845d9bca578eaf8a167eff42d385cc67","title":"Overview","url":"/docs/getting-started/providers/litellm#overview","content":"NeuroLink's litellm provider connects to a LiteLLM proxy server to access hundreds of models across 100+ AI providers (OpenAI, Anthropic, Google, AWS Bedrock, Cohere, Groq, Together AI, and more) through a single OpenAI-compatible API. The proxy adds enterprise features like load balancing, fallbacks, budgets, and rate limiting on top of
|
|
5975
|
+
{"objectID":"27c251c8bbd323623221b411910908f9845d9bca578eaf8a167eff42d385cc67","title":"Overview","url":"/docs/getting-started/providers/litellm#overview","content":"NeuroLink's litellm provider connects to a LiteLLM proxy server to access hundreds of models across 100+ AI providers (OpenAI, Anthropic, Google, AWS Bedrock, Cohere, Groq, Together AI, and more) through a single OpenAI-compatible API. The proxy adds enterprise features like load balancing, fallbacks, budgets, and rate limiting on top of the connected AI providers.","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"Overview","lvl3":""}},
|
|
5976
5976
|
{"objectID":"ffa745af619fbbdc696848b86a23102f0af21cccda5c3cf6e5d15488484c6af4","title":"How It Works","url":"/docs/getting-started/providers/litellm#how-it-works","content":"You run (or connect to) a LiteLLM proxy server that manages your provider API keys and model routing.\nNeuroLink's litellm provider communicates with this proxy using the OpenAI-compatible protocol.\nModels are referenced using LiteLLM's provider/model format (e.g., openai/gpt-4o-mini, anthropic/claude-3-5-sonnet-20240620).","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"How It Works","lvl3":""}},
|
|
5977
|
-
{"objectID":"97405234ee76e92079a98db9d4960bab3e4b53cde7e22551b783509414a43b96","title":"Key Benefits","url":"/docs/getting-started/providers/litellm#key-benefits","content":"100+ Providers: Access hundreds of models across
|
|
5977
|
+
{"objectID":"97405234ee76e92079a98db9d4960bab3e4b53cde7e22551b783509414a43b96","title":"Key Benefits","url":"/docs/getting-started/providers/litellm#key-benefits","content":"100+ Providers: Access hundreds of models across a broad range of AI providers through one interface\nUnified Model Format: Use provider/model naming across all backends\nLoad Balancing: Distribute requests across multiple providers/models\nCost Tracking: Built-in budget management and spend tracking\nFallbacks: Automatic failover when providers are down\nProxy Mode: Run as standalone proxy server for team-wide use","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"Key Benefits","lvl3":""}},
|
|
5978
5978
|
{"objectID":"8656a6506343b37515c26ba4cd61f12c4f17398d03770f5811d4f9a92cd6e021","title":"1. Set Up a LiteLLM Proxy Server","url":"/docs/getting-started/providers/litellm#1-set-up-a-litellm-proxy-server","content":"Before using the NeuroLink litellm provider, you need a running LiteLLM proxy. See the Setting Up LiteLLM Proxy section below for full details, or get started quickly:","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"1. Set Up a LiteLLM Proxy Server","lvl3":""}},
|
|
5979
5979
|
{"objectID":"c6309d511cf7e0b99d5423769131cb23f86098414a09fb1c2bb8a1fce5c312df","title":"2. Configure Environment Variables","url":"/docs/getting-started/providers/litellm#2-configure-environment-variables","content":"Add to your .env file:\n\n`bash","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"2. Configure Environment Variables","lvl3":""}},
|
|
5980
5980
|
{"objectID":"fd0112a4c53d9edaced89e4a00cb0990c3f5071c57b354b16f47ab41faeb64bf","title":"Required: URL of your LiteLLM proxy server","url":"/docs/getting-started/providers/litellm#required-url-of-your-litellm-proxy-server","content":"LITELLMBASEURL=http://localhost:4000","hierarchy":{"lvl0":"Getting Started","lvl1":"LiteLLM Provider Guide","lvl2":"Required: URL of your LiteLLM proxy server","lvl3":""}},
|
|
@@ -6998,11 +6998,11 @@
|
|
|
6998
6998
|
{"objectID":"5e419fd378ccf967026f166ff17ca26ff25e33bee3a5e5f1ff6294df4c06bb12","title":"Set in Vercel dashboard or CLI","url":"/docs/guides/frameworks/sveltekit#set-in-vercel-dashboard-or-cli","content":"vercel env add OPENAIAPIKEY\nvercel env add ANTHROPICAPIKEY\nvercel env add JWT_SECRET\n`","hierarchy":{"lvl0":"Guides","lvl1":"SvelteKit Integration Guide","lvl2":"Set in Vercel dashboard or CLI","lvl3":""}},
|
|
6999
6999
|
{"objectID":"a86f4915394a5106e65dd50477d31423486db347ca83c02354ed3a06df8cdc62","title":"Related Documentation","url":"/docs/guides/frameworks/sveltekit#related-documentation","content":"API Reference - NeuroLink SDK\nStreaming Guide - Real-time responses\nCompliance Guide - Security and authentication\nCost Optimization - Reduce costs\nFastify Integration - High-performance Node.js framework with schema validation","hierarchy":{"lvl0":"Guides","lvl1":"SvelteKit Integration Guide","lvl2":"Related Documentation","lvl3":""}},
|
|
7000
7000
|
{"objectID":"dae99b935ff34c8fd5f10f0ac1f2f4fdffb0cd777d7bb45c7bc7f4b91059014c","title":"Additional Resources","url":"/docs/guides/frameworks/sveltekit#additional-resources","content":"SvelteKit Documentation - Official SvelteKit docs\nSvelte Tutorial - Learn Svelte\nSvelteKit Examples - Example apps\n\nNeed Help? Join our GitHub Discussions or open an issue.","hierarchy":{"lvl0":"Guides","lvl1":"SvelteKit Integration Guide","lvl2":"Additional Resources","lvl3":""}},
|
|
7001
|
-
{"objectID":"8f31aec32f066055dee31be79a01ee297a435bbf7f901cce7785983b2e27e1eb","title":"GitHub Action Guide","url":"/docs/guides/github-action","content":"GitHub Action Guide\n\nLast Updated: January 10, 2026\nNeuroLink Version: 8.32.0\n\nRun AI-powered workflows with
|
|
7002
|
-
{"objectID":"7ff4c3df91e5e1c298b72c9c4582ecd6d75ff6486e6af5c4ef96766507050d2b","title":"GitHub Action Guide","url":"/docs/guides/github-action#github-action-guide","content":"Last Updated: January 10, 2026\nNeuroLink Version: 8.32.0\n\nRun AI-powered workflows with
|
|
7003
|
-
{"objectID":"33dd9029b76affe39c2b849f369b0629e6061d643568bcefd1ab923e2653bd90","title":"Overview","url":"/docs/guides/github-action#overview","content":"The NeuroLink GitHub Action provides a unified interface to integrate AI capabilities into your CI/CD workflows. It supports
|
|
7001
|
+
{"objectID":"8f31aec32f066055dee31be79a01ee297a435bbf7f901cce7785983b2e27e1eb","title":"GitHub Action Guide","url":"/docs/guides/github-action","content":"GitHub Action Guide\n\nLast Updated: January 10, 2026\nNeuroLink Version: 8.32.0\n\nRun AI-powered workflows with supported providers directly in GitHub Actions. The NeuroLink GitHub Action enables automated code review, issue triage, content generation, and more.\n\nOverview\n\nThe NeuroLink GitHub Action provides a unified interface to integrate AI capabilities into your CI/CD workflows. It supports NeuroLink provider integrations through a single, consistent configuration.\n\nKey Features:\nMulti-provider support - supported AI providers with a unified interface\nPR/Issue comments - Auto-post AI responses with intelligent comment updates\nCost tracking - Built-in analytics with usage metrics\nQuality evaluation - Response scoring and validation\nMultimodal - Support for images, PDFs, CSVs, and videos\nExtended thinking - Deep reasoning with thinking tokens\nJob summaries - Detailed execution summaries in workflow runs\n\nQuick Start\n\nBasic Usage\n\nAuto Provider Detection\n\nWhen you set provider: auto (the default), NeuroLink automatically selects the best available provider based on which API keys you provide:\n\nProvider Configuration\n\nNeuroLink supports many AI providers. Configure each by providing the required credentials as secrets.\n\nProvider Quick Reference\n\n| Provider | Required Inputs | Example Models |\n| ----------------- | ------------------------------------------------------------------ | ------------------------------------------ |\n| OpenAI | openai_api_key | gpt-4o, gpt-4o-mini, o1 |\n| Anthropic | anthropic_api_key | claude-sonnet-4-20250514, claude-3-5-haiku |\n| Google AI Studio | google_ai_api_key | gemini-2.5-pro, gemini-2.5-flash |\n| Vertex AI | google_vertex_project, google_application_credentials | gemini-\\, claude-\\ |\n| Amazon Bedrock | aws_access_key_id, aws_secret_access_key | claude-\\, titan-\\, nova-\\* |\n| Azure OpenAI | azure_openai_api_key, azure_openai_endpoint | gpt-4o, gpt-4-turbo |\n| Mistral | mistral_api_key | mistral-large, mistral-small |\n| Hugging Face | huggingface_api_key | Various open models |\n| OpenRouter | openrouter_api_key | 300+ models |\n| LiteLLM | litellm_api_key, litellm_base_url | Proxy to 100+ models |\n| Ollama | - | Local models |\n| SageMaker | aws_access_key_id, aws_secret_access_key, sagemaker_endpoint | Custom endpoints |\n| OpenAI-Compatible | openai_compatible_api_key, openai_compatible_base_url | vLLM, custom APIs |\n\nOpenAI\n\nEnvironment Variables:\nOPENAI_API_KEY - Your OpenAI API key (starts with sk-)\n\nAvailable Models:\ngpt-4o - Most capable model\ngpt-4o-mini - Fast and cost-effective\no1 - Advanced reasoning model\ngpt-4-turbo - Previous generation flagship\n\nAnthropic\n\nEnvironment Variables:\nANTHROPIC_API_KEY - Your Anthropic API key (starts with sk-ant-)\n\nAvailable Models:\nclaude-sonnet-4-20250514 - Best overall performance\nclaude-3-5-haiku - Fast and efficient\nclaude-opus-4-20250514 - Maximum capability\n\nExtended Thinking Support: Anthropic models support extended thinking for deep reasoning tasks.\n\nGoogle AI Studio\n\nEnvironment Variables:\nGOOGLE_AI_API_KEY - Your Google AI Studio API key\n\nAvailable Models:\ngemini-2.5-pro - Most capable Gemini model\ngemini-2.5-flash - Fast and cost-effective\ngemini-2.0-flash - Previous generation\n\nFree Tier: Google AI Studio offers a generous free tier (1M tokens/day).\n\nGoogle Vertex AI\n\nEnvironment Variables:\nGOOGLE_VERTEX_PROJECT - Your GCP project ID\nGOOGLE_VERTEX_LOCATION - GCP region (default: us-central1)\nGOOGLE_APPLICATION_CREDENTIALS - Base64-encoded service account JSON\n\nSetup Service Account:\n\nAmazon Bedrock\n\nEnvironment Variables:\nAWS_ACCESS_KEY_ID - AWS access key\nAWS_SECRET_ACCESS_KEY - AWS secret key\nAWS_REGION - AWS region (default: us-east-1)\nAWS_SESSION_TOKEN - Optional session token for temporary credentials\n\nAvailable Models:\nanthropic.claude-3-5-sonnet-20241022-v2:0 - Claude on Bedrock\namazon.titan-text-express-v1 - Amazon Titan\namazon.nova-pro-v1:0 - Amazon Nova\n\nOIDC Authentication (Recommended):\n\nFor better security, use GitHub OIDC instead of static credentials:\n\nAzure OpenAI\n\nEnvironment Variables:\nAZURE_OPENAI_API_KEY - Azure OpenAI API key\nAZURE_OPENAI_ENDPOIN","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"","lvl3":""}},
|
|
7002
|
+
{"objectID":"7ff4c3df91e5e1c298b72c9c4582ecd6d75ff6486e6af5c4ef96766507050d2b","title":"GitHub Action Guide","url":"/docs/guides/github-action#github-action-guide","content":"Last Updated: January 10, 2026\nNeuroLink Version: 8.32.0\n\nRun AI-powered workflows with supported providers directly in GitHub Actions. The NeuroLink GitHub Action enables automated code review, issue triage, content generation, and more.","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"GitHub Action Guide","lvl3":""}},
|
|
7003
|
+
{"objectID":"33dd9029b76affe39c2b849f369b0629e6061d643568bcefd1ab923e2653bd90","title":"Overview","url":"/docs/guides/github-action#overview","content":"The NeuroLink GitHub Action provides a unified interface to integrate AI capabilities into your CI/CD workflows. It supports NeuroLink provider integrations through a single, consistent configuration.\n\nKey Features:\nMulti-provider support - supported AI providers with a unified interface\nPR/Issue comments - Auto-post AI responses with intelligent comment updates\nCost tracking - Built-in analytics with usage metrics\nQuality evaluation - Response scoring and validation\nMultimodal - Support for images, PDFs, CSVs, and videos\nExtended thinking - Deep reasoning with thinking tokens\nJob summaries - Detailed execution summaries in workflow runs","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Overview","lvl3":""}},
|
|
7004
7004
|
{"objectID":"3bb997302dc433bdb7ccaa27311d8b28539d24f519d50d7777495c4477c52933","title":"Auto Provider Detection","url":"/docs/guides/github-action#auto-provider-detection","content":"When you set provider: auto (the default), NeuroLink automatically selects the best available provider based on which API keys you provide:","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Auto Provider Detection","lvl3":""}},
|
|
7005
|
-
{"objectID":"a0196ac56db4df812b123855c3b7524934cf265a63e96a8ba68334d3206c0fe1","title":"Provider Configuration","url":"/docs/guides/github-action#provider-configuration","content":"NeuroLink supports
|
|
7005
|
+
{"objectID":"a0196ac56db4df812b123855c3b7524934cf265a63e96a8ba68334d3206c0fe1","title":"Provider Configuration","url":"/docs/guides/github-action#provider-configuration","content":"NeuroLink supports many AI providers. Configure each by providing the required credentials as secrets.","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Provider Configuration","lvl3":""}},
|
|
7006
7006
|
{"objectID":"e323a8ed54e480b24ca441ae97e154de2fc279ab13289c50496ffb1c1040dbbd","title":"Provider Quick Reference","url":"/docs/guides/github-action#provider-quick-reference","content":"| Provider | Required Inputs | Example Models |\n| ----------------- | ------------------------------------------------------------------ | ------------------------------------------ |\n| OpenAI | openai_api_key | gpt-4o, gpt-4o-mini, o1 |\n| Anthropic | anthropic_api_key | claude-sonnet-4-20250514, claude-3-5-haiku |\n| Google AI Studio | google_ai_api_key | gemini-2.5-pro, gemini-2.5-flash |\n| Vertex AI | google_vertex_project, google_application_credentials | gemini-\\, claude-\\ |\n| Amazon Bedrock | aws_access_key_id, aws_secret_access_key | claude-\\, titan-\\, nova-\\* |\n| Azure OpenAI | azure_openai_api_key, azure_openai_endpoint | gpt-4o, gpt-4-turbo |\n| Mistral | mistral_api_key | mistral-large, mistral-small |\n| Hugging Face | huggingface_api_key | Various open models |\n| OpenRouter | openrouter_api_key | 300+ models |\n| LiteLLM | litellm_api_key, litellm_base_url | Proxy to 100+ models |\n| Ollama | - | Local models |\n| SageMaker | aws_access_key_id, aws_secret_access_key, sagemaker_endpoint | Custom endpoints |\n| OpenAI-Compatible | openai_compatible_api_key, openai_compatible_base_url | vLLM, custom APIs |","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Provider Quick Reference","lvl3":""}},
|
|
7007
7007
|
{"objectID":"73ea2110630bda0912a64584e314b35c87ee437f430be4dd34b4ac6c7432d374","title":"OpenAI","url":"/docs/guides/github-action#openai","content":"Environment Variables:\nOPENAI_API_KEY - Your OpenAI API key (starts with sk-)\n\nAvailable Models:\ngpt-4o - Most capable model\ngpt-4o-mini - Fast and cost-effective\no1 - Advanced reasoning model\ngpt-4-turbo - Previous generation flagship","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"OpenAI","lvl3":""}},
|
|
7008
7008
|
{"objectID":"0c8f98396097547044efc8ecb20220a7f14be5586bbaa0ca9ba7f3e2bc1fffc4","title":"Anthropic","url":"/docs/guides/github-action#anthropic","content":"Environment Variables:\nANTHROPIC_API_KEY - Your Anthropic API key (starts with sk-ant-)\n\nAvailable Models:\nclaude-sonnet-4-20250514 - Best overall performance\nclaude-3-5-haiku - Fast and efficient\nclaude-opus-4-20250514 - Maximum capability\n\nExtended Thinking Support: Anthropic models support extended thinking for deep reasoning tasks.","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Anthropic","lvl3":""}},
|
|
@@ -7064,9 +7064,9 @@
|
|
|
7064
7064
|
{"objectID":"346cc5caded9aa6e897a4e54ade3fc9272366e665ce37cb4af8dfc7b9d4c9cec","title":"Workflow Permissions","url":"/docs/guides/github-action#workflow-permissions","content":"Use minimal permissions in your workflows:","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"Workflow Permissions","lvl3":""}},
|
|
7065
7065
|
{"objectID":"c336381d8c9fc251580c4369411bae528e0c086a9e321ee09f9530de404e1a50","title":"See Also","url":"/docs/guides/github-action#see-also","content":"Provider Selection Guide - Choose the best provider for your use case\nTroubleshooting Guide - Diagnose and resolve issues\nSDK API Reference - Full SDK documentation\nCLI Reference - CLI command documentation\nMCP Server Catalog - Available MCP tools","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"See Also","lvl3":""}},
|
|
7066
7066
|
{"objectID":"610518771a7d035ee7026390e54a9314551b161fc3ae4e94c4c45310566bbe04","title":"License","url":"/docs/guides/github-action#license","content":"MIT - See LICENSE","hierarchy":{"lvl0":"Guides","lvl1":"GitHub Action Guide","lvl2":"License","lvl3":""}},
|
|
7067
|
-
{"objectID":"f480bb93f79e74509c99f1427808ccc90e77e5ca6c5aa13bb80518d1027a2dc0","title":"NeuroLink Guides","url":"/docs/guides","content":"Guides\n\nComprehensive guides for building production-ready AI applications with NeuroLink.\n\n🎯 Essential Guides\n\nCore guides for getting the most out of NeuroLink.\n\n| Guide | Description |\n| ----------------------------------------------------- | ---------------------------------------------------------------------- |\n| Provider Selection Guide | Interactive wizard to choose the best provider for your use case |\n| GitHub Action Guide | Run AI-powered workflows in GitHub Actions with
|
|
7067
|
+
{"objectID":"f480bb93f79e74509c99f1427808ccc90e77e5ca6c5aa13bb80518d1027a2dc0","title":"NeuroLink Guides","url":"/docs/guides","content":"Guides\n\nComprehensive guides for building production-ready AI applications with NeuroLink.\n\n🎯 Essential Guides\n\nCore guides for getting the most out of NeuroLink.\n\n| Guide | Description |\n| ----------------------------------------------------- | ---------------------------------------------------------------------- |\n| Provider Selection Guide | Interactive wizard to choose the best provider for your use case |\n| GitHub Action Guide | Run AI-powered workflows in GitHub Actions with broad provider support |\n| Troubleshooting | Common issues, debugging tips, and solutions for NeuroLink CLI and SDK |\n\n🗄️ Redis & Persistence\n\nGuides for setting up and managing Redis-backed conversation memory.\n\n| Guide | Description |\n| ------------------------------------------------- | ------------------------------------------------------------------------ |\n| Redis Configuration | Production-ready Redis setup with cluster, security, and cloud providers |\n| Redis Migration | Migration patterns for upgrading Redis and moving between environments |\n\nSee also: Redis Quick Start in Getting Started\n\nMigration Guides\n\nMigrate from other AI frameworks to NeuroLink.\n\n| Guide | Description |\n| --------------------------------------------------------- | ------------------------------------------------------------------------------- |\n| From LangChain | Complete migration guide from LangChain with concept mapping and examples |\n| From Vercel AI SDK | Migrate from Vercel AI SDK with Next.js-focused patterns and streaming examples |\n| Migration Guide (Legacy) | General migration guide for older versions |\n\n🏢 Enterprise Guides\n\nProduction-ready patterns for enterprise AI deployments.\n\n| Guide | Description |\n| -------------------------------------------------------------------- | ----------------------------------------------------------- |\n| Multi-Provider Failover | High availability with automatic failover between providers |\n| Load Balancing | Distribute traffic across providers with 6 strategies |\n| Cost Optimization | Reduce AI costs by 80-95% with smart routing |\n| Compliance & Security | GDPR, SOC2, HIPAA compliance patterns |\n| Multi-Region Deployment | Global deployment with geographic routing |\n| Monitoring & Observability | Prometheus, Grafana, CloudWatch integration |\n| Audit Trails | Comprehensive logging for compliance |\n\n🔧 MCP Integration\n\nModel Context Protocol server catalog and integration patterns.\n\n| Guide | Description |\n| ------------------------------------------- | ----------------------------------------------------------- |\n| Server Catalog | 58+ MCP servers for file systems, databases, APIs, and more |\n\nSee also: MCP Tools Showcase for detailed tool documentation\n\nServer Adapters\n\nDeploy NeuroLink as production-ready HTTP APIs.\n\n| Guide | Description |\n| ---------------------------------------------------------- | ------------------------------------------------------------------- |\n| Server Adapters Overview | Quick start guide for exposing AI agents as HTTP APIs |\n| Hono Adapter | Recommended lightweight adapter for serverless and edge deployments |\n| Express Adapter | Integration with existing Express applications |\n| Fastify Adapter | High-performance adapter with built-in schema validation |\n| Koa Adapter | Modern, minimalist adapter with clean middleware composition |\n| Security Guide | Authentication, authorization, and security best practices |\n| Deployment Guide | Production deployment patterns with Docker and Kubernetes |\n\n🎨 Framework Integration\n\nFramework-specific integration guides.\n\n| Framework | Description |\n| ---------------------------------------- | -------------------------------------------------------- |\n| Next.js | App Router, Server Components, Server Actions, Streaming |\n| Express.js | RESTful APIs, middleware, authentication, rate limiting |\n| SvelteKit | SSR, load function","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"","lvl3":""}},
|
|
7068
7068
|
{"objectID":"f3e109277bf2acc158f13d6dfef4acbcd6b631110715c613c4d323725831aef1","title":"Guides","url":"/docs/guides#guides","content":"Comprehensive guides for building production-ready AI applications with NeuroLink.","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"Guides","lvl3":""}},
|
|
7069
|
-
{"objectID":"fbc8bd34303a9275ca9eecff06e7f138de59c648fc469b73ecd7b49b4587a1ad","title":"🎯 Essential Guides","url":"/docs/guides#-essential-guides","content":"Core guides for getting the most out of NeuroLink.\n\n| Guide | Description |\n| ----------------------------------------------------- | ---------------------------------------------------------------------- |\n| Provider Selection Guide | Interactive wizard to choose the best provider for your use case |\n| GitHub Action Guide | Run AI-powered workflows in GitHub Actions with
|
|
7069
|
+
{"objectID":"fbc8bd34303a9275ca9eecff06e7f138de59c648fc469b73ecd7b49b4587a1ad","title":"🎯 Essential Guides","url":"/docs/guides#-essential-guides","content":"Core guides for getting the most out of NeuroLink.\n\n| Guide | Description |\n| ----------------------------------------------------- | ---------------------------------------------------------------------- |\n| Provider Selection Guide | Interactive wizard to choose the best provider for your use case |\n| GitHub Action Guide | Run AI-powered workflows in GitHub Actions with broad provider support |\n| Troubleshooting | Common issues, debugging tips, and solutions for NeuroLink CLI and SDK |","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"🎯 Essential Guides","lvl3":""}},
|
|
7070
7070
|
{"objectID":"9d0bcedfc805ed137c59970dec43fcb50619592f6f5bbd8bc390695263503ef1","title":"🗄️ Redis & Persistence","url":"/docs/guides#-redis-persistence","content":"Guides for setting up and managing Redis-backed conversation memory.\n\n| Guide | Description |\n| ------------------------------------------------- | ------------------------------------------------------------------------ |\n| Redis Configuration | Production-ready Redis setup with cluster, security, and cloud providers |\n| Redis Migration | Migration patterns for upgrading Redis and moving between environments |\n\nSee also: Redis Quick Start in Getting Started","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"🗄️ Redis & Persistence","lvl3":""}},
|
|
7071
7071
|
{"objectID":"3790b1e182a0c8ce047899f589bdf8981d8fb05fe24e296b7036337a7b1a8d4f","title":"Migration Guides","url":"/docs/guides#migration-guides","content":"Migrate from other AI frameworks to NeuroLink.\n\n| Guide | Description |\n| --------------------------------------------------------- | ------------------------------------------------------------------------------- |\n| From LangChain | Complete migration guide from LangChain with concept mapping and examples |\n| From Vercel AI SDK | Migrate from Vercel AI SDK with Next.js-focused patterns and streaming examples |\n| Migration Guide (Legacy) | General migration guide for older versions |","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"Migration Guides","lvl3":""}},
|
|
7072
7072
|
{"objectID":"0fbcbb8693f2289feb889fa823823e20e0b69d7882b5a481064296960949d69d","title":"🏢 Enterprise Guides","url":"/docs/guides#-enterprise-guides","content":"Production-ready patterns for enterprise AI deployments.\n\n| Guide | Description |\n| -------------------------------------------------------------------- | ----------------------------------------------------------- |\n| Multi-Provider Failover | High availability with automatic failover between providers |\n| Load Balancing | Distribute traffic across providers with 6 strategies |\n| Cost Optimization | Reduce AI costs by 80-95% with smart routing |\n| Compliance & Security | GDPR, SOC2, HIPAA compliance patterns |\n| Multi-Region Deployment | Global deployment with geographic routing |\n| Monitoring & Observability | Prometheus, Grafana, CloudWatch integration |\n| Audit Trails | Comprehensive logging for compliance |","hierarchy":{"lvl0":"Guides","lvl1":"NeuroLink Guides","lvl2":"🏢 Enterprise Guides","lvl3":""}},
|
|
@@ -7113,11 +7113,11 @@
|
|
|
7113
7113
|
{"objectID":"4e625e9030f4ea5fefc5b7d84590c608e6ba446d7d4b99f1cb1ba251e7f977bc","title":"Tool Not Available","url":"/docs/guides/mcp/server-catalog#tool-not-available","content":"Problem: AI can't see MCP tools.\n\nSolution:","hierarchy":{"lvl0":"Guides","lvl1":"MCP Server Catalog","lvl2":"Tool Not Available","lvl3":""}},
|
|
7114
7114
|
{"objectID":"6d2d4fa3bbc54b540d933545bf408ed8aedbf14464bcc106ba3aa99ef10b3eeb","title":"Related Documentation","url":"/docs/guides/mcp/server-catalog#related-documentation","content":"MCP Integration Guide - Detailed MCP setup\nCustom Tools - Create and use custom MCP servers\nSecurity - MCP security best practices","hierarchy":{"lvl0":"Guides","lvl1":"MCP Server Catalog","lvl2":"Related Documentation","lvl3":""}},
|
|
7115
7115
|
{"objectID":"16b53f447a7f270153e21177c8452dc74b51e8a2b9ace9b9dfa8aa2fb06c5eae","title":"Additional Resources","url":"/docs/guides/mcp/server-catalog#additional-resources","content":"MCP Specification - Official protocol spec\nMCP GitHub - Source code\nServer Registry - Official servers\nCommunity Servers - Community contributions\n\nNeed Help? Join our GitHub Discussions or open an issue.","hierarchy":{"lvl0":"Guides","lvl1":"MCP Server Catalog","lvl2":"Additional Resources","lvl3":""}},
|
|
7116
|
-
{"objectID":"4e74c1e4ff68211a2a065ab2d47fe95bc680df578aa09601cb90da05a15f41b9","title":"Migrating from LangChain to NeuroLink","url":"/docs/guides/migration/from-langchain","content":"Migrating from LangChain to NeuroLink\n\nWhy Migrate?\n\nNeuroLink offers a simpler, more production-ready alternative to LangChain with these key advantages:\n\n| Benefit | LangChain | NeuroLink |\n| ----------------------- | ------------------------------------------- | -------------------------------------------------- |\n| TypeScript Support | Partial, many type issues | Full native TypeScript, complete type safety |\n| API Complexity | Complex chains, agents, memory abstractions | Single unified generate() API |\n| Provider Support | Requires separate packages |
|
|
7117
|
-
{"objectID":"a48bbe2942ddb17ff0becb164f308f631fa2cb15ff71defc2a8efa2e759601a3","title":"Why Migrate?","url":"/docs/guides/migration/from-langchain#why-migrate","content":"NeuroLink offers a simpler, more production-ready alternative to LangChain with these key advantages:\n\n| Benefit | LangChain | NeuroLink |\n| ----------------------- | ------------------------------------------- | -------------------------------------------------- |\n| TypeScript Support | Partial, many type issues | Full native TypeScript, complete type safety |\n| API Complexity | Complex chains, agents, memory abstractions | Single unified generate() API |\n| Provider Support | Requires separate packages |
|
|
7116
|
+
{"objectID":"4e74c1e4ff68211a2a065ab2d47fe95bc680df578aa09601cb90da05a15f41b9","title":"Migrating from LangChain to NeuroLink","url":"/docs/guides/migration/from-langchain","content":"Migrating from LangChain to NeuroLink\n\nWhy Migrate?\n\nNeuroLink offers a simpler, more production-ready alternative to LangChain with these key advantages:\n\n| Benefit | LangChain | NeuroLink |\n| ----------------------- | ------------------------------------------- | -------------------------------------------------- |\n| TypeScript Support | Partial, many type issues | Full native TypeScript, complete type safety |\n| API Complexity | Complex chains, agents, memory abstractions | Single unified generate() API |\n| Provider Support | Requires separate packages | Supported providers built in, one package |\n| Enterprise Features | Limited | HITL workflows, Redis memory, middleware, failover |\n| MCP Integration | None | Native 58+ MCP servers with zero config |\n| Bundle Size | Large (many dependencies) | Optimized, tree-shakeable |\n| Production Ready | Community-driven | In production use at Juspay |\n\nMigration time: Most applications can migrate in 1-2 hours, with full feature parity and improved capabilities.\n\nConcept Mapping\n\nUnderstanding how LangChain concepts map to NeuroLink:\n\n| LangChain Concept | NeuroLink Equivalent | Notes |\n| ----------------------------------- | --------------------------- | -------------------------------- |\n| ChatOpenAI, ChatAnthropic, etc. | provider parameter | Single unified interface |\n| LLMChain | generate() method | No chain abstraction needed |\n| ConversationChain | conversationMemory config | Built-in conversation tracking |\n| Agent + Tools | MCP Tools | Native tool support, 58+ servers |\n| Memory (BufferMemory, etc.) | conversationMemory | Redis or in-memory |\n| Callbacks | Middleware system | More powerful, composable |\n| VectorStoreRetriever | Custom tools + external MCP | Use MCP for RAG integrations |\n| OutputParser | structuredOutput | Zod schema validation |\n| PromptTemplate | Template literals / utils | Use native JS/TS patterns |\n\nQuick Start Migration\n\nBefore (LangChain)\n\nAfter (NeuroLink)\n\nKey changes:\nSingle import instead of multiple\nUnified generate() method instead of call()\nSimpler message format (no HumanMessage wrapper)\nType-safe result with content property\n\nFeature-by-Feature Migration\nChat Models\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nNo separate packages for each provider\nConsistent API across supported providers\nRuntime provider switching\nAutomatic failover\nChains\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nNo chain abstraction needed\nUse native JavaScript template literals\nMore flexible, easier to debug\nDirect control over prompts\nAgents and Tools\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\n6 core tools work out-of-the-box (no setup)\n58+ MCP servers available\nNo complex agent configuration\nAI automatically chooses tools\nMemory\n\nLangChain:\n\nNeuroLink:\n\nWith Redis (production):\n\nBenefits:\nBuilt-in conversation tracking\nRedis support for distributed systems\nAutomatic context management\nExport conversations to JSON\nCallbacks\n\nLangChain:\n\nNeuroLink:\n\nBuilt-in middleware:\n\nBenefits:\nMore powerful than callbacks\nComposable middleware system\nBuilt-in analytics and auto-evaluation\nRequest and response hooks\n\nCommon Patterns\n\nPattern 1: RAG Applications\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nUse MCP for database/vector integrations\nMore flexible retrieval strategies\nDirect control over context injection\n\nPattern 2: Chatbots\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nRedis support for multi-instance deployments\nAutomatic context windowing\nExport conversations for analytics\nBuilt-in conversation management\n\nPattern 3: Multi-step Workflows\n\nLangChain:\n\nNeuroLink:\n\nWith orchestration:\n\nBenefits:\nExplicit control over workflow\nEasier to debug and test\nCan use conversation memory for context\nMore flexible than rigid chains\n\nStreaming\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nSimpler streaming API\nConsistent streaming API across supported providers\nBuilt-in error handling\n\nStructured Output\n\nLangChain:\n\nNeuroLink:\n\nBenefits:\nBuilt-in Zod schema validation\nType-safe results\nAutomatic JSON parsing\nNo manual parsing needed\n\nGotchas and Differences\nMessage Format\n\nLangChain uses message classes:\n\nNeuroLink uses simple objects:\nError Handling\n\nLangChain: Basic try-catch required for all operations\n\nNeuroLink: Built-in retry, failover, and graceful degradation:\nTool Execution\n\nLangChain: Manual tool registration and execution\n\nNeuroLink: Automatic MCP ","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"","lvl3":""}},
|
|
7117
|
+
{"objectID":"a48bbe2942ddb17ff0becb164f308f631fa2cb15ff71defc2a8efa2e759601a3","title":"Why Migrate?","url":"/docs/guides/migration/from-langchain#why-migrate","content":"NeuroLink offers a simpler, more production-ready alternative to LangChain with these key advantages:\n\n| Benefit | LangChain | NeuroLink |\n| ----------------------- | ------------------------------------------- | -------------------------------------------------- |\n| TypeScript Support | Partial, many type issues | Full native TypeScript, complete type safety |\n| API Complexity | Complex chains, agents, memory abstractions | Single unified generate() API |\n| Provider Support | Requires separate packages | Supported providers built in, one package |\n| Enterprise Features | Limited | HITL workflows, Redis memory, middleware, failover |\n| MCP Integration | None | Native 58+ MCP servers with zero config |\n| Bundle Size | Large (many dependencies) | Optimized, tree-shakeable |\n| Production Ready | Community-driven | In production use at Juspay |\n\nMigration time: Most applications can migrate in 1-2 hours, with full feature parity and improved capabilities.","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Why Migrate?","lvl3":""}},
|
|
7118
7118
|
{"objectID":"577449cc99d461284c8c0b170d17bca277a1c8902b814a0c4c23a0ed7ec0d97a","title":"Concept Mapping","url":"/docs/guides/migration/from-langchain#concept-mapping","content":"Understanding how LangChain concepts map to NeuroLink:\n\n| LangChain Concept | NeuroLink Equivalent | Notes |\n| ----------------------------------- | --------------------------- | -------------------------------- |\n| ChatOpenAI, ChatAnthropic, etc. | provider parameter | Single unified interface |\n| LLMChain | generate() method | No chain abstraction needed |\n| ConversationChain | conversationMemory config | Built-in conversation tracking |\n| Agent + Tools | MCP Tools | Native tool support, 58+ servers |\n| Memory (BufferMemory, etc.) | conversationMemory | Redis or in-memory |\n| Callbacks | Middleware system | More powerful, composable |\n| VectorStoreRetriever | Custom tools + external MCP | Use MCP for RAG integrations |\n| OutputParser | structuredOutput | Zod schema validation |\n| PromptTemplate | Template literals / utils | Use native JS/TS patterns |","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Concept Mapping","lvl3":""}},
|
|
7119
7119
|
{"objectID":"88a2415a8665ffb48e4aa61b4bfe5038b9058d71d57d7dfefdcae9926279ea2d","title":"After (NeuroLink)","url":"/docs/guides/migration/from-langchain#after-neurolink","content":"Key changes:\nSingle import instead of multiple\nUnified generate() method instead of call()\nSimpler message format (no HumanMessage wrapper)\nType-safe result with content property","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"After (NeuroLink)","lvl3":""}},
|
|
7120
|
-
{"objectID":"723e79f38aacc3d160110337cf2c477463d91fc4f7c2d5f2a0bff5184b9196b0","title":"1. Chat Models","url":"/docs/guides/migration/from-langchain#1-chat-models","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nNo separate packages for each provider\nConsistent API across
|
|
7120
|
+
{"objectID":"723e79f38aacc3d160110337cf2c477463d91fc4f7c2d5f2a0bff5184b9196b0","title":"1. Chat Models","url":"/docs/guides/migration/from-langchain#1-chat-models","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nNo separate packages for each provider\nConsistent API across supported providers\nRuntime provider switching\nAutomatic failover","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"1. Chat Models","lvl3":""}},
|
|
7121
7121
|
{"objectID":"87ed2004761c0ac3f520eefcb0d6e3b9f4b3b6e8590a2b7ac77201de056c2d7a","title":"2. Chains","url":"/docs/guides/migration/from-langchain#2-chains","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nNo chain abstraction needed\nUse native JavaScript template literals\nMore flexible, easier to debug\nDirect control over prompts","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"2. Chains","lvl3":""}},
|
|
7122
7122
|
{"objectID":"dc52896ae97fa9f660e3fb62286c58c304440af383736dde467399d1f7adda39","title":"3. Agents and Tools","url":"/docs/guides/migration/from-langchain#3-agents-and-tools","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\n6 core tools work out-of-the-box (no setup)\n58+ MCP servers available\nNo complex agent configuration\nAI automatically chooses tools","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"3. Agents and Tools","lvl3":""}},
|
|
7123
7123
|
{"objectID":"caf9522e06a3e9cb5bc8259e003d905389fb74982b7791849a6b338b28ef9d16","title":"4. Memory","url":"/docs/guides/migration/from-langchain#4-memory","content":"LangChain:\n\nNeuroLink:\n\nWith Redis (production):\n\nBenefits:\nBuilt-in conversation tracking\nRedis support for distributed systems\nAutomatic context management\nExport conversations to JSON","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"4. Memory","lvl3":""}},
|
|
@@ -7125,7 +7125,7 @@
|
|
|
7125
7125
|
{"objectID":"0ba8b00a515703e5a305e59c4599a53284b23bd566124629859c0a424603b20a","title":"Pattern 1: RAG Applications","url":"/docs/guides/migration/from-langchain#pattern-1-rag-applications","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nUse MCP for database/vector integrations\nMore flexible retrieval strategies\nDirect control over context injection","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Pattern 1: RAG Applications","lvl3":""}},
|
|
7126
7126
|
{"objectID":"e7b879ef1d9410960e6b330ffdd930baee5730e693c3850961d4dde1b250dbf5","title":"Pattern 2: Chatbots","url":"/docs/guides/migration/from-langchain#pattern-2-chatbots","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nRedis support for multi-instance deployments\nAutomatic context windowing\nExport conversations for analytics\nBuilt-in conversation management","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Pattern 2: Chatbots","lvl3":""}},
|
|
7127
7127
|
{"objectID":"22f85c21288e70d58eade9cf05ca318566866fd9274d03b7ec30c03f8088a9a8","title":"Pattern 3: Multi-step Workflows","url":"/docs/guides/migration/from-langchain#pattern-3-multi-step-workflows","content":"LangChain:\n\nNeuroLink:\n\nWith orchestration:\n\nBenefits:\nExplicit control over workflow\nEasier to debug and test\nCan use conversation memory for context\nMore flexible than rigid chains","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Pattern 3: Multi-step Workflows","lvl3":""}},
|
|
7128
|
-
{"objectID":"abacb7f2253dd5bac3f0f2e7d62672d56829fecd4136e1c7e5dfcb3663c9ce8c","title":"Streaming","url":"/docs/guides/migration/from-langchain#streaming","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nSimpler streaming API\nConsistent across
|
|
7128
|
+
{"objectID":"abacb7f2253dd5bac3f0f2e7d62672d56829fecd4136e1c7e5dfcb3663c9ce8c","title":"Streaming","url":"/docs/guides/migration/from-langchain#streaming","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nSimpler streaming API\nConsistent streaming API across supported providers\nBuilt-in error handling","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Streaming","lvl3":""}},
|
|
7129
7129
|
{"objectID":"d507a0d919e1df62ec9798f967ca658a6d43852bdb930962876f578c7fcd7dd8","title":"Structured Output","url":"/docs/guides/migration/from-langchain#structured-output","content":"LangChain:\n\nNeuroLink:\n\nBenefits:\nBuilt-in Zod schema validation\nType-safe results\nAutomatic JSON parsing\nNo manual parsing needed","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Structured Output","lvl3":""}},
|
|
7130
7130
|
{"objectID":"b09ffb5075c316b1b6df4ea695a23c0da9050f02bc88df7a807201893f56719a","title":"1. Message Format","url":"/docs/guides/migration/from-langchain#1-message-format","content":"LangChain uses message classes:\n\nNeuroLink uses simple objects:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"1. Message Format","lvl3":""}},
|
|
7131
7131
|
{"objectID":"6000275838e307759e78facdbbfb27aafcf309871c63d3980cab64aedc7d4c2f","title":"2. Error Handling","url":"/docs/guides/migration/from-langchain#2-error-handling","content":"LangChain: Basic try-catch required for all operations\n\nNeuroLink: Built-in retry, failover, and graceful degradation:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"2. Error Handling","lvl3":""}},
|
|
@@ -7142,15 +7142,15 @@
|
|
|
7142
7142
|
{"objectID":"57ae3eeeeebc21be185b544e87e67d83d434547f5bfa002f9527648e8b9ae90b","title":"Performance Comparison","url":"/docs/guides/migration/from-langchain#performance-comparison","content":"Real-world benchmarks (averaged over 1000 requests):\n\n| Metric | LangChain | NeuroLink | Improvement |\n| -------------------------- | --------- | --------- | --------------- |\n| First response time | 850ms | 420ms | 50% faster |\n| Memory usage | 180MB | 85MB | 53% less |\n| Bundle size (minified) | 2.3MB | 890KB | 61% smaller |\n| Type errors (compile time) | Frequent | Rare | Better DX |","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Performance Comparison","lvl3":""}},
|
|
7143
7143
|
{"objectID":"7ffaf72fa4826f16117855d87c69889019034bb89e2bdc084e7d38de3d539294","title":"Getting Help","url":"/docs/guides/migration/from-langchain#getting-help","content":"Documentation: https://neurolink.dev/docs\nExamples: Migration examples repo\nDiscord: Join our community\nGitHub Issues: Report issues","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"Getting Help","lvl3":""}},
|
|
7144
7144
|
{"objectID":"bd252895420dd111dafef549646a4e9b9ebd8639c3b6c75bbc4b88c5ed24744e","title":"See Also","url":"/docs/guides/migration/from-langchain#see-also","content":"NeuroLink Getting Started Guide\nComplete API Reference\nMCP Integration Guide\nEnterprise Features\nProvider Comparison","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from LangChain to NeuroLink","lvl2":"See Also","lvl3":""}},
|
|
7145
|
-
{"objectID":"1e2daa291d57c89396dd26585176a8263cbe2d5b17c0e62552e1c5ba852507ff","title":"Migrating from Vercel AI SDK to NeuroLink","url":"/docs/guides/migration/from-vercel-ai-sdk","content":"Migrating from Vercel AI SDK to NeuroLink\n\nWhy Migrate?\n\nWhile Vercel AI SDK is excellent for Next.js applications, NeuroLink offers broader capabilities for enterprise and multi-framework applications:\n\n| Benefit | Vercel AI SDK | NeuroLink |\n| ----------------------- | ------------------------------ | ---------------------------------------- |\n| Multi-Provider | Separate packages per provider |
|
|
7146
|
-
{"objectID":"1b4c7ad2fe68ede95233d4921cc923211694c7249534efac0b3439b82a924749","title":"Why Migrate?","url":"/docs/guides/migration/from-vercel-ai-sdk#why-migrate","content":"While Vercel AI SDK is excellent for Next.js applications, NeuroLink offers broader capabilities for enterprise and multi-framework applications:\n\n| Benefit | Vercel AI SDK | NeuroLink |\n| ----------------------- | ------------------------------ | ---------------------------------------- |\n| Multi-Provider | Separate packages per provider |
|
|
7145
|
+
{"objectID":"1e2daa291d57c89396dd26585176a8263cbe2d5b17c0e62552e1c5ba852507ff","title":"Migrating from Vercel AI SDK to NeuroLink","url":"/docs/guides/migration/from-vercel-ai-sdk","content":"Migrating from Vercel AI SDK to NeuroLink\n\nWhy Migrate?\n\nWhile Vercel AI SDK is excellent for Next.js applications, NeuroLink offers broader capabilities for enterprise and multi-framework applications:\n\n| Benefit | Vercel AI SDK | NeuroLink |\n| ----------------------- | ------------------------------ | ---------------------------------------- |\n| Multi-Provider | Separate packages per provider | Supported providers in a single package |\n| Framework Support | Optimized for Next.js | Next.js, SvelteKit, Express, any Node.js |\n| Tool Integration | Function calling only | MCP (58+ servers) + function calling |\n| Enterprise Features | Basic | HITL, Redis memory, middleware, failover |\n| Memory/State | useChat hook (client-side) | Redis-backed server-side memory |\n| Production Ready | Good for prototypes | In production use at Juspay |\n| Bundle Size | Moderate | Optimized, tree-shakeable |\n| Streaming | Excellent | Excellent (same quality) |\n\nMigration time: Most Next.js apps can migrate in 2-3 hours with feature parity and enhanced capabilities.\n\nConcept Mapping\n\n| Vercel AI SDK | NeuroLink | Notes |\n| ------------------------------------ | ----------------------- | ------------------------------------- |\n| generateText() | generate() | Similar API, unified across providers |\n| streamText() | stream() | Built-in streaming |\n| useChat() | Custom hook + API route | Server-side memory more robust |\n| CoreMessage | ChatMessage | Type compatible |\n| tool() function | MCP Tools | More powerful, 58+ servers |\n| Provider packages (@ai-sdk/openai) | provider parameter | Single package |\n| generateObject() | generate({ schema }) | Zod schema validation |\n| Edge Runtime | Node.js runtime | Compatible with Edge via adapters |\n\nQuick Start Migration\n\nBefore (Vercel AI SDK)\n\nAfter (NeuroLink)\n\nKey changes:\nSingle import instead of multiple packages\nUnified generate() method\ncontent instead of text property\nProvider specified in config, not per-call\n\nFeature-by-Feature Migration\nText Generation\n\nVercel AI SDK:\n\nNeuroLink:\nStreaming\n\nVercel AI SDK:\n\nNeuroLink:\n\nFull chunk data:\nTool Calling (Function Calling)\n\nVercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nMCP servers provide 58+ pre-built integrations\nNo manual tool registration needed\nTools work with providers that support tool-calling\nStructured Output\n\nVercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nType-safe results\nAutomatic validation\nWorks across providers that support structured output\nMulti-Provider Support\n\nVercel AI SDK:\n\nNeuroLink:\n\nWith automatic failover:\n\nBenefits:\nSingle package for supported providers\nRuntime provider switching\nAutomatic failover\nNo need to install separate packages\n\nNext.js Integration\n\nPattern 1: API Routes\n\nVercel AI SDK:\n\nNeuroLink:\n\nWith better error handling:\n\nPattern 2: Server Components\n\nVercel AI SDK:\n\nNeuroLink:\n\nWith caching:\n\nPattern 3: useChat Alternative\n\nVercel AI SDK:\n\nNeuroLink:\n\nOr create a custom hook:\n\nPattern 4: Server Actions\n\nVercel AI SDK:\n\nNeuroLink:\n\nWith user context:\n\nEdge Runtime Support\n\nVercel AI SDK:\n\nNeuroLink:\n\nRecommendation: NeuroLink works best with Node.js runtime. For Edge Runtime, consider using provider APIs directly or wait for Edge-compatible version.\n\nMultimodal Support\n\nVercel AI SDK:\n\nNeuroLink:\n\nWith file path:\n\nWith PDF:\n\nMigration Checklist\n[ ] Install NeuroLink: npm install @juspay/neurolink\n[ ] Setup Environment: Configure API keys in .env\n[ ] Test Basic Generation: Verify generate() works\n[ ] Migrate API Routes: Update /api routes\n[ ] Migrate Server Components: Update RSC usage\n[ ] Update Client Components: Replace useChat with custom hook\n[ ] Migrate Tool Calling: Convert functions to MCP tools\n[ ] Enable Conversation Memory: Add Redis if needed\n[ ] Update Streaming: Adapt streaming code\n[ ] Test Multi-Provider: Verify provider switching\n[ ] Update Types: Use NeuroLink types\n[ ] Remove Vercel AI SDK: Uninstall after migration\n\nPerformance Comparison\n\n| Metric | Vercel AI SDK | NeuroLink | Notes |\n| ---------------------- | ----------------- | -------------- | ------------------- |\n| Bundle Size (minified) | 890KB | 890KB | Similar |\n| First Response | 420ms | 420ms | Equivalent |\n| Streaming Latency | Excellent | Excellent | Both optimized |\n| Mult","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"","lvl3":""}},
|
|
7146
|
+
{"objectID":"1b4c7ad2fe68ede95233d4921cc923211694c7249534efac0b3439b82a924749","title":"Why Migrate?","url":"/docs/guides/migration/from-vercel-ai-sdk#why-migrate","content":"While Vercel AI SDK is excellent for Next.js applications, NeuroLink offers broader capabilities for enterprise and multi-framework applications:\n\n| Benefit | Vercel AI SDK | NeuroLink |\n| ----------------------- | ------------------------------ | ---------------------------------------- |\n| Multi-Provider | Separate packages per provider | Supported providers in a single package |\n| Framework Support | Optimized for Next.js | Next.js, SvelteKit, Express, any Node.js |\n| Tool Integration | Function calling only | MCP (58+ servers) + function calling |\n| Enterprise Features | Basic | HITL, Redis memory, middleware, failover |\n| Memory/State | useChat hook (client-side) | Redis-backed server-side memory |\n| Production Ready | Good for prototypes | In production use at Juspay |\n| Bundle Size | Moderate | Optimized, tree-shakeable |\n| Streaming | Excellent | Excellent (same quality) |\n\nMigration time: Most Next.js apps can migrate in 2-3 hours with feature parity and enhanced capabilities.","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Why Migrate?","lvl3":""}},
|
|
7147
7147
|
{"objectID":"45ac16cfbfed3ab649edf8f3cb66fffe76dd4446e73582343c4225919915cad6","title":"Concept Mapping","url":"/docs/guides/migration/from-vercel-ai-sdk#concept-mapping","content":"| Vercel AI SDK | NeuroLink | Notes |\n| ------------------------------------ | ----------------------- | ------------------------------------- |\n| generateText() | generate() | Similar API, unified across providers |\n| streamText() | stream() | Built-in streaming |\n| useChat() | Custom hook + API route | Server-side memory more robust |\n| CoreMessage | ChatMessage | Type compatible |\n| tool() function | MCP Tools | More powerful, 58+ servers |\n| Provider packages (@ai-sdk/openai) | provider parameter | Single package |\n| generateObject() | generate({ schema }) | Zod schema validation |\n| Edge Runtime | Node.js runtime | Compatible with Edge via adapters |","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Concept Mapping","lvl3":""}},
|
|
7148
7148
|
{"objectID":"8b57f0b23d734238e9e896bd1af76aa7af594859a81caa1a7ee4fe33eb6dfb18","title":"After (NeuroLink)","url":"/docs/guides/migration/from-vercel-ai-sdk#after-neurolink","content":"Key changes:\nSingle import instead of multiple packages\nUnified generate() method\ncontent instead of text property\nProvider specified in config, not per-call","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"After (NeuroLink)","lvl3":""}},
|
|
7149
7149
|
{"objectID":"cc4b2aefbe72ff0244f0f19b2ea2a45fb107576b1bf0371309837ea5d4b6bd01","title":"1. Text Generation","url":"/docs/guides/migration/from-vercel-ai-sdk#1-text-generation","content":"Vercel AI SDK:\n\nNeuroLink:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"1. Text Generation","lvl3":""}},
|
|
7150
7150
|
{"objectID":"e70e97dcf0c8ada2971bb97b94b7d29147a40ecae922b2d744915bce0a729bb0","title":"2. Streaming","url":"/docs/guides/migration/from-vercel-ai-sdk#2-streaming","content":"Vercel AI SDK:\n\nNeuroLink:\n\nFull chunk data:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"2. Streaming","lvl3":""}},
|
|
7151
|
-
{"objectID":"57daefdaeea031a87618332ba19c5014e187e98826fd0dfc552dbbbf8f0db429","title":"3. Tool Calling (Function Calling)","url":"/docs/guides/migration/from-vercel-ai-sdk#3-tool-calling-function-calling","content":"Vercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nMCP servers provide 58+ pre-built integrations\nNo manual tool registration needed\nTools work
|
|
7152
|
-
{"objectID":"4b0708b0531ad08599a7d18da29be132b5f0ae1ba12c4922c626ddc38b6a2f6e","title":"4. Structured Output","url":"/docs/guides/migration/from-vercel-ai-sdk#4-structured-output","content":"Vercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nType-safe results\nAutomatic validation\nWorks across
|
|
7153
|
-
{"objectID":"c0f99d59f8dee45796176094ef083365256925e85e064365a6360317ce6a7a0c","title":"5. Multi-Provider Support","url":"/docs/guides/migration/from-vercel-ai-sdk#5-multi-provider-support","content":"Vercel AI SDK:\n\nNeuroLink:\n\nWith automatic failover:\n\nBenefits:\nSingle package for
|
|
7151
|
+
{"objectID":"57daefdaeea031a87618332ba19c5014e187e98826fd0dfc552dbbbf8f0db429","title":"3. Tool Calling (Function Calling)","url":"/docs/guides/migration/from-vercel-ai-sdk#3-tool-calling-function-calling","content":"Vercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nMCP servers provide 58+ pre-built integrations\nNo manual tool registration needed\nTools work with providers that support tool-calling","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"3. Tool Calling (Function Calling)","lvl3":""}},
|
|
7152
|
+
{"objectID":"4b0708b0531ad08599a7d18da29be132b5f0ae1ba12c4922c626ddc38b6a2f6e","title":"4. Structured Output","url":"/docs/guides/migration/from-vercel-ai-sdk#4-structured-output","content":"Vercel AI SDK:\n\nNeuroLink:\n\nBenefits:\nType-safe results\nAutomatic validation\nWorks across providers that support structured output","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"4. Structured Output","lvl3":""}},
|
|
7153
|
+
{"objectID":"c0f99d59f8dee45796176094ef083365256925e85e064365a6360317ce6a7a0c","title":"5. Multi-Provider Support","url":"/docs/guides/migration/from-vercel-ai-sdk#5-multi-provider-support","content":"Vercel AI SDK:\n\nNeuroLink:\n\nWith automatic failover:\n\nBenefits:\nSingle package for supported providers\nRuntime provider switching\nAutomatic failover\nNo need to install separate packages","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"5. Multi-Provider Support","lvl3":""}},
|
|
7154
7154
|
{"objectID":"2332537cf5704bfb605a46944d2479d5701e6714c1585ed98f9e40341f570dee","title":"Pattern 1: API Routes","url":"/docs/guides/migration/from-vercel-ai-sdk#pattern-1-api-routes","content":"Vercel AI SDK:\n\nNeuroLink:\n\nWith better error handling:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Pattern 1: API Routes","lvl3":""}},
|
|
7155
7155
|
{"objectID":"2753cc3bc504abb74ae3ea6b888cbe3f1d4a5b7f259ea354e06ce035b9226848","title":"Pattern 2: Server Components","url":"/docs/guides/migration/from-vercel-ai-sdk#pattern-2-server-components","content":"Vercel AI SDK:\n\nNeuroLink:\n\nWith caching:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Pattern 2: Server Components","lvl3":""}},
|
|
7156
7156
|
{"objectID":"f8bc77c1a27cb596cb8d0718fc4938d0579a2b1987b78101be4b6d2e7681ff55","title":"Pattern 3: useChat Alternative","url":"/docs/guides/migration/from-vercel-ai-sdk#pattern-3-usechat-alternative","content":"Vercel AI SDK:\n\nNeuroLink:\n\nOr create a custom hook:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Pattern 3: useChat Alternative","lvl3":""}},
|
|
@@ -7164,10 +7164,10 @@
|
|
|
7164
7164
|
{"objectID":"fd83becf84da6888435c4f08567b0adddd12be63005c62d3a8625a2d8da2d4d4","title":"3. Structured Output","url":"/docs/guides/migration/from-vercel-ai-sdk#3-structured-output","content":"Before:\n\nAfter:","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"3. Structured Output","lvl3":""}},
|
|
7165
7165
|
{"objectID":"521dfdf638bba7c1711fe44698aebd2562f811987346fad2509d5ba4168c69c2","title":"Getting Help","url":"/docs/guides/migration/from-vercel-ai-sdk#getting-help","content":"Documentation: https://neurolink.dev/docs\nMigration Support: GitHub Discussions\nExamples: Next.js Examples\nDiscord: Join community","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"Getting Help","lvl3":""}},
|
|
7166
7166
|
{"objectID":"d2cfeb9f83e2dbf918d31efb6554b7cc2db6edea6c72b2c5e4a24bb991bcbf05","title":"See Also","url":"/docs/guides/migration/from-vercel-ai-sdk#see-also","content":"NeuroLink Getting Started\nNext.js Integration Guide\nAPI Reference\nStreaming Guide\nRedis Configuration\nProvider Comparison","hierarchy":{"lvl0":"Guides","lvl1":"Migrating from Vercel AI SDK to NeuroLink","lvl2":"See Also","lvl3":""}},
|
|
7167
|
-
{"objectID":"536a8d5bedc06cfd1b013b8e97b89e8824816a5a2e37b6477d84816f6a985917","title":"Migration Guides","url":"/docs/guides/migration","content":"Migration Guides\n\nThis section contains guides for migrating to NeuroLink from other AI SDKs and frameworks.\n\nAvailable Migration Guides\nFrom LangChain - Migrate from LangChain to NeuroLink\nFrom Vercel AI SDK - Migrate from Vercel AI SDK to NeuroLink\n\nWhy Migrate to NeuroLink?\n\nNeuroLink offers several advantages over other AI SDKs:\
|
|
7167
|
+
{"objectID":"536a8d5bedc06cfd1b013b8e97b89e8824816a5a2e37b6477d84816f6a985917","title":"Migration Guides","url":"/docs/guides/migration","content":"Migration Guides\n\nThis section contains guides for migrating to NeuroLink from other AI SDKs and frameworks.\n\nAvailable Migration Guides\nFrom LangChain - Migrate from LangChain to NeuroLink\nFrom Vercel AI SDK - Migrate from Vercel AI SDK to NeuroLink\n\nWhy Migrate to NeuroLink?\n\nNeuroLink offers several advantages over other AI SDKs:\nBroad Provider Support - Supported AI providers through a single API\nMCP Integration - Full Model Context Protocol support with 58+ external servers\nEnterprise Ready - Production-tested at scale with Redis memory, failover, and telemetry\nProfessional CLI - Interactive command-line interface for development and testing\nTypeScript First - Full type safety with comprehensive type definitions\n\nGetting Help\n\nIf you encounter issues during migration:\nCheck the Troubleshooting Guide\nReview the API Reference\nJoin our community discussions","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guides","lvl2":"","lvl3":""}},
|
|
7168
7168
|
{"objectID":"38502c9599731d7a721568a8427f541efbc0643e8a97796165cb6d9dde6da1b5","title":"Migration Guides","url":"/docs/guides/migration#migration-guides","content":"This section contains guides for migrating to NeuroLink from other AI SDKs and frameworks.","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guides","lvl2":"Migration Guides","lvl3":""}},
|
|
7169
7169
|
{"objectID":"f9c9dea1509377a27c2f9a5d1b81d433c1e594c1cc69c507253746886953ee77","title":"Available Migration Guides","url":"/docs/guides/migration#available-migration-guides","content":"From LangChain - Migrate from LangChain to NeuroLink\nFrom Vercel AI SDK - Migrate from Vercel AI SDK to NeuroLink","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guides","lvl2":"Available Migration Guides","lvl3":""}},
|
|
7170
|
-
{"objectID":"27a828af4dd86f7e966613d796b583f1412b09eef740530a0e763b1718aab47e","title":"Why Migrate to NeuroLink?","url":"/docs/guides/migration#why-migrate-to-neurolink","content":"NeuroLink offers several advantages over other AI SDKs:\
|
|
7170
|
+
{"objectID":"27a828af4dd86f7e966613d796b583f1412b09eef740530a0e763b1718aab47e","title":"Why Migrate to NeuroLink?","url":"/docs/guides/migration#why-migrate-to-neurolink","content":"NeuroLink offers several advantages over other AI SDKs:\nBroad Provider Support - Supported AI providers through a single API\nMCP Integration - Full Model Context Protocol support with 58+ external servers\nEnterprise Ready - Production-tested at scale with Redis memory, failover, and telemetry\nProfessional CLI - Interactive command-line interface for development and testing\nTypeScript First - Full type safety with comprehensive type definitions","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guides","lvl2":"Why Migrate to NeuroLink?","lvl3":""}},
|
|
7171
7171
|
{"objectID":"11c8b39ce9c4ef40dd1ad9c23ad2da980a70650294d402c63f3fe0584a5991d8","title":"Getting Help","url":"/docs/guides/migration#getting-help","content":"If you encounter issues during migration:\nCheck the Troubleshooting Guide\nReview the API Reference\nJoin our community discussions","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guides","lvl2":"Getting Help","lvl3":""}},
|
|
7172
7172
|
{"objectID":"f1bf388ad531e7bf8a57be09eada81f24782a1c9fee6c74b08750daee692ebb1","title":"Migration Guide","url":"/docs/guides/migration-guide","content":"Migration Guide\n\nUse this guide when upgrading existing NeuroLink deployments to the latest release. The focus is on new capabilities (multimodal chat, auto evaluation, loop mode, orchestration) and the configuration changes required to adopt them safely.\n\nCompatibility Summary\n\n| Area | Status |\n| ------------- | -------------------------------------------------------------------------------------- |\n| Core SDK APIs | ✅ Backward compatible. generate() and stream() signatures are unchanged. |\n| CLI commands | ✅ Existing scripts continue to work. New options are opt-in. |\n| Configuration | ⚠️ New environment variables for evaluation and regional routing. Review .env files. |\n| Tooling | ✅ MCP, analytics, and telemetry remain compatible. |\n\nRecommended Upgrade Steps\nUpdate dependencies\nRefresh CLI binaries\nReview new environment variables\nAdd NEUROLINK_EVALUATION_PROVIDER, NEUROLINK_EVALUATION_MODEL, and NEUROLINK_EVALUATION_THRESHOLD if you enable the auto-evaluation engine.\nEnsure AWS_REGION / GOOGLE_VERTEX_LOCATION are set when targeting specific regions.\nProvide REDIS_URL if you want loop sessions to auto-mount persistent memory.\nAdopt multimodal support\nCLI: use --image (multiple allowed) with generate or stream.\nSDK: pass input.images (string path, HTTPS URL, or Buffer).\nUpdate downstream parsing to handle result.toolCalls on multimodal calls.\nLeverage auto evaluation (optional)\nCLI: add --enableEvaluation to commands or set it once inside neurolink loop (set enableEvaluation true).\nSDK: include enableEvaluation: true per request.\nCapture result.evaluation in logs or dashboards.\nIntroduce loop sessions to teams\nDocument the new loop workflow, especially how to set provider, set model, and export transcripts.\nConfigure Redis for persistent memory where collaboration spans multiple terminals.\nEnable orchestration (server workloads)\nInstantiate new NeuroLink({ enableOrchestration: true }) for services that benefit from automatic provider routing.\nMonitor debug logs (NEUROLINK_DEBUG=true) in staging before enabling in production.\n\nBehaviour Changes to Note\nEvaluation output – GenerateResult now includes toolCalls, toolResults, and richer analytics. Update any custom serializers accordingly.\nLoop session variables – The new session state respects set/unset commands. Scripts that previously relied on global env variables should be adjusted to set session variables explicitly.\nRedis auto-detect – Starting a loop with --auto-redis sets STORAGE_TYPE=redis automatically. Ensure Redis credentials are valid; otherwise disable with --no-auto-redis.\nRegional routing – Requests that include region now forward directly to the provider. Validate quota and model availability per region to avoid 404s.\n\nTesting Checklist\nRun npx @juspay/neurolink status --verbose after upgrading credentials.\nExecute a multimodal CLI call (generate --image) to confirm file uploads succeed.\nRun a sample with --enableEvaluation --format json and verify the evaluation block is emitted.\nStress-test loop mode with Redis by running memory stats and memory history.\nIf orchestration is enabled, tail logs for Orchestration route determined messages and confirm provider availability.\n\nRollback Plan\nKeep the previous CLI binary (npm install -g @juspay/neurolink@<old-version>) handy.\nMaintain separate .env files for pre- and post-upgrade configurations.\nDisable orchestration and evaluation env vars if you encounter regressions; core generation continues to work without them.\n\nFor additional support open an issue on GitHub or reach out via the Juspay developer channels.","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guide","lvl2":"","lvl3":""}},
|
|
7173
7173
|
{"objectID":"c7dc551305b16d451780208538f9e8324bc003ee01438a3e04c3c7e75124f06b","title":"Migration Guide","url":"/docs/guides/migration-guide#migration-guide","content":"Use this guide when upgrading existing NeuroLink deployments to the latest release. The focus is on new capabilities (multimodal chat, auto evaluation, loop mode, orchestration) and the configuration changes required to adopt them safely.","hierarchy":{"lvl0":"Guides","lvl1":"Migration Guide","lvl2":"Migration Guide","lvl3":""}},
|
|
@@ -7883,7 +7883,7 @@
|
|
|
7883
7883
|
{"objectID":"eab1054b46ac95b776cdc6f442a35f85748f4658d409941418c58bcdf27dac1b","title":"Run the full RAG suite (canonical entry point)","url":"/docs/implementation-guides/14-rag-document-processing#run-the-full-rag-suite-canonical-entry-point","content":"pnpm run test:rag","hierarchy":{"lvl0":"Implementation Guides","lvl1":"RAG Document Processing - Implementation Guide","lvl2":"Run the full RAG suite (canonical entry point)","lvl3":""}},
|
|
7884
7884
|
{"objectID":"1dfcdd7f939eaf1c928080629de1e038fd9baee40a31fad65557d587a7a80d66","title":"Run the suite directly with tsx if you want extra logging","url":"/docs/implementation-guides/14-rag-document-processing#run-the-suite-directly-with-tsx-if-you-want-extra-logging","content":"pnpm exec tsx test/continuous-test-suite-rag.ts\n\n\n> NeuroLink runs all suites via tsx; there is no vitest runner. RAG-specific scenarios (chunkers, rerankers, metadata) are exercised by continuous-test-suite-rag.ts`.","hierarchy":{"lvl0":"Implementation Guides","lvl1":"RAG Document Processing - Implementation Guide","lvl2":"Run the suite directly with tsx if you want extra logging","lvl3":""}},
|
|
7885
7885
|
{"objectID":"95f574ed3e7979eee5be188ccd16efb2639e30e8258e55366d7ccd344bbc3126","title":"Related Documentation","url":"/docs/implementation-guides/14-rag-document-processing#related-documentation","content":"Vector Store Integrations\nEvaluation and Scoring\nMaster Implementation Guide","hierarchy":{"lvl0":"Implementation Guides","lvl1":"RAG Document Processing - Implementation Guide","lvl2":"Related Documentation","lvl3":""}},
|
|
7886
|
-
{"objectID":"60877eba17c1fe5c9fda2100a737f42fddb5c4c7083297e61a66884dbe5c326e","title":"NeuroLink","url":"/docs/","content":"🧠 NeuroLink\n The Pipe Layer of an AI Nervous System\n Provider Neurons
|
|
7886
|
+
{"objectID":"60877eba17c1fe5c9fda2100a737f42fddb5c4c7083297e61a66884dbe5c326e","title":"NeuroLink","url":"/docs/","content":"🧠 NeuroLink\n The Pipe Layer of an AI Nervous System\n Provider Neurons Across Major AI Vendors | 3 Inference Types (generate · stream · decide) | Voice (TTS/STT/Realtime) | 58+ MCP Tools | HITL Security | Redis Persistence\n\nNeuroLink is the pipe layer of an AI nervous system: one interface connecting provider neurons — major AI vendors and local runtimes — to the applications that consume them. Built-in tooling and an opinionated factory architecture mean adding a new provider, or a new capability, never touches application code. NeuroLink ships as both a TypeScript SDK and a professional CLI so teams can build, operate, and iterate on AI features quickly.\n\n🧠 What is NeuroLink?\n\nNeuroLink is the pipe layer of an AI nervous system. Providers — OpenAI, Anthropic, Google, AWS, Azure, DeepSeek, NVIDIA NIM, local runtimes like Ollama and llama.cpp, and dozens more — are the neurons: each generates a different kind of intelligence, at a different cost and latency. NeuroLink is the vascular layer that carries that intelligence, as a stream, to the applications that consume it, across three inference types: generate and stream produce text, decide produces a calibrated boolean/choice/score judgment instead.\n\nExtracted from production systems at Juspay, NeuroLink provides a practical, TypeScript-first way to plug any application into that nervous system. Switch which neuron answers a request with a single parameter change — any provider you're building with, or any provider you add.\n\nWhy NeuroLink? Three genuine inference types, not one dressed up three ways — generate and stream produce text, while decide returns a typed, calibrated judgment (boolean / choice / score) with no text at all, for the routing and gating decisions the other two were never meant to make. Every neuron plugs into the same pipe. Switch providers with a single parameter change, leverage 64+ built-in tools and MCP servers, deploy with confidence using enterprise features like Redis memory and multi-provider failover, and optimize costs automatically with intelligent routing. Use it via our professional CLI or TypeScript SDK—whichever fits your workflow.\n\nWhere we're headed: We're building for the future of AI—edge-first execution and continuous streaming architectures that make AI practically free and universally available. Read our vision →\n\nGet Started in \\ Observability Guide\nServer Adapters -- Deploy NeuroLink as an HTTP API server with your framework of choice (Hono, Express, Fastify, Koa). Full CLI support with serve and server commands for foreground/background modes, route management, and OpenAPI generation. -> Server Adapters Guide\nTitle Generation Events -- Emit real-time events when conversation titles are auto-generated. Listen to conversation:titleGenerated for session tracking. -> Conversation Memory Guide\nCustom Title Prompts -- Customize conversation title generation with NEUROLINK_TITLE_PROMPT environment variable. Use ${userMessage} placeholder for dynamic prompts. -> Conversation Memory Guide\nVideo Generation -- Transform images into 8-second videos with synchronized audio using Google Veo 3.1 via Vertex AI. Supports 720p/1080p resolutions, portrait/landscape aspect ratios. -> Video Generation Guide\nImage Generation -- Generate images from text prompts using Gemini models via Vertex AI or Google AI Studio. Supports streaming mode with automatic file saving. -> Image Generation Guide\nHTTP/Streamable HTTP Transport for MCP -- Connect to remote MCP servers via HTTP with authentication headers, retry logic, and rate limiting. -> HTTP Transport Guide\nClaude Subscription (OAuth) Support -- Use your Claude Pro/Max/Team subscription with NeuroLink via OAuth authentication, no API key required. -> Subscription Guide\nGemini 3 Preview Support - Full support for gemini-3-flash-preview and gemini-3-pro-preview with extended thinking capabilities\nStructured Output with Zod Schemas -- Type-safe JSON generation with automatic validation using schema + output.format: \"json\" in generate(). -> Structured Output Guide\nCSV File Support -- Attach CSV files to prompts for AI-powered data analysis with auto-detection. -> CSV Guide\nPDF File Support -- Process PDF documents with native visual analysis for Vertex AI, Anthropic, Bedrock, AI Studio. -> PDF Guide\n50+ File Types -- Process Excel, Word, RTF, JSON, YAML, XML, HTML, SVG, Markdown, and 50+ code languages with intelligent content extraction. -> File Processors Guide\nLiteLLM Integration -- Access 100+ AI models across a broad range of AI providers through unified interface. -> Setup Guide\nSageMaker Integration -- Deploy and use custom trained models on AWS infrastructure. -> Setup Guide\nOpenRouter Integration -- Access 300+ models from OpenAI, Anthropic, Google, Meta, and more through a single unified API. -> Setup Guide\nHuman-in-the-loop workflows -- Pause generation for user approval/input before tool execution. -> HITL Guide\nGuardrails middleware -- Block PII, profanity, and unsafe conten","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"","lvl3":""}},
|
|
7887
7887
|
{"objectID":"7bd402837d03dbfbb9586674bc914cfc6ee7691e33540eeabe6555363697375e","title":"🧠 What is NeuroLink?","url":"/docs/#-what-is-neurolink","content":"NeuroLink is the pipe layer of an AI nervous system. Providers — OpenAI, Anthropic, Google, AWS, Azure, DeepSeek, NVIDIA NIM, local runtimes like Ollama and llama.cpp, and dozens more — are the neurons: each generates a different kind of intelligence, at a different cost and latency. NeuroLink is the vascular layer that carries that intelligence, as a stream, to the applications that consume it, across three inference types: generate and stream produce text, decide produces a calibrated boolean/choice/score judgment instead.\n\nExtracted from production systems at Juspay, NeuroLink provides a practical, TypeScript-first way to plug any application into that nervous system. Switch which neuron answers a request with a single parameter change — any provider you're building with, or any provider you add.\n\nWhy NeuroLink? Three genuine inference types, not one dressed up three ways — generate and stream produce text, while decide returns a typed, calibrated judgment (boolean / choice / score) with no text at all, for the routing and gating decisions the other two were never meant to make. Every neuron plugs into the same pipe. Switch providers with a single parameter change, leverage 64+ built-in tools and MCP servers, deploy with confidence using enterprise features like Redis memory and multi-provider failover, and optimize costs automatically with intelligent routing. Use it via our professional CLI or TypeScript SDK—whichever fits your workflow.\n\nWhere we're headed: We're building for the future of AI—edge-first execution and continuous streaming architectures that make AI practically free and universally available. Read our vision →\n\nGet Started in \\<5 Minutes →","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🧠 What is NeuroLink?","lvl3":""}},
|
|
7888
7888
|
{"objectID":"293082e7b04b9b0eb186f10fec40eefc1996d8eab9becff9e2b428731642291f","title":"What's New (Q1 2026)","url":"/docs/#whats-new-q1-2026","content":"| Feature | Version | Description | Guide |\n| ---------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| decide Inference Type | next | A third inference type alongside generate/stream: typed, calibrated boolean/choice/score judgments in one parallel pass, ~400ms and ~$0.00002 per decision. First provider is TypeSafe Jev; Laya, an open-weights model you run yourself, is the second. Fail-open — a no-op without a key. | Decide Guide \\| TypeSafe Provider \\| Laya Provider |\n| MCP Enhancements | v9.16.0 | Advanced MCP features: intelligent tool routing, result caching, request batching, tool annotations, elicitation protocol, custom server creation, multi-server management | MCP Enhancements Guide |\n| Co","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"What's New (Q1 2026)","lvl3":""}},
|
|
7889
7889
|
{"objectID":"3e5ecc512d348470d92717ef33a2ff5067ffdd99c7ea212613df7986db133390","title":"Enterprise Security: Human-in-the-Loop (HITL)","url":"/docs/#enterprise-security-human-in-the-loop-hitl","content":"NeuroLink includes a HITL (Human-in-the-Loop) system for regulated industries and high-stakes AI operations:\n\n| Capability | Description | Use Case |\n| --------------------------- | ----------------------------------------------------------------------- | ------------------------------------------ |\n| Tool Approval Workflows | Require human approval before AI executes sensitive tools | Financial transactions, data modifications |\n| Output Validation | Route AI outputs through human review pipelines | Medical diagnosis, legal documents |\n| Confidence Thresholds | Automatically trigger human review below confidence level | Critical business decisions |\n| Complete Audit Trail | Audit logging to support your compliance program (HIPAA / SOC 2 / GDPR) | Regulated industries |\n\nEnterprise HITL Guide | Quick Start","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Enterprise Security: Human-in-the-Loop (HITL)","lvl3":""}},
|
|
@@ -7891,10 +7891,10 @@
|
|
|
7891
7891
|
{"objectID":"e9e7167316a23ea5fd5db23894b2e52405ba61f5ab57cc986d155490dd325674","title":"1. Run the interactive setup wizard (select providers, validate keys)","url":"/docs/#1-run-the-interactive-setup-wizard-select-providers-validate-keys","content":"pnpm dlx @juspay/neurolink setup","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"1. Run the interactive setup wizard (select providers, validate keys)","lvl3":""}},
|
|
7892
7892
|
{"objectID":"fc68ecabb9ba07088de748df52379e582eb59a0c7e3956e4ae9019b83c21bc9f","title":"2. Start generating with automatic provider selection","url":"/docs/#2-start-generating-with-automatic-provider-selection","content":"npx @juspay/neurolink generate \"Write a launch plan for multimodal chat\"\n\n\nNeed a persistent workspace? Launch loop mode with npx @juspay/neurolink loop` - Learn more →","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"2. Start generating with automatic provider selection","lvl3":""}},
|
|
7893
7893
|
{"objectID":"702d5549ff7c6e9c8c73c19ac80cf9a9d60fac944bb499da15362a04c94ada20","title":"🌟 Complete Feature Set","url":"/docs/#-complete-feature-set","content":"NeuroLink is a comprehensive AI development platform. Every feature below is available today and fully documented.","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🌟 Complete Feature Set","lvl3":""}},
|
|
7894
|
-
{"objectID":"b454f2f78f04166cabaf3949bb32f9c49fac691c6c9bd01d3868bae867545a93","title":"🤖 AI Provider Integration","url":"/docs/#-ai-provider-integration","content":"
|
|
7895
|
-
{"objectID":"403ffa1491c3f257a1a101286bb5bd23df516e8971a37b450fab64b1e1b9471f","title":"🔧 Built-in Tools & MCP Integration","url":"/docs/#-built-in-tools-mcp-integration","content":"6 Core Tools (work across
|
|
7894
|
+
{"objectID":"b454f2f78f04166cabaf3949bb32f9c49fac691c6c9bd01d3868bae867545a93","title":"🤖 AI Provider Integration","url":"/docs/#-ai-provider-integration","content":"Provider neurons behind one API - Switch providers with a single parameter change.\n\n| Provider | Models | Free Tier | Tool Support | Status | Documentation |\n| --------------------- | -------------------------------------------------- | --------------- | ------------ | ------------- | ------------------------------------------------------------------------------------------------------------------- |\n| OpenAI | GPT-4o, GPT-4o-mini, o1 | ❌ | ✅ Full | ✅ Production | Setup Guide |\n| Anthropic | Claude 4.5 Opus/Sonnet/Haiku, Claude 4 Opus/Sonnet | ❌ | ✅ Full | ✅ Production | Setup Guide \\| Subscription Guide |\n| Google AI Studio | Gemini 3 Flash/Pro, Gemini 2.5 Flash/Pro | ✅ Free Tier | ✅ Full | ✅ Production | Setup Guide |\n| AWS Bedrock | Claude, Titan, Llama, Nova | ❌ | ✅ Full | ✅ Production | Setup Guide |\n| Google Vertex | Gemini 3/2.5 (gemini-3-\\*-preview) | ❌ | ✅ Full | ✅ Production | Setup Guide |\n| Azure OpenAI | GPT-4, GPT-4o, o1 | ❌ | ✅ Full | ✅ Production | Setup Guide |\n| LiteLLM | 100+ models unified | Varies | ✅ Full | ✅ Production | Setup Guide |\n| AWS SageMaker | Custom deployed models | ❌ ","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🤖 AI Provider Integration","lvl3":""}},
|
|
7895
|
+
{"objectID":"403ffa1491c3f257a1a101286bb5bd23df516e8971a37b450fab64b1e1b9471f","title":"🔧 Built-in Tools & MCP Integration","url":"/docs/#-built-in-tools-mcp-integration","content":"6 Core Tools (work across supported providers, zero configuration):\n\n| Tool | Purpose | Auto-Available | Documentation |\n| -------------------- | ------------------------ | ----------------------- | ------------------------------------- |\n| getCurrentTime | Real-time clock access | ✅ | Tool Reference |\n| readFile | File system reading | ✅ | Tool Reference |\n| writeFile | File system writing | ✅ | Tool Reference |\n| listDirectory | Directory listing | ✅ | Tool Reference |\n| calculateMath | Mathematical operations | ✅ | Tool Reference |\n| websearchGrounding | Google Vertex web search | ⚠️ Requires credentials | Tool Reference |\n\n58+ External MCP Servers supported (GitHub, PostgreSQL, Google Drive, Slack, and more):\n\nMCP Transport Options:\n\n| Transport | Use Case | Key Features |\n| ----------- | -------------- | ----------------------------------------------- |\n| stdio | Local servers | Command execution, environment variables |\n| http | Remote servers | URL-based, auth headers, retries, rate limiting |\n| sse | Event streams | Server-Sent Events, real-time updates |\n| websocket | Bi-directional | Full-duplex communication |\n\n📖 MCP Integration Guide - Setup external servers\n📖 HTTP Transport Guide - Remote MCP server configuration","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🔧 Built-in Tools & MCP Integration","lvl3":""}},
|
|
7896
7896
|
{"objectID":"c0de06d7a7c9beb962feb0931b65681b73ec5b9b4a922a75bf6f802b672de15c","title":"💻 Developer Experience Features","url":"/docs/#-developer-experience-features","content":"SDK-First Design with TypeScript, IntelliSense, and type safety:\n\n| Feature | Description | Documentation |\n| --------------------------- | ------------------------------------------------------------- | ---------------------------------------------------- |\n| Auto Provider Selection | Intelligent provider fallback | SDK Guide |\n| Streaming Responses | Real-time token streaming | Streaming Guide |\n| Conversation Memory | Automatic context management | Memory Guide |\n| Full Type Safety | Complete TypeScript types | Type Reference |\n| Error Handling | Graceful provider fallback | Error Guide |\n| Analytics & Evaluation | Usage tracking, quality scores | Analytics Guide |\n| Middleware System | Request/response hooks | Middleware Guide |\n| Framework Integration | Next.js, SvelteKit, Express | Framework Guides |\n| Extended Thinking | Native thinking/reasoning mode for Gemini 3 and Claude models | Thinking Guide |","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"💻 Developer Experience Features","lvl3":""}},
|
|
7897
|
-
{"objectID":"8dc8b0f07288ba8db03f6299c13406894fb88ad896b9c0a8b48506aa81053dea","title":"📁 Multimodal & File Processing","url":"/docs/#-multimodal-file-processing","content":"17 file processors across 6 categories (50+ total file types including code languages) with intelligent content extraction and provider-agnostic processing:\n\n| Category | Supported Types | Processing |\n| ------------- | ---------------------------------------------------------- | ----------------------------------- |\n| Documents | Excel (.xlsx, .xls), Word (.docx), RTF, OpenDocument | Sheet extraction, text extraction |\n| Data | JSON, YAML, XML | Validation, syntax highlighting |\n| Markup | HTML, SVG, Markdown, Text | OWASP-compliant sanitization |\n| Code | 50+ languages (TypeScript, Python, Java, Go, etc.) | Language detection, syntax metadata |\n| Config | .env, .ini, .toml, .cfg | Secure parsing |\n| Media | Images (PNG, JPEG, WebP, GIF), PDFs, CSV | Provider-specific formatting |\n\nKey Features:\nProcessorRegistry - Priority-based processor selection with fallback\nOWASP Security - HTML/SVG sanitization prevents XSS attacks\nAuto-detection - FileDetector identifies file types by extension and content\nProvider-agnostic -
|
|
7897
|
+
{"objectID":"8dc8b0f07288ba8db03f6299c13406894fb88ad896b9c0a8b48506aa81053dea","title":"📁 Multimodal & File Processing","url":"/docs/#-multimodal-file-processing","content":"17 file processors across 6 categories (50+ total file types including code languages) with intelligent content extraction and provider-agnostic processing:\n\n| Category | Supported Types | Processing |\n| ------------- | ---------------------------------------------------------- | ----------------------------------- |\n| Documents | Excel (.xlsx, .xls), Word (.docx), RTF, OpenDocument | Sheet extraction, text extraction |\n| Data | JSON, YAML, XML | Validation, syntax highlighting |\n| Markup | HTML, SVG, Markdown, Text | OWASP-compliant sanitization |\n| Code | 50+ languages (TypeScript, Python, Java, Go, etc.) | Language detection, syntax metadata |\n| Config | .env, .ini, .toml, .cfg | Secure parsing |\n| Media | Images (PNG, JPEG, WebP, GIF), PDFs, CSV | Provider-specific formatting |\n\nKey Features:\nProcessorRegistry - Priority-based processor selection with fallback\nOWASP Security - HTML/SVG sanitization prevents XSS attacks\nAuto-detection - FileDetector identifies file types by extension and content\nProvider-agnostic - Processors work across supported AI providers\n\n📖 File Processors Guide - Complete reference for all file types","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"📁 Multimodal & File Processing","lvl3":""}},
|
|
7898
7898
|
{"objectID":"9b491669ce96592057921c3c15201c9bc9dc018da856557f8be4c32707a708e2","title":"🏢 Enterprise & Production Features","url":"/docs/#-enterprise-production-features","content":"Capabilities for regulated industries:\n\n| Feature | Description | Use Case | Documentation |\n| --------------------------- | ---------------------------------- | ------------------------- | ------------------------------------------------------ |\n| Enterprise Proxy | Corporate proxy support | Behind firewalls | Proxy Setup |\n| Redis Memory | Distributed conversation state | Multi-instance deployment | Redis Guide |\n| Cost Optimization | Automatic cheapest model selection | Budget control | Cost Guide |\n| Multi-Provider Failover | Automatic provider switching | High availability | Failover Guide |\n| Telemetry & Monitoring | OpenTelemetry integration | Observability | Telemetry Guide |\n| Security Hardening | Credential management, auditing | Compliance | Security Guide |\n| Custom Model Hosting | SageMaker integration | Private models | SageMaker Guide |\n| Load Balancing | LiteLLM proxy integration | Scale & routing | Load Balancing |\n\nSecurity & Compliance:\n✅ Deployable within SOC 2 Type II environments — NeuroLink itself is not audited or certified\n✅ Deployable on ISO 27001-certified infrastructure — that certification is your infrastructure's, not NeuroLink's\n✅ GDPR-conscious data handling (EU-region providers selectable; you own compliance)\n✅ Deployable in HIPAA-aligned configurations — you are responsible for a compliant setup\n✅ Hardened OS verified (SELinux, AppArmor)\n✅ Zero credential logging\n✅ Encrypted configuration storage\n✅ Automatic context window management with 5-stage compaction pipeline and 80% budget gate\n\n📖 Enterprise Deployment Guide - Complete production checklist","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🏢 Enterprise & Production Features","lvl3":""}},
|
|
7899
7899
|
{"objectID":"a2676fcb7f4199cd59d9eaebaecf9380331ef47488ba76a8ad4d75c93149b5e2","title":"Enterprise Persistence: Redis Memory","url":"/docs/#enterprise-persistence-redis-memory","content":"Distributed conversation state for multi-instance deployments:","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Enterprise Persistence: Redis Memory","lvl3":""}},
|
|
7900
7900
|
{"objectID":"1c9a87da62dcfb96e53a612aa674d8978a705cf1b54e33e2cacd68b4a3dd2368","title":"Capabilities","url":"/docs/#capabilities","content":"| Feature | Description | Benefit |\n| ---------------------- | -------------------------------------------- | --------------------------- |\n| Distributed Memory | Share conversation context across instances | Horizontal scaling |\n| Session Export | Export full history as JSON | Analytics, debugging, audit |\n| Auto-Detection | Automatic Redis discovery from environment | Zero-config in containers |\n| Graceful Failover | Falls back to in-memory if Redis unavailable | High availability |\n| TTL Management | Configurable session expiration | Memory management |","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Capabilities","lvl3":""}},
|
|
@@ -7902,7 +7902,7 @@
|
|
|
7902
7902
|
{"objectID":"694afd6df2beb3ccc7d1976aba4bb04a7229ebcdfa8a7f6065c7169fc63c41ed","title":"Start Redis","url":"/docs/#start-redis","content":"docker run -d --name neurolink-redis -p 6379:6379 redis:7-alpine","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Start Redis","lvl3":""}},
|
|
7903
7903
|
{"objectID":"b789a8a40c12952da1963878a2ae86a1cf852979dbc69f150f6ea2d7e857dc48","title":"Start your application","url":"/docs/#start-your-application","content":"node your-app.js\n`\n\nRedis Setup Guide | Production Configuration | Migration Patterns","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Start your application","lvl3":""}},
|
|
7904
7904
|
{"objectID":"e4e3ab976cdfbbe812dac2c3996bf20b2122fe84e030f579da93be3cbcf60c0e","title":"🎨 Professional CLI","url":"/docs/#-professional-cli","content":"34 commands for every workflow:\n\n| Command | Purpose | Example | Documentation |\n| ---------------- | ------------------------------------ | -------------------------- | ------------------------------------------- |\n| setup | Interactive provider configuration | neurolink setup | Setup Guide |\n| generate | Text generation | neurolink gen \"Hello\" | Generate |\n| stream | Streaming generation | neurolink stream \"Story\" | Stream |\n| status | Provider health check | neurolink status | Status |\n| loop | Interactive session | neurolink loop | Loop |\n| mcp | MCP server management | neurolink mcp discover | MCP CLI |\n| models | Model listing | neurolink models | Models |\n| eval | Model evaluation | neurolink eval | Eval |\n| serve | Start HTTP server in foreground mode | neurolink serve | Serve |\n| server start | Start HTTP server in background mode | neurolink server start | Server |\n| server stop | Stop running background server | neurolink server stop | Server |\n| server status | Show server status information | neurolink server status | Server |\n| server routes | List all registered API routes | neurolink server routes | Server |\n| server config | View or modify server configuration | neurolink server config | Server |\n| server openapi | Generate OpenAPI specification | neurolink server openapi | Server |\n\n📖 Complete CLI Reference - All commands and options","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🎨 Professional CLI","lvl3":""}},
|
|
7905
|
-
{"objectID":"6eb25add47b9dd15d97f24cc81c458dfad37d279b768fd4e7ed245839e2decfb","title":"🤖 GitHub Action","url":"/docs/#-github-action","content":"Run AI-powered workflows directly in GitHub Actions with
|
|
7905
|
+
{"objectID":"6eb25add47b9dd15d97f24cc81c458dfad37d279b768fd4e7ed245839e2decfb","title":"🤖 GitHub Action","url":"/docs/#-github-action","content":"Run AI-powered workflows directly in GitHub Actions with broad provider support and automatic PR/issue commenting.\n\n| Feature | Description |\n| ---------------------- | ----------------------------------------------------------------------------------------- |\n| Multi-Provider | Broad provider support behind one unified interface |\n| PR/Issue Comments | Auto-post AI responses with intelligent updates |\n| Multimodal Support | Attach images, PDFs, CSVs, Excel, Word, JSON, YAML, XML, HTML, SVG, code files to prompts |\n| Cost Tracking | Built-in analytics and quality evaluation |\n| Extended Thinking | Deep reasoning with thinking tokens |\n\n📖 GitHub Action Guide - Complete setup and examples","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"🤖 GitHub Action","lvl3":""}},
|
|
7906
7906
|
{"objectID":"82a443d203359b993d4da3826ade9a6be82571886cc2f1fd078d818f7530de00","title":"💰 Smart Model Selection","url":"/docs/#-smart-model-selection","content":"NeuroLink features intelligent model selection and cost optimization:","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"💰 Smart Model Selection","lvl3":""}},
|
|
7907
7907
|
{"objectID":"3f3a4ea8ad75c57bf1ec1a2803c22e72342f31375789a151242fcacb7988b853","title":"Cost Optimization Features","url":"/docs/#cost-optimization-features","content":"💰 Automatic Cost Optimization: Selects cheapest models for simple tasks\n🔄 LiteLLM Model Routing: Access 100+ models with automatic load balancing\n🔍 Capability-Based Selection: Find models with specific features (vision, function calling)\n⚡ Intelligent Fallback: Seamless switching when providers fail\n\n`bash","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Cost Optimization Features","lvl3":""}},
|
|
7908
7908
|
{"objectID":"6a4da16491cb4c39d6eaaa646b0dfa1eacc321ffe1197c69ee35d6a95e81265e","title":"Cost optimization - automatically use cheapest model","url":"/docs/#cost-optimization---automatically-use-cheapest-model","content":"npx @juspay/neurolink generate \"Hello\" --optimize-cost","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Cost optimization - automatically use cheapest model","lvl3":""}},
|
|
@@ -7916,7 +7916,7 @@
|
|
|
7916
7916
|
{"objectID":"29dbd46694d5379f7cdbcceb48d71151fd5fa01dec91ef1a7652f4b1ac140f7e","title":"Route to a specific provider/model","url":"/docs/#route-to-a-specific-providermodel","content":"npx @juspay/neurolink generate \"Summarize customer feedback\" \\\n --provider azure --model gpt-4o-mini","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Route to a specific provider/model","lvl3":""}},
|
|
7917
7917
|
{"objectID":"1877c786a07e75144e81d15ac53ec7df5916b4a7a47d9a4d474a142ca192d0a1","title":"Turn on analytics + evaluation for observability","url":"/docs/#turn-on-analytics-evaluation-for-observability","content":"npx @juspay/neurolink generate \"Draft release notes\" \\\n --enable-analytics --enable-evaluation --format json\ntypescript\n\nconst neurolink = new NeuroLink({\n conversationMemory: {\n enabled: true,\n store: \"redis\",\n },\n enableOrchestration: true,\n});\n\nconst result = await neurolink.generate({\n input: {\n text: \"Create a comprehensive analysis\",\n files: [\n \"./sales_data.csv\", // Auto-detected as CSV\n \"examples/data/invoice.pdf\", // Auto-detected as PDF\n \"./diagrams/architecture.png\", // Auto-detected as image\n \"./report.xlsx\", // Auto-detected as Excel\n \"./config.json\", // Auto-detected as JSON\n \"./diagram.svg\", // Auto-detected as SVG (injected as text)\n \"./app.ts\", // Auto-detected as TypeScript code\n ],\n },\n provider: \"vertex\", // PDF-capable provider (see docs/features/pdf-support.md)\n enableEvaluation: true,\n region: \"us-east-1\",\n});\n\nconsole.log(result.content);\nconsole.log(result.evaluation?.overallScore);\n`","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Turn on analytics + evaluation for observability","lvl3":""}},
|
|
7918
7918
|
{"objectID":"465ec37baf54875e8b6f7bec89b234a5948559d268bb7da7fcbc1e28df42c2c5","title":"Gemini 3 with Extended Thinking","url":"/docs/#gemini-3-with-extended-thinking","content":"Full command and API breakdown lives in docs/cli/commands.md and docs/sdk/api-reference.md.","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Gemini 3 with Extended Thinking","lvl3":""}},
|
|
7919
|
-
{"objectID":"0b3ca8dabd93fb623251b649545083d11aa9108455c2700fe048c279660cd911","title":"Platform Capabilities at a Glance","url":"/docs/#platform-capabilities-at-a-glance","content":"| Capability | Highlights
|
|
7919
|
+
{"objectID":"0b3ca8dabd93fb623251b649545083d11aa9108455c2700fe048c279660cd911","title":"Platform Capabilities at a Glance","url":"/docs/#platform-capabilities-at-a-glance","content":"| Capability | Highlights |\n| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------- |\n| Provider unification | Provider neurons behind one API, with automatic fallback, cost-aware routing, providerFallback policy, modelChain config. |\n| Multimodal pipeline | Stream images + CSV data + PDF documents across providers with local/remote assets. Auto-detection for mixed file types. |\n| Voice pipeline | TTS (6 providers) + STT (4 providers) + realtime APIs (OpenAI Realtime, Gemini Live). |\n| Quality & governance | Auto-evaluation engine (14 scorers), guardrails middleware, HITL workflows, audit logging. |\n| Memory & context | Per-user condensed memory (S3/Redis/SQLite), Redis session export, 5-stage context compaction. |\n| CLI tooling | Loop sessions, setup wizard, config validation, Redis auto-detect, JSON output, TTS/STT flags. |\n| Enterprise ops | Claude proxy, OTLP observability, OpenObserve dashboard, regional routing, credential management. |\n| Tool ecosystem | MCP auto discovery, HTTP/stdio/SSE/WebSocket transports, LiteLLM hub access, SageMaker custom deployment, web search. |","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Platform Capabilities at a Glance","lvl3":""}},
|
|
7920
7920
|
{"objectID":"a52c3e036c1ddd2b2c5b6e086b7c5b9228edfddd931b194c450c65a7a60cb4da","title":"Documentation Map","url":"/docs/#documentation-map","content":"| Area | When to Use | Link |\n| --------------- | ----------------------------------------------------- | ----------------------------------------------------------- |\n| Getting started | Install, configure, run first prompt | docs/getting-started/index.md |\n| Feature guides | Understand new functionality front-to-back | docs/features/index.md |\n| CLI reference | Command syntax, flags, loop sessions | docs/cli/index.md |\n| SDK reference | Classes, methods, options | docs/sdk/index.md |\n| Integrations | LiteLLM, SageMaker, MCP | docs/litellm-integration.md |\n| Advanced | Middleware, architecture, streaming patterns | docs/advanced/index.md |\n| Cookbook | Practical recipes for common patterns | docs/cookbook/index.md |\n| Guides | Migration, Redis, troubleshooting, provider selection | docs/guides/index.md |\n| Operations | Configuration, troubleshooting, provider matrix | docs/reference/index.md |","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Documentation Map","lvl3":""}},
|
|
7921
7921
|
{"objectID":"8c1712021aa9be2eb9e7c0377096e6260c5cacd3b493cb81ba4fb71e3e91338e","title":"New in 2026: Enhanced Documentation","url":"/docs/#new-in-2026-enhanced-documentation","content":"Enterprise Features:\nEnterprise HITL Guide - Approval workflows for high-stakes operations\nInteractive CLI Guide - AI development environment\nMCP Tools Showcase - 58+ external tools & 6 built-in tools\n\nProvider Intelligence:\nProvider Capabilities Audit - Technical capabilities matrix\nProvider Selection Guide - Interactive decision wizard\nProvider Comparison - Feature & cost comparison\n\nMiddleware System:\nMiddleware Architecture - Complete lifecycle & patterns\nBuilt-in Middleware - Analytics, Guardrails, Evaluation\nCustom Middleware Guide - Build your own\n\nRedis & Persistence:\nRedis Quick Start - 5-minute setup\nRedis Configuration - Production deployment setup\nRedis Migration - Migration patterns\n\nMigration Guides:\nFrom LangChain - Complete migration guide\nFrom Vercel AI SDK - Next.js focused\n\nDeveloper Experience:\nCookbook - 15 practical recipes\nTroubleshooting Guide - Common issues & solutions","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"New in 2026: Enhanced Documentation","lvl3":""}},
|
|
7922
7922
|
{"objectID":"a66e51aab3feeb7357e7656b91e242e80a6d8ec7927328ffd2ad7e258c6b8008","title":"Integrations","url":"/docs/#integrations","content":"LiteLLM 100+ model hub – Unified access to third-party models via LiteLLM routing. → docs/litellm-integration.md\nAmazon SageMaker – Deploy and call custom endpoints directly from NeuroLink CLI/SDK. → docs/sagemaker-integration.md\nEnterprise proxy & security – Configure outbound policies and compliance posture. → docs/enterprise-proxy-setup.md\nConfiguration automation – Manage environments, regions, and credentials safely. → docs/configuration-management.md\nMCP tool ecosystem – Auto-discover Model Context Protocol tools and extend workflows. → docs/advanced/mcp-integration.md\nRemote MCP via HTTP – Connect to HTTP-based MCP servers with authentication, retries, and rate limiting. → docs/mcp-http-transport.md","hierarchy":{"lvl0":"Docs","lvl1":"NeuroLink","lvl2":"Integrations","lvl3":""}},
|
|
@@ -9095,8 +9095,8 @@
|
|
|
9095
9095
|
{"objectID":"61a3976ba8f1c5eeed456f7af64d3274a0fd5bf8ee77fe201de27295f5b403cb","title":"8. Documentation Verification","url":"/docs/rag/VERIFICATION#8-documentation-verification","content":"| Document | Exists | Accurate | Complete | Status |\n| ---------------- | ------ | -------- | -------- | ------ |\n| TESTING.md | [ ] | [ ] | [ ] | [ ] |\n| CONFIGURATION.md | [ ] | [ ] | [ ] | [ ] |\n| VERIFICATION.md | [ ] | [ ] | [ ] | [ ] |\n| CLI-COVERAGE.md | [ ] | [ ] | [ ] | [ ] |","hierarchy":{"lvl0":"Rag","lvl1":"RAG Processing - Manual Verification Checklist","lvl2":"8. Documentation Verification","lvl3":""}},
|
|
9096
9096
|
{"objectID":"83f7357fa2d3b81496d704bba2ae12343314f32e2ccec6dae2248e63867cddca","title":"Sign-off","url":"/docs/rag/VERIFICATION#sign-off","content":"| Role | Name | Date | Signature |\n| --------- | ---- | ---- | --------- |\n| Developer | | | |\n| QA | | | |\n| Tech Lead | | | |","hierarchy":{"lvl0":"Rag","lvl1":"RAG Processing - Manual Verification Checklist","lvl2":"Sign-off","lvl3":""}},
|
|
9097
9097
|
{"objectID":"574e58b2065b4cf4518e5cbf15dfd86d2bea4091d742c3eeb19a4f89f28fbfc5","title":"Notes","url":"/docs/rag/VERIFICATION#notes","content":"Add any observations, issues, or recommendations here:","hierarchy":{"lvl0":"Rag","lvl1":"RAG Processing - Manual Verification Checklist","lvl2":"Notes","lvl3":""}},
|
|
9098
|
-
{"objectID":"9b3ba67e38b636436e6b2f378b85e8b14b45f30f68b91afe7597703a50c9d82a","title":"Analytics Reference","url":"/docs/reference/analytics","content":"Analytics Reference\n\nNeuroLink provides comprehensive analytics capabilities for tracking token usage, costs, performance metrics, and quality evaluation across
|
|
9099
|
-
{"objectID":"0926aba6cc673644c3648445ea2da40fb83fabeb6f365c4e889c094c3560fb9d","title":"Analytics Reference","url":"/docs/reference/analytics#analytics-reference","content":"NeuroLink provides comprehensive analytics capabilities for tracking token usage, costs, performance metrics, and quality evaluation across
|
|
9098
|
+
{"objectID":"9b3ba67e38b636436e6b2f378b85e8b14b45f30f68b91afe7597703a50c9d82a","title":"Analytics Reference","url":"/docs/reference/analytics","content":"Analytics Reference\n\nNeuroLink provides comprehensive analytics capabilities for tracking token usage, costs, performance metrics, and quality evaluation across your configured AI provider interactions.\n\nOverview\n\nThe analytics system in NeuroLink consists of several interconnected components:\n\n| Component | Purpose |\n| -------------------------- | --------------------------------------------------------------- |\n| Token Usage Tracking | Monitor input/output tokens, cache tokens, and reasoning tokens |\n| Cost Analytics | Estimate and track costs across providers and models |\n| Performance Metrics | Measure response times, throughput, and memory usage |\n| Quality Evaluation | Assess response relevance, accuracy, and completeness |\n| Middleware Integration | Automatic analytics collection via middleware |\n\nToken Usage Tracking\n\nBasic Token Usage\n\nNeuroLink automatically tracks token usage for every generation:\n\nTokenUsage Type\n\nThe TokenUsage type provides detailed token information:\n\nCache Token Tracking\n\nFor providers that support prompt caching (Anthropic, Google), NeuroLink tracks cache metrics:\n\nReasoning Token Tracking\n\nFor models with extended thinking capabilities (OpenAI o1, Anthropic Claude with thinking, Gemini 3):\n\nCost Analytics\n\nAutomatic Cost Estimation\n\nNeuroLink automatically estimates costs based on provider pricing:\n\nCost Calculation Formula\n\nCosts are calculated using per-token pricing:\n\nProvider Pricing Configuration\n\nNeuroLink uses configurable pricing for each provider:\n\n| Provider | Default Input Cost (per 1K) | Default Output Cost (per 1K) |\n| ------------- | --------------------------- | ---------------------------- |\n| OpenAI | $0.00015 | $0.0006 |\n| Anthropic | $0.0015 | $0.0075 |\n| Google AI | $0.000075 | $0.0003 |\n| Google Vertex | $0.000075 | $0.0003 |\n| Bedrock | $0.0015 | $0.0075 |\n| Azure | $0.00015 | $0.0006 |\n| Mistral | $0.0001 | $0.0003 |\n| HuggingFace | $0.0002 | $0.0008 |\n| Ollama | $0 | $0 |\n\nCustom Cost Configuration\n\nOverride default pricing via environment variables:\n\nAggregating Costs\n\nTrack cumulative costs across multiple requests:\n\nPerformance Metrics\n\nResponse Time Tracking\n\nEvery request automatically tracks response time:\n\nAnalyticsData Structure\n\nThe complete analytics data structure:\n\nPerformance Metrics Type\n\nFor advanced performance tracking:\n\nStream Performance Metrics\n\nFor streaming requests, additional metrics are available:\n\nStreaming Example\n\nQuality Evaluation\n\nEnabling Evaluation\n\nNeuroLink can automatically evaluate response quality:\n\nEvaluationData Structure\n\nDomain-Aware Evaluation\n\nConfigure evaluation for specific domains:\n\nEvaluation Providers\n\nEvaluation can use different providers:\n\nAnalytics Middleware\n\nUsing Analytics Middleware\n\nNeuroLink provides built-in analytics middleware:\n\nMiddleware Metadata\n\nThe analytics middleware provides:\n\nCustom Analytics Collection\n\nImplement custom analytics collection:\n\nAnalytics Utilities\n\nFormatting Utilities\n\nValidation Utilities\n\nIntegration with Observability Tools\n\nOpenTelemetry Integration\n\nExport analytics to OpenTelemetry:\n\nPrometheus Metrics\n\nExport metrics to Prometheus:\n\nDataDog Integration\n\nSend analytics to DataDog:\n\nCustom Logging\n\nStructured logging with analytics:\n\nUsage Statistics\n\nTracking Usage Over Time\n\nBuild usage dashboards with aggregated statistics:\n\nRate Limiting Based on Usage\n\nImplement rate limiting using analytics:\n\nCLI Analytics\n\nViewing Analytics in CLI\n\nVerbose Analytics\n\nBest Practices\nAlways Enable Analytics in Production\nMonitor Cost Alerts\nTrack Token Efficiency\nImplement Budget Controls\n\nRelated Documentation\nConfiguration Reference - Configure analytics settings\nProvider Comparison - Compare provider costs\nTroubleshooting - Debug analytics issues\nError Codes - Analytics-related error codes","hierarchy":{"lvl0":"Reference","lvl1":"Analytics Reference","lvl2":"","lvl3":""}},
|
|
9099
|
+
{"objectID":"0926aba6cc673644c3648445ea2da40fb83fabeb6f365c4e889c094c3560fb9d","title":"Analytics Reference","url":"/docs/reference/analytics#analytics-reference","content":"NeuroLink provides comprehensive analytics capabilities for tracking token usage, costs, performance metrics, and quality evaluation across your configured AI provider interactions.","hierarchy":{"lvl0":"Reference","lvl1":"Analytics Reference","lvl2":"Analytics Reference","lvl3":""}},
|
|
9100
9100
|
{"objectID":"2405c488fbebcf4cfe8245a94e5fe3eb106a312cde6bd795c0b2710362507e6f","title":"Overview","url":"/docs/reference/analytics#overview","content":"The analytics system in NeuroLink consists of several interconnected components:\n\n| Component | Purpose |\n| -------------------------- | --------------------------------------------------------------- |\n| Token Usage Tracking | Monitor input/output tokens, cache tokens, and reasoning tokens |\n| Cost Analytics | Estimate and track costs across providers and models |\n| Performance Metrics | Measure response times, throughput, and memory usage |\n| Quality Evaluation | Assess response relevance, accuracy, and completeness |\n| Middleware Integration | Automatic analytics collection via middleware |","hierarchy":{"lvl0":"Reference","lvl1":"Analytics Reference","lvl2":"Overview","lvl3":""}},
|
|
9101
9101
|
{"objectID":"4de3db21ab73ce27bed5f620bc7d11d61e84931962cde34efcd084c976a22c99","title":"Basic Token Usage","url":"/docs/reference/analytics#basic-token-usage","content":"NeuroLink automatically tracks token usage for every generation:","hierarchy":{"lvl0":"Reference","lvl1":"Analytics Reference","lvl2":"Basic Token Usage","lvl3":""}},
|
|
9102
9102
|
{"objectID":"d302c2db932a3c1f2cd6ef8a1567009be278c1867fff07ecf773e9f3ff58f85f","title":"TokenUsage Type","url":"/docs/reference/analytics#tokenusage-type","content":"The TokenUsage type provides detailed token information:","hierarchy":{"lvl0":"Reference","lvl1":"Analytics Reference","lvl2":"TokenUsage Type","lvl3":""}},
|
|
@@ -9294,8 +9294,8 @@
|
|
|
9294
9294
|
{"objectID":"f705cae26765f2bdb94a4dc49e67d394278cc85069e644d650664fde0da7f72f","title":"General Guidelines","url":"/docs/reference/provider-behavior#general-guidelines","content":"Provider Rotation: Use multiple providers for resilience\nImplementation guide: API Reference\nInput Validation: Validate inputs for provider compatibility\nSee provider-specific sections above for validation patterns\nError Handling: Implement graceful fallbacks\nFollow Streaming Guide patterns\nPerformance Monitoring: Track provider metrics\nSetup: API Reference\nCost Management: Monitor token usage across providers\nTools: CLI Guide\nTesting Strategy: Use provider-appropriate test cases\nReference Testing Recommendations above","hierarchy":{"lvl0":"Reference","lvl1":"Provider Behavior Guide","lvl2":"General Guidelines","lvl3":""}},
|
|
9295
9295
|
{"objectID":"7c1bdfe928229df8f4d6d3375d8594e82e0e617e9bbe28603b42a79ab3bd42ec","title":"Performance Optimization","url":"/docs/reference/provider-behavior#performance-optimization","content":"Caching: Implement response caching for repeated requests\nBatch Processing: Use batch operations where supported\nProvider Selection: Choose optimal providers per use case\nInput Optimization: Format inputs for best provider performance","hierarchy":{"lvl0":"Reference","lvl1":"Provider Behavior Guide","lvl2":"Performance Optimization","lvl3":""}},
|
|
9296
9296
|
{"objectID":"1afce612558be9b133b9de7bde88177bb2dc76472b7d658c0b91a64bcc8219af","title":"See Also","url":"/docs/reference/provider-behavior#see-also","content":"API Reference - Complete API documentation and configuration\nCLI Guide - Command-line interface and provider testing\nFactory Pattern Migration - Advanced factory pattern usage\nStreaming Guide - Streaming functionality and error handling\nMain Documentation - Getting started guide and overview\n\nThis guide is maintained as part of the NeuroLink provider ecosystem. For updates or provider-specific issues, please refer to the individual provider documentation or submit an issue in the project repository.","hierarchy":{"lvl0":"Reference","lvl1":"Provider Behavior Guide","lvl2":"See Also","lvl3":""}},
|
|
9297
|
-
{"objectID":"b53c0f743f426caf768be3e0994ad8a094a9abcf2c2643f69440b32cbf0a4daa","title":"Provider Capabilities Audit","url":"/docs/reference/provider-capabilities-audit","content":"Provider Capabilities Audit\n\nCapability audit for the 13 text/multimodal AI providers historically tracked in this matrix. NeuroLink ships
|
|
9298
|
-
{"objectID":"6111cbb24bb4b7856293e429071c5c9836d1bfdbd2fcdb7d156d6cfe4fec1ba0","title":"Provider Capabilities Audit","url":"/docs/reference/provider-capabilities-audit#provider-capabilities-audit","content":"Capability audit for the 13 text/multimodal AI providers historically tracked in this matrix. NeuroLink ships
|
|
9297
|
+
{"objectID":"b53c0f743f426caf768be3e0994ad8a094a9abcf2c2643f69440b32cbf0a4daa","title":"Provider Capabilities Audit","url":"/docs/reference/provider-capabilities-audit","content":"Provider Capabilities Audit\n\nCapability audit for the 13 text/multimodal AI providers historically tracked in this matrix. NeuroLink ships many provider integrations — the additional providers added since this audit was first written (DeepSeek, NVIDIA NIM, LM Studio, llama.cpp, xAI, Groq, Cerebras, SambaNova, Together AI, Fireworks, Perplexity, Cloudflare, Cohere, TypeSafe Jev, and more), the voice providers (OpenAI TTS, ElevenLabs, Deepgram, Azure Speech, Whisper, OpenAI Realtime, Gemini Live), and the embedding/media-only providers are documented in the per-provider docs under /docs/getting-started/providers/ and the Voice Features index, not in this capability matrix.\n\nFor the canonical product surface, see the README.\n\nLast Updated: May 2026\nNeuroLink Version: 9.62.0\n\nCapability Matrix\n\n| Provider | Text Gen | Streaming | Tools | Vision | PDF | Thinking | Structured Output | Auth Required |\n| ----------------- | -------- | --------- | ----- | ------ | --- | -------- | ----------------- | ------------------ |\n| OpenAI | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | API Key |\n| Anthropic | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | API Key |\n| Google AI Studio | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ⚠️ | API Key |\n| Google Vertex | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ⚠️ | Service Account |\n| Amazon Bedrock | ✓ | ✓ | ✓ | ⚠️ | ✓ | ✗ | ✓ | AWS Credentials |\n| Amazon SageMaker | ✓ | ⚠️ | ✓ | ✗ | ✗ | ✗ | ✗ | AWS Credentials |\n| Azure OpenAI | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | API Key + Endpoint |\n| Mistral | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | API Key |\n| HuggingFace | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✗ | ✗ | API Key |\n| LiteLLM | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | Custom |\n| Ollama | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✗ | None |\n| OpenAI Compatible | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | Custom |\n| OpenRouter | ✓ | ✓ | ⚠️ | ⚠️ | ✗ | ✗ | ✓ | API Key |\n\nLegend:\n✓ Full Support\n⚠️ Partial/Model-Dependent Support\n✗ Not Supported\nOpenAI Provider\n\nFile: src/lib/providers/openAI.ts\nProvider Name: openai\nDefault Model: gpt-4o\n\nCapabilities\n\nText Generation ✓\nFull support for all GPT models\nSupports temperature, maxTokens, top_p parameters\nMulti-turn conversations\n\nStreaming ✓\nReal-time token streaming via Server-Sent Events (SSE)\nChunk-by-chunk response delivery\nFull analytics support\n\nTool Calling ✓\nNative function calling support\nAutomatic tool execution\nMulti-step tool workflows\nTool choice: auto, required, none\n\nVision/Multimodal ✓\n\nSupported Models:\nGPT-5.2 series (gpt-5.2, gpt-5.2-pro) - Latest flagship\nGPT-5 series (gpt-5, gpt-5-pro, gpt-5-mini, gpt-5-nano)\nGPT-4.1 series (gpt-4.1, gpt-4.1-mini, gpt-4.1-nano)\nO-series reasoning models (o3, o3-mini, o3-pro, o4, o4-mini)\nGPT-4o, GPT-4o-mini, GPT-4-turbo, GPT-4-vision-preview\n\nImage Support:\nUp to 10 images per request\nFormats: PNG, JPEG, WEBP, GIF\nBase64 and URL input\n\nPDF Processing ✗\nNot natively supported\nRequires external preprocessing\n\nExtended Thinking ✗\nStandard reasoning only\nNo extended thinking capability\n\nStructured Output ✓\nJSON schema validation\nType-safe responses via Zod\nResponse format enforcement\n\nConfiguration\n\nKnown Limitations\nPDF files require preprocessing to text/images\nNo native extended thinking mode\nRate limits apply per API key tier\nContext window varies by model (128K for GPT-4o)\nAnthropic Provider\n\nFile: src/lib/providers/anthropic.ts\nProvider Name: anthropic\nDefault Model: claude-sonnet-4-5-20250929\n\nCapabilities\n\nText Generation ✓\nAll Claude models (3.x, 4.x, 4.5)\nAdvanced reasoning capabilities\nLong context support (200K tokens)\n\nStreaming ✓\nReal-time streaming with SSE\nTool execution during streaming\nAnalytics tracking\n\nTool Calling ✓\nNative tool use support\nMulti-step agentic workflows\nTool result caching\nParallel tool execution\n\nVision/Multimodal ✓\n\nSupported Models:\nClaude 4.5 series (Sonnet, Opus, Haiku)\nClaude 4.1 and 4.0 series\nClaude 3.7 series\nClaude 3.5 series\nClaude 3 series (Opus, Sonnet, Haiku)\n\nImage Support:\nUp to 20 images per request\nFormats: PNG, JPEG, WEBP, GIF\nBase64 encoding required\n\nPDF Processing ✓\nNative PDF document understanding\nNo preprocessing required\nExtract text, tables, and structure\nVisual analysis of PDF pages\n\nExtended Thinking ✓\n\nSupported Models:\nClaude 4.5 Sonnet (latest)\nClaude 4.5 Opu","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"","lvl3":""}},
|
|
9298
|
+
{"objectID":"6111cbb24bb4b7856293e429071c5c9836d1bfdbd2fcdb7d156d6cfe4fec1ba0","title":"Provider Capabilities Audit","url":"/docs/reference/provider-capabilities-audit#provider-capabilities-audit","content":"Capability audit for the 13 text/multimodal AI providers historically tracked in this matrix. NeuroLink ships many provider integrations — the additional providers added since this audit was first written (DeepSeek, NVIDIA NIM, LM Studio, llama.cpp, xAI, Groq, Cerebras, SambaNova, Together AI, Fireworks, Perplexity, Cloudflare, Cohere, TypeSafe Jev, and more), the voice providers (OpenAI TTS, ElevenLabs, Deepgram, Azure Speech, Whisper, OpenAI Realtime, Gemini Live), and the embedding/media-only providers are documented in the per-provider docs under /docs/getting-started/providers/ and the Voice Features index, not in this capability matrix.\n\nFor the canonical product surface, see the README.\n\nLast Updated: May 2026\nNeuroLink Version: 9.62.0","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Provider Capabilities Audit","lvl3":""}},
|
|
9299
9299
|
{"objectID":"f159e66270db61eafa05392a306861fec8f7a2e0444a35eac61d7f69fb4bdaa0","title":"Capability Matrix","url":"/docs/reference/provider-capabilities-audit#capability-matrix","content":"| Provider | Text Gen | Streaming | Tools | Vision | PDF | Thinking | Structured Output | Auth Required |\n| ----------------- | -------- | --------- | ----- | ------ | --- | -------- | ----------------- | ------------------ |\n| OpenAI | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | API Key |\n| Anthropic | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | API Key |\n| Google AI Studio | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ⚠️ | API Key |\n| Google Vertex | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ⚠️ | Service Account |\n| Amazon Bedrock | ✓ | ✓ | ✓ | ⚠️ | ✓ | ✗ | ✓ | AWS Credentials |\n| Amazon SageMaker | ✓ | ⚠️ | ✓ | ✗ | ✗ | ✗ | ✗ | AWS Credentials |\n| Azure OpenAI | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | API Key + Endpoint |\n| Mistral | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | API Key |\n| HuggingFace | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✗ | ✗ | API Key |\n| LiteLLM | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | Custom |\n| Ollama | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✗ | None |\n| OpenAI Compatible | ✓ | ✓ | ✓ | ⚠️ | ✗ | ✗ | ✓ | Custom |\n| OpenRouter | ✓ | ✓ | ⚠️ | ⚠️ | ✗ | ✗ | ✓ | API Key |\n\nLegend:\n✓ Full Support\n⚠️ Partial/Model-Dependent Support\n✗ Not Supported","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Capability Matrix","lvl3":""}},
|
|
9300
9300
|
{"objectID":"0b07a322aabded7f495c4fc4bbb73234eacdb4329509db76d40791302afe96ae","title":"1. OpenAI Provider","url":"/docs/reference/provider-capabilities-audit#1-openai-provider","content":"File: src/lib/providers/openAI.ts\nProvider Name: openai\nDefault Model: gpt-4o","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"1. OpenAI Provider","lvl3":""}},
|
|
9301
9301
|
{"objectID":"d40476ea729258da73cf30b5f05f91a086a3f437f87e8920f8afc5968bdb82c0","title":"Text Generation ✓","url":"/docs/reference/provider-capabilities-audit#text-generation-","content":"Full support for all GPT models\nSupports temperature, maxTokens, top_p parameters\nMulti-turn conversations","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Text Generation ✓","lvl3":""}},
|
|
@@ -9409,7 +9409,7 @@
|
|
|
9409
9409
|
{"objectID":"57edd72dc0b0fb65b68b5e57456ff39c3594044e057a0c9f400d56e3f00f2ecd","title":"Optional","url":"/docs/reference/provider-capabilities-audit#optional-8","content":"HUGGINGFACE_MODEL=meta-llama/Llama-3.1-8B-Instruct\n`","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Optional","lvl3":""}},
|
|
9410
9410
|
{"objectID":"00e9fdfa28b58332a57920b583b79130bc1bb44eb8aed5b7cfaaab9f4cada7e1","title":"Known Limitations","url":"/docs/reference/provider-capabilities-audit#known-limitations-8","content":"Tool calling only on specific models\nNo vision/multimodal support\nNo PDF processing\nModel quality varies significantly\nSome models require approval/licensing","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Known Limitations","lvl3":""}},
|
|
9411
9411
|
{"objectID":"04d2e2c20a3389f61b4c17b9343a8be54da444d4498d209da9a80712d01fdfd6","title":"10. LiteLLM Provider","url":"/docs/reference/provider-capabilities-audit#10-litellm-provider","content":"File: src/lib/providers/litellm.ts\nProvider Name: litellm\nDefault Model: openai/gpt-4o-mini","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"10. LiteLLM Provider","lvl3":""}},
|
|
9412
|
-
{"objectID":"15786417ffa8dedd19c6b2d04075e0d8b79b20e4dd18b72809197941b48eaad4","title":"Text Generation ✓","url":"/docs/reference/provider-capabilities-audit#text-generation--9","content":"Access to 100+ models via proxy\nUnified interface
|
|
9412
|
+
{"objectID":"15786417ffa8dedd19c6b2d04075e0d8b79b20e4dd18b72809197941b48eaad4","title":"Text Generation ✓","url":"/docs/reference/provider-capabilities-audit#text-generation--9","content":"Access to 100+ models via proxy\nUnified interface across supported providers\nCost tracking and analytics","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Text Generation ✓","lvl3":""}},
|
|
9413
9413
|
{"objectID":"8d3815bc05b5debe37477d87b7366812bc28771f327a3321cc8f11b7d736f47d","title":"Streaming ✓","url":"/docs/reference/provider-capabilities-audit#streaming--9","content":"Real-time streaming\nProxies to underlying provider streams","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Streaming ✓","lvl3":""}},
|
|
9414
9414
|
{"objectID":"e6e7c85d9213ced11351038c56bdbdc39eed388e0fe7939aef76394d2ca24ac7","title":"Tool Calling ✓","url":"/docs/reference/provider-capabilities-audit#tool-calling--9","content":"Full tool support\nDepends on backend model capabilities","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Tool Calling ✓","lvl3":""}},
|
|
9415
9415
|
{"objectID":"126c9e59cea53d252bd1708c42134ee49378fef56708389e27f92378085e62b6","title":"Vision/Multimodal ⚠️","url":"/docs/reference/provider-capabilities-audit#visionmultimodal--9","content":"Depends on backend model\nIf proxying to GPT-4o: Vision supported\nIf proxying to Gemini: Vision supported\nVaries by configured model","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Vision/Multimodal ⚠️","lvl3":""}},
|
|
@@ -9462,7 +9462,7 @@
|
|
|
9462
9462
|
{"objectID":"b56c347380ced6e279ad9d196fdfdba993f4a7f15e85683e4624a121e58f8817","title":"Best for Cost Optimization","url":"/docs/reference/provider-capabilities-audit#best-for-cost-optimization","content":"Google AI Studio - Free tier available\nOpenRouter - Access to free models\nLiteLLM - Cost tracking, routing","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Best for Cost Optimization","lvl3":""}},
|
|
9463
9463
|
{"objectID":"c1f7447cca016bbda5fea1bb0caabfbeb8e6b24a35c56e02320ec0709b5a1f35","title":"Best for Extended Thinking","url":"/docs/reference/provider-capabilities-audit#best-for-extended-thinking","content":"Anthropic - Native extended thinking\nGoogle AI Studio - Gemini 2.5+, 3.0 thinking\nGoogle Vertex - Same as AI Studio","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Best for Extended Thinking","lvl3":""}},
|
|
9464
9464
|
{"objectID":"7efbbc06ad947faa35d1cf608b3b70c4d06fca56d30350b1603d0d5987307c95","title":"Authentication Quick Reference","url":"/docs/reference/provider-capabilities-audit#authentication-quick-reference","content":"| Provider | Auth Type | Env Vars | Complexity |\n| ----------------- | ------------------ | --------------------------------------------------------- | ---------- |\n| OpenAI | API Key | OPENAI_API_KEY | Low |\n| Anthropic | API Key | ANTHROPIC_API_KEY | Low |\n| Google AI Studio | API Key | GOOGLE_AI_API_KEY | Low |\n| Google Vertex | Service Account | GOOGLE_APPLICATION_CREDENTIALS | High |\n| Amazon Bedrock | AWS Credentials | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY | Medium |\n| Amazon SageMaker | AWS Credentials | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY | High |\n| Azure OpenAI | API Key + Endpoint | AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT | Medium |\n| Mistral | API Key | MISTRAL_API_KEY | Low |\n| HuggingFace | API Key | HUGGINGFACE_API_KEY | Low |\n| LiteLLM | Custom | LITELLM_BASE_URL, LITELLM_API_KEY | Medium |\n| Ollama | None | Optional OLLAMA_BASE_URL | Low |\n| OpenAI Compatible | Custom | OPENAI_COMPATIBLE_BASE_URL, OPENAI_COMPATIBLE_API_KEY | Medium |\n| OpenRouter | API Key | OPENROUTER_API_KEY | Low |","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Authentication Quick Reference","lvl3":""}},
|
|
9465
|
-
{"objectID":"c40df63a426faedd4a62613b8abffb49168a65fc9ad8eb773371ce029553e450","title":"BaseProvider Architecture","url":"/docs/reference/provider-capabilities-audit#baseprovider-architecture","content":"
|
|
9465
|
+
{"objectID":"c40df63a426faedd4a62613b8abffb49168a65fc9ad8eb773371ce029553e450","title":"BaseProvider Architecture","url":"/docs/reference/provider-capabilities-audit#baseprovider-architecture","content":"Providers extend the BaseProvider class, which provides:\nUnified interface for text generation and streaming\nTool registration and execution\nMiddleware support\nAnalytics and telemetry\nError handling\nMessage building for multimodal content","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"BaseProvider Architecture","lvl3":""}},
|
|
9466
9466
|
{"objectID":"89919a058b907858961d8bc0c5f5bdb7b7bf90ce902807b7e60eac8aaf69a9e9","title":"Dynamic Provider Loading","url":"/docs/reference/provider-capabilities-audit#dynamic-provider-loading","content":"Providers are registered via dynamic imports in ProviderRegistry:\nAvoids circular dependencies\nLazy loading for better performance\nClean provider isolation","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Dynamic Provider Loading","lvl3":""}},
|
|
9467
9467
|
{"objectID":"7eeabea19fc2d4a88ed1f7e7210455ca022997af57fc310d93009193f69f2a87","title":"Tool Execution Flow","url":"/docs/reference/provider-capabilities-audit#tool-execution-flow","content":"Tools registered with MCPToolRegistry\nProvider calls getAllTools() to get available tools\nAI model receives tool definitions\nModel calls tools during generation\nTool results sent back to model\nProcess repeats until completion","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Tool Execution Flow","lvl3":""}},
|
|
9468
9468
|
{"objectID":"912ca4c33c9178b968f8115502950b168b759c64defbab38c6961d04b4c26198","title":"Version History","url":"/docs/reference/provider-capabilities-audit#version-history","content":"v9.62.0 (May 2026) - Multi-provider voice (TTS/STT/realtime); 24 providers\nv9.60.0 (April 2026) - Added DeepSeek, NVIDIA NIM, LM Studio, llama.cpp providers\nv9.59.0 - Typed ModelAccessDeniedError + sdk.checkCredentials()\nv9.58.0 - providerFallback callback + modelChain config\nv9.53.0 - AutoResearch autonomous experiment engine\nv9.52.0 - Per-request and per-instance credentials for all providers\nv8.26.1 (January 2026) - 13 providers (historical)\nv8.26.0 - Added video output types\nv8.25.0 - Gemini 3 support improvements\nv8.24.0 - Enhanced provider capabilities\n\nNext Steps:\nSee Provider Comparison Guide for feature matrix\nSee Provider Selection Wizard for recommendations\nSee API Reference for usage examples","hierarchy":{"lvl0":"Reference","lvl1":"Provider Capabilities Audit","lvl2":"Version History","lvl3":""}},
|
|
@@ -9472,7 +9472,7 @@
|
|
|
9472
9472
|
{"objectID":"9974fc2be3942f172d7a0f4ed23f28266fd280e9add6a4dfb5dbeb3ce61e17bb","title":"Pay-per-Token Providers","url":"/docs/reference/provider-comparison#pay-per-token-providers","content":"| Provider | Input (per 1M tokens) | Output (per 1M tokens) | Vision | Best Value Model |\n| -------------------- | --------------------- | ---------------------- | -------------- | ----------------------------- |\n| OpenAI | $2.50 - $60.00 | $10.00 - $180.00 | $5.00 - $60.00 | GPT-4o-mini: $0.15/$0.60 |\n| Anthropic ^2^ | $3.00 - $15.00 | $15.00 - $75.00 | Same | Claude Haiku: $0.25/$1.25 |\n| Google AI Studio | FREE - $7.00 | FREE - $21.00 | FREE - $7.00 | Gemini 2.5 Flash: FREE |\n| Google Vertex | $0.35 - $35.00 | $1.05 - $105.00 | $0.35 - $35.00 | Gemini 2.5 Flash: $0.35/$1.05 |\n| Amazon Bedrock | $3.00 - $15.00 | $15.00 - $75.00 | $3.00 - $15.00 | Claude Haiku: $0.25/$1.25 |\n| Azure OpenAI | $2.50 - $60.00 | $10.00 - $180.00 | $5.00 - $60.00 | GPT-4o-mini: $0.15/$0.60 |\n| Mistral | $0.25 - $8.00 | $0.75 - $24.00 | $0.25 - $8.00 | Mistral Small: $0.20/$0.60 |\n| HuggingFace | FREE - $1.00 | FREE - $1.00 | N/A | Qwen 2.5 72B: FREE |\n| OpenRouter | $0.00 - $60.00 | $0.00 - $180.00 | Varies | Many free models |\n| DeepSeek | $0.14 - $2.19 | $0.28 - $8.75 | N/A | deepseek-chat: $0.14/$0.28 |\n| NVIDIA NIM | Varies by model | Varies by model | Varies | Free credits for new users |\n\n^2^ Anthropic also offers subscription-based pricing as an alternative to per-token API pricing: Free tier (limited), Pro ($20/mo), Max ($100+/mo with 5x-20x usage). NeuroLink supports both API key and OAuth (subscription) authentication. See Anthropic Deep Dive.","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Pay-per-Token Providers","lvl3":""}},
|
|
9473
9473
|
{"objectID":"eaaf3da103a1b5c86eb52913a92b81ebbd7592ed9a20caac997dd6533bb14df9","title":"Self-Hosted / Custom Pricing","url":"/docs/reference/provider-comparison#self-hosted-custom-pricing","content":"| Provider | Model | Cost Structure | Notes |\n| --------------------- | ------ | ------------------------ | ------------------------------------------------- |\n| Amazon SageMaker | Custom | Instance hours + storage | Varies by instance type (ml.g5.xlarge: ~$1.41/hr) |\n| LiteLLM | Proxy | Backend provider costs | No additional fee, proxy overhead only |\n| Ollama | Local | Hardware costs only | FREE (uses local compute) |\n| OpenAI Compatible | Custom | Backend-dependent | Varies by endpoint provider |\n| LM Studio | Local | Hardware costs only | FREE (uses local compute) |\n| llama.cpp | Local | Hardware costs only | FREE (uses local compute) |","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Self-Hosted / Custom Pricing","lvl3":""}},
|
|
9474
9474
|
{"objectID":"684dd4b3da0cb2e1e1891410e99d8cbd99de4d78f3cc95a99ec6eaa872c1ae93","title":"Free Tier Details","url":"/docs/reference/provider-comparison#free-tier-details","content":"Anthropic (via Claude subscription):\nFree tier available via OAuth authentication (claude.ai account)\nLimited daily messages and lower rate limits\nAccess to Claude Haiku models\nNo API key required (uses OAuth 2.0 flow)\n\nGoogle AI Studio:\n15 requests/minute\n1,500 requests/day\nUp to 1M tokens/day\nGemini 2.5 Flash completely FREE\n\nHuggingFace:\nRate-limited free tier\n1,000 requests/month on free models\nInference API access\n\nMistral:\nLimited free tier for testing\nMistral Small free quota\n\nOllama:\nCompletely FREE\nUses local compute\nNo API limits\n\nLM Studio:\nCompletely FREE\nUses local compute (GPU or CPU)\nNo API limits or network dependency\nRequires LM Studio desktop app\n\nllama.cpp:\nCompletely FREE\nUses local compute (GPU or CPU)\nNo API limits or network dependency\nRequires llama-server binary\n\nOpenRouter:\nMany FREE models available:\nGoogle Gemini 2.0 Flash (free)\nMeta Llama 3.3 70B (free)\nQwen models (free)","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Free Tier Details","lvl3":""}},
|
|
9475
|
-
{"objectID":"93a2f35abedbd18c00588f2923f40ae8fb2e997246d20bd74f6349dfaf55d890","title":"Text Generation","url":"/docs/reference/provider-comparison#text-generation","content":"
|
|
9475
|
+
{"objectID":"93a2f35abedbd18c00588f2923f40ae8fb2e997246d20bd74f6349dfaf55d890","title":"Text Generation","url":"/docs/reference/provider-comparison#text-generation","content":"Providers support text generation, but quality varies:\n\nTier 1 (Highest Quality):\nOpenAI GPT-4o, GPT-5 series\nAnthropic Claude 4.5 series\nGoogle Gemini 3 Pro\n\nTier 2 (High Quality):\nAzure OpenAI (same as OpenAI)\nGoogle Gemini 2.5 Pro\nAnthropic Claude 4.0 Sonnet\n\nTier 3 (Good Quality):\nMistral Large\nAmazon Bedrock (Claude models)\nOpenRouter (Claude/GPT-4 routing)\n\nTier 4 (Variable Quality):\nHuggingFace (model-dependent)\nOllama (model-dependent)\nLiteLLM (backend-dependent)","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Text Generation","lvl3":""}},
|
|
9476
9476
|
{"objectID":"328df74f14cc4329c5260b898968e5cccb79ca3fd529d1052c6a7604e0b293c3","title":"Streaming Support","url":"/docs/reference/provider-comparison#streaming-support","content":"Full Streaming (Real-time SSE):\n✓ OpenAI\n✓ Anthropic\n✓ Google AI Studio\n✓ Google Vertex\n✓ Amazon Bedrock\n✓ Azure OpenAI\n✓ Mistral\n✓ HuggingFace\n✓ LiteLLM\n✓ Ollama\n✓ OpenAI Compatible\n✓ OpenRouter\n✓ DeepSeek\n✓ NVIDIA NIM\n✓ LM Studio\n✓ llama.cpp\n\nPartial/Limited Streaming:\n⚠️ Amazon SageMaker (not fully implemented in v8.26.1)","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Streaming Support","lvl3":""}},
|
|
9477
9477
|
{"objectID":"64c8513d79573595bd25cf0d845b49f256c3cf9de8563ac2436454e2b1e09451","title":"Tool Calling / Function Calling","url":"/docs/reference/provider-comparison#tool-calling-function-calling","content":"Native Full Support:\n✓ OpenAI - Industry-leading function calling\n✓ Anthropic - Advanced tool use, parallel execution\n✓ Azure OpenAI - Same as OpenAI\n✓ Mistral - Native function calling\n✓ Google Vertex - Gemini + Claude models\n✓ Google AI Studio - Gemini models\n✓ Amazon Bedrock - Converse API tool support\n✓ LiteLLM - Proxies to backend providers\n✓ DeepSeek - Both deepseek-chat and deepseek-reasoner\n\nModel-Dependent Support:\n⚠️ NVIDIA NIM - Depends on hosted model (Llama 3.x: yes; embedding-only models: no)\n⚠️ LM Studio - Depends on loaded model (Llama 3.1+, Mistral 7B Instruct v0.3, etc.)\n⚠️ llama.cpp - Requires --jinja server flag; depends on loaded model\n⚠️ HuggingFace - Only specific models:\nLlama 3.1+ series\nHermes 3 models\nCodeLlama 34B\nMistral 7B Instruct v0.3\n⚠️ Ollama - Only compatible models:\nLlama 3.1+\nGemma 3 with tool training\n⚠️ OpenRouter - Check model capabilities:\nClaude models: ✓\nGPT-4 models: ✓\nGemini models: ✓\nMany others vary\n⚠️ OpenAI Compatible - Depends on backend\n⚠️ Amazon SageMaker - Depends on custom endpoint","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Tool Calling / Function Calling","lvl3":""}},
|
|
9478
9478
|
{"objectID":"1f40384e83724e7342fc4f35571f89a9d311598beddf5e55ef662095a3b09b39","title":"Vision / Multimodal Capabilities","url":"/docs/reference/provider-comparison#vision-multimodal-capabilities","content":"Native Vision Support:\n\nTier 1 (Best Vision):\nOpenAI - GPT-4o, GPT-5 series, O-series\n10 images max\nPNG, JPEG, WEBP, GIF\nAnthropic - Claude 4.5 Sonnet/Haiku, Claude 4.0 Opus/Sonnet\n20 images max\nExcellent vision quality\nGoogle Vertex/AI Studio - Gemini 2.5+, 3.x\n16 images max\nNative multimodal architecture\n\nTier 2 (Good Vision):\nAzure OpenAI - Same models as OpenAI\n10 images max\nMistral - Small 2506, Pixtral\n10 images max (conservative)\n\nModel-Dependent Vision:\n⚠️ LiteLLM - Depends on backend (e.g., GPT-4o via LiteLLM = vision)\n⚠️ Ollama - LLaVA, Llama 3.2 Vision, Gemini models\n⚠️ OpenAI Compatible - Backend-dependent\n⚠️ OpenRouter - Model-dependent (Claude, GPT-4o, Gemini support vision)\n⚠️ Amazon Bedrock - Claude models support vision\n⚠️ NVIDIA NIM - Depends on hosted model (e.g., Phi-3-vision, Llama 3.2 Vision)\n⚠️ LM Studio - Depends on loaded model (LLaVA, Llama 3.2 Vision, Qwen-VL, etc.)\n⚠️ llama.cpp - Depends on loaded model (LLaVA, Llama 3.2 Vision, etc.)\n\nNo Vision Support:\n✗ HuggingFace\n✗ Amazon SageMaker\n✗ DeepSeek (API does not accept image input)","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Vision / Multimodal Capabilities","lvl3":""}},
|
|
@@ -9488,7 +9488,7 @@
|
|
|
9488
9488
|
{"objectID":"f636c4cf951c77fc1393a8aa26d6dc6d8439a6d2901d4c277cff25d613e396ce","title":"7. Azure OpenAI","url":"/docs/reference/provider-comparison#7-azure-openai","content":"Provider ID: azure\nDefault Model: gpt-4o-mini\n\nStrengths:\nEnterprise security and compliance\nMicrosoft ecosystem integration\nSLA guarantees\nSame models as OpenAI\n\nWeaknesses:\nMost complex setup of all providers\nRequires Azure subscription\nDeployment configuration required\nLimited regional availability\n\nBest For:\nEnterprise Microsoft shops\nWhen you need SLAs and support\nAzure-based infrastructure\nRegulated industries\n\nPricing:\nSame as OpenAI pricing\nBilled through Azure subscription\nGPT-4o: $2.50/$10.00 per 1M tokens\nGPT-4o-mini: $0.15/$0.60 per 1M tokens","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"7. Azure OpenAI","lvl3":""}},
|
|
9489
9489
|
{"objectID":"c5e759ab7c08fa2d722d410eb402591832ba635ef37c3bcdd061ef19743920f2","title":"8. Mistral","url":"/docs/reference/provider-comparison#8-mistral","content":"Provider ID: mistral\nDefault Model: mistral-large-latest\n\nStrengths:\nGDPR compliant (European data centers)\nCompetitive pricing\nVision support (Small 2506+)\nOpen-weight models available\n\nWeaknesses:\nSmaller model selection than OpenAI\nLess ecosystem support\nVision only on specific models\nNo PDF or extended thinking\n\nBest For:\nEuropean compliance needs (GDPR)\nCost-conscious deployments\nWhen you prefer European hosting\nOpen-source friendly organizations\n\nPricing:\nMistral Small: $0.20/$0.60 per 1M tokens\nMistral Medium: $2.50/$7.50 per 1M tokens\nMistral Large: $8.00/$24.00 per 1M tokens","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"8. Mistral","lvl3":""}},
|
|
9490
9490
|
{"objectID":"5efe9c164eeb695c24441543d2b9e405cd3bebee8400fdc95db2addd6ca3fda7","title":"9. HuggingFace","url":"/docs/reference/provider-comparison#9-huggingface","content":"Provider ID: huggingface\nDefault Model: Qwen/Qwen2.5-72B-Instruct\n\nStrengths:\nAccess to 100,000+ models\nOpen-source focus\nCommunity-driven\nFree tier available\n\nWeaknesses:\nVariable model quality\nTool calling only on specific models\nNo vision or multimodal\nRate limits on free tier\n\nBest For:\nResearch and experimentation\nOpen-source projects\nTesting cutting-edge models\nBudget-constrained projects\n\nPricing:\nFree tier: 1,000 requests/month\nInference API: From FREE to ~$1.00 per 1M tokens\nPRO tier: $9/month for higher limits","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"9. HuggingFace","lvl3":""}},
|
|
9491
|
-
{"objectID":"855ebeb25b3b66642ba01add893f396635da4e4e28e2f5b3ad310ad67cf38c21","title":"10. LiteLLM","url":"/docs/reference/provider-comparison#10-litellm","content":"Provider ID: litellm\nDefault Model: openai/gpt-4o-mini\n\nStrengths:\nAccess to 100+ models via proxy\nUnified interface
|
|
9491
|
+
{"objectID":"855ebeb25b3b66642ba01add893f396635da4e4e28e2f5b3ad310ad67cf38c21","title":"10. LiteLLM","url":"/docs/reference/provider-comparison#10-litellm","content":"Provider ID: litellm\nDefault Model: openai/gpt-4o-mini\n\nStrengths:\nAccess to 100+ models via proxy\nUnified interface across supported providers\nCost tracking and analytics\nLoad balancing and failover\n\nWeaknesses:\nRequires proxy server running\nAdds proxy overhead\nConfiguration complexity\nCapabilities depend on backend\n\nBest For:\nMulti-provider strategies\nCost optimization and tracking\nLoad balancing across providers\nA/B testing different models\n\nPricing:\nNo additional cost (uses backend provider pricing)\nSelf-hosted proxy is FREE\nCloud-hosted option available","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"10. LiteLLM","lvl3":""}},
|
|
9492
9492
|
{"objectID":"c04a3e9c8e8c597b1e26d8c7d257b0dee1421be0112550a54760eaa54749c97c","title":"11. Ollama","url":"/docs/reference/provider-comparison#11-ollama","content":"Provider ID: ollama\nDefault Model: llama3.2:latest\n\nStrengths:\nCompletely FREE (local execution)\nMaximum privacy (no data sent to cloud)\nWorks offline\nFast local inference\nNo API rate limits\n\nWeaknesses:\nRequires local compute resources\nModel quality varies\nManual model management\nVision only on specific models\n\nBest For:\nPrivacy-critical applications\nOffline/air-gapped environments\nCost-sensitive projects\nDevelopment and testing\n\nPricing:\nFREE (hardware costs only)\nRequires local GPU for best performance\nNo API costs or rate limits","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"11. Ollama","lvl3":""}},
|
|
9493
9493
|
{"objectID":"5850b5e6ab599e2c9e2952653e0db0616ccd777c908edd1b43dd4381d0d1eab7","title":"12. OpenAI Compatible","url":"/docs/reference/provider-comparison#12-openai-compatible","content":"Provider ID: openai-compatible\nDefault Model: Auto-discovered\n\nStrengths:\nWorks with any OpenAI-compatible endpoint\nvLLM, FastChat, LocalAI support\nCustom deployment flexibility\nAuto-discovers available models\n\nWeaknesses:\nCapabilities entirely backend-dependent\nNo standardized capability detection\nConfiguration varies by provider\nAuthentication varies\n\nBest For:\nCustom deployments (vLLM, FastChat)\nInternal model serving\nPrivate cloud deployments\nWhen you control the backend\n\nPricing:\nDepends entirely on backend provider\nSelf-hosted: Infrastructure costs only\nCloud-hosted: Provider-specific pricing","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"12. OpenAI Compatible","lvl3":""}},
|
|
9494
9494
|
{"objectID":"260fb153eca401bd1ca6ed426b7f594aba2907dd9389b79d0bfe62380fc8a7be","title":"13. OpenRouter","url":"/docs/reference/provider-comparison#13-openrouter","content":"Provider ID: openrouter\nDefault Model: anthropic/claude-3-5-sonnet\n\nStrengths:\nAccess to 300+ models from 60+ providers\nMany FREE models available\nAutomatic failover\nUnified API for all models\nCost tracking\n\nWeaknesses:\nTool support varies by model\nVision support varies by model\nCredit-based pricing system\nModel availability can change\n\nBest For:\nAccess to many providers via one API\nCost optimization (free models available)\nRapid prototyping\nWhen you want provider flexibility\n\nPricing:\nFree models available:\nGoogle Gemini 2.0 Flash: FREE\nMeta Llama 3.3 70B: FREE\nQwen models: FREE\nPaid models:\nClaude 3.5 Sonnet: $3.00/$15.00 per 1M tokens\nGPT-4o: $2.50/$10.00 per 1M tokens","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"13. OpenRouter","lvl3":""}},
|
|
@@ -9511,8 +9511,8 @@
|
|
|
9511
9511
|
{"objectID":"819f5500ab1f564fc56981047c1041d24961f38ee1ce212cd6d0e4dfe85266d1","title":"Text-to-Speech (TTS)","url":"/docs/reference/provider-comparison#text-to-speech-tts","content":"Best quality: openai-tts with model tts-1-hd\n\nBest multilingual: elevenlabs\n\nElevenLabs supports the widest range of languages and voice cloning, making it the default choice for multilingual or branded voice experiences.\n\nMost cost-effective: google-ai (1M chars free tier)\n\nGoogle Cloud Text-to-Speech provides a generous free tier (1M characters/month for standard voices) and is ideal for high-volume applications on GCP.\n\nEnterprise: azure-tts (SSML support)\n\nAzure Cognitive Services TTS has the most comprehensive SSML support, including fine-grained prosody control, making it the standard choice for enterprise IVR and accessibility pipelines.","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Text-to-Speech (TTS)","lvl3":""}},
|
|
9512
9512
|
{"objectID":"d04a59a4ae2fb4ca3fa13fc4106849621ee8f2cb81c70c59e94f4c0ec6f23e3a","title":"Speech-to-Text (STT)","url":"/docs/reference/provider-comparison#speech-to-text-stt","content":"Best accuracy: whisper (OpenAI)\n\nOpenAI Whisper consistently ranks highest on transcription benchmarks across languages and noisy environments.\n\nBest streaming: deepgram (WebSocket real-time)\n\nDeepgram is the only STT provider with native WebSocket streaming support, enabling sub-300 ms word-level transcription for live audio.\n\nBest for Google Cloud users: google-stt\n\nTight integration with GCP infrastructure, support for 125+ languages, and speaker diarization make google-stt the natural choice when already on Google Cloud.\n\nEnterprise: azure-stt\n\nAzure Cognitive Services STT offers custom model training, batch transcription, and fine-grained compliance controls for regulated industries.","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Speech-to-Text (STT)","lvl3":""}},
|
|
9513
9513
|
{"objectID":"7c24fb05591146773070a723173cb03919f5c01575bb32563a53a2b677fa25d2","title":"Conclusion","url":"/docs/reference/provider-comparison#conclusion","content":"Choose based on priorities:\nBudget Priority → Google AI Studio (free) or OpenRouter (free models) or Anthropic Free tier (via OAuth)\nQuality Priority → OpenAI or Anthropic\nPrivacy Priority → Ollama / LM Studio / llama.cpp (local)\nReasoning Priority → Anthropic (extended thinking) or DeepSeek-R1 (cost-efficient)\nDocument Priority → Anthropic or Google AI Studio (PDF support)\nCompliance Priority → Azure OpenAI or Bedrock\nFlexibility Priority → OpenRouter (300+ models) or NVIDIA NIM (curated NVIDIA-hosted models)\nFlat-Rate Pricing → Anthropic subscription (Pro $20/mo, Max $100+/mo)\nZero Cloud Cost → LM Studio or llama.cpp (local execution)\nTTS Quality → openai-tts (tts-1-hd) or elevenlabs (multilingual)\nTTS Cost → google-ai TTS (1M chars/month free tier)\nSTT Accuracy → whisper (OpenAI)\nSTT Streaming → deepgram (WebSocket, sub-300 ms)\nRealtime Voice → openai-realtime or gemini-live\n\nNeuroLink Advantage:\nSwitch providers anytime (single line of code)\nUse multiple providers simultaneously\nTest and compare providers easily\nNo vendor lock-in\n\nSee also:\nProvider Capabilities Audit - Detailed technical capabilities\nProvider Selection Wizard - Interactive decision guide\nClaude Subscription Support - OAuth authentication and subscription tiers for Anthropic\nVoice Provider Selection - TTS, STT, and Realtime provider recommendations\nVoice Providers Index - Voice provider setup cards","hierarchy":{"lvl0":"Reference","lvl1":"AI Provider Comparison Guide","lvl2":"Conclusion","lvl3":""}},
|
|
9514
|
-
{"objectID":"1e3dc7b8cb1389cf04be5a320a1ba8e0662e49f7331ec2757e3ba0ef65e18166","title":"Provider Feature Compatibility Reference","url":"/docs/reference/provider-feature-compatibility","content":"Provider Feature Compatibility Reference\n\nThis is a dated point-in-time test run covering the providers listed below, not
|
|
9515
|
-
{"objectID":"3891f4aa5da834ab9cb8755ce122930a4c1dbe4b91ab0de927111dd2e6661935","title":"Provider Feature Compatibility Reference","url":"/docs/reference/provider-feature-compatibility#provider-feature-compatibility-reference","content":"This is a dated point-in-time test run covering the providers listed below, not
|
|
9514
|
+
{"objectID":"1e3dc7b8cb1389cf04be5a320a1ba8e0662e49f7331ec2757e3ba0ef65e18166","title":"Provider Feature Compatibility Reference","url":"/docs/reference/provider-feature-compatibility","content":"Provider Feature Compatibility Reference\n\nThis is a dated point-in-time test run covering the providers listed below, not the broader set of provider integrations NeuroLink ships today. For the current roster, see Provider Setup and the Provider Capabilities Audit.\n\nLast Updated: 2025-12-31\nTest Suite: continuous-test-suite.ts (19 comprehensive tests)\nProviders Tested: 11 providers across CSV, PDF, MCP tools, business tools, and enterprise features\n\nExecutive Summary\n\nAfter comprehensive testing across 11 AI providers (plus 4 newly integrated providers), we have identified 4 production-ready providers with 100% feature compatibility and documented specific technical limitations and configuration requirements for all others.\n\nProduction-Ready Providers (100% Compatibility) ⭐⭐⭐\n\n| Provider | Test Score | Duration | Status | Best For |\n| -------------------- | ------------ | -------- | ---------- | --------------------------------------------- |\n| Google AI Studio | 19/19 (100%) | 401s | ✅ Perfect | Fast prototyping, full multimodal support |\n| Vertex AI | 19/19 (100%) | 449s | ✅ Perfect | Enterprise deployments, excellent performance |\n| OpenAI | 19/19 (100%) | 1413s | ✅ Perfect | Industry standard, comprehensive features |\n| LiteLLM | 19/19 (100%) | 552s | ✅ Perfect | Universal proxy for 100+ models |\n\nAll features supported:\n✅ CSV processing (6/6 tests)\n✅ PDF processing (6/6 tests)\n✅ MCP external tools (4/4 tests)\n✅ Business tools (2/2 tests)\n✅ Enterprise features (1/1 test)\n\nComplete Feature Support Matrix\n\n| Provider | CSV | PDF | MCP Tools | Business Tools | Structured Output | Enterprise | Score | Status |\n| -------------------- | -------- | ------ | --------- | -------------- | ----------------- | ---------- | --------- | ------------ |\n| Google AI Studio | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ⚠️ Partial\\ | ✅ 1/1 | 19/19* | Production |\n| Vertex AI | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ⚠️ Partial\\ | ✅ 1/1 | 19/19* | Production |\n| LiteLLM | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 19/19 | Production |\n| OpenAI | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 19/19 | Production |\n| Azure OpenAI | ✅ 6/6 | ❌ 0/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 13/19 | Production\\* |\n| Mistral | ✅ 6/6 | ❌ 0/6 | ⚠️ 2/4 | ❌ 0/2 | ✅ Full | ✅ 1/1 | 9/19 | Development |\n| Ollama | ⚠️ 3/6 | ⚠️ 1/6 | ❌ 0/4 | ❌ 0/2 | ⚠️ Limited | ✅ 1/1 | 7/19 | Development |\n| Anthropic | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ✅ Full | ✅ 1/1 | 2/19\\\\ | Config |\n| Bedrock | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ✅ Full | ✅ 1/1 | 2/19\\\\ | Config |\n| Hugging Face | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ⚠️ Limited | ✅ 1/1 | 2/19\\\\ | Config |\n| SageMaker | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ⚠️ Limited | ✅ 1/1 | 2/19\\\\ | Config |\n| DeepSeek | ✅ 6/6 | ❌ 0/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | N/A† | Cloud |\n| NVIDIA NIM | ✅ 6/6 | ❌ 0/6 | ⚠️ Model | ⚠️ Model | ⚠️ Model | ✅ 1/1 | N/A† | Cloud |\n| LM Studio | ⚠️ Model | ❌ 0/6 | ⚠️ Model | ⚠️ Model | ⚠️ Model | ✅ 1/1 | N/A† | Local |\n| llama.cpp | ⚠️ Model | ❌ 0/6 | ⚠️ Model | ⚠️ Model | ⚠️ Model | ✅ 1/1 | N/A† | Local |\n\n\\*Google providers: Cannot combine tools + schemas (use disableTools: true). Google API limitation, not NeuroLink bug.\n\n†Not yet run through the standard 19-test suite. Capability flags based on provider source code audit (PR #997).\n\nLegend:\n✅ Fully supported\n⚠️ Partially supported\n❌ Not supported (technical limitation)\n🔧 Configuration/billing issue\n\\* Production-ready for non-PDF workloads\n\\\\ Configuration issue, not technical limitation\n\nModel-Level Feature Compatibility\n\nGemini 3 Models\n\n| Model | Streaming | Tools | Vision | Extended Thinking | JSON Schema |\n| ------------------ | --------- | ----- | ------ | ----------------- | ----------- |\n| gemini-3-flash | ✓ | ✓ | ✓ | ✓ | ✓† |\n| gemini-3-pro | ✓ | ✓ | ✓ | ✓ | ✓† |\n\n†JSON Schema Limitation: Gemini 3 models support JSON Schema for structured output, but cannot combine tools with JSON Schema in the same request. When using structured output with a schema, you must disable tools by setting disableTools: true. This is a Google API limitation, not a NeuroLink bug.\n\nExample Usage:\n\nProvider Tier Classification\n\nTier 1: Perfect (100%) - Pro","hierarchy":{"lvl0":"Reference","lvl1":"Provider Feature Compatibility Reference","lvl2":"","lvl3":""}},
|
|
9515
|
+
{"objectID":"3891f4aa5da834ab9cb8755ce122930a4c1dbe4b91ab0de927111dd2e6661935","title":"Provider Feature Compatibility Reference","url":"/docs/reference/provider-feature-compatibility#provider-feature-compatibility-reference","content":"This is a dated point-in-time test run covering the providers listed below, not the broader set of provider integrations NeuroLink ships today. For the current roster, see Provider Setup and the Provider Capabilities Audit.\n\nLast Updated: 2025-12-31\nTest Suite: continuous-test-suite.ts (19 comprehensive tests)\nProviders Tested: 11 providers across CSV, PDF, MCP tools, business tools, and enterprise features","hierarchy":{"lvl0":"Reference","lvl1":"Provider Feature Compatibility Reference","lvl2":"Provider Feature Compatibility Reference","lvl3":""}},
|
|
9516
9516
|
{"objectID":"239b138dc93623d9a904157ce4a5bdc994cdb7993f767f1a9c6de47b50a4f674","title":"Executive Summary","url":"/docs/reference/provider-feature-compatibility#executive-summary","content":"After comprehensive testing across 11 AI providers (plus 4 newly integrated providers), we have identified 4 production-ready providers with 100% feature compatibility and documented specific technical limitations and configuration requirements for all others.","hierarchy":{"lvl0":"Reference","lvl1":"Provider Feature Compatibility Reference","lvl2":"Executive Summary","lvl3":""}},
|
|
9517
9517
|
{"objectID":"125021efa5db1e2d872c148d730b4aee7ac3522b0b52387d79777f2067bcb1c8","title":"Production-Ready Providers (100% Compatibility) ⭐⭐⭐","url":"/docs/reference/provider-feature-compatibility#production-ready-providers-100-compatibility-","content":"| Provider | Test Score | Duration | Status | Best For |\n| -------------------- | ------------ | -------- | ---------- | --------------------------------------------- |\n| Google AI Studio | 19/19 (100%) | 401s | ✅ Perfect | Fast prototyping, full multimodal support |\n| Vertex AI | 19/19 (100%) | 449s | ✅ Perfect | Enterprise deployments, excellent performance |\n| OpenAI | 19/19 (100%) | 1413s | ✅ Perfect | Industry standard, comprehensive features |\n| LiteLLM | 19/19 (100%) | 552s | ✅ Perfect | Universal proxy for 100+ models |\n\nAll features supported:\n✅ CSV processing (6/6 tests)\n✅ PDF processing (6/6 tests)\n✅ MCP external tools (4/4 tests)\n✅ Business tools (2/2 tests)\n✅ Enterprise features (1/1 test)","hierarchy":{"lvl0":"Reference","lvl1":"Provider Feature Compatibility Reference","lvl2":"Production-Ready Providers (100% Compatibility) ⭐⭐⭐","lvl3":""}},
|
|
9518
9518
|
{"objectID":"4434cdc7f4be5d72212e891e3b95224491160571e1d6969095f46536d708e229","title":"Complete Feature Support Matrix","url":"/docs/reference/provider-feature-compatibility#complete-feature-support-matrix","content":"| Provider | CSV | PDF | MCP Tools | Business Tools | Structured Output | Enterprise | Score | Status |\n| -------------------- | -------- | ------ | --------- | -------------- | ----------------- | ---------- | --------- | ------------ |\n| Google AI Studio | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ⚠️ Partial\\ | ✅ 1/1 | 19/19* | Production |\n| Vertex AI | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ⚠️ Partial\\ | ✅ 1/1 | 19/19* | Production |\n| LiteLLM | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 19/19 | Production |\n| OpenAI | ✅ 6/6 | ✅ 6/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 19/19 | Production |\n| Azure OpenAI | ✅ 6/6 | ❌ 0/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | 13/19 | Production\\* |\n| Mistral | ✅ 6/6 | ❌ 0/6 | ⚠️ 2/4 | ❌ 0/2 | ✅ Full | ✅ 1/1 | 9/19 | Development |\n| Ollama | ⚠️ 3/6 | ⚠️ 1/6 | ❌ 0/4 | ❌ 0/2 | ⚠️ Limited | ✅ 1/1 | 7/19 | Development |\n| Anthropic | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ✅ Full | ✅ 1/1 | 2/19\\\\ | Config |\n| Bedrock | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ✅ Full | ✅ 1/1 | 2/19\\\\ | Config |\n| Hugging Face | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ⚠️ Limited | ✅ 1/1 | 2/19\\\\ | Config |\n| SageMaker | 🔧 0/6 | 🔧 0/6 | 🔧 0/4 | 🔧 0/2 | ⚠️ Limited | ✅ 1/1 | 2/19\\\\ | Config |\n| DeepSeek | ✅ 6/6 | ❌ 0/6 | ✅ 4/4 | ✅ 2/2 | ✅ Full | ✅ 1/1 | N/A† | Cloud |\n| NVIDIA NIM | ✅ 6/6 | ❌ 0/6 | ⚠️ Model | ⚠️ Model | ⚠️ Model | ✅ 1/1 | N/A† | Cloud |\n| LM Studio | ⚠️ Model | ❌ 0/6 | ⚠️ Model | ⚠️ Model | ⚠️ Model | ✅ 1/1 | N/A† | Loca","hierarchy":{"lvl0":"Reference","lvl1":"Provider Feature Compatibility Reference","lvl2":"Complete Feature Support Matrix","lvl3":""}},
|
|
@@ -9563,7 +9563,7 @@
|
|
|
9563
9563
|
{"objectID":"098d221678a87157295b371e3d609ce13446e21727d45349b0f93a99e974b435","title":"1. Quality and Accuracy","url":"/docs/reference/provider-selection#1-quality-and-accuracy","content":"When output quality is paramount, consider these factors:\n\n| Provider | Quality Tier | Best Models | Strengths |\n| ------------------------ | ------------ | ---------------------------- | ----------------------------------------------------- |\n| OpenAI | Tier 1 | GPT-4o, GPT-5, O-series | Industry-leading accuracy, extensive training data |\n| Anthropic | Tier 1 | Claude 4.5 Opus, Sonnet | Superior reasoning, safety-focused, extended thinking |\n| Google | Tier 1-2 | Gemini 3 Pro, Gemini 2.5 Pro | Native multimodal, large context windows |\n| Mistral | Tier 2 | Mistral Large | European-trained, efficient architecture |\n| Meta (via providers) | Tier 2-3 | Llama 3.3 70B | Open-source leader, good general performance |","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"1. Quality and Accuracy","lvl3":""}},
|
|
9564
9564
|
{"objectID":"fb7452decbe1811e113701b33adf80eb196823c057368314b642425ab9b84ed3","title":"2. Cost Optimization","url":"/docs/reference/provider-selection#2-cost-optimization","content":"Choose providers based on your budget constraints:\n\n| Budget Level | Recommended Provider | Monthly Cost (1M tokens) | Notes |\n| -------------------- | ------------------------ | ------------------------ | -------------------------------------- |\n| Free | Google AI Studio | $0 | 1M tokens/day free limit |\n| Free | OpenRouter (free models) | $0 | Gemini, Llama, Qwen models |\n| Free | Ollama | $0 | Hardware costs only |\n| Low ($0-50) | Mistral Small | ~$20 | Good quality, European compliance |\n| Medium ($50-200) | GPT-4o-mini | ~$75 | Excellent quality/cost ratio |\n| High ($200+) | Claude 4.5 Sonnet | ~$180 | Premium quality with extended thinking |\n| Enterprise | Azure/Bedrock | Negotiated | Volume discounts, SLA guarantees |","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"2. Cost Optimization","lvl3":""}},
|
|
9565
9565
|
{"objectID":"c1fc79f60024d628c9fd9603846eb97e190d2f1b51ec9bea890b17e499f53a68","title":"3. Latency and Performance","url":"/docs/reference/provider-selection#3-latency-and-performance","content":"Time-to-first-token (TTFT) and throughput considerations:\n\n| Provider | Average TTFT | Tokens/sec | Best For |\n| -------------------- | ------------ | ---------- | --------------------------------- |\n| Ollama (Local) | 50-200ms | 30-50 | Local development, lowest latency |\n| Google AI Studio | 300-700ms | 45-65 | Fast cloud inference |\n| OpenAI | 300-800ms | 40-60 | Balanced performance |\n| Anthropic | 400-900ms | 35-55 | Complex reasoning tasks |\n| Azure OpenAI | 350-850ms | 40-60 | Enterprise with SLA |","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"3. Latency and Performance","lvl3":""}},
|
|
9566
|
-
{"objectID":"1efa58bcda6a14b07a2cabd56771c201c1c60abdf49aff31b61f3d5f6a63d63e","title":"4. Feature Requirements","url":"/docs/reference/provider-selection#4-feature-requirements","content":"Match provider capabilities to your feature needs:\n\n| Feature | Full Support | Partial Support | No Support |\n| --------------------- | ------------------------------------------------------------ | ------------------------------------------------------ | ----------------------------------------------------------- |\n| Streaming | All
|
|
9566
|
+
{"objectID":"1efa58bcda6a14b07a2cabd56771c201c1c60abdf49aff31b61f3d5f6a63d63e","title":"4. Feature Requirements","url":"/docs/reference/provider-selection#4-feature-requirements","content":"Match provider capabilities to your feature needs:\n\n| Feature | Full Support | Partial Support | No Support |\n| --------------------- | ------------------------------------------------------------ | ------------------------------------------------------ | ----------------------------------------------------------- |\n| Streaming | All except SageMaker | SageMaker | - |\n| Tool Calling | OpenAI, Anthropic, Google, Azure, Bedrock, Mistral, DeepSeek | HuggingFace, Ollama, NIM†, LM Studio†, llama.cpp† | SageMaker |\n| Vision | OpenAI, Anthropic, Google, Azure | Mistral, Ollama, LiteLLM, NIM†, LM Studio†, llama.cpp† | HuggingFace, SageMaker, DeepSeek |\n| PDF Native | Anthropic, Google AI Studio, Vertex | Bedrock (Claude) | OpenAI, Azure, Mistral, DeepSeek, NIM, LM Studio, llama.cpp |\n| Extended Thinking | Anthropic, Google (Gemini 2.5+), DeepSeek (R1), NVIDIA NIM‡ | LM Studio†, llama.cpp† | Others |\n| Structured Output | OpenAI, Anthropic, Azure, Mistral, DeepSeek | Google\\*, NIM†, LM Studio†, llama.cpp† | HuggingFace, Ollama |\n| Local Execution | Ollama, LM Studio, llama.cpp | - | All cloud providers |\n| Zero API Cost | Ollama, LM Studio, llama.cpp | - ","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"4. Feature Requirements","lvl3":""}},
|
|
9567
9567
|
{"objectID":"fdabbd2dfcab20be5dc428797866185229cb755a64abed488f863d401a0d2dee","title":"5. Compliance and Security","url":"/docs/reference/provider-selection#5-compliance-and-security","content":"Choose based on regulatory and security requirements:\n\n| Requirement | Best Providers | Configuration Notes |\n| ---------------------- | ----------------------------- | ------------------------------------------ |\n| GDPR | Mistral, Ollama | European data centers, no US data transfer |\n| HIPAA | Azure OpenAI, Bedrock, Vertex | Requires BAA agreement |\n| SOC 2 | All major cloud providers | Available on enterprise tiers |\n| Data Privacy | Ollama, Self-hosted | Zero data transmission |\n| Air-gapped | Ollama, SageMaker | On-premise deployment |\n| Financial Services | Azure OpenAI, Bedrock | Enterprise compliance packages |","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"5. Compliance and Security","lvl3":""}},
|
|
9568
9568
|
{"objectID":"f7522ef43ce2cbd68588101a79eea303cc8adf49e9428a7844ba1b34a78b04b5","title":"Startup / MVP Development","url":"/docs/reference/provider-selection#startup-mvp-development","content":"Recommended Stack:\n\nCost Projection:\nDevelopment: $0/month (Google AI Studio free tier)\nProduction (10K users): ~$50-150/month (GPT-4o-mini)","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"Startup / MVP Development","lvl3":""}},
|
|
9569
9569
|
{"objectID":"adefcedd575b72009c4bc0f61997c4250040929f014824c6c6cdbbe7fa0ef1e6","title":"Enterprise Production","url":"/docs/reference/provider-selection#enterprise-production","content":"Recommended Stack:\n\nEnterprise Requirements Checklist:\n[x] SLA guarantees (99.9%+)\n[x] HIPAA/SOC2 compliance\n[x] Multi-region deployment\n[x] Provider failover strategy\n[x] Cost monitoring and alerts","hierarchy":{"lvl0":"Reference","lvl1":"Provider Selection Guide","lvl2":"Enterprise Production","lvl3":""}},
|
|
@@ -10161,11 +10161,11 @@
|
|
|
10161
10161
|
{"objectID":"1e36a63233195289c4e20fb69b9e64481099840f66d8c22e5026d33cc9edea44","title":"or use vercel.json","url":"/docs/sdk/framework-integration#or-use-verceljson","content":"{\n \"env\": {\n \"OPENAIAPIKEY\": \"@openai-api-key\",\n \"AWSACCESSKEY_ID\": \"@aws-access-key-id\",\n \"AWSSECRETACCESS_KEY\": \"@aws-secret-access-key\"\n }\n}\n`","hierarchy":{"lvl0":"Sdk","lvl1":"🏗️ Framework Integration Guide","lvl2":"or use vercel.json","lvl3":""}},
|
|
10162
10162
|
{"objectID":"a39a140e5bea9b5f4c9c0925dbd0e8d2790f52a62979ad27ffb0bfc870a76072","title":"Docker Deployment","url":"/docs/sdk/framework-integration#docker-deployment","content":"`dockerfile\nFROM node:18-alpine\n\nWORKDIR /app\nCOPY package*.json ./\nRUN npm ci --only=production\n\nCOPY . .\nRUN npm run build","hierarchy":{"lvl0":"Sdk","lvl1":"🏗️ Framework Integration Guide","lvl2":"Docker Deployment","lvl3":""}},
|
|
10163
10163
|
{"objectID":"c75f4cdc82e6aa111fffcb3a1bac81a34a8740b35f749726a590ffcbc6f59832","title":"Set environment variables","url":"/docs/sdk/framework-integration#set-environment-variables","content":"ENV OPENAIAPIKEY=\"\"\nENV AWSACCESSKEY_ID=\"\"\nENV AWSSECRETACCESS_KEY=\"\"\n\nEXPOSE 3000\nCMD [\"npm\", \"start\"]\n`\n\n← Back to Main README | Next: Provider Configuration →","hierarchy":{"lvl0":"Sdk","lvl1":"🏗️ Framework Integration Guide","lvl2":"Set environment variables","lvl3":""}},
|
|
10164
|
-
{"objectID":"5d9cafa86655ee984056465d75f0b2825f11f7aa790f777411223b8472d82e3f","title":"SDK Reference","url":"/docs/sdk","content":"SDK Reference\n\nThe NeuroLink SDK provides a TypeScript-first programmatic interface for integrating AI capabilities into your applications.\n\nOverview\n\nThe SDK is designed for:\nWeb applications (React, Vue, Svelte, Angular)\nBackend services (Node.js, Express, Fastify)\nServerless functions (Vercel, Netlify, AWS Lambda)\nDesktop applications (Electron, Tauri)\n\nQuick Start\n\nDocumentation Sections\nAPI Reference — Complete TypeScript API documentation with interfaces, types, and method signatures.\nFramework Integration — Integration guides for Next.js, SvelteKit, React, Vue, and other popular frameworks.\nCustom Tools — How to create and register custom tools for enhanced AI capabilities.\n\nCore Architecture\n\nThe SDK uses a Factory Pattern architecture that provides:\nUnified Interface:
|
|
10164
|
+
{"objectID":"5d9cafa86655ee984056465d75f0b2825f11f7aa790f777411223b8472d82e3f","title":"SDK Reference","url":"/docs/sdk","content":"SDK Reference\n\nThe NeuroLink SDK provides a TypeScript-first programmatic interface for integrating AI capabilities into your applications.\n\nOverview\n\nThe SDK is designed for:\nWeb applications (React, Vue, Svelte, Angular)\nBackend services (Node.js, Express, Fastify)\nServerless functions (Vercel, Netlify, AWS Lambda)\nDesktop applications (Electron, Tauri)\n\nQuick Start\n\nDocumentation Sections\nAPI Reference — Complete TypeScript API documentation with interfaces, types, and method signatures.\nFramework Integration — Integration guides for Next.js, SvelteKit, React, Vue, and other popular frameworks.\nCustom Tools — How to create and register custom tools for enhanced AI capabilities.\n\nCore Architecture\n\nThe SDK uses a Factory Pattern architecture that provides:\nUnified Interface: Providers implement the same AIProvider interface\nType Safety: Full TypeScript support with IntelliSense\nAutomatic Fallback: Seamless provider switching on failures\nBuilt-in Tools: 6 core tools available across supported providers\n\nConfiguration\n\nThe SDK automatically detects configuration from:\n\nAdvanced Features\n\nAuto Provider Selection {#auto-selection}\n\nNeuroLink automatically selects the best available AI provider based on your configuration:\n\nSelection Priority:\nOpenAI (most reliable)\nAnthropic (high quality)\nGoogle AI Studio (free tier)\nOther configured providers\n\nCustom Priority:\n\nLearn more: Provider Orchestration Guide\n\nConversation Memory {#memory}\n\nAutomatic context management for multi-turn conversations:\n\nMemory Types:\nIn-Memory: Fast, single-instance only\nRedis: Distributed, persistent across restarts\n\nFeatures:\nAutomatic context window management\nSession isolation by ID\nExport/import conversation history\nContext summarization for long sessions\n\nLearn more:\nConversation Memory Deep Dive\nRedis Configuration\nContext Summarization\n\nAnalytics & Evaluation\n\nCustom Tools\n\nContext Integration\n\nFramework Examples\n\nRelated Resources\nExamples & Tutorials - Practical implementation examples\nAdvanced Features - MCP integration, analytics, streaming\nTroubleshooting - Common issues and solutions","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"","lvl3":""}},
|
|
10165
10165
|
{"objectID":"cd8d604c6512d8000130a068f168252d64ca9d8cbc82096eeab361d5a892f06a","title":"SDK Reference","url":"/docs/sdk#sdk-reference","content":"The NeuroLink SDK provides a TypeScript-first programmatic interface for integrating AI capabilities into your applications.","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"SDK Reference","lvl3":""}},
|
|
10166
10166
|
{"objectID":"ff71918330cc890387e3a1ef64113ac2b3dd3ccb1b9ded2b5dc44adb48949671","title":"Overview","url":"/docs/sdk#overview","content":"The SDK is designed for:\nWeb applications (React, Vue, Svelte, Angular)\nBackend services (Node.js, Express, Fastify)\nServerless functions (Vercel, Netlify, AWS Lambda)\nDesktop applications (Electron, Tauri)","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Overview","lvl3":""}},
|
|
10167
10167
|
{"objectID":"eab2dda644f157a183417bd5a62e6b89ad2969b851553857c430fb4c0d97a822","title":"Documentation Sections","url":"/docs/sdk#documentation-sections","content":"API Reference — Complete TypeScript API documentation with interfaces, types, and method signatures.\nFramework Integration — Integration guides for Next.js, SvelteKit, React, Vue, and other popular frameworks.\nCustom Tools — How to create and register custom tools for enhanced AI capabilities.","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Documentation Sections","lvl3":""}},
|
|
10168
|
-
{"objectID":"2e3627725e27cb6b405351c23ebea13afe1328e72e8f6563ad5ac419ae259a76","title":"Core Architecture","url":"/docs/sdk#core-architecture","content":"The SDK uses a Factory Pattern architecture that provides:\nUnified Interface:
|
|
10168
|
+
{"objectID":"2e3627725e27cb6b405351c23ebea13afe1328e72e8f6563ad5ac419ae259a76","title":"Core Architecture","url":"/docs/sdk#core-architecture","content":"The SDK uses a Factory Pattern architecture that provides:\nUnified Interface: Providers implement the same AIProvider interface\nType Safety: Full TypeScript support with IntelliSense\nAutomatic Fallback: Seamless provider switching on failures\nBuilt-in Tools: 6 core tools available across supported providers","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Core Architecture","lvl3":""}},
|
|
10169
10169
|
{"objectID":"68026f701cebc6b98ea96c9e72cf6fedc9ee6e9e40a5ca1f521ce8d132c4cb0a","title":"Configuration","url":"/docs/sdk#configuration","content":"The SDK automatically detects configuration from:","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Configuration","lvl3":""}},
|
|
10170
10170
|
{"objectID":"ce4be95a86c0aeace766e4f1b7537e817661c75e0b13161c2c142f76c7e46e1c","title":"Auto Provider Selection {#auto-selection}","url":"/docs/sdk#auto-provider-selection-auto-selection","content":"NeuroLink automatically selects the best available AI provider based on your configuration:\n\nSelection Priority:\nOpenAI (most reliable)\nAnthropic (high quality)\nGoogle AI Studio (free tier)\nOther configured providers\n\nCustom Priority:\n\nLearn more: Provider Orchestration Guide","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Auto Provider Selection {#auto-selection}","lvl3":""}},
|
|
10171
10171
|
{"objectID":"22692664f53f5bf1fdc0b0e6b6b738b01db36ec4451e0454394e40a0e7e0fe9f","title":"Conversation Memory {#memory}","url":"/docs/sdk#conversation-memory-memory","content":"Automatic context management for multi-turn conversations:\n\nMemory Types:\nIn-Memory: Fast, single-instance only\nRedis: Distributed, persistent across restarts\n\nFeatures:\nAutomatic context window management\nSession isolation by ID\nExport/import conversation history\nContext summarization for long sessions\n\nLearn more:\nConversation Memory Deep Dive\nRedis Configuration\nContext Summarization","hierarchy":{"lvl0":"Sdk","lvl1":"SDK Reference","lvl2":"Conversation Memory {#memory}","lvl3":""}},
|
|
@@ -10196,14 +10196,14 @@
|
|
|
10196
10196
|
{"objectID":"f2ff95a8517aa1bc258524b78aac7ade9816a77b7432d61a3b412f397f7d689b","title":"Client-bundle dependencies — needs-review","url":"/docs/security/subpackage-advisories#client-bundle-dependencies-needs-review","content":"| Severity | Module | GHSA | Chain | Why it's different | Triage |\n| --- | --- | --- | --- | --- | --- |\n| Moderate | @opentelemetry/core | GHSA-8988-4f7v-96qf | posthog-js > @opentelemetry/exporter-logs-otlp-http > @opentelemetry/core (2 paths) | posthog-js ships in the browser bundle for analytics; this specific package is the OTLP log-export path, which sends telemetry out, it doesn't parse attacker-supplied baggage headers inbound. | Accept-risk — outbound-only code path; re-review if posthog-js is ever used to ingest, not just emit, telemetry. |\n| Moderate | protobufjs | GHSA-j3f2-48v5-ccww, GHSA-jfj6-75fj-8934 | posthog-js > @opentelemetry/exporter-logs-otlp-http > @opentelemetry/otlp-transformer > protobufjs | Same outbound-only OTLP export path as above. | Accept-risk, same reasoning. |\n| Moderate | fflate | GHSA-px8p-9vwx-vf98 | posthog-js > fflate | Ships in the client bundle; posthog-js uses it for its own asset compression, not for parsing user-supplied archives. | Accept-risk, low reachability. |\n| Moderate | dompurify | GHSA-55q2-fjhq-7xh7, GHSA-cmwh-pvxp-8882 | isomorphic-dompurify > dompurify | Sanitizes HTML that ends up rendered in the browser. Content sanitized here is this repo's own authored MDX/docs, not arbitrary visitor input — but a sanitizer bypass is exactly the class of bug that matters most if that assumption ever changes. | Needs-upgrade. A fixed dompurify is published (>=3.4.13 / >=3.4.11); whatever pulls isomorphic-dompurify should get it bumped, or the dependency dropped if it renders nothing but static build-time content. |\n| Low | dompurify | GHSA-c2j3-45gr-mqc4 | isomorphic-dompurify > dompurify | Same chain as above. | Needs-upgrade, same fix as the moderate dompurify rows. |","hierarchy":{"lvl0":"Security","lvl1":"Subpackage Dependency Advisories","lvl2":"Client-bundle dependencies — needs-review","lvl3":""}},
|
|
10197
10197
|
{"objectID":"d060d41f0402f33d02d94eeae0d16c494860addcf47ca14b51ab2fabef4ee1ce","title":"Recommendation","url":"/docs/security/subpackage-advisories#recommendation","content":"No action required to keep the critical-only gate green — it already\n is, in both trees, and stays that way regardless of anything in this\n document.\nlanding/: the next time landing/package.json is edited, add\n brace-expansion: \">=5.0.9\" and fflate: \">=0.8.3\" to its existing\n pnpm.overrides block (it already carries five other overrides for the\n same class of transitive-vulnerability problem — tar, devalue,\n rollup, minimatch, cookie, esbuild — so this is precedent, not a\n new pattern). That closes all 4 brace-expansion findings and the one\n runtime-reachable finding in either tree.\ndocs-site/: find and either upgrade or remove whatever pulls in\n isomorphic-dompurify; it is the only docs-site/ finding with a\n reachable-in-the-browser exploit class (XSS) and an available fix.\n Everything else in docs-site/ tracks @docusaurus/core's own upstream\n releases — re-measure after the next Docusaurus bump rather than chasing\n individual transitive pins.\nRaising --audit-level from critical to high in ci.yml needs the\n two needs-upgrade items above resolved first (per ci.yml's own\n comment); the accept-risk rows would still need an explicit\n pnpm audit --ignore (or equivalent) per advisory to avoid re-blocking on\n findings this document already reviewed. Not done as part of this pass —\n flagged here for whoever picks that decision up.","hierarchy":{"lvl0":"Security","lvl1":"Subpackage Dependency Advisories","lvl2":"Recommendation","lvl3":""}},
|
|
10198
10198
|
{"objectID":"1080399eefc78beb7860fc2379dec788e8e825df30255c2e9061b40fbbdc767b","title":"Next review","url":"/docs/security/subpackage-advisories#next-review","content":"Re-run the Methodology commands: at minimum whenever\nlanding/pnpm-lock.yaml or docs-site/pnpm-lock.yaml changes, and\notherwise on the same quarterly cadence as docs/development/package-overrides.md.","hierarchy":{"lvl0":"Security","lvl1":"Subpackage Dependency Advisories","lvl2":"Next review","lvl3":""}},
|
|
10199
|
-
{"objectID":"2d54764a0f90619f4dfe26cb0c85428f75091a63091f6cc73b70defe3139e6a8","title":"NeuroLink Usage Guide","url":"/docs/skills/neurolink-guide/SKILL","content":"NeuroLink Usage Guide\n\nNeuroLink is an enterprise AI development platform providing unified access to
|
|
10200
|
-
{"objectID":"96aa85169d914ba98c31e12923e593471d8584415add8a7583153796c856955d","title":"NeuroLink Usage Guide","url":"/docs/skills/neurolink-guide/SKILL#neurolink-usage-guide","content":"NeuroLink is an enterprise AI development platform providing unified access to
|
|
10199
|
+
{"objectID":"2d54764a0f90619f4dfe26cb0c85428f75091a63091f6cc73b70defe3139e6a8","title":"NeuroLink Usage Guide","url":"/docs/skills/neurolink-guide/SKILL","content":"NeuroLink Usage Guide\n\nNeuroLink is an enterprise AI development platform providing unified access to supported AI providers (text, decision-making, voice, multimodal) through a single API. It ships as both a TypeScript SDK (@juspay/neurolink) and a professional CLI.\n\nQuick Navigation\n\nBased on your query, I'll guide you to the right documentation:\nGetting Started → Read sdk-quickstart.md\nProvider Setup → Read providers.md\nMultimodal (images, PDFs, files) → Read multimodal.md\nMCP Tools Integration → Read tools-mcp.md\nRAG Pipelines → Read rag-integration.md\nConversation Memory → Read memory-conversations.md\nCLI Commands → Read cli-reference.md\nAdvanced Features → Read advanced-features.md\nTroubleshooting → Read troubleshooting.md\n\nTopic Routing\n\nIf the user asked about $ARGUMENTS:\n\n| Topic Keywords | Reference File |\n| -------------------------------------------------------------------------- | ----------------------- |\n| install, setup, start, begin, quickstart | sdk-quickstart.md |\n| provider, openai, anthropic, vertex, bedrock, azure, gemini, claude, model | providers.md |\n| image, pdf, csv, excel, document, file, multimodal, vision | multimodal.md |\n| tool, mcp, server, GitHub, external, function | tools-mcp.md |\n| rag, retrieval, chunk, vector, embed, document search | rag-integration.md |\n| memory, conversation, history, session, redis, context | memory-conversations.md |\n| cli, command, terminal, generate, stream, loop, serve | cli-reference.md |\n| hitl, workflow, agent, observe, telemetry, deploy, server | advanced-features.md |\n| error, issue, problem, fix, debug, not working | troubleshooting.md |\n\nInstallation\n\nMinimal Example\n\nKey Capabilities\n\n| Feature | Description |\n| -------------------- | ---------------------------------------------------------------- |\n| Provider Support | OpenAI, Anthropic, Vertex, Bedrock, Azure, Mistral, Ollama, etc. |\n| Multimodal | Images, PDFs, CSV, Excel, Word, 50+ file types |\n| MCP Tools | 58+ tools via Model Context Protocol |\n| RAG | Built-in chunking, embedding, vector search |\n| Memory | Conversation history with Redis support |\n| Streaming | Real-time token streaming |\n| HITL | Human-in-the-loop approval workflows |\n| Observability | Langfuse, OpenTelemetry integration |\n\nCode Templates\n\nReady-to-use examples in templates/:\ntemplates/basic-setup.ts - Basic SDK initialization\ntemplates/streaming.ts - Streaming responses\ntemplates/with-tools.ts - Tool integration\ntemplates/rag-pipeline.ts - RAG usage\ntemplates/server-deploy.ts - HTTP server deployment\n\nCLI Quick Reference\n\nEnvironment Variables\n\nSet up your provider credentials:\n\nType Imports\n\nGetting Help\nCheck the relevant reference file above\nReview troubleshooting.md for common issues\nLook at code templates in templates/\nRead the full CLAUDE.md in the project root for architecture details\n\nInstructions for Claude: Based on the user's query about $ARGUMENTS, read the appropriate reference file and provide specific guidance. If no topic is specified, give a general overview of NeuroLink capabilities and ask what they'd like help with.","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"","lvl3":""}},
|
|
10200
|
+
{"objectID":"96aa85169d914ba98c31e12923e593471d8584415add8a7583153796c856955d","title":"NeuroLink Usage Guide","url":"/docs/skills/neurolink-guide/SKILL#neurolink-usage-guide","content":"NeuroLink is an enterprise AI development platform providing unified access to supported AI providers (text, decision-making, voice, multimodal) through a single API. It ships as both a TypeScript SDK (@juspay/neurolink) and a professional CLI.","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"NeuroLink Usage Guide","lvl3":""}},
|
|
10201
10201
|
{"objectID":"21b1f230a7feb082ffa13eb9ce75c5ec9268a2a0d7eac96bb086d500d9f3e6c7","title":"Quick Navigation","url":"/docs/skills/neurolink-guide/SKILL#quick-navigation","content":"Based on your query, I'll guide you to the right documentation:\nGetting Started → Read sdk-quickstart.md\nProvider Setup → Read providers.md\nMultimodal (images, PDFs, files) → Read multimodal.md\nMCP Tools Integration → Read tools-mcp.md\nRAG Pipelines → Read rag-integration.md\nConversation Memory → Read memory-conversations.md\nCLI Commands → Read cli-reference.md\nAdvanced Features → Read advanced-features.md\nTroubleshooting → Read troubleshooting.md","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Quick Navigation","lvl3":""}},
|
|
10202
10202
|
{"objectID":"e605615042f0ca67afbb7328516b1ae5c0f0863857354643925f4b34f31bc28a","title":"Topic Routing","url":"/docs/skills/neurolink-guide/SKILL#topic-routing","content":"If the user asked about $ARGUMENTS:\n\n| Topic Keywords | Reference File |\n| -------------------------------------------------------------------------- | ----------------------- |\n| install, setup, start, begin, quickstart | sdk-quickstart.md |\n| provider, openai, anthropic, vertex, bedrock, azure, gemini, claude, model | providers.md |\n| image, pdf, csv, excel, document, file, multimodal, vision | multimodal.md |\n| tool, mcp, server, GitHub, external, function | tools-mcp.md |\n| rag, retrieval, chunk, vector, embed, document search | rag-integration.md |\n| memory, conversation, history, session, redis, context | memory-conversations.md |\n| cli, command, terminal, generate, stream, loop, serve | cli-reference.md |\n| hitl, workflow, agent, observe, telemetry, deploy, server | advanced-features.md |\n| error, issue, problem, fix, debug, not working | troubleshooting.md |","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Topic Routing","lvl3":""}},
|
|
10203
10203
|
{"objectID":"e16256b54ee1cd840e3970192de5a57174044100e1c685badadf0e717b4b3a00","title":"Installation","url":"/docs/skills/neurolink-guide/SKILL#installation","content":"`bash\nnpm install @juspay/neurolink","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Installation","lvl3":""}},
|
|
10204
10204
|
{"objectID":"90d0cc22bb8b605323ec98ea6e43db5a596b931d0b41e310504be40d6ff4f0cc","title":"or","url":"/docs/skills/neurolink-guide/SKILL#or","content":"pnpm add @juspay/neurolink","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"or","lvl3":""}},
|
|
10205
10205
|
{"objectID":"d1eb1a2c3cefd0cd4e82e8e0ec91fdd2d3425bf01fb2afdc9abc85ee3afff52a","title":"or","url":"/docs/skills/neurolink-guide/SKILL#or-1","content":"yarn add @juspay/neurolink\n`","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"or","lvl3":""}},
|
|
10206
|
-
{"objectID":"b83b01d704e8b8b320f14011bcefb90b05a6145656cbe07f1eaa885a91416a1e","title":"Key Capabilities","url":"/docs/skills/neurolink-guide/SKILL#key-capabilities","content":"| Feature
|
|
10206
|
+
{"objectID":"b83b01d704e8b8b320f14011bcefb90b05a6145656cbe07f1eaa885a91416a1e","title":"Key Capabilities","url":"/docs/skills/neurolink-guide/SKILL#key-capabilities","content":"| Feature | Description |\n| -------------------- | ---------------------------------------------------------------- |\n| Provider Support | OpenAI, Anthropic, Vertex, Bedrock, Azure, Mistral, Ollama, etc. |\n| Multimodal | Images, PDFs, CSV, Excel, Word, 50+ file types |\n| MCP Tools | 58+ tools via Model Context Protocol |\n| RAG | Built-in chunking, embedding, vector search |\n| Memory | Conversation history with Redis support |\n| Streaming | Real-time token streaming |\n| HITL | Human-in-the-loop approval workflows |\n| Observability | Langfuse, OpenTelemetry integration |","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Key Capabilities","lvl3":""}},
|
|
10207
10207
|
{"objectID":"7c62327f85fac881c0aac6f869de31dc4136684a6a52de22a2e71ee7b5c42249","title":"Code Templates","url":"/docs/skills/neurolink-guide/SKILL#code-templates","content":"Ready-to-use examples in templates/:\ntemplates/basic-setup.ts - Basic SDK initialization\ntemplates/streaming.ts - Streaming responses\ntemplates/with-tools.ts - Tool integration\ntemplates/rag-pipeline.ts - RAG usage\ntemplates/server-deploy.ts - HTTP server deployment","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Code Templates","lvl3":""}},
|
|
10208
10208
|
{"objectID":"d246524cc9ee34af8df00dea1fed367e2889a07e140681aa82675e41294c0ee7","title":"CLI Quick Reference","url":"/docs/skills/neurolink-guide/SKILL#cli-quick-reference","content":"`bash","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"CLI Quick Reference","lvl3":""}},
|
|
10209
10209
|
{"objectID":"d3f7af50ff6bbbb77e5eee065fed0c6a826ef462086f48c15eb152f7b5629f05","title":"Generate content","url":"/docs/skills/neurolink-guide/SKILL#generate-content","content":"neurolink generate \"Your prompt\"","hierarchy":{"lvl0":"Skills","lvl1":"NeuroLink Usage Guide","lvl2":"Generate content","lvl3":""}},
|
|
@@ -10772,12 +10772,12 @@
|
|
|
10772
10772
|
{"objectID":"25e1ac265c89596a09bce35c4ba7b8d82ccf92f016708d1f6f4826b290af00ae","title":"Delivery","url":"/docs/superpowers/specs/2026-09-23-proxy-account-routing-policies-design#delivery","content":"juspay/neurolink merges one commit per PR, so two PRs:\nRefactor, no behaviour change: extract the comparator into accountRanking.ts and count in-flight on the unlimited lease. Proven by the replay and the existing route tests.\nPolicies: headroom-first, prefer-primary, session affinity, spill, config, telemetry, /status, and the documentation correction below.","hierarchy":{"lvl0":"Superpowers","lvl1":"Proxy Account Routing Policies Design","lvl2":"Delivery","lvl3":""}},
|
|
10773
10773
|
{"objectID":"06eb4e8ea79a4077f7cb445c1ec17985516046ab28d49d3c87b85ade0155f2c1","title":"Documentation","url":"/docs/superpowers/specs/2026-09-23-proxy-account-routing-policies-design#documentation","content":"docs/features/claude-proxy-config-reference.md gains the five keys. The primary-account text and source comments that still say the primary is \"tried first under fill-first\" are corrected: with quota routing the primary is the final tiebreaker unless prefer-primary is set.","hierarchy":{"lvl0":"Superpowers","lvl1":"Proxy Account Routing Policies Design","lvl2":"Documentation","lvl3":""}},
|
|
10774
10774
|
{"objectID":"1cf022d6f43b961b6fd1c13d8a5677077f9109584a3a5e67d837c4d5f6e613da","title":"Out of scope","url":"/docs/superpowers/specs/2026-09-23-proxy-account-routing-policies-design#out-of-scope","content":"Per-model policies, weighted scoring, persisting affinity across restarts, an account reserve, and changes to cooldown classification, in-stream rate-limit handling or state persistence. Those last three are separate designs.","hierarchy":{"lvl0":"Superpowers","lvl1":"Proxy Account Routing Policies Design","lvl2":"Out of scope","lvl3":""}},
|
|
10775
|
-
{"objectID":"f0109d9239beed7372578f5d0ad41b745b321c526407db0d3bbb32adced24e2e","title":"Codex Outbound Fallback — Design","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design","content":"Codex Outbound Fallback — Design\n\nStatus: design complete, implementation not started. Produced by 22 parallel agents\n(6 grounding, 8 design, 8 adversarial review) plus 8 resolution passes; every design\nclaim below was checked against the code by a reviewer whose brief was to refute it.\n\nGoal\n\nA native Codex client request that its own account pool cannot serve currently fails to the\nclient. This design gives the Codex engine an outbound fallback chain to the Anthropic OAuth\npool and to Vertex, so the request is served instead — with prompt caching preserved across\nthe hop, tool calls translated faithfully in both directions, and no client-visible protocol\nanomaly.\n\nEvidence\nsrc/lib/server/routes/codexProxyRoutes.ts has no outbound fallback. Its only fallback\n references are a string-default helper (line 138) and code recognising when the Codex engine\n is itself invoked as an inner Anthropic fallback (lines 666, 817, CODEX_FALLBACK_METADATA_KEY\n at 109). On pool exhaustion it returns a terminal error: buildCodexErrorResponse\n (1458-1462), or buildCodexQuotaExhaustedResponse (909-914) when every account is already\n cooling.\nThree directions exist and work: Claude Code → Anthropic pool; Claude/Anthropic → Codex\n (executeClaudeCodexFallback, claudeProxyRoutes.ts:5499, called at 6131, in-process — no\n HTTP hop); Claude/Anthropic → Vertex (vertexAnthropicFallback.ts:611, gated on\n isVertexAnthropicModel, 576).\nThree do not exist: Vertex → Anthropic, native Codex → Anthropic, native Codex →\n Vertex. PR #1782 fixed translation defects in the existing Claude → Vertex direction; it\n did not add a reverse path.\nCodex prompt caching is live but partial. proxy_tokens_cache_read by model:\n gpt-5.6-sol 566,657,536; gpt-6-astra 3,285,888; gpt-5.6-terra 490,752;\n gpt-5.6-luna 5,888. proxy_tokens_cache_creation is 0 for every Codex series, which is\n correct — OpenAI caching is automatic and has no explicit write.\nThe caching asymmetry is the central design constraint. Anthropic caching is explicit:\n up to 4 cache_control breakpoints over a tools → system → messages prefix, write at\n 1.25x base input (5-minute TTL) or 2x (1-hour), read at 0.1x, and each account holds its\n own cache. A Codex request translated to Anthropic arrives with no breakpoints at all,\n so it would be cached not at all unless the translator inserts them deliberately.\nSince Claude-on-Vertex speaks the Anthropic Messages wire format, one Codex→Anthropic\n translator covers both targets. There is no smaller Vertex-only variant of this work.\n\nBuild order\n\nDependency-ordered; each step is one reviewable PR under the one-commit-per-PR policy. Default\noff at every step, so behaviour is byte-for-byte unchanged until the final enable.\n\n| # | PR | Depends on | Gate |\n| --- | ------------------------------------------------------------------- | ---------- | -------------------------------------------- |\n| 1 | IR types + codec contract (src/lib/types/proxyIR.ts) | — | typecheck; exhaustiveness is a compile error |\n| 2 | Request codec Codex → Anthropic (codexOutboundFallback.ts) | 1 | offline shape suite |\n| 3 | Response/stream codec Anthropic → Codex | 1 | offline event-order suite |\n| 4 | Tool fidelity + id correlation | 2, 3 | offline round-trip suite |\n| 5 | Cache breakpoints + prefix byte-stability (codexOutboundCache.ts) | 2 | byte-stability assertion across two turns |\n| 6 | Trigger policy, commitment rule, loop prevention, accounting | 2-4 | totality + commitment suites |\n| 7 | Config keys, kill switch, metrics | 6 | config validation suite |\n| 8 | Enable + live model matrix | all | live pass criteria |\n\nOpen questions gating the build\n\nEvery one needs the same thing: real captured native Codex traffic. The repo has 4 synthetic\nfixtures
|
|
10775
|
+
{"objectID":"f0109d9239beed7372578f5d0ad41b745b321c526407db0d3bbb32adced24e2e","title":"Codex Outbound Fallback — Design","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design","content":"Codex Outbound Fallback — Design\n\nStatus: design complete, implementation not started. Produced by 22 parallel agents\n(6 grounding, 8 design, 8 adversarial review) plus 8 resolution passes; every design\nclaim below was checked against the code by a reviewer whose brief was to refute it.\n\nGoal\n\nA native Codex client request that its own account pool cannot serve currently fails to the\nclient. This design gives the Codex engine an outbound fallback chain to the Anthropic OAuth\npool and to Vertex, so the request is served instead — with prompt caching preserved across\nthe hop, tool calls translated faithfully in both directions, and no client-visible protocol\nanomaly.\n\nEvidence\nsrc/lib/server/routes/codexProxyRoutes.ts has no outbound fallback. Its only fallback\n references are a string-default helper (line 138) and code recognising when the Codex engine\n is itself invoked as an inner Anthropic fallback (lines 666, 817, CODEX_FALLBACK_METADATA_KEY\n at 109). On pool exhaustion it returns a terminal error: buildCodexErrorResponse\n (1458-1462), or buildCodexQuotaExhaustedResponse (909-914) when every account is already\n cooling.\nThree directions exist and work: Claude Code → Anthropic pool; Claude/Anthropic → Codex\n (executeClaudeCodexFallback, claudeProxyRoutes.ts:5499, called at 6131, in-process — no\n HTTP hop); Claude/Anthropic → Vertex (vertexAnthropicFallback.ts:611, gated on\n isVertexAnthropicModel, 576).\nThree do not exist: Vertex → Anthropic, native Codex → Anthropic, native Codex →\n Vertex. PR #1782 fixed translation defects in the existing Claude → Vertex direction; it\n did not add a reverse path.\nCodex prompt caching is live but partial. proxy_tokens_cache_read by model:\n gpt-5.6-sol 566,657,536; gpt-6-astra 3,285,888; gpt-5.6-terra 490,752;\n gpt-5.6-luna 5,888. proxy_tokens_cache_creation is 0 for every Codex series, which is\n correct — OpenAI caching is automatic and has no explicit write.\nThe caching asymmetry is the central design constraint. Anthropic caching is explicit:\n up to 4 cache_control breakpoints over a tools → system → messages prefix, write at\n 1.25x base input (5-minute TTL) or 2x (1-hour), read at 0.1x, and each account holds its\n own cache. A Codex request translated to Anthropic arrives with no breakpoints at all,\n so it would be cached not at all unless the translator inserts them deliberately.\nSince Claude-on-Vertex speaks the Anthropic Messages wire format, one Codex→Anthropic\n translator covers both targets. There is no smaller Vertex-only variant of this work.\n\nBuild order\n\nDependency-ordered; each step is one reviewable PR under the one-commit-per-PR policy. Default\noff at every step, so behaviour is byte-for-byte unchanged until the final enable.\n\n| # | PR | Depends on | Gate |\n| --- | ------------------------------------------------------------------- | ---------- | -------------------------------------------- |\n| 1 | IR types + codec contract (src/lib/types/proxyIR.ts) | — | typecheck; exhaustiveness is a compile error |\n| 2 | Request codec Codex → Anthropic (codexOutboundFallback.ts) | 1 | offline shape suite |\n| 3 | Response/stream codec Anthropic → Codex | 1 | offline event-order suite |\n| 4 | Tool fidelity + id correlation | 2, 3 | offline round-trip suite |\n| 5 | Cache breakpoints + prefix byte-stability (codexOutboundCache.ts) | 2 | byte-stability assertion across two turns |\n| 6 | Trigger policy, commitment rule, loop prevention, accounting | 2-4 | totality + commitment suites |\n| 7 | Config keys, kill switch, metrics | 6 | config validation suite |\n| 8 | Enable + live model matrix | all | live pass criteria |\n\nOpen questions gating the build\n\nEvery one needs the same thing: real captured native Codex traffic. The repo has 4 synthetic\nfixtures, one real single-turn capture (~/.neurolink/reference/codex-cli-wire-sample.json,\ncaptured 2026-09-21), a real usage-frame capture (test/fixtures/codex-response-usage.sse,\ncaptured 2026-08-21), and one real controlled bisection experiment against the actual\ncodex_exec/0.155.1 binary (scripts/codex-replay-listener.ts, test/fixtures/sse-bisection-findings.md,\nrun 2026-09-27). Two questions are now settled; the rest are listed here because they can still\ninvalidate a whole section, so they should be settled before the PRs that depend on them are\nwritten.\n\n| Question | Blocks | Settled by ","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"","lvl3":""}},
|
|
10776
10776
|
{"objectID":"6034ef59cb5b3d2520fa92f2f181aca534a58aa28338f3411aa9d28d998e487e","title":"Codex Outbound Fallback — Design","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#codex-outbound-fallback-design","content":"Status: design complete, implementation not started. Produced by 22 parallel agents\n(6 grounding, 8 design, 8 adversarial review) plus 8 resolution passes; every design\nclaim below was checked against the code by a reviewer whose brief was to refute it.","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Codex Outbound Fallback — Design","lvl3":""}},
|
|
10777
10777
|
{"objectID":"580c5a06163d1e603bb34f5f3b51c78e4efa36e12426cf22b63706680af0ea56","title":"Goal","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#goal","content":"A native Codex client request that its own account pool cannot serve currently fails to the\nclient. This design gives the Codex engine an outbound fallback chain to the Anthropic OAuth\npool and to Vertex, so the request is served instead — with prompt caching preserved across\nthe hop, tool calls translated faithfully in both directions, and no client-visible protocol\nanomaly.","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Goal","lvl3":""}},
|
|
10778
10778
|
{"objectID":"ed180fb4ca61ad0027c4359503ac6ea54b391281020d32b2a9b498cd6c83abeb","title":"Evidence","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#evidence","content":"src/lib/server/routes/codexProxyRoutes.ts has no outbound fallback. Its only fallback\n references are a string-default helper (line 138) and code recognising when the Codex engine\n is itself invoked as an inner Anthropic fallback (lines 666, 817, CODEX_FALLBACK_METADATA_KEY\n at 109). On pool exhaustion it returns a terminal error: buildCodexErrorResponse\n (1458-1462), or buildCodexQuotaExhaustedResponse (909-914) when every account is already\n cooling.\nThree directions exist and work: Claude Code → Anthropic pool; Claude/Anthropic → Codex\n (executeClaudeCodexFallback, claudeProxyRoutes.ts:5499, called at 6131, in-process — no\n HTTP hop); Claude/Anthropic → Vertex (vertexAnthropicFallback.ts:611, gated on\n isVertexAnthropicModel, 576).\nThree do not exist: Vertex → Anthropic, native Codex → Anthropic, native Codex →\n Vertex. PR #1782 fixed translation defects in the existing Claude → Vertex direction; it\n did not add a reverse path.\nCodex prompt caching is live but partial. proxy_tokens_cache_read by model:\n gpt-5.6-sol 566,657,536; gpt-6-astra 3,285,888; gpt-5.6-terra 490,752;\n gpt-5.6-luna 5,888. proxy_tokens_cache_creation is 0 for every Codex series, which is\n correct — OpenAI caching is automatic and has no explicit write.\nThe caching asymmetry is the central design constraint. Anthropic caching is explicit:\n up to 4 cache_control breakpoints over a tools → system → messages prefix, write at\n 1.25x base input (5-minute TTL) or 2x (1-hour), read at 0.1x, and each account holds its\n own cache. A Codex request translated to Anthropic arrives with no breakpoints at all,\n so it would be cached not at all unless the translator inserts them deliberately.\nSince Claude-on-Vertex speaks the Anthropic Messages wire format, one Codex→Anthropic\n translator covers both targets. There is no smaller Vertex-only variant of this work.","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Evidence","lvl3":""}},
|
|
10779
10779
|
{"objectID":"a5aa19ce68fa1175c4bade50ae303cc0a954bf1128588e294af993c049e2f466","title":"Build order","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#build-order","content":"Dependency-ordered; each step is one reviewable PR under the one-commit-per-PR policy. Default\noff at every step, so behaviour is byte-for-byte unchanged until the final enable.\n\n| # | PR | Depends on | Gate |\n| --- | ------------------------------------------------------------------- | ---------- | -------------------------------------------- |\n| 1 | IR types + codec contract (src/lib/types/proxyIR.ts) | — | typecheck; exhaustiveness is a compile error |\n| 2 | Request codec Codex → Anthropic (codexOutboundFallback.ts) | 1 | offline shape suite |\n| 3 | Response/stream codec Anthropic → Codex | 1 | offline event-order suite |\n| 4 | Tool fidelity + id correlation | 2, 3 | offline round-trip suite |\n| 5 | Cache breakpoints + prefix byte-stability (codexOutboundCache.ts) | 2 | byte-stability assertion across two turns |\n| 6 | Trigger policy, commitment rule, loop prevention, accounting | 2-4 | totality + commitment suites |\n| 7 | Config keys, kill switch, metrics | 6 | config validation suite |\n| 8 | Enable + live model matrix | all | live pass criteria |","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Build order","lvl3":""}},
|
|
10780
|
-
{"objectID":"db4fcb5c145b85c8e756be096fdda4d88c5f6fc576ec62653a8545735ff1a653","title":"Open questions gating the build","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#open-questions-gating-the-build","content":"Every one needs the same thing: real captured native Codex traffic. The repo has 4 synthetic\nfixtures
|
|
10780
|
+
{"objectID":"db4fcb5c145b85c8e756be096fdda4d88c5f6fc576ec62653a8545735ff1a653","title":"Open questions gating the build","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#open-questions-gating-the-build","content":"Every one needs the same thing: real captured native Codex traffic. The repo has 4 synthetic\nfixtures, one real single-turn capture (~/.neurolink/reference/codex-cli-wire-sample.json,\ncaptured 2026-09-21), a real usage-frame capture (test/fixtures/codex-response-usage.sse,\ncaptured 2026-08-21), and one real controlled bisection experiment against the actual\ncodex_exec/0.155.1 binary (scripts/codex-replay-listener.ts, test/fixtures/sse-bisection-findings.md,\nrun 2026-09-27). Two questions are now settled; the rest are listed here because they can still\ninvalidate a whole section, so they should be settled before the PRs that depend on them are\nwritten.\n\n| Question | Blocks | Settled by |\n| ---------------------------------------------------------------------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Does the real Codex CLI accept a call_id it did not mint (a toolu_-shaped id)? | PR 4 | SETTLED (2026-09-27) — yes, verbatim. codex-replay-listener.ts --script tool-call against real codex_exec/0.155.1: the CLI's follow-up function_call_output carried call_id: \"toolu_replay0000000000000000\" unmodified (own id field is CLI-minted fco_-","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Open questions gating the build","lvl3":""}},
|
|
10781
10781
|
{"objectID":"a85c34c0265b0c27d696611075427124ef72062ef3e1248bf75ddc2f859229d0","title":"Contents","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#contents","content":"Translation layer: canonical IR and codec contract\nRequest translation: Codex Responses → Anthropic Messages\nResponse translation: Anthropic → Codex wire format\nTool-call fidelity in both directions\nPreserving prompt caching across the hop\nTrigger policy, commitment safety, loop prevention, accounting\nConfiguration surface and staged rollout\nValidation plan","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Contents","lvl3":""}},
|
|
10782
10782
|
{"objectID":"62546125e30c54bebd2104e396943d1fb60478f7d22873e75792c81c408d2791","title":"Consolidated unresolved items","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#consolidated-unresolved-items","content":"ir-and-types — whether native Codex ever sends top-level reasoning/tools on a genuine inbound request — the one check that would settle it is a live-captured native Codex CLI request with non-default reasoning effort set.\nir-and-types — whether Anthropic's live API ever rejects consecutive same-role messages in some edge case — the one check that would settle it is a probe request against the real API with two consecutive user messages.\nir-and-types — the storage/lifetime contract for a resumed session's id map spanning multiple proxy requests — the one check that would settle it is reading how originSessionId/originThreadId are persisted by the session-affinity\nir-and-types — above.\nrequest-translation — in §10. It converts an unknown into a loud, caller-visible failure instead of a silent one, which is what the \"nothing may break silently\" requirement demands even without live traffic.\nrequest-translation — whether additional_tools/developer items can appear anywhere other than before the first user item in real traffic — the one check that would settle it: capture one real Codex CLI multi-turn session with a mid-conv\nrequest-translation — whether a resumed-session request's input is genuinely full-history or incremental — the one check that would settle it: capture one real resumed-session Codex Responses request (the referenced ~/.neurolink/reference/\n- **request-translation** — whether toolchoice or reasoning ever appear on genuine inbound requests at all (absent from all 4 fixtures) — the one check that would settle it: grep captured production Codex traffic logs (once available) for eith\n- **request-translation** — whether more than one additionaltools item can appear in one request — the one check that would settle it: same real-traffic capture as (1).\n- **response-translation** — a genuine live-captured native Codex Responses SSE transcript (text, tool-call, incomplete/error cases) — the check that would settle it is running a real Codex client through this","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Consolidated unresolved items","lvl3":""}},
|
|
10783
10783
|
{"objectID":"b890fc666ae87c04302cb9122b852c6e394f3a6eb3ad2c2a3b90aed60a49e057","title":"Decision (kept)","url":"/docs/superpowers/specs/2026-09-27-codex-outbound-fallback-design#decision-kept","content":"Single canonical IR, not ClaudeRequest-as-hub, not pairwise codecs. Verified: openaiFormat.ts/geminiFormat.ts already use ClaudeRequest as an implicit hub only because it is also the literal Anthropic wire type; codexFallback.ts already needs a role cast ((message.role as string) !== \"system\", line 154) to special-case Claude Code's inline-system convention inside a converter meant to be neutral. A new file, src/lib/types/proxyIR.ts, holds a real wire-neutral IR. ClaudeRequest/ClaudeResponse (proxy.ts:154, :187) stay untouched — the Anthropic hot path (claudeProxyRoutes.ts) never changes.\n\nVertex needs no separate codec. Confirmed: executeVertexAnthropicFallback (vertexAnthropicFallback.ts:605-665) forwards the upstream body/stream untouched with a code comment that it is \"already Anthropic-shaped\"; buildVertexAnthropicPayload (line 399) only strips UNSUPPORTED_FIELDS = [\"model\", \"context_management\"] (line 42). Vertex reuses anthropicMessagesIRCodec.buildRequest's output as-is.","hierarchy":{"lvl0":"Superpowers","lvl1":"Codex Outbound Fallback — Design","lvl2":"Decision (kept)","lvl3":""}},
|