macOS · MIT License

One Claude Code.
Every model you choose.

Built on CLIProxyAPI — the proxy that routes Claude Code to Codex, Kimi, Gemini, Grok, and more. We embed it, wire the env vars, and give you isolated shell commands like cc-codex instead of manual proxy setup every time.

Get started View on GitHub →
zsh — cc-dialects
$ cc-dialect create cc-codex --preset codex-sol
✓ Created cc-codex · gpt-5.6-sol · proxy :43170
$ cc-dialect auth cc-codex codex
✓ ChatGPT OAuth complete
$ cc-dialect shim install cc-codex && cc-codex
cc-codex
cc-kimi
cc-gemini
cc-grok
cc-cursor
cc-copilot
10+ Provider routes
Parallel dialects
127.0.0.1 Localhost only
0 ~/.claude touched
Why Claude Dialects

CLIProxyAPI does the routing.
We do the wiring.

CLIProxyAPI is the excellent open-source proxy that translates Claude Code's Anthropic API calls to OpenAI Codex, Gemini, Kimi, Grok, and other providers. Out of the box, you install it, configure it, start the server, and export a handful of environment variables before every Claude Code session.

Manual CLIProxyAPI

What you normally do yourself

  • Download, install, and run the CLIProxyAPI server as a separate process
  • Write and maintain proxy.yaml — ports, providers, OAuth, model routes
  • Export ANTHROPIC_BASE_URL=http://127.0.0.1:8317 and ANTHROPIC_AUTH_TOKEN
  • Set ANTHROPIC_DEFAULT_OPUS_MODEL, SONNET_MODEL, and HAIKU_MODEL per provider
  • Run OAuth flows and manage credentials outside Claude Code
  • Start the proxy before Claude Code, stop it when done — or leave it running globally
  • One shared setup — switching providers means re-exporting vars or new shell profiles
  • Risk of touching global ~/.claude settings and conversation history
Claude Dialects

What cc-dialect handles for you

  • Embeds CLIProxyAPI in the cc-dialect binary — no separate download or container
  • Generates per-dialect proxy.yaml, ports, and model mappings from presets
  • Injects ANTHROPIC_BASE_URL, auth token, and model env vars when you run cc-codex
  • Maps opus / sonnet / haiku to provider-specific models automatically
  • cc-dialect auth cc-codex codex — scoped OAuth per dialect, not global
  • Proxy starts and stops with your dialect command — lifecycle included
  • Run cc-codex and cc-kimi in parallel — isolated ports, creds, and history
  • Your global ~/.claude stays untouched — each dialect gets its own claude/ dir

Same proxy engine, zero manual plumbing. Read the upstream project at router-for-me/CLIProxyAPI · Claude Code env setup docs on help.router-for.me

Architecture

Real Claude Code.
Private everything else.

Each dialect is a self-contained stack: embedded CLIProxyAPI, isolated OAuth or API keys, and a dedicated Claude Code config directory.

You run cc-codex

Your shell command launches the real Claude Code binary with dialect-specific env vars.

Embedded proxy starts

CLIProxyAPI translates Anthropic API calls to your provider — Codex, Kimi, xAI, and more. Embedded in the binary; no separate install.

Upstream responds

OAuth or API key auth stays scoped to this dialect. Settings and history never leak across commands.

🔐

Isolated credentials

Each dialect owns its OAuth tokens, API keys, and proxy config under DIALECT_HOME. Owner-only file permissions.

📂

Separate history

/model, /effort, plugins, and conversations live in per-dialect claude/ dirs — not your global setup.

🔌

SDK bridges

Cursor and GitHub Copilot dialects run local SDK bridges that forward Claude Code tools with schema-safe aliases.

🎯

Live model switching

Map opus, sonnet, and haiku to provider-specific models. Switch mid-conversation without losing context.

Providers

Pick your brain.
Run them all.

Presets encode provider defaults. Create as many named dialects as you need — each becomes its own shell command.

OpenAI Codex codex-sol

GPT-5.6 Sol, Terra, Luna via ChatGPT OAuth

cc-codex
Moonshot Kimi kimi

Kimi K3 flagship with K2.7 Code Highspeed tiers

cc-kimi
Google Gemini gemini

Antigravity OAuth · Gemini Pro Agent + Flash

cc-gemini
xAI Grok grok · grok-build · composer

Grok 4.5, Grok Build, Composer 2.5 Fast routes

cc-grok
Cursor cursor-composer

Official @cursor/sdk bridge · Composer 2.5 Fast/Standard

cc-cursor
GitHub Copilot copilot-auto

Copilot SDK · MAI, Codex, Claude, Gemini presets

cc-copilot
Z.ai GLM glm

GLM-5.2 via Anthropic-compatible API

cc-glm
Anthropic Claude claude

Separate OAuth · Fable 5, Sonnet 4.6, Haiku 4.5

cc-claude
Configuration

Copy. Paste. Ship.

Every dialect follows the same four-step rhythm: create, authenticate, install, run. See the getting started guide or provider docs for full details.

Install from source
git clone https://github.com/stefandevo/claude-dialects.git
cd claude-dialects
make install
export PATH="$HOME/.local/bin:$PATH"

# Persist PATH
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc
OpenAI Codex · GPT-5.6 Sol
cc-dialect create cc-codex --preset codex-sol
cc-dialect auth cc-codex codex
cc-dialect shim install cc-codex
cc-codex

# Switch models inside Claude Code
/model opus    # → gpt-5.6-sol
/model sonnet  # → gpt-5.6-terra
/effort high
Moonshot Kimi · OAuth
cc-dialect create cc-kimi --preset kimi
cc-dialect auth cc-kimi kimi
cc-dialect shim install cc-kimi
cc-kimi

# List live models
cc-dialect models cc-kimi
Cursor · Composer 2.5
cc-dialect cursor install
export CURSOR_API_KEY="your_cursor_api_key"

cc-dialect create cc-cursor --preset cursor-composer
cc-dialect shim install cc-cursor
cc-cursor

# Check bridge status
cc-dialect cursor status
cc-dialect models cc-cursor
Run several dialects in parallel
cc-dialect create cc-codex-work --preset codex
cc-dialect auth cc-codex-work codex
cc-dialect shim install cc-codex-work

cc-dialect create cc-kimi-work --preset kimi
cc-dialect auth cc-kimi-work kimi
cc-dialect shim install cc-kimi-work

# Each gets its own port, credentials, and history
cc-codex-work    # proxy :43170
cc-kimi-work     # proxy :43171
Custom model mapping
cc-dialect create cc-my-codex \
  --preset codex \
  --model gpt-5.6 \
  --opus-model gpt-5.6-sol \
  --sonnet-model gpt-5.6-terra \
  --haiku-model gpt-5.6-luna \
  --effort-level auto \
  --concurrency 3 \
  --port 53170

# Anthropic-compatible custom provider
export MY_PROVIDER_TOKEN="..."
cc-dialect create cc-my-model \
  --model my-model-id \
  --base-url https://provider.example.com/api/anthropic \
  --token-env MY_PROVIDER_TOKEN
Security

Localhost by design.

Proxy servers and SDK bridges bind only to 127.0.0.1. Configuration, local API keys, and OAuth credentials use owner-only permissions. Environment variables are scoped to the launched Claude Code process — never written to global settings.

  • Per-dialect CLAUDE_CONFIG_DIR isolation
  • Checked port allocation starting at :43170
  • Cursor/Copilot tools forwarded with cc_tool_ schema aliases
  • Claude Code permission prompts remain in control
~/.claude untouched
cc-codex :43170 · auth/ · claude/
cc-kimi :43171 · auth/ · claude/
cc-cursor proxy + bridge ports

macOS only

Claude Dialects currently targets macOS only — no Windows or Linux support yet. This is an independent, unofficial project, not affiliated with Anthropic, OpenAI, Google, Cursor, GitHub, or other providers. You are responsible for each provider's terms and usage policies. Full legal & notices →

Ready to dialect?

Build from source, create your first command, and run Claude Code with the model you actually want.