# Agents de codage IA et outils - GateLLM

> Connectez Claude Code, Codex CLI, OpenClaw, Cline, Cursor, Zed, Goose, Aider et plus de 25 agents de codage à GateLLM — l’URL de base, la cible de configuration et le piège de chaque outil en un seul endroit.

Canonique: https://www.gatellm.io/fr/coding-agents/

## Agents de codage IA et outils
Pointez Claude Code, Codex CLI, OpenClaw, Cline, Cursor et plus de 25 autres agents de codage vers la passerelle avec les mêmes trois étapes — chacun avec sa cible de configuration exacte et ses noms de clés.
Chaque agent de codage IA lit une URL de base et une clé API quelque part — une variable d’environnement, un fichier de configuration ou un panneau de réglages. Cette page indique où chaque outil les lit, quel protocole il parle et le piège qui cause réellement des problèmes. Les configurations complètes à copier-coller se trouvent dans la documentation.
## Quel nom donner au modèle de la passerelle
Certains outils imposent leur propre ID de modèle et l’envoient tel quel. Si le nom de votre modèle de passerelle diffère, le premier appel renvoie 404. Deux façons de s’aligner :
Nommez le modèle de la passerelle exactement comme l’outil le demande — aucune configuration supplémentaire.
Ou forcez l’outil à utiliser votre nom de passerelle via sa variable d’environnement de modèle (par exemple ANTHROPIC_MODEL).
## Pointez n’importe quel agent de codage IA vers la passerelle
```
# Every agent is one base_url + one access key away
export ANTHROPIC_BASE_URL="https://your-gateway.gatellm.io"   # Anthropic agents: root (no /v1)
export ANTHROPIC_API_KEY="<gateway access key>"

export OPENAI_API_BASE="https://your-gateway.gatellm.io/v1"   # OpenAI-compatible agents: /v1
export OPENAI_API_KEY="<gateway access key>"

# Codex CLI (~/.codex/config.toml) speaks the Responses protocol
# [model_providers.gatellm]
# base_url = "https://your-gateway.gatellm.io/v1"
# wire_api = "responses"
```
### `Authorization: Bearer <key>`
- SDK / framework: OpenAI · DashScope · générique
- Le préfixe Bearer est insensible à la casse

### `x-api-key: <key>`
- SDK / framework: SDK Anthropic
- Authorization est également accepté

### `x-goog-api-key: <key>`
- SDK / framework: SDK Gemini
- Authorization est également accepté

## Matrice de compatibilité des outils

### Agents en terminal
Claude Code, Codex CLI, Gemini CLI, OpenClaw, opencode, Crush, Droid, Goose, Aider, Qwen Code, OpenHands, Kimi Code, Plandex, SWE-agent, Grok Build, Mistral Vibe, MiMo Code, ForgeCode, Codebuff
| Outil | Protocole | Prise en charge | Cible de configuration | Noms de clés / réglages | Docs |
| --- | --- | --- | --- | --- | --- |
| Claude Code | Anthropic | Natif | env vars | ANTHROPIC_BASE_URL, ANTHROPIC_API_KEY, ANTHROPIC_MODEL | https://docs.gatellm.io/en/quickstart/claude-code-via-gateway |
| Codex CLI | OpenAI Responses | Natif | ~/.codex/config.toml | base_url, env_key, wire_api | https://docs.gatellm.io/en/reference/clients-and-gateway-diffs |
| Gemini CLI | Gemini | Natif | env vars | GOOGLE_GEMINI_BASE_URL, GEMINI_API_KEY | https://docs.gatellm.io/en/reference/clients-and-gateway-diffs |
| OpenClaw | OpenAI / Anthropic-compatible | Compatible OpenAI | openclaw.json | models.providers.<id>.baseUrl, models.providers.<id>.apiKey | https://docs.gatellm.io/en/quickstart/anthropic-interop |
| opencode | OpenAI-compatible | Compatible OpenAI | opencode.json | provider.<id>.options.baseURL | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Crush | OpenAI / Anthropic-compatible | Compatible OpenAI | crush.json | providers.<id>.base_url, providers.<id>.type | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Factory Droid | OpenAI / Anthropic-compatible | Compatible OpenAI | ~/.factory/settings.json | customModels[].baseUrl, customModels[].provider | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Goose | OpenAI-compatible | Compatible OpenAI | env vars | OPENAI_HOST, OPENAI_BASE_PATH, OPENAI_API_KEY | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Aider | OpenAI-compatible (LiteLLM) | Compatible OpenAI | env vars | OPENAI_API_BASE | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Qwen Code | OpenAI-compatible | Compatible OpenAI | env vars | OPENAI_BASE_URL, OPENAI_API_KEY, OPENAI_MODEL | https://docs.gatellm.io/en/quickstart/openai-compatible |
| OpenHands | OpenAI-compatible (LiteLLM) | Compatible OpenAI | ~/.openhands/settings.json | base_url, model openai/ prefix | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Kimi Code CLI | OpenAI / Anthropic | Compatible OpenAI | config.toml | providers | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Plandex | OpenAI-compatible | Compatible OpenAI | custom models JSON | baseUrl | https://docs.gatellm.io/en/quickstart/openai-compatible |
| SWE-agent | OpenAI-compatible (LiteLLM) | Compatible OpenAI | env vars | OPENAI_BASE_URL | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Grok Build | OpenAI-compatible | Compatible OpenAI | config.toml | custom models | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Mistral Vibe | OpenAI-compatible | Compatible OpenAI | ~/.vibe/config.toml | providers | https://docs.gatellm.io/en/quickstart/openai-compatible |
| MiMo Code | OpenAI-compatible | Compatible OpenAI | /connect custom provider | base URL, API key | https://docs.gatellm.io/en/quickstart/openai-compatible |
| ForgeCode | OpenAI / Anthropic | Compatible OpenAI | setup wizard | base URL | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Codebuff | OpenAI-compatible | Compatible OpenAI | settings | base URL, API key | https://docs.gatellm.io/en/quickstart/openai-compatible |

### IDE et extensions
Cline, Roo Code, Kilo Code, Continue, Zed, Cursor, Windsurf, GitHub Copilot (BYOK)
| Outil | Protocole | Prise en charge | Cible de configuration | Noms de clés / réglages | Docs |
| --- | --- | --- | --- | --- | --- |
| Cline | OpenAI-compatible | Compatible OpenAI | Settings → OpenAI Compatible | Base URL, API Key, Model ID | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Roo Code | OpenAI-compatible | Compatible OpenAI | Settings → OpenAI Compatible | Base URL, API Key, Model ID | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Kilo Code | OpenAI-compatible | Compatible OpenAI | Settings → OpenAI Compatible | Base URL, API Key, Model ID | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Continue | OpenAI-compatible | Compatible OpenAI | config.yaml | models[].apiBase | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Zed | OpenAI-compatible | Compatible OpenAI | settings.json | language_models.openai_compatible.<id>.api_url | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Cursor | OpenAI | Partiel | Settings → Models → Override OpenAI Base URL | Override OpenAI Base URL | https://docs.gatellm.io/en/quickstart/openai-compatible |
| Windsurf | OpenAI-compatible | Compatible OpenAI | Settings → Models → BYOK / custom | Base URL, API Key | https://docs.gatellm.io/en/quickstart/openai-compatible |
| GitHub Copilot (BYOK) | OpenAI-compatible | Compatible OpenAI | Manage Models → OpenAI-compatible | Base URL, API Key | https://docs.gatellm.io/en/quickstart/openai-compatible |

### Plateformes managées
Warp (clés BYOK uniquement), Amazon Q Developer CLI, Devin — point de terminaison fixe ou non modifiable
| Outil | Protocole | Prise en charge | Cible de configuration | Noms de clés / réglages | Docs |
| --- | --- | --- | --- | --- | --- |
| Warp | OpenAI / Anthropic / Gemini (BYOK) | Partiel | Settings → BYOK | BYOK API keys | https://docs.gatellm.io/en/reference/supported-models-and-sdks |
| Amazon Q Developer CLI | MCP | Aucun point de terminaison personnalisé | MCP server | — | https://docs.gatellm.io/en/reference/supported-models-and-sdks |
| Devin | — | Aucun point de terminaison personnalisé | — | — | https://docs.gatellm.io/en/reference/supported-models-and-sdks |

## Pièges
### L’outil impose son propre ID de modèle
Claude Code envoie sa valeur par défaut configurée (par exemple claude-opus-5 ou claude-sonnet-5) — pas le nom de votre passerelle. Soit nommez le modèle de la passerelle exactement comme l’outil le demande, soit définissez sa variable d’environnement de modèle (par exemple ANTHROPIC_MODEL) sur votre nom de passerelle. En cas d’incohérence → 404 model_not_found dès le premier message.

### Les outils au protocole Anthropic prennent la racine, pas /v1
L’URL de base des clients de style Anthropic pointe vers la racine de la passerelle (sans /v1) — le client ajoute lui-même /v1/messages. Ajouter /v1 ici double le segment de chemin.

### Les fournisseurs personnalisés Codex exigent wire_api="responses"
Codex CLI impose wire_api = "responses" pour un bloc [model_providers.*] personnalisé. La passerelle implémente /v1/responses nativement — pointez base_url vers elle et définissez env_key sur une clé d’accès à la passerelle.

### Les outils reposant sur LiteLLM veulent un préfixe de modèle openai/
Aider, OpenHands et SWE-agent reposent sur LiteLLM : définissez OPENAI_API_BASE sur la passerelle et donnez au modèle un préfixe openai/ (par exemple openai/gateway-model-name) pour que LiteLLM le route comme un point de terminaison compatible OpenAI.

### Par défaut, c’est l’OAuth d’abonnement, pas votre clé
Codex, Gemini CLI et Qwen Code utilisent par défaut la connexion OAuth / abonnement du fournisseur. Pour router via la passerelle, vous devez passer à l’authentification par clé API (définir explicitement la clé + l’URL de base) — sinon l’agent contourne entièrement la passerelle.

### Les IDE déduisent la prise en charge des outils/vision depuis l’ID de modèle
Cline / Roo / Kilo et d’autres décident de la capacité d’appel d’outils et de vision à partir du nom du modèle. Un nom de passerelle personnalisé peut désactiver l’appel de fonctions — si les appels d’outils échouent, vérifiez les règles de détection de capacités du client ou nommez le modèle comme une famille connue.

### Une inférence longue ajoute :keep-alive et _gateway_warning
Pendant une longue inférence amont, la passerelle émet des lignes de commentaire SSE :keep-alive (inoffensives — ignorez les lignes commençant par :), et en cas de rupture en cours de flux elle insère un champ _gateway_warning au lieu de renvoyer une erreur, afin que des outils comme Claude Code n’interrompent pas toute la conversation.

### Mode auto de Claude Code : décidez qui répond au verdict de sécurité
En mode auto, Claude Code attend un verdict côté serveur (un champ safeguards dans la requête) avant une action potentiellement dangereuse. Lorsque l’amont est Anthropic officiel, le verdict est produit dans la même requête et la passerelle le transmet tel quel. Lorsque l’amont est un tiers qui ignore ce champ, c’est la passerelle qui répond — et la valeur par défaut livrée (allow_all) libère toutes les actions, ce qui est plus permissif que de laisser l’appel intact. Rendez une route à son amont en écrivant "anthropic_server_safeguards": "upstream" dans l’extra_config de cet amont ; le réglage dans la console est réservé aux administrateurs.

## FAQ
### Puis-je utiliser Claude Code via GateLLM ?
Oui — définissez ANTHROPIC_BASE_URL sur la racine de la passerelle (sans /v1) et ANTHROPIC_API_KEY sur une clé d’accès à la passerelle. Nommez le modèle de la passerelle exactement comme l’ID demandé par Claude Code (par exemple claude-opus-5 ou claude-sonnet-5), ou alignez via ANTHROPIC_MODEL.
### Comment pointer Codex CLI vers la passerelle ?
Dans ~/.codex/config.toml, ajoutez un bloc [model_providers.<id>] avec base_url = "https://your-gateway.gatellm.io/v1", env_key pointant vers votre variable d’environnement de clé d’accès, et wire_api = "responses" — la passerelle implémente /v1/responses nativement.
### Quels agents de codage ne peuvent pas utiliser de point de terminaison personnalisé ?
Les plateformes hébergées comme Devin et Amazon Q Developer CLI n’exposent pas d’URL de base personnalisée, vous ne pouvez donc pas les router via la passerelle. Warp prend en charge les clés BYOK mais fixe le point de terminaison aux fournisseurs officiels. Tous les autres ici acceptent un remplacement d’URL de base.
### Les extensions d’IDE (Cline / Roo / Kilo) fonctionnent-elles ?
Oui — choisissez le fournisseur « OpenAI Compatible » dans les réglages, collez l’URL /v1 de la passerelle + la clé d’accès + le nom du modèle. Surveillez la détection de capacités : certains déduisent l’appel d’outils depuis l’ID de modèle.
### Pourquoi le nom du modèle compte-t-il autant ?
Les outils envoient un ID de modèle fixe — soit leur propre valeur par défaut, soit votre nom configuré. La passerelle route selon cette chaîne exacte, donc une incohérence donne un 404 model_not_found, pas une faute de frappe à ignorer.
### Et les agents reposant sur LiteLLM (Aider / OpenHands / SWE-agent) ?
Ils lisent OPENAI_API_BASE et veulent un préfixe openai/ sur le nom du modèle pour que LiteLLM traite la passerelle comme un point de terminaison compatible OpenAI.

## Voir aussi
- [Accueil](https://www.gatellm.io/fr/index.md)
- [Tarifs](https://www.gatellm.io/fr/pricing.md)
- [Calculateur de coûts](https://www.gatellm.io/fr/calculator.md)
- [À propos](https://www.gatellm.io/fr/about.md)
- [Réserver une démo](https://www.gatellm.io/fr/demo.md)
- [FAQ](https://www.gatellm.io/fr/faq.md)
- [Comparer les passerelles IA](https://www.gatellm.io/fr/compare.md)
- [Comparer LiteLLM](https://www.gatellm.io/fr/compare/litellm.md)
- [Comparer OpenRouter](https://www.gatellm.io/fr/compare/openrouter.md)
- [Comparer Alibaba Cloud AI Gateway](https://www.gatellm.io/fr/compare/alibaba-cloud.md)
- [Comparer Azure API Management](https://www.gatellm.io/fr/compare/azure-apim.md)
- [Comparer Apigee](https://www.gatellm.io/fr/compare/apigee.md)
- [Comparer Cloudflare AI Gateway](https://www.gatellm.io/fr/compare/cloudflare.md)
- [Comparer Kong AI Gateway](https://www.gatellm.io/fr/compare/kong.md)
- [Comparer Portkey](https://www.gatellm.io/fr/compare/portkey.md)
- [LiteLLM vs Kong AI Gateway](https://www.gatellm.io/fr/compare/litellm-vs-kong.md)
- [LiteLLM vs OpenRouter](https://www.gatellm.io/fr/compare/litellm-vs-openrouter.md)
- [LiteLLM vs Portkey](https://www.gatellm.io/fr/compare/litellm-vs-portkey.md)
- [Cas d’usage](https://www.gatellm.io/fr/use-cases.md)
- [Réduire le coût des LLM](https://www.gatellm.io/fr/use-cases/reduce-cost.md)
- [Haute disponibilité](https://www.gatellm.io/fr/use-cases/high-availability.md)
- [Isolation multi-tenant](https://www.gatellm.io/fr/use-cases/multi-tenant.md)
- [Conformité et audit](https://www.gatellm.io/fr/use-cases/compliance-audit.md)
- [Dépannage par symptôme](https://www.gatellm.io/fr/use-cases/troubleshooting.md)
- [Pile de modèles multi-fournisseurs](https://www.gatellm.io/fr/use-cases/mixed-model-stack.md)
- [Héberger l’IA en interne dans Office](https://www.gatellm.io/fr/use-cases/self-hosted-office-ai.md)
- [Visibilité et attribution des tokens](https://www.gatellm.io/fr/use-cases/token-ops.md)
- [Token FinOps : allocation et contrôle des coûts IA](https://www.gatellm.io/fr/use-cases/token-finops.md)
- [Gouvernance des outils MCP](https://www.gatellm.io/fr/use-cases/mcp-tool-governance.md)
- [Recherche web pour chaque modèle](https://www.gatellm.io/fr/use-cases/web-search-grounding.md)
- [Rotation et secours multi-clés](https://www.gatellm.io/fr/use-cases/multi-key-pooling.md)
- [Contrôle des clients connectés](https://www.gatellm.io/fr/use-cases/client-admission-control.md)
- [Imposer la politique d’usage des modèles](https://www.gatellm.io/fr/use-cases/enforce-model-policy.md)
- [Aucun choix de modèle côté client](https://www.gatellm.io/fr/use-cases/automatic-model-tiering.md)
- [Un protocole, n’importe quel modèle](https://www.gatellm.io/fr/use-cases/one-protocol-any-model.md)
- [Complément Office / Microsoft 365](https://www.gatellm.io/fr/office-addin.md)
- [Glossaire](https://www.gatellm.io/fr/glossary.md)
- [Catalogue de modèles](https://www.gatellm.io/fr/models.md)
- [Intégrations SDK et frameworks](https://www.gatellm.io/fr/integrations.md)
- [Sécurité et conformité](https://www.gatellm.io/fr/security.md)
