One local endpoint for every AI subscription you already pay for.
Tunnel Agent is a desktop control center for CLIProxyAPI, Perplexity WebUI Scraper and 9Router. Sign in to your providers, start the proxy with one click and point Claude Code, Codex, OpenCode or any coding agent at localhost.
Open source · MIT · No account required
Dashboard
Usage across every engine, last 14 days.
Requests
12,480
Tokens
38.2M
Est. cost
$214
Requests per day
Interactive preview — click the sidebar. It follows the site theme, just like the app.
Features
Everything between your subscriptions and your agents.
Proxies like CLIProxyAPI are powerful but live in config files and terminals. Tunnel Agent gives them a native window.
One-click servers
Download, update, start and stop each engine from the app. Binaries are fetched from GitHub releases automatically.
Every way to sign in
OAuth for Claude, OpenAI, Kimi, Antigravity, xAI, Devin and Meta, API keys for Gemini or any OpenAI-compatible service, and Perplexity sessions.
Quota at a glance
Live 5-hour and weekly limits for Claude, Codex, Devin, Antigravity, xAI, Cursor, Kiro and Trae accounts.
Model fallback
Define virtual models that fall through a chain of real models when one provider runs out of quota.
Agent configuration
Detects installed coding agents and writes their config to route through your local endpoint. Reversible in one click.
Usage and cost
Requests, tokens and estimated spend per model, provider and day, aggregated across every engine.
Local by design
Engines listen on localhost only. Credentials stay on your disk; the app talks to providers, never to us.
14 languages
English, Spanish, German, French, Japanese, Chinese and more. Light, dark or follow the system.
Auto-updates
Installer builds update themselves; engines can be kept on the latest release or pinned.
Engines
Three engines, one window.
Run any combination side by side. Each engine gets its own port, logs, version and settings.
127.0.0.1:8317CLIProxyAPI
Unified proxy for OAuth and OpenAI-compatible upstream providers. The default engine for Claude, Codex, Gemini and friends.
127.0.0.1:8327Perplexity WebUI Scraper
OpenAI-compatible local API backed by Perplexity WebUI sessions. Add accounts with a session token.
127.0.0.1:201289Router
OpenAI-compatible local router for 40+ providers with auto-fallback. Requires Node.js 18 or newer.
How it works
From download to first prompt in minutes.
- 01
Install
Download the build for your OS. On first launch Tunnel Agent fetches the engine binaries for you.
- 02
Connect
Open Providers and sign in with OAuth, paste an API key or add a Perplexity session.
- 03
Start
Press Start. The engine listens on localhost and the status pill turns green.
- 04
Code
In Agents, configure your CLI with one click — or point any OpenAI-compatible client at the endpoint.
# the endpoint Tunnel Agent starts for you
export OPENAI_BASE_URL=http://127.0.0.1:8317/v1
export OPENAI_API_KEY=<key from Configuration>
curl $OPENAI_BASE_URL/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
# or skip all of this: Agents → ConfigureCoding agents
Your favourite CLI, on any model you have access to.
Tunnel Agent detects installed agents, backs up their config and writes the local endpoint, model and key. Restore the original whenever you want.
Claude Code
~/.claude/settings.json
Codex CLI
~/.codex/config.toml
OpenCode
~/.config/opencode/opencode.json
Pi
~/.pi/agent/models.json
Oh My Pi
~/.omp/agent/models.yml
Factory Droid
~/.factory/settings.json
Grok Build
~/.grok/config.toml
Tour
See the real thing.
Screenshots from the desktop app in dark mode.

Download
Get Tunnel Agent 1.1.11
Free and open source. Pick your platform — every build is published on GitHub Releases.
Windows
Windows 10 or 11 · primary platform
macOS
Apple Silicon and Intel
Linux
x64 and ARM64 builds
Read the docs, open an issue, send a PR.
Guides for every screen, troubleshooting for common errors and everything you need to contribute.