https://github.com/decolua/9router
Universal AI Proxy for Claude Code, Codex, Cursor | OpenAI, Claude, Gemini, Copilot
https://github.com/decolua/9router
9router antigravity claude-code cliproxyapi cursor vibecoding
Last synced: about 20 hours ago
JSON representation
Universal AI Proxy for Claude Code, Codex, Cursor | OpenAI, Claude, Gemini, Copilot
- Host: GitHub
- URL: https://github.com/decolua/9router
- Owner: decolua
- Created: 2026-01-05T02:59:30.000Z (16 days ago)
- Default Branch: master
- Last Pushed: 2026-01-16T06:09:17.000Z (5 days ago)
- Last Synced: 2026-01-17T03:49:41.057Z (4 days ago)
- Topics: 9router, antigravity, claude-code, cliproxyapi, cursor, vibecoding
- Language: JavaScript
- Homepage: https://9router.com
- Size: 1.11 MB
- Stars: 79
- Watchers: 0
- Forks: 28
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🚀 9ROUTER - AI Proxy
> Universal AI Proxy for Claude Code, Codex, Cursor | OpenAI, Claude, Gemini, Copilot
🌐 **Website: [9router.com](https://9router.com)**
[](https://www.npmjs.com/package/9router)
[](https://www.npmjs.com/package/9router)
[](https://github.com/yourusername/9router/blob/main/LICENSE)
A JavaScript port of CLIProxyAPI with web dashboard.

## 📖 Introduction
**9Router** is a powerful AI API proxy server that provides unified access to multiple AI providers through a single endpoint. It features automatic format translation, intelligent fallback routing, OAuth authentication, and a modern web dashboard for easy management.
**Key Highlights:**
- **JavaScript Port**: Converted from CLIProxyAPI (Go) to JavaScript/Node.js.
- **Universal CLI Support**: Works seamlessly with Claude Code, OpenAI Codex, Cline, RooCode, AmpCode, and other CLI tools
- **Cross-Platform**: Runs on Windows, Linux, and macOS
- **Easy Deployment**: Simple installation via npx, or deploy to VPS
## ✨ Features
### Core Features
- **🔄 Multi-Provider Support**: Unified endpoint for 15+ AI providers (Claude, OpenAI, Gemini, GitHub Copilot, Qwen, iFlow, DeepSeek, Kimi, MiniMax, GLM, etc.)
- **🔐 OAuth & API Key Authentication**: Supports both OAuth2 flow and API key authentication
- **🎯 Format Translation**: Automatic request/response translation between OpenAI, Claude, Gemini, Codex, and Ollama formats
- **🌐 Web Dashboard**: Beautiful React-based dashboard for managing providers, combos, API keys, and settings
- **📊 Usage Tracking**: Real-time monitoring and analytics for all API requests
### Advanced Features
- **🎲 Combo System**: Create model combos with automatic fallback support
- **♻️ Intelligent Fallback**: Automatic account rotation when rate limits or errors occur
- **⚡ Response Caching**: Optimized caching for Claude Code (1-hour cache vs default 5 minutes)
- **🔧 Model Aliases**: Create custom model aliases for easier management
- **☁️ Cloud Deployment**: Deploy to Cloud for Cursor IDE integration with global edge performance
### Format Support
- **OpenAI Format**: Standard OpenAI Chat Completions API
- **Claude Format**: Anthropic Messages API
- **Gemini Format**: Google Generative AI API
- **OpenAI Responses API**: Codex CLI format
- **Ollama Format**: Compatible with Ollama-based tools
### CLI Integration
- Works with: Cursor, Claude Code, OpenAI Codex, Cline, RooCode, AmpCode, and more
- Seamless integration with popular AI coding assistants
## 📦 Install
```bash
# Install globally
npm install -g 9router
9router
# Run directly with npx
npx 9router
```
## 🚀 Quick Start
```bash
9router # Start server with default settings
9router --port 8080 # Custom port
9router --no-browser # Don't open browser
9router --skip-update # Skip auto-update check
9router --help # Show help
```
**Dashboard**: `http://localhost:20128/dashboard`
## 💾 Data Location
User data stored at:
- macOS/Linux: `~/.9router/db.json`
- Windows: `%APPDATA%/9router/db.json`
## 🛠️ Development
### Setup
```bash
# Clone repository
git clone https://github.com/yourusername/9router.git
cd 9router
# Install dependencies
npm install
# Start development server
npm run dev
```
### Project Structure
```
9router/
├── src/
│ ├── app/ # Next.js app (dashboard & API routes)
│ ├── lib/ # Core libraries (DB, OAuth, etc.)
│ ├── shared/ # Shared components & utilities
│ └── sse/ # SSE streaming handlers
├── open-sse/ # Core proxy engine (translator, handlers)
│ ├── translator/ # Format translators
│ ├── handlers/ # Request handlers
│ ├── services/ # Core services
│ └── config/ # Provider configurations
└── public/ # Static assets
```
## 🧰 Tech Stack
| Layer | Technology |
|-------|------------|
| **Runtime** | Node.js 20+ / Bun |
| **Framework** | Next.js 15 |
| **Dashboard** | React 19 + Tailwind CSS 4 |
| **Database** | LowDB (JSON file-based) |
| **CLI** | Node.js CLI with auto-update |
| **Streaming** | Server-Sent Events (SSE) |
| **Auth** | OAuth 2.0 (PKCE) + API Keys |
| **Deployment** | Standalone / VPS |
| **State Management** | Zustand |
### Core Libraries
- **lowdb**: Lightweight JSON database
- **undici**: High-performance HTTP client
- **uuid**: Unique identifier generation
- **open**: Cross-platform browser launcher
## 🙏 Acknowledgments
Special thanks to:
- **CLIProxyAPI**: The original Go implementation that inspired this project. 9Router is a JavaScript port with some features and web dashboard.
## 📄 License
MIT License - see [LICENSE](LICENSE) for details.