# Agents de code

> Faites tourner Claude Code, OpenCode, Deep Code, Codex ou Cursor sur des crédits Tchavi, payés par mobile money.

- Canonical: https://tchavi.com/fr/docs/coding-agents

---


Chaque agent de code en terminal parle à un modèle via HTTP, et chacun vous laisse changer l'adresse à laquelle il s'adresse. Pointez-le vers Tchavi et votre agent tourne sur des crédits Tchavi — rechargés en mobile money — au lieu d'une carte que votre banque ne vous laisse peut-être pas utiliser.

Choisissez votre outil ci-dessous. Chaque guide est autonome : URL de base, clé, modèles, et ce que cet outil-là perd derrière une passerelle.

## Les cinq guides

- **[Claude Code](/docs/coding-agents/claude-code)** — le seul à parler l'API Anthropic Messages. Tchavi lui expose un endpoint dédié.
- **[OpenCode](/docs/coding-agents/opencode)** — un bloc de fournisseur personnalisé dans `opencode.json`.
- **[Deep Code](/docs/coding-agents/deep-code)** — l'agent terminal de DeepSeek, trois lignes dans `settings.json`.
- **[Codex](/docs/coding-agents/codex)** — un fournisseur nommé dans `~/.codex/config.toml`.
- **[Cursor](/docs/coding-agents/cursor)** — le chemin « votre clé » de l'éditeur, avec de vraies limites.

## Choisir la bonne URL de base

Tchavi comprend deux formats de requête, et celui à utiliser ne dépend que de l'outil.

| Format             | URL de base                 | Outils                             |
| ------------------ | --------------------------- | ---------------------------------- |
| Compatible OpenAI  | `https://tchavi.com/api/v1` | OpenCode, Deep Code, Codex, Cursor |
| Anthropic Messages | `https://tchavi.com/api`    | Claude Code                        |

<Callout type="warning" title="Les deux URL ne diffèrent pas que par le suffixe">
  Claude Code ajoute lui-même `/v1/messages` à ce que vous lui donnez : son URL de base s'arrête
  donc à `/api`. Tous les autres outils attendent le `/v1`. Coller la mauvaise produit un 404 qui
  ressemble à une panne.
</Callout>

## Obtenir une clé

Il vous faut une clé API depuis le [tableau de bord](/dashboard/api-keys). Elle ressemble à `sk-tch-…` et n'est affichée qu'une seule fois, à sa création.

<Callout type="note">
  Les clés vont dans des variables d'environnement ou un fichier de configuration hors de votre
  dépôt — jamais dans un fichier que vous committez. Plusieurs de ces outils lisent une
  configuration au niveau du projet, facile à committer par inadvertance ; chaque guide indique
  l'emplacement sûr.
</Callout>

<Callout type="tip" title="Une clé par agent">
  Un agent boucle tout seul, et mal configuré il peut épuiser un solde plus vite que prévu. Gardez
  une clé API distincte par outil : le journal des requêtes vous dira lequel a dépensé quoi, et en
  révoquer une n'interrompra pas les autres.
</Callout>

## Choisir un modèle

N'importe quel modèle de chat du [catalogue](/models) capable d'appeler des outils fonctionne avec ces agents. Quelques-uns adaptés à une charge d'agent, avec leur coût en crédits par 1K tokens en entrée :

| Modèle                      | Entrée | Sortie | Pour quoi                                        |
| --------------------------- | ------ | ------ | ------------------------------------------------ |
| `claude-sonnet-4-6`         | 7      | 36     | Le choix par défaut pour la plupart du code      |
| `claude-opus-4-8`           | 12     | 60     | Refactorisations difficiles, raisonnement long   |
| `gpt-5.4`                   | 6      | 36     | Une solide alternative, large support des outils |
| `deepseek-v4-pro`           | 3      | 10     | Moitié prix, capable sur les éditions courantes  |
| `deepseek-v4-flash`         | 0,72   | 3      | Tâches de fond et itération économique           |
| `claude-haiku-4-5-20251001` | 2,4    | 12     | Les tâches de fond de Claude Code                |

`GET /v1/models` renvoie la liste complète avec les identifiants exacts. Voir [Crédits et facturation](/docs/credits) pour la conversion d'un crédit en FCFA.

## Quand quelque chose échoue

Les erreurs de Tchavi ont la même forme sur les deux formats : le code vous dit quoi faire.

| Ce que vous voyez              | Ce que cela signifie                                           | Correctif                                                                        |
| ------------------------------ | -------------------------------------------------------------- | -------------------------------------------------------------------------------- |
| `401` / `invalid_api_key`      | La clé n'est jamais arrivée, ou ce n'est pas une clé Tchavi    | Vérifiez que la variable est exportée dans le shell d'où vous avez lancé l'outil |
| `402` / `insufficient_credits` | Solde insuffisant pour cette requête                           | Rechargez depuis le [tableau de bord](/dashboard/billing)                        |
| `403` / `model_not_allowed`    | Cet identifiant n'est pas au catalogue, ou pas sur votre offre | Vérifiez l'orthographe avec `GET /v1/models`                                     |
| `404` sur toutes les requêtes  | L'URL de base a le mauvais suffixe                             | Claude Code veut `/api` ; tout le reste veut `/api/v1`                           |
| `413` / `prompt_too_long`      | Le prompt dépasse le plafond facturable de ce modèle           | Compactez la conversation, ou passez à un modèle sans plafond                    |
| `429`                          | Limite de débit — par clé, par utilisateur et par IP           | Attendez les secondes indiquées par `Retry-After` ; les outils réessaient seuls  |

Pour voir ce que l'outil a réellement envoyé, ouvrez **Usage** dans le tableau de bord : chaque requête y est journalisée avec son modèle, ses comptes de tokens et les crédits débités, et vous pouvez ouvrir le détail de n'importe laquelle.

