Documentation
Theia IDE
L’IDE Theia dispose d’un fournisseur pour des modèles OpenAI compatibles arbitraires, configuré sous forme de liste dans settings.json. Une entrée par id de modèle, toutes dirigées vers la même URL de base et la même clé.
Une entrée dans ai-features.openAiCustom.customOpenAiModels — model, url et apiKey — place Kunavo derrière Theia Coder, Architect et la complétion en ligne.
{
"ai-features.openAiCustom.customOpenAiModels": [
{
"model": "claude-sonnet-5",
"url": "https://api.kunavo.com/v1",
"id": "kunavo-sonnet-5",
"apiKey": "sk-kn-...",
"developerMessageSettings": "system"
},
{
"model": "claude-haiku-4-5",
"url": "https://api.kunavo.com/v1",
"id": "kunavo-haiku-4-5",
"apiKey": "sk-kn-...",
"developerMessageSettings": "system"
}
]
}url conserve le /v1. Le texte de Theia n’énonce aucune règle — son fichier Readme indique seulement que « model et url sont des attributs obligatoires qui désignent le point de terminaison et le modèle à utiliser ». C’est l’exemple détaillé figurant sur la même page de documentation, pour le seul fournisseur qui n’est pas OpenAI, qui précise le format : "url": "https://api.mistral.ai/v1". Il s’agit de la racine du point de terminaison, suffixe compris — utilisez donc https://api.kunavo.com/v1 ici, et non l’origine seule. Si une requête renvoie une erreur 404, c’est le premier champ à vérifier ; le curl ci-dessous vous indique laquelle des deux formes le point de terminaison accepte réellement.curl ci-dessous, tandis que le comportement du client relève de Theia.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 Theia IDE.Étape par étape
- Créez une clé sur
/app/keyset copiez-la — elle n’est affichée qu’une seule fois. - Activez la fonction : la documentation de Theia indique d’aller dans Préférences et d’activer le paramètre « AI-features => AI Enable ». Rien de ce qui suit ne s’affichera tant que ce ne sera pas fait.
- Ouvrez la vue Configuration de l’IA —
Alt+A, ou Configuration de l’IA dans le menu Manage (icône d’engrenage) en bas à gauche, juste sous Settings. Ses catégories sont Général, Fournisseurs et modèles, Alias de modèles, Agents, Prompts et compétences, Variables, Outils, Utilisation des jetons et Serveurs MCP. - Ajoutez les entrées ci-dessus. La documentation indique qu’il faut cliquer sur le lien dans la section des paramètres pour OpenAI Compatible Models — la préférence est une liste structurée, et Theia précise que les paramètres structurés sans éditeur dédié « renvoient vers
settings.json», le fichier où vous aboutissez. Un objet par identifiant de modèle ; lesurletapiKeyse répètent. - Associez un élément à ce modèle. Sous Agents, chaque agent dispose d’un sélecteur Language Model ; de nombreux agents résolvent plutôt un alias de modèle. Définir
default/code,default/universal,default/code-completion,default/summarizeetdefault/fastsous Model Aliases permet donc de déplacer plusieurs agents à la fois. - Envoyez un message de chat à Theia Coder, puis demandez-lui de faire quelque chose qui touche à un fichier. Les agents de cet IDE s’appuient sur les appels d’outils et le contenu de l’espace de travail ; un premier essai qui lit ou modifie quelque chose vous en apprend donc davantage qu’une salutation — et Token Usage, dans la même vue, indique le coût du tour en tokens.
Vérifié avec la page des fonctionnalités d’IA de l’IDE Theia, section OpenAI Compatible Models le 21 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 Theia IDE.
# 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èle | Entrée / sortie sur Kunavo | Où cela s’intègre dans Theia IDE |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | Theia Coder et l’alias default/code — le modèle qui modifie les fichiers |
claude-opus-5 | $3.50 / $17.50 | l’Architect en mode Plan, où un mauvais plan coûte cher |
claude-haiku-4-5 | $0.70 / $3.50 | default/ |
gpt-5-6-sol | $2.00 / $12.00 | un deuxième avis issu d’une autre famille — une entrée de plus, avec la même URL et la même clé |
Ce que Theia affirme au sujet de ce fournisseur
Dans le tableau LLM Providers Overview de sa propre page, Theia évalue chaque fournisseur selon trois axes. Il s’agit des affirmations de Theia sur Theia, reprises de ce tableau à la date indiquée ci-dessus — ce n’est pas un résultat de test de Kunavo, et la colonne intitulée « Ce que cela exige de l’identifiant de modèle » est la seule partie de ce tableau rédigée ici.
| La ligne de Theia | Compatible OpenAI | Ce que cela exige de l’identifiant de modèle |
|---|---|---|
| Diffusion en continu | Oui (état : public) | Rien de plus. Le Readme documente enableStreaming sur le même objet, avec la valeur true par défaut — définissez-le sur false si un tour se bloque et que vous voulez isoler le flux. |
| Appels d’outils | Oui (état : public) | Un identifiant de modèle qui prend en charge les outils. Les agents qui modifient des fichiers, exécutent des commandes ou pilotent des serveurs MCP sont tous des agents qui font des appels d’outils ; un identifiant sans prise en charge des outils vous limite donc au chat simple. |
| Sortie structurée | Oui (état : public) | Rien de plus au moment de la configuration, mais c’est l’axe qui a le plus de chances de varier entre les identifiants de différentes familles derrière un même point de terminaison. |
Deux paragraphes plus haut, Theia ajoute une réserve à ce tableau, qui mérite d’être répétée car elle donne le cadre honnête de toute cette page : tous les modèles « ne fonctionneront pas nécessairement dès le départ, car ils peuvent nécessiter des personnalisations ou optimisations spécifiques ».
Ce qui coûte réellement de l’argent
L’IDE Theia est libre et gratuit à télécharger, et ses fonctionnalités d’IA ne sont pas facturées — ce qui coûte de l’argent, ce sont les appels au modèle, facturés par le détenteur de la clé dans apiKey. Deux paramètres ont davantage d’incidence sur cette facture que le choix du modèle, et tous deux figurent dans la documentation :
- Automatic Code Completion est activé par défaut ; la documentation indique qu’il effectue des « requêtes continues au LLM sous-jacent pendant la programmation ». C’est l’agent qui s’exécute des milliers de fois par jour. Associez
default/code-completionà un identifiant peu coûteux, ou passez l’agent en mode manuel dans'AIFeatures'=>'CodeCompletion'et déclenchez-le avecCtrl+Alt+Space. - Max Context Lines, dans le même groupe de paramètres, limite la quantité de contenu environnant du fichier incluse dans chaque requête de complétion. Chaque ligne est facturée comme entrée à chaque appel déclenché par une frappe.
Les agents de chat ont le profil inverse : moins d’appels, un contexte bien plus vaste et les mêmes fichiers de l’espace de travail renvoyés à chaque tour. C’est précisément le cas d’usage de la mise en cache des prompts — voir /docs/caching — et c’est pourquoi les deux moitiés du tableau des modèles ci-dessus sont séparées selon la fréquence d’exécution de l’agent, plutôt que selon son niveau d’intelligence.
En cas de problème de connexion
- 404 — le
url. Kunavo sert/v1/chat/completions; le champ attend donc la racine/v1. Une origine seule ou un.../chat/completionscomplet ne convient pas. - 401 — la clé. Le Readme de Theia précise que le
apiKey« sera envoyé comme Bearer Token dans la requête d’autorisation », ce qui correspond exactement à ce qu’attend une clésk-kn-. Notez la valeur par défaut documentée : en l’absence totale deapiKey, Theia envoieno-key; un champ manquant ressemble donc à une clé rejetée plutôt qu’à une clé absente. (truesignifie « utiliser la clé API OpenAI globale » — ce n’est pas ce qu’il vous faut ici.) - L’identifiant du modèle n’apparaît pas dans la liste — cette liste provient de vos propres entrées
customOpenAiModels, et non du point de terminaison ; un identifiant absent signifie donc qu’il manque un objet. Le champidest celui affiché dans l’interface ; omettez-le et le nom du modèle sera utilisé à la place. - Le premier message système est rejeté ou ignoré — c’est le
developerMessageSettings. Sa valeur par défaut estdeveloper, un rôle au format OpenAI ; l’exemple de Theia pour un fournisseur autre qu’OpenAI définitsystem, d’où le choix dans le bloc ci-dessus.user,mergeWithFollowingUserMessageetskipsont les autres possibilités documentées. - Aucune réponse, où que ce soit — vérifiez la confiance accordée à l’espace de travail. Theia exige cette confiance pour toutes ses fonctionnalités d’IA ; un espace de travail non approuvé désactive le champ de saisie du chat et la complétion en ligne, et affiche le message AI Features are Restricted.
Questions fréquentes
Comment utiliser une API personnalisée compatible avec OpenAI dans l’IDE Theia ?
Activez AI-features => AI Enable dans Preferences, puis ajoutez une entrée à la préférence ai-features.openAiCustom.customOpenAiModels. Chaque entrée est un objet composé, dans cet ordre selon l’exemple de Theia, de model, url, id, apiKey et developerMessageSettings ; model et url sont les deux champs obligatoires. Comme la liste est un paramètre structuré, l’IDE vous renvoie vers settings.json pour la modifier. Ensuite, attribuez le modèle à un agent sous Agents dans la vue AI Configuration, ou à l’un des alias de modèle.
Le champ url de l’IDE Theia doit-il se terminer par /v1 ?
Pour un point de terminaison compatible avec OpenAI comme Kunavo, oui. La documentation de Theia n’énonce pas cette règle en toutes lettres — son Readme indique seulement que model et url précisent le point de terminaison et le modèle à utiliser — mais l’exemple détaillé pour un fournisseur autre qu’OpenAI, sur la même page, donne la racine du point de terminaison avec le suffixe : "url": "https://api.mistral.ai/v1". Utilisez donc https://api.kunavo.com/v1. L’absence ou le doublon de /v1 entraîne une réponse 404 plutôt qu’une erreur d’authentification, ce qui permet de distinguer le problème d’un souci de clé.
L’IDE Theia peut-il utiliser des modèles Claude sans compte Anthropic ?
Oui, de deux façons. Theia fournit un fournisseur Anthropic qui accepte directement une clé Anthropic, ainsi qu’un fournisseur OpenAI Compatible qui envoie une requête au format OpenAI à l’url configurée et transmet directement l’identifiant de modèle. Avec cette deuxième option, l’identifiant est résolu au niveau de ce point de terminaison, et non dans l’IDE ; vous devez donc disposer des identifiants d’accès de ce point de terminaison. Kunavo répond aux identifiants Claude sur son interface compatible avec OpenAI, combinaison décrite sur cette page.
Quel modèle attribuer à chaque agent Theia ?
Choisissez en fonction de la fréquence d’exécution de l’agent plutôt que d’un classement, car personne n’a ici évalué ces identifiants dans cet IDE. Code Completion s’exécute en continu pendant la saisie, et son contexte est limité par Max Context Lines ; il lui faut donc un identifiant peu coûteux. Theia Coder modifie des fichiers et doit pouvoir faire des appels d’outils. L’Architect en mode Plan est le seul cas où un identifiant plus performant et plus coûteux se justifie, car un mauvais plan peut coûter une session entière. Les alias de modèle — default/code, default/code-completion, default/fast et les autres — permettent de déplacer plusieurs agents à la fois.
Kunavo a-t-il testé l’IDE Theia avec son point de terminaison ?
Non. Le 21 septembre 2026, la vérification a porté sur la documentation de Theia : l’identifiant de préférence, les noms et l’ordre des champs, ainsi que le format de l’URL de base, cités depuis theia-ide.org/docs/user_ai/ et le Readme ai-openai auquel cette page renvoie. Kunavo n’a exécuté aucune session Theia, complétion en ligne ou séquence d’appels d’outils, et ne prétend rien quant au comportement de ce client. La seule chose que vous pouvez vérifier directement est le bon fonctionnement du point de terminaison et de la clé, avec la commande curl de cette page.