Skip to content

Repository files navigation

⎇ Model Mux

npm version npm downloads pipeline License: MIT semantic-release: angular

Model Mux is a TypeScript library inspired by Python's LiteLLM, designed for the Google ADK ecosystem. It provides a unified interface to interact with multiple LLM providers (currently OpenAI and Anthropic).

Installation

npm install model-mux

How to use

Getting started with Model Mux is easy! With just a few lines of code, you can connect to different LLM providers through a unified interface.

Example using OpenAI models:

import { LlmAgent } from '@google/adk';
import { ModelMux } from 'model-mux';

const model = 'gpt-5.4-2026-03-05';
const baseUrl = 'https://api.openai.com/v1';
const apiKey = process.env.OPENAI_API_KEY;

const modelMux = new ModelMux({ model, baseUrl, apiKey });

const agent = new LlmAgent({
  name: 'openai-agent',
  description: 'An agent for testing purposes',
  instruction: 'When in doubt, blame the user.',
  model: modelMux,
});

Example using Anthropic models:

import { LlmAgent } from '@google/adk';
import { ModelMux } from 'model-mux';

const model = 'claude-opus-4-6';
const baseUrl = 'https://api.anthropic.com';
const apiKey = process.env.ANTHROPIC_API_KEY;

const modelMux = new ModelMux({ model, baseUrl, apiKey });

const agent = new LlmAgent({
  name: 'anthropic-agent',
  description: 'An agent for Anthropic Claude',
  instruction: 'Be helpful and concise.',
  model: modelMux,
});

Note:
ModelMux also allows the usage of custom headers. Check the ModelMuxOptions for more details.

For a complete agent example, see examples/my-agent, which includes a working Google ADK agent implementation using Model-Mux.

Current Limitations

Model Mux currently supports standard request/response generation and streaming responses. Google ADK live connections via connect() are not implemented yet.

How to Contribute

Contributions are welcome! Here's how you can get involved:

  1. Report Issues: Found a bug or have a feature request? Open an issue.
  2. Submit Pull Requests: Fork the repository, create a new branch, make your changes, and submit a PR.
  3. Improve Documentation: Help improve the README or add examples to make setup easier.
  4. Test & Feedback: Try Model Mux and provide feedback.

License

Copyright (c) 2026 Nicholas Coutinho Checan. Licensed under the MIT License. See LICENSE.

Releases

Sponsor this project

Contributors

Languages