Documentation

Documentation

Zed

Zed déclare un fournisseur compatible avec OpenAI dans settings.json et demande la clé séparément, via le panneau Agent. Le tableau models n’est pas une simple commodité : c’est toute la liste des modèles que Zed connaîtra.

Un bloc language_models.openai_compatible dans settings.json déclare l’endpoint et ses modèles ; la clé est saisie dans l’interface Agent Panel, jamais dans le fichier.

~/.config/zed/settings.json
{
  "language_models": {
    "openai_compatible": {
      "kunavo": {
        "api_url": "https://api.kunavo.com/v1",
        "available_models": [
          {
            "name": "claude-sonnet-5",
            "display_name": "Claude Sonnet 5",
            "max_tokens": 200000,
            "max_output_tokens": 64000,
            "capabilities": { "tools": true, "images": true }
          },
          {
            "name": "claude-haiku-4-5",
            "display_name": "Claude Haiku 4.5",
            "max_tokens": 200000
          }
        ]
      }
    }
  }
}
La clé API ne va pas dans ce fichier. La documentation de Zed le précise clairement : saisissez-la dans les paramètres du fournisseur du panneau Agent, ou définissez la variable d’environnement générée par Zed pour le nom du fournisseur. settings.json est synchronisé et partagé ; une clé qui s’y trouve est donc partagée avec lui.
available_models constitue tout le catalogue dont dispose Zed : aucun appel de découverte n’est effectué pour un fournisseur compatible avec OpenAI. Un modèle que vous n’avez pas répertorié n’apparaît donc pas dans le sélecteur. Ajoutez une entrée pour chaque identifiant à utiliser et définissez max_tokens sur la fenêtre de contexte réelle de ce modèle.
Pas encore de clé ? Créez un compte Kunavo, créez une clé (elle commence par 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 Zed.

Étape par étape

  1. Créez une clé sur /app/keys et copiez-la — elle n’est affichée qu’une seule fois.
  2. Ouvrez settings.json avec zed: open settings depuis la palette de commandes et ajoutez le bloc ci-dessus.
  3. Ouvrez les paramètres du panneau Agent, repérez le fournisseur sous le nom utilisé comme clé (ici kunavo) et collez-y la clé API.
  4. Choisissez le modèle dans le sélecteur de modèles du panneau Agent : il affiche le display_name et envoie le name.
  5. Ne remplacez que les valeurs capabilities qui diffèrent des paramètres par défaut de Zed ; par défaut, tools: true avec les images et les appels d’outils parallèles désactivés.

Vérifié avec Documentation de Zed sur l’accès à l’API 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 Zed.

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

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èleEntrée / sortie sur KunavoOù cela s’intègre dans Zed
claude-sonnet-5$1.40 / $7.00valeur par défaut de l’agent — outils et images activés
claude-opus-5$3.50 / $17.50refactorisations plus importantes, où le plan compte davantage que le débit
claude-haiku-4-5$0.70 / $3.50assistances en ligne et modifications rapides
gpt-5-6-terra$0.70 / $4.20une deuxième famille derrière la même entrée de fournisseur
La facturation se fait au token à partir d’un solde prépayé, sans frais mensuels — consultez la facturation. Avec un contexte répété — ce qu’envoient la plupart des éditeurs et clients de chat — la mise en cache des prompts influe davantage sur la facture que le choix du modèle.

Questions fréquentes

Comment ajouter un fournisseur compatible avec OpenAI à Zed ?

Ajoutez un bloc language_models.openai_compatible à settings.json, avec le nom de votre fournisseur comme clé, un api_url pointant vers la racine /v1 du point de terminaison et un tableau available_models répertoriant chaque identifiant de modèle souhaité. Ouvrez ensuite les paramètres du fournisseur dans le panneau Agent et saisissez-y la clé API. La documentation de Zed précise que les clés ne doivent pas figurer dans settings.json.

Pourquoi un modèle n’apparaît-il pas dans le sélecteur de modèles de Zed ?

Parce qu’il ne figure pas dans available_models. Zed n’interroge pas le catalogue d’un point de terminaison compatible avec OpenAI ; le tableau de settings.json constitue donc la liste complète des modèles proposés par ce fournisseur. Ajoutez une entrée dont name est l’identifiant du modèle, avec un display_name pour le sélecteur et max_tokens défini sur la fenêtre de contexte réelle.

Où Zed stocke-t-il la clé API d’un fournisseur personnalisé ?

Dans l’interface des paramètres du fournisseur du panneau Agent, ou dans la variable d’environnement que Zed génère à partir du nom du fournisseur — pas dans settings.json. Zed conserve volontairement les identifiants en dehors du fichier de paramètres, car celui-ci est conçu pour être transportable et partageable, contrairement à une clé.

Zed peut-il utiliser des modèles Claude via un point de terminaison personnalisé ?

Oui. Le fournisseur openai_compatible transmet directement le nom du modèle à api_url ; l’identifiant Claude est donc résolu par le point de terminaison, et non par Zed. Définissez capabilities.tools sur true pour les modèles qui prennent en charge les appels d’outils — c’est la valeur par défaut de Zed pour ce type de fournisseur — et l’agent fonctionne comme avec un fournisseur natif.