Skip to main content

Introduction

Intellinode is a framework to streamline the interactions with diverse AI capabilities. It provides a unified layer to access multiple models such as speech, image, and text, and higher level building blocks such as a tool-calling chatbot, a coding agent and an MCP server.

npm i intellinode

The package ships TypeScript declarations, a browser bundle (front/intellinode.min.js) and the intellinode command line (npx intellinode mcp).

Core Components

  • The wrapper layer provides low-level access to the latest AI models and libraries through plain HTTP calls.
  • The controller layer offers a unified input to any language, image, embedding or speech model.
  • The function layer provides abstract application layers with the ability to extend the use cases based on apps' needs.

The wrapper layer in intellinode include:

  • OpenAIWrapper: Access to the OpenAI models (GPT-5.5 and the Responses API, images, embeddings, speech).
  • AnthropicWrapper: Access to the Claude models (Sonnet 5, Opus 5, Fable 5.1, Haiku 4.5).
  • GeminiAIWrapper: Access to the Google Gemini models.
  • MistralAIWrapper: Access to the Mistral models.
  • CohereAIWrapper: Access to the Cohere Command models.
  • NvidiaWrapper: Access to the NVIDIA hosted models (DeepSeek, Llama) and local NIM.
  • OpenAICompatibleWrapper: One wrapper for every OpenAI-compatible service: OpenRouter, Groq, DeepSeek, xAI, Together, Ollama and LM Studio.
  • VLLMWrapper: Access to self-hosted vLLM models.
  • StabilityAIWrapper: Interaction with the stable diffusion image models.
  • HuggingWrapper: The Hugging Face inference capability with endless open-source models.
  • ReplicateWrapper: Access to Llama chat models.
  • IntellicloudWrapper: Connect any AI model with your data using intellinode one key.

The controller layer include:

  • RemoteEmbedModel: Generate text embeddings using various AI models.
  • RemoteImageModel: Image generation with a unified access layer.
  • RemoteLanguageModel: Text generation with a unified access layer.
  • RemoteSpeechModel: Speech generation capabilities.

Intellinode also provides a set of functions that offer higher-level abstraction:

  • Chatbot: A unified chatbot for every provider with streaming, a tool-calling loop (runTools) and schema-matched JSON output (chatJson).
  • Gen: The fastest way to interact with AI models for your use cases, one line to generate tuned content, UI code, backend code, tests and more.
  • CodingAgent: An agent that edits a repository and runs its tests until they pass.
  • MCPClient and MCPServer: Use the tools of any MCP server in your chatbot, or serve intellinode's tools to Claude Code, Cursor and VS Code.
  • SemanticSearch: Speeds the semantic search integration using powerful embedding providers.
  • SemanticSearchPaging: Apply the semantic search in iterations for large datasets.
  • TextAnalyzer: Sentiment analysis, text summaries, and more.
  • LLMEvaluation: Evaluate multiple language models with minimum code and select the suitable one for your use cases.
  • ChatContext: Manage the chatbot window size limitation by returning the relevant messages for the user input.

Example

Use the gen function for one line AI integration.

const { Gen } = require('intellinode');

// React component source from a description (openai gpt-5.5 is default)
const code = await Gen.generate_component('a pricing card with a plan name, price and a CTA button', openaiKey);

// the same call with Claude
const form = await Gen.generate_form('a contact form with name, email and message', anthropicKey, 'anthropic');

Run the tools you define until the model has the answer:

const { Chatbot, ChatGPTInput } = require('intellinode');

const tools = [{
name: 'get_weather',
description: 'Current weather for a city',
parameters: { type: 'object', properties: { city: { type: 'string' } }, required: ['city'] },
handler: async ({ city }) => ({ city, tempC: 22 }),
}];

const input = new ChatGPTInput('You are a weather assistant.');
input.addUserMessage('What is the weather in Paris?');

const { text } = await new Chatbot(openaiKey, 'openai').runTools(input, tools);

License

This project is licensed under Apache 2.0.