Aller au contenu

Configurer OpenCode avec sa clé idia

Cette page explique, pas à pas, comment brancher OpenCode sur idia, à l'adresse https://api.idiacode.com/v1, sur un poste Linux ou macOS où OpenCode n'a encore aucune configuration. Le modèle utilisé est nous, et les titres et résumés de session passent aussi par nous.

1. Avant de commencer

2. Écrire la configuration

Créez le fichier ~/.config/opencode/opencode.json avec le contenu suivant :

{
  "enabled_providers": [
    "idia"
  ],
  "model": "idia/nous",
  "small_model": "idia/nous",
  "share": "disabled",
  "autoupdate": false,
  "provider": {
    "idia": {
      "name": "idia",
      "env": [
        "IDIACODE_API_KEY"
      ],
      "options": {
        "baseURL": "https://api.idiacode.com/v1"
      },
      "models": {
        "nous": {
          "name": "Nous",
          "tool_call": true,
          "limit": {
            "context": 1048576,
            "output": 16384
          }
        }
      }
    }
  }
}

Ce fichier est la configuration globale d'OpenCode. Un fichier opencode.json placé dans un projet est fusionné avec lui et l'emporte en cas de conflit : il peut choisir un autre modèle ou un autre provider. Vérifiez-le dans les dossiers où vous travaillez.

3. Donner sa clé à OpenCode

La clé ne s'écrit jamais dans un fichier partagé et ne se committe pas. Deux voies :

  • Voie principale : une variable d'environnement, déclarée dans le profil de votre shell (par exemple ~/.bashrc ou ~/.zshrc), puis un nouveau terminal :
    export IDIACODE_API_KEY="collez-ici-votre-clé"
  • Autre voie : dans OpenCode, la commande /connect, choix « Other », identifiant idia, puis collez la clé. OpenCode la garde sur votre poste, dans ~/.local/share/opencode/auth.json, un fichier propre à votre compte utilisateur.

4. Vérifier

La liste des modèles ne doit contenir qu'un modèle :

opencode models

Elle affiche idia/nous, et rien d'autre. Envoyez ensuite un premier message, ici ou dans une session de l'interface d'OpenCode :

opencode run "Bonjour"

idia répond. Si la clé est refusée, vérifiez votre clé dans la rubrique « Clés API » de la console : une clé remplacée ne fonctionne plus.

5. Ce que cette configuration garantit, et ce qu'elle ne couvre pas

Garanti par la configuration :

  • toute requête de modèle, titres et résumés de session compris, part vers api.idiacode.com seul (enabled_providers, model, small_model) ;
  • le partage de session est coupé ;
  • la vérification de mise à jour est coupée : mettez OpenCode à jour vous-même.

Signalé, et coupable par une variable d'environnement :

  • le catalogue de modèles téléchargé par OpenCode au démarrage : OPENCODE_DISABLE_MODELS_FETCH=1 ;
  • le téléchargement de serveurs de langage : OPENCODE_DISABLE_LSP_DOWNLOAD=1.

Signalé, hors de cette configuration :

  • l'installation d'OpenCode elle-même ;
  • la lecture de pages web par l'agent, quand il le décide ;
  • les serveurs MCP et les plugins que vous ajoutez vous-même.

6. Quand une limite de votre offre est atteinte

Votre offre, Gratuit comprise, comporte une limite d'usage par session de 5 heures et une limite hebdomadaire, décrites sur la page des tarifs, ainsi qu'une limite d'usage du mois.

Quand l'une d'elles est atteinte, idia refuse la requête, et OpenCode affiche aussitôt son message à la place de la réponse, sans réessayer. Rien n'est à faire avant l'heure indiquée.

Le message nomme la limite atteinte et donne l'heure de reprise. Si plusieurs limites sont atteintes, il nomme celle qui se lève le plus tard, c'est-à-dire celle à laquelle vous pourrez effectivement reprendre. Par exemple :

  • La limite de session de 5 heures de votre offre est atteinte. Vous pourrez reprendre le 21 octobre 2026 à 15:00 UTC.
  • La limite hebdomadaire de votre offre est atteinte. Vous pourrez reprendre le 26 octobre 2026 à 00:00 UTC.
  • La limite d'usage de votre offre est atteinte. Elle sera réinitialisée le 1er novembre 2026 à 00:00 UTC.

Les dates ci-dessus ne sont que des exemples. L'heure est donnée en UTC (temps universel) : en France, ajoutez une heure en hiver, deux en été.

Juste après l'heure annoncée, la limite peut mettre jusqu'à environ deux minutes à se lever. Le message dit alors qu'elle est en cours de réinitialisation, par exemple :

  • La limite de session de 5 heures de votre offre est atteinte. Elle est en cours de réinitialisation : réessayez dans une minute.