Skip to main content
OpenCode lit une entrée de fournisseur à partir d’un fichier JSON, sans modification du code source et sans fork. OpenCode peut définir start_within dans la configuration, de sorte qu’une clé d’agent est facultative ici. La clé reste le chemin le plus simple, car elle peut être modifiée sans redémarrage. Voir clés d’agent.

Configurer cela avec un agent

Ouvrez le bloc ci-dessous et copiez-le dans n’importe quel agent de codage. L’invite ne vous demandera jamais votre clé API : l’agent configure tout le reste, puis affiche la ligne d’exportation que vous devrez exécuter vous-même.

Configurer OpenCode

  1. Exportez la clé dans le shell qui démarre OpenCode.
  1. Écrivez l’entrée du fournisseur dans opencode.json.
  1. Démarrez OpenCode avec ce fichier.
Quatre champs gèrent l’intégration. npm sélectionne le package compatible OpenAI. options.baseURL envoie les requêtes au routeur. options.apiKey lit la clé depuis l’environnement. Chaque clé sous models est un slug que nous exécutons. Ajoutez un modèle en ajoutant une clé sous models. Tout le reste dans l’entrée concerne l’affichage et les limites.

Global ou par projet

Placez l’entrée du fournisseur à l’un des deux endroits, selon l’étendue que vous souhaitez lui donner. La configuration du projet l’emporte sur la configuration globale. OpenCode recherche opencode.json dans le répertoire de travail et remonte jusqu’au répertoire Git le plus proche, de sorte qu’un dépôt peut remplacer votre fournisseur à l’échelle de la machine sans le modifier. Placez l’entrée du fournisseur dans le fichier global et la date limite reste la même partout. Placez-la dans un fichier de projet et seul ce dépôt passera par nous. Définissez OPENCODE_DISABLE_PROJECT_CONFIG pour arrêter la recherche ascendante. Deux autres sources existent pour les bundles et l’automatisation. OPENCODE_CONFIG_DIR nomme un répertoire à partir duquel OpenCode lit la configuration, et OPENCODE_CONFIG_CONTENT contient le JSON en ligne. Utilisez OPENCODE_CONFIG pour un fichier que vous choisissez d’utiliser par exécution.

Définir la date limite dans la configuration à la place

OpenCode peut envoyer start_within lui-même. Les deux emplacements sont du JSON simple, et les deux l’emportent sur la clé. Définissez-le par modèle. Le bloc options est inséré dans le corps de la requête pour ce modèle.
Définissez-le par variante à la place, pour changer sans modifier le modèle. Choisissez-en une avec --variant sur opencode run, ou faites-les défiler dans l’interface utilisateur textuelle (TUI) avec ctrl+t.
Une durée ici échoue sur un modèle qui ne peut pas faire la course. La même durée sur la clé se replie à la place. C’est la raison de préférer la clé.

Confirmer que la clé a été appliquée

Chaque réponse est accompagnée de x-flexinference-defaults-applied. OpenCode n’affiche pas les en-têtes de réponse dans l’interface utilisateur textuelle (TUI), alors lisez plutôt la requête dans le tableau de bord sous Logs.

Dépannage

Les requêtes ne nous parviennent jamais. Le champ model de niveau supérieur est ce qui sélectionne le fournisseur, donc définir un fournisseur sans le nommer là laisse OpenCode sur son défaut intégré. Définissez "model": "flexinference/<slug>". 401 invalid_api_key. FLEXINFERENCE_API_KEY n’est pas défini dans le shell qui a démarré OpenCode. Exportez-le avant le lancement, car options.apiKey le lit depuis l’environnement. 400 unsupported_parameter. Un paramètre Chat Completions que nous ne traduisons pas était dans les options d’un modèle, tel que seed ou stop. Supprimez-le de l’entrée. 400 key_default_not_applicable. Votre clé contient une durée et l’un de ces paramètres l’accompagnait. Modifiez la clé pour un niveau, ou supprimez le paramètre. 400 flex_unsupported_for_anthropic. Une durée dans options a atteint un modèle claude-* sur votre propre clé Anthropic. La course qu’une durée Claude exécute nécessite des clés gérées. Supprimez la durée et laissez la clé gérer la date limite, car une durée de clé se replie à la place. Une modification de la configuration n’a rien changé. Une source de configuration ultérieure l’a remplacée. Vérifiez l’ordre de recherche ci-dessus, et préférez OPENCODE_CONFIG pour choisir un fichier par exécution. Consultez errors pour chaque refus que nous renvoyons, et agent keys pour ceux qui ne sont pas spécifiques à OpenCode. OpenWork et OpenScience lisent la même entrée de fournisseur.