
Connecter Zed à Claude via la passerelle
Zed est rapide et son assistant est vraiment utile, mais la manière de configurer un point de terminaison Claude personnalisé ne se trouve pas là où la plupart des utilisateurs cherchent en premier. Le fournisseur Anthropic natif ne permet pas de redéfinir l’URL de base ; la méthode simple pour accéder à la passerelle passe donc par le bloc openai_compatible de Zed.
Pourquoi ne pas utiliser le fournisseur Anthropic
Zed intègre un fournisseur Anthropic natif, et le réflexe naturel est de le faire pointer vers la passerelle. Le problème est que ce fournisseur n’a pas de paramètre api_url : aucun champ pris en charge ne permet donc de le rediriger vers un autre hôte que l’hôte Anthropic par défaut.
Cette seule limitation explique pourquoi tant d’utilisateurs se retrouvent bloqués. Plutôt que de tenter de la contourner, faites passer Claude par le mécanisme générique openai_compatible, qui expose l’URL de base et est précisément conçu pour les points de terminaison tiers.
Il est utile de considérer le fournisseur natif comme lié à une destination fixe et le fournisseur openai_compatible comme configurable. Pour une passerelle multimodèle, cette voie configurable est de toute façon celle qu’il vous faut, car le même bloc peut donner accès à Claude et à tout autre modèle proposé par la passerelle via une seule api_url. Toute la configuration des modèles de l’éditeur reste ainsi au même endroit, au lieu d’être répartie entre deux mécanismes de fournisseurs aux règles différentes. Cette décision détermine toute la suite de la configuration ; il vaut donc la peine de bien la comprendre avant de modifier quoi que ce soit. Une fois que vous avez compris que le bloc openai_compatible est la voie prise en charge, il ne reste plus qu’à renseigner les champs.
Ajouter un bloc openai_compatible
Dans settings.json, sous language_models.openai_compatible, ajoutez un fournisseur nommé. Définissez son api_url sur l’adresse de la passerelle, avec /v1 à la fin ; Zed ajoute /chat/completions à ce chemin, et c’est donc l’interface compatible OpenAI de la passerelle qui répond.
Le nom est libre et devient le libellé dans le menu des modèles de Zed. Un seul bloc peut donner accès à plusieurs modèles Claude, chacun étant déclaré à l’étape suivante.
Le suffixe /v1 est essentiel ici : Zed construit le chemin des requêtes de chat directement à partir de la valeur fournie dans api_url. L’absence de /v1 envoie donc les requêtes au mauvais endroit, et une barre oblique finale peut doubler le chemin. Définissez exactement l’hôte suivi de /v1 pour que le routage fonctionne. Un rechargement rapide des paramètres après la modification permet de confirmer que Zed a analysé le bloc sans erreur. Si le fournisseur n’apparaît pas, vérifiez d’abord la présence d’une erreur de syntaxe JSON dans le bloc.
Déclarer available_models
Zed ne détecte pas automatiquement les modèles sur un point de terminaison personnalisé ; vous devez donc les répertorier manuellement dans available_models. Chaque entrée nécessite un champ name correspondant à l’identifiant de la passerelle, un display_name pour le menu et une valeur max_tokens adaptée au modèle.
Utilisez claude-sonnet-4-5 pour l’assistance courante et ajoutez claude-opus-4-8 comme deuxième entrée pour les tâches les plus difficiles. Puisque vous les répertoriez explicitement, le menu affiche exactement les modèles souhaités, et aucun autre.
Le champ name doit correspondre caractère pour caractère à l’identifiant de la passerelle, tandis que display_name est purement visuel et peut contenir le libellé de votre choix dans le menu. Une erreur dans name est la cause habituelle d’un modèle qui apparaît mais renvoie une erreur à l’utilisation ; copiez donc l’identifiant directement depuis la passerelle plutôt que de le saisir de mémoire. Ne répertorier que les modèles que vous utilisez réellement permet de garder un menu court et de faciliter le choix au quotidien. Ajouter un modèle plus tard ne nécessite que de modifier une ligne ; il est donc inutile de tout déclarer dès le départ.
Où la clé est stockée
La clé API ne se place pas dans settings.json. Zed la stocke dans le trousseau du système d’exploitation ou la lit dans une variable d’environnement nommée d’après le fournisseur, comme AIPRIME_API_KEY, ce qui évite d’inclure le secret dans votre configuration synchronisée.
Après l’enregistrement, ouvrez l’assistant, choisissez votre fournisseur dans le menu et saisissez la clé lorsque vous y êtes invité. Zed utilise ensuite le trousseau pour s’authentifier, et votre fichier de paramètres reste exempt d’identifiants d’authentification.
Cette séparation est vraiment utile si vous synchronisez vos paramètres Zed entre plusieurs machines ou les versionnez dans un dépôt de fichiers de configuration : la configuration peut circuler librement puisqu’elle ne contient aucun secret, et chaque machine fournit sa propre clé via le trousseau ou l’environnement. Cette approche est plus propre que celle des outils qui intègrent la clé au fichier de configuration. C’est aussi pourquoi vous pouvez partager une configuration Zed avec un collègue en toute sécurité : il fournit sa propre clé, et la vôtre n’est jamais transmise. Il en va de même lorsque vous enregistrez les paramètres dans un dépôt de fichiers de configuration.
La voie native via ACP
Si vous souhaitez spécifiquement le comportement natif d’Anthropic plutôt que l’interface compatible OpenAI, Zed prend en charge l’Agent Client Protocol avec Claude Code. Vous exécutez Claude Code comme agent, et Zed communique avec lui via ACP.
Dans cette configuration, Claude Code dispose de son propre ANTHROPIC_BASE_URL pointant vers la passerelle ; Zed n’a donc jamais besoin de sa propre api_url Anthropic. C’est la manière la plus simple d’obtenir le véritable comportement natif de Messages dans l’éditeur.
En contrepartie, ACP vous donne accès à la boucle complète de l’agent Claude Code plutôt qu’à l’assistant intégré plus léger de Zed, ce qui offre davantage de capacités, mais rend aussi l’expérience plus lourde. Choisissez la voie openai_compatible pour une aide rapide directement dans le code, et la voie ACP lorsque vous souhaitez qu’un agent complet pilote des modifications en plusieurs étapes depuis l’éditeur. La plupart des utilisateurs commencent par la voie la plus légère et n’adoptent ACP que lorsqu’ils souhaitent disposer d’un agent complet dans l’éditeur. Vous pouvez garder les deux options disponibles et utiliser celle qui convient à la tâche.
// Zed settings.json
{
"language_models": {
"openai_compatible": {
"aiprime": {
"api_url": "https://aiprimetech.io/v1",
"available_models": [
{ "name": "claude-sonnet-4-5",
"display_name": "Claude Sonnet",
"max_tokens": 200000 }
]
}
}
}
}
// Key goes in the keychain / AIPRIME_API_KEY env var, NOT this file.Questions fréquentes
Pourquoi ne puis-je pas définir une URL de base Claude dans Zed ?
Où dois-je placer api_url ?
Où placer la clé API ?
Comment obtenir le comportement natif d’Anthropic ?
Obtenez une clé API — aucun compte Anthropic ni inscription sur liste d’attente requis.
Obtenir votre clé APIAI Prime Tech est une passerelle API indépendante. Elle n’est ni affiliée à Anthropic, ni approuvée par Anthropic, ni revendeuse d’Anthropic. Claude et les noms de modèles associés sont des marques de leurs propriétaires respectifs.