Aller au contenu

OpenCode – Agent IA pour votre terminal

OpenCode est un outil gratuit qui vous assiste dans le développement grâce à l'intelligence artificielle. Il s'intègre naturellement dans votre workflow, que ce soit en ligne de commande (terminal), sur bureau (desktop) ou directement dans votre éditeur de code (IDE).

Site officiel : https://opencode.ai/


Installation

Pour une expérience optimale, nous recommandons vivement d'utiliser OpenCode via agent-vm.

Pour les utilisateurs Windows : OpenCode fonctionne mieux dans WSL (Windows Subsystem for Linux) que dans un terminal Windows natif. WSL garantit une meilleure compatibilité et une expérience plus fluide.


Prérequis système

Installation de Lima (Documentation officielle)

VERSION=$(curl -fsSL https://api.github.com/repos/lima-vm/lima/releases/latest | jq -r .tag_name)
curl -fsSL "https://github.com/lima-vm/lima/releases/download/${VERSION}/lima-${VERSION:1}-$(uname -s)-$(uname -m).tar.gz" | sudo tar Cxzvm /usr/local
curl -fsSL "https://github.com/lima-vm/lima/releases/download/${VERSION}/lima-additional-guestagents-${VERSION:1}-$(uname -s)-$(uname -m).tar.gz" | sudo tar Cxzvm /usr/local

Installation de QEMU (Linux uniquement) (Téléchargement)

# Debian / Ubuntu
sudo apt-get install qemu-user-static qemu-system-x86

# Arch Linux
sudo pacman -S qemu-base

Installation de Shasum (pour la vérification des fichiers)

# Debian / Ubuntu
sudo apt-get install libdigest-sha-perl

# Arch Linux
sudo pacman -S perl-digest-sha

Pour Arch Linux : Ajoutez cette ligne à votre fichier de profil (~/.bashrc, ~/.zshrc, etc.) :

export PATH="/usr/bin/core_perl:$PATH"


Configuration et exécution

Sur Linux, macOS ou WSL

mkdir -p ~/.local/bin
git clone https://github.com/sylvinus/agent-vm.git ~/.local/bin/agent-vm

Ajoutez ensuite cette ligne à votre fichier de profil (~/.bashrc, ~/.zshrc, etc.) :

source ~/.local/bin/agent-vm/agent-vm.sh

Redémarrez votre terminal, puis exécutez l'une des commandes suivantes selon vos besoins :

# Configuration légère (10 Go de disque / 2 Go de RAM / 1 CPU)
agent-vm setup

# Configuration intensive (50 Go de disque / 16 Go de RAM / 8 CPU)
agent-vm setup --disk 50 --memory 16 --cpus 8

En cas d'erreur les logs de la VM sont disponibles dans ~/.lima/agent-vm-base/ha.stderr.log.

Enfin, accédez à votre dossier de travail et lancez OpenCode :

cd dossier-de-travail
agent-vm opencode


Configuration initiale

  1. Créez et configurez le fichier de configuration :

    mkdir -p ~/.config/opencode
    nano ~/.config/opencode/opencode.json
    

  2. Ajoutez votre clé API LiteLLM (disponible ici) dans la section "options" du fournisseur "litellm" :

    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "litellm": {
          "npm": "@ai-sdk/openai-compatible",
          "models": {
            "general": { "name": "general" },
            "general_nothink": { "name": "general_nothink" },
            "dev-model": { "name": "dev-model" }
          },
          "name": "Litellm",
          "options": {
            "baseURL": "https://api.ia.limos.fr/v1",
            "apiKey": "API_KEY"
          }
        }
      },
      "model": "litellm/dev-model"
    }
    

  3. Copiez ce fichier dans chaque projet où vous souhaitez utiliser OpenCode :

    cp ~/.config/opencode/opencode.json .
    

Il faut absolument ajouterce fichier au .gitignore de votre projet pour éviter de partager votre clé API.

  1. Lancez OpenCode dans le dossier concerné :
    agent-vm opencode
    

Limitation actuelle : agent-vm ne permet pas de monter d'autres dossiers que le dossier courant dans la VM. Vous devez donc copier le fichier de configuration dans chaque projet.