Documentation
Claude Code Router
CCR s’intercale entre Claude Code et le service qui fournit les modèles, ce qui permet d’acheminer différentes catégories de requêtes vers différentes destinations. Ajoutez Kunavo comme point de terminaison personnalisé, puis laissez la configuration de l’agent associer chaque niveau Claude à un identifiant de modèle.
CCR est désormais une application de bureau, et non un config.json : ajoutez Kunavo comme endpoint API personnalisé, puis laissez ses règles de routage envoyer chaque catégorie de requêtes vers un modèle différent.
Providers → Add provider
Preset provider Other / custom API endpoint
Name Kunavo
API endpoint https://api.kunavo.com
API key sk-kn-...
Models claude-sonnet-5, claude-opus-5, claude-haiku-4-5
Agent Config → Add profile → Claude Code
Model Kunavo/claude-sonnet-5
Opus model Kunavo/claude-opus-5
Haiku model Kunavo/claude-haiku-4-5config.json n’a plus aucun effet. CCR stocke sa configuration d’exécution dans ~/.claude-code-router/config.sqlite et ne lit l’ancien fichier config.json qu’une seule fois, comme source de migration, lorsqu’aucune configuration SQLite n’existe. Après ce premier lancement, les modifications du fichier JSON sont ignorées sans avertissement. La plupart des articles sur Internet — ainsi que les anciennes versions de notre propre guide — décrivent encore le fichier JSON.https://api.kunavo.com : CCR vérifie le protocole à cette adresse, et Kunavo répond nativement au format Anthropic Messages à /v1/messages. Si vous préférez que CCR utilise le format compatible avec OpenAI, indiquez plutôt https://api.kunavo.com/v1 : les deux interfaces sont accessibles avec la même clé.sk-kn-) et ajoutez un crédit à partir de 10 $ — les appels sont payés sur ce solde et les appels échoués ne sont pas facturés. Le tableau de bord s’ouvre ensuite sur la configuration Claude Code Router.Étape par étape
- Créez une clé sur
/app/keyset copiez-la — elle n’est affichée qu’une seule fois. - Dans CCR Desktop, ouvrez Providers → Add provider, choisissez le préréglage
Other / custom API endpoint, puis renseignez Name, API endpoint et API key. - Ajoutez des identifiants de modèles dans Models — utilisez Search models pour récupérer le catalogue, ou Custom models pour saisir les identifiants.
- Lancez Check Connection sur deux ou trois modèles. Cette vérification envoie de vraies requêtes ; sélectionnez uniquement les modèles nécessaires à la vérification, plutôt que toute la liste.
- Ouvrez Agent Config → Add profile → Claude Code, définissez Model et les dérogations par niveau Opus / Sonnet / Haiku, enregistrez, puis lancez Claude Code depuis CCR.
Vérifié avec la page de configuration des fournisseurs de CCR le 6 septembre 2026. Les paramètres tiers évoluent ; si le nom d’un champ ne correspond plus à ce que vous voyez ici, cette page fait autorité, pas celle-ci.
Vérifiez avant de déboguer le client
Une requête suffit à déterminer si l’échec vient de l’endpoint, de la clé ou du fichier de configuration. Si cette requête renvoie du JSON, la même URL de base et la même clé fonctionnent dans Claude Code Router.
# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/messages \
-H "Authorization: Bearer sk-kn-..." \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-5","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'Quel identifiant de modèle saisir dans le champ
Tous les modèles textuels sont accessibles sous forme d’identifiant de modèle — la liste à jour se trouve sur GET /v1/models, et le catalogue avec les prix sur la page des modèles. Les tarifs sont en USD par million de tokens, entrée / sortie.
| Identifiant du modèle | Entrée / sortie sur Kunavo | Où cela s’intègre dans Claude Code Router |
|---|---|---|
claude-opus-5 | $3.50 / $17.50 | le niveau Opus — planification et modifications complexes |
claude-sonnet-5 | $1.40 / $7.00 | le niveau Sonnet et le modèle par défaut du profil |
claude-haiku-4-5 | $0.70 / $3.50 | le niveau Haiku, auquel revient le volume des sous-agents |
gpt-5-6-terra | $0.70 / $4.20 | une route à long contexte, accessible depuis la même entrée de fournisseur |
Pourquoi la correspondance par niveau est essentielle
Claude Code choisit un modèle par niveau, et non par requête : la boucle principale demande le niveau Sonnet ou Opus, tandis que le travail en arrière-plan — sous-agents, recherche, synthèse — utilise le modèle léger et rapide. La configuration de l’agent de CCR expose ces niveaux dans des champs distincts ; le modèle coûteux ne traite donc que les requêtes qui en ont besoin, tandis que le niveau très sollicité est associé à un identifiant bon marché. C’est la raison d’être d’un routeur placé devant Claude Code, et ce fonctionnement n’apparaît pas dans les propres paramètres de Claude Code.
Questions fréquentes
Où Claude Code Router stocke-t-il sa configuration ?
Dans une base de données SQLite : ~/.claude-code-router/config.sqlite sur macOS et Linux, %APPDATA%\claude-code-router\config.sqlite sur Windows. L’ancien fichier config.json n’est lu qu’une seule fois comme source de migration, lorsqu’aucune configuration SQLite n’existe encore. Après la migration, toute modification de config.json est sans effet sur la configuration active. Modifiez plutôt les paramètres dans l’interface de bureau.
Comment ajouter un point de terminaison API personnalisé à Claude Code Router ?
Ouvrez Providers, cliquez sur Add provider, puis sélectionnez le préréglage « Other / custom API endpoint » : il accepte toute source en amont compatible avec OpenAI, Anthropic ou Gemini. Renseignez un Name unique, l’URL de base du point de terminaison API et la clé API, puis ajoutez les identifiants de modèles en les récupérant ou en les saisissant sous Custom models. Check Connection envoie de vraies requêtes de test pour vérifier que le point de terminaison, la clé, le protocole et les identifiants fonctionnent ensemble.
Claude Code Router peut-il envoyer différents niveaux Claude vers différents modèles ?
Oui, et c’est sa principale raison d’être. Dans Agent Config, un profil Claude Code comporte un modèle par défaut ainsi que des dérogations facultatives pour Fable, Opus, Sonnet et Haiku. Claude Code demande un niveau plutôt qu’un identifiant précis ; associer le niveau Haiku à un modèle bon marché et le niveau Opus à un modèle puissant répartit donc la facture selon le fonctionnement déjà adopté par l’agent : travail d’arrière-plan fréquent sur l’identifiant bon marché, planification sur le modèle coûteux.
Claude Code Router fonctionne-t-il avec une passerelle au format Anthropic ?
Oui. Le préréglage de point de terminaison personnalisé vérifie le protocole à l’URL fournie et prend en charge Anthropic Messages comme l’un de ses protocoles. Une passerelle exposant /v1/messages peut donc être ajoutée directement, en indiquant son origine comme point de terminaison API. Une passerelle qui expose également une interface compatible avec OpenAI peut être ajoutée de l’une ou l’autre façon ; seule change la représentation utilisée par CCR pour communiquer avec elle.