« Oh My Opencode : Démarrage rapide pour OpenCode – Installation, configuration et exécution »

Installez Oh My Opencode et publiez plus rapidement.

Sommaire

Oh My Opencode transforme OpenCode en un harnais de codage multi-agents : un orchestrateur délègue le travail à des agents spécialisés qui s’exécutent en parallèle.

agents oh my opencode avec ordinateurs portables et GPU

Le modèle mental le plus court dont vous avez besoin : installez le plugin, puis utilisez le mot-clé ultrawork (ou ulw) lorsque vous avez besoin d’une exécution multi-agents à pleine puissance.

Ce démarrage rapide couvre l’installation et la configuration du premier jour. Une fois que vous êtes opérationnel :

Pour la chaîne d’outils de codage IA plus large, consultez la vue d’ensemble des outils de développement IA. Si vous préférez une alternative sandboxée et capable dans le navigateur à OpenCode, OpenHands adopte une approche architecturale différente pour le codage agentique.

Pourquoi Oh My Opencode existe

OpenCode est un agent de codage IA open source qui fonctionne comme une interface de terminal et gère les exécutions CLI non interactives pour le scripting et l’automatisation.

Oh My Opencode repousse ce plafond beaucoup plus haut. Il ajoute une couche d’orchestration complète construite autour de l’agent “Sisyphus”, la collaboration multi-spécialistes et une intégration d’outils plus serrée. Le résultat est un système où des tâches d’ingénierie complexes — le genre qui nécessiterait normalement de surveiller plusieurs prompts — sont planifiées, déléguées et vérifiées dans un seul flux de travail.

Deux concepts reviennent constamment, donc maîtrisez-les avant tout le reste :

  • Mode Ultrawork : un interrupteur de flux de travail déclenché par mot-clé. Ajouter ultrawork ou ulw à votre prompt active l’exécution de fond parallèle, l’intégration LSP, la gestion du contexte et la décomposition automatique des tâches — ce n’est pas juste un choix stylistique.
  • Agents spécialisés : des rôles nommés comme @oracle pour l’architecture et @librarian pour la recherche et la documentation. Vous pouvez les appeler explicitement ou laisser l’orchestrateur les router automatiquement.

Cet article utilise Oh My Opencode, oh-my-opencode et Oh My OpenCode de manière interchangeable — ils désignent tous le même plugin dans l’écosystème OpenCode.

Prérequis et terminologie

Vous devez d’abord avoir OpenCode installé et fonctionnel. Consultez notre Démarrage rapide OpenCode pour apprendre comment l’installer, le configurer et le démarrer.

Par défaut, opencode lance l’interface de terminal lorsqu’il est exécuté sans arguments, et vous pouvez également utiliser opencode run ... pour une exécution non interactive.

Oh My Opencode nécessite au moins un fournisseur configuré. OpenCode charge les fournisseurs depuis les identifiants, les variables d’environnement ou un fichier .env du projet. Le moyen le plus rapide de régler cela :

opencode auth login
opencode auth list

Les identifiants résident dans ~/.local/share/opencode/auth.json.

Une particularité de nommage à connaître d’avance : le dépôt GitHub en amont est maintenant brandi comme oh-my-openagent (“anciennement oh-my-opencode”), mais le nom du plugin et du paquet dans les configurations reste oh-my-opencode. Les deux noms circulent dans les posts communautaires — c’est la même chose.

Démarrage rapide de l’installation

Il existe plusieurs voies (installateur CLI, clone manuel du dépôt, ou “laisser un agent l’installer”). Le bon choix dépend de savoir si vous voulez un flux d’installation répétable ou un contrôle manuel total.

Si vous avez Bun installé, bunx est l’équivalent de npx de Bun, conçu pour exécuter rapidement des paquets npm sans étape d’installation globale séparée.

Pour installer bunx sur linux :

curl -fsSL https://bun.com/install | bash

Installation automatique avec OpenCode

Vous pouvez exécuter un prompt dans OpenCode et il installera OmO automatiquement

Installez et configurez oh-my-opencode en suivant les instructions ici :
https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/heads/dev/docs/guide/installation.md

Il vous posera quelques questions sur vos abonnements LLM et enregistrera Oh My Opencode dans les plugins OpenCode.

Chemin manuel : exécutez l’installateur Oh My Opencode avec bunx ou npx

Installateur interactif qui interroge vos fournisseurs et génère automatiquement une configuration “optimale”, et également un mode non interactif pour l’automatisation et les agents.

Installation interactive :

bunx oh-my-opencode install
# ou si vous préférez les outils npm
npx oh-my-opencode install

Installation non interactive (utile pour les scripts de provisionnement, les images CI, ou les “installations d’agents”) :

bunx oh-my-opencode install --no-tui \
  --claude=<yes|no|max20> \
  --openai=<yes|no> \
  --gemini=<yes|no> \
  --copilot=<yes|no>

Ce que fait l’installateur, au niveau élevé :

  • enregistre le plugin dans la configuration OpenCode
  • génère des affectations de modèles en utilisant la disponibilité du fournisseur et les règles de basculement
  • écrit la configuration oh-my-opencode à côté des fichiers de configuration OpenCode

Chemin manuel : clonez le dépôt et exécutez le script d’installation

Il existe également un flux manuel “humain” : clonez le dépôt, installez les dépendances, puis exécutez un script d’installation qui détecte votre emplacement de configuration OpenCode, crée une sauvegarde et fusionne les paramètres.

git clone https://github.com/code-yeongyu/oh-my-opencode.git ~/.oh-my-opencode
cd ~/.oh-my-opencode
npm install
npm run install

Si le script ne peut pas trouver votre configuration OpenCode automatiquement, définissez explicitement la variable d’environnement de chemin de configuration avant de réexécuter l’installateur.

Checklist de vérification rapide

Après l’installation, validez trois choses :

  • votre fichier de configuration Oh My Opencode existe dans un emplacement reconnu
  • les agents spécialisés peuvent être invoqués
  • le déclenchement du mot-clé ultrawork fonctionne comme prévu

Exemples à copier :

# Afficher le fichier de configuration du plugin (essayez l'emplacement qui correspond à votre configuration)
cat .opencode/oh-my-opencode.json
cat ~/.config/opencode/oh-my-opencode.json

# Test rapide d'agent
opencode run "Utilisez @oracle pour analyser l'architecture du projet actuel"

# Test rapide de déclenchement ultrawork
opencode run "ulw lister tous les fichiers de configuration dans ce projet"

Si les trois passent, vous êtes vraiment prêt — pas juste installé.

Configuration et réglage

Où réside la configuration et comment fonctionne la priorité

Oh My Opencode recherche les fichiers de configuration dans un ordre de priorité, avec la configuration au niveau du projet prenant le pas sur la configuration au niveau de l’utilisateur. L’ordre de recherche documenté est :

  • .opencode/oh-my-opencode.json (niveau projet, priorité la plus élevée)
  • ~/.config/opencode/oh-my-opencode.json (niveau utilisateur sur macOS et Linux)
  • %APPDATA%\opencode\oh-my-opencode.json (niveau utilisateur sur Windows)

OpenCode lui-même prend également en charge plusieurs sources de configuration et les fusionne plutôt que de les remplacer, avec les sources ultérieures écrasant les précédentes uniquement lorsque les clés entrent en conflit. Cela compte car vous voulez généralement une ligne de base globale stable plus des overrides par dépôt.

Support JSONC pour des configurations saines

OpenCode et Oh My Opencode supportent tous deux JSONC, ce qui signifie que vous pouvez garder des commentaires et des virgules finales dans les fichiers de configuration sans casser l’analyse. C’est particulièrement utile pour documenter pourquoi certaines limites ou modèles ont été choisis.

Le mot-clé “ultrawork” et ce qu’il active

ultrawork (ou ulw) est le commutateur de mode auquel vous aurez le plus souvent recours. Glissez-le dans votre description de tâche et le système active l’exécution de fond parallèle, l’intégration LSP, la gestion du contexte et la décomposition automatique des tâches. Ce n’est pas un indice pour le modèle — c’est un déclencheur dur qui change la façon dont toute l’exécution est structurée.

Concurrence et tâches de fond

Oh My Opencode expose des contrôles de concurrence pour l’exécution de fond via sisyphus.max_concurrent_tasks.

Ne chassez pas une haute concurrence ici. Chaque plan de fournisseur a un plafond — Claude Max20 plafonne à 3 tâches parallèles, par exemple — et pousser au-delà produit des complétions instables et des temps d’attente difficiles à déboguer. Commencez avec prudence et n’augmentez qu’après des exécutions propres.

Une configuration de concurrence minimale ressemble à ceci :

{
  "sisyphus": {
    "enabled": true,
    "max_concurrent_tasks": 2,
    "task_timeout": 300
  }
}

Une concurrence de 2 est un point de départ sûr pour la plupart des plans.

Routage de modèle par agent et par catégorie

Oh My Opencode est construit autour de l’idée que différentes tâches bénéficient de différents modèles, donc la configuration prend en charge :

  • la sélection de modèle, les variantes et les extensions de prompt par agent
  • le routage basé sur la catégorie pour le travail “rapide” vs “approfondi”
  • des modèles de basculement lorsque votre fournisseur préféré n’est pas disponible

La plongée dans les agents spécialisés couvre le système complet de routage de modèles en détail — y compris pourquoi certains agents ne doivent pas être basculés vers la mauvaise famille de modèles, les chaînes de basculement complètes et comment remplacer sûrement les modèles pour les configurations auto-hébergées.

La résolution de modèle est en couches : votre override explicite gagne, puis le basculement du fournisseur, puis le défaut du système. La chaîne de basculement commence par vos fournisseurs natifs et peut descendre vers des alternatives comme GitHub Copilot si rien d’autre n’est disponible — ce qui signifie qu’un agent mal configuré est peu susceptible d’échouer silencieusement ; il utilisera simplement un modèle plus faible.

Une configuration de départ pratique que vous pouvez adapter (JSONC recommandé) :

{
  "$schema": "https://raw.githubusercontent.com/code-yeongyu/oh-my-opencode/master/assets/oh-my-opencode.schema.json",

  // Gardez la concurrence prudente jusqu'à ce que vous fassiez confiance aux limites de votre fournisseur
  "sisyphus": {
    "enabled": true,
    "max_concurrent_tasks": 2,
    "task_timeout": 300
  },

  // Réglage des agents
  "agents": {
    "oracle": {
      "enabled": true,
      "model": "openai/gpt-5.2",
      "variant": "high",
      "temperature": 0.7,
      "prompt_append": "Fournissez des compromis concis et une recommandation claire"
    },
    "librarian": {
      "enabled": true,
      "model": "google/gemini-3.1-pro"
    }
  },

  // Routage par catégorie pour les requêtes rapides vs le travail plus profond
  "categories": {
    "quick": { "model": "opencode/gpt-5-nano" },
    "visual-engineering": { "model": "google/gemini-3.1-pro" }
  }
}

Le champ $schema vaut la peine d’être gardé — il débloque l’autocomplétion dans la plupart des éditeurs et attrape les fautes de frappe dans les noms d’agents avant que vous ne gaspilliez une exécution sur une configuration cassée.

Intégration MCP et hooks

Oh My Opencode prend en charge les serveurs MCP (Model Context Protocol) via un bloc de configuration où vous définissez la commande du serveur, les arguments et les variables d’environnement.

Dans la pratique, le chemin le plus simple consiste à gérer les MCP directement via OpenCode en utilisant le groupe de commandes opencode mcp — il gère l’ajout, la liste et l’authentification OAuth sans que vous touchiez manuellement aux fichiers de configuration.

Exemples de flux de travail que vous pouvez copier

Les deux exemples ci-dessous sont intentionnellement “façonnés comme un vrai dépôt” : ils montrent comment déclencher l’orchestration, comment viser des agents spécialisés et comment garder les résultats vérifiables.

Exemple : revue d’architecture avec Oracle et une carte de dépôt

Utilisez ceci lorsque vous rejoignez une nouvelle base de code ou héritez d’un service et avez besoin d’une vue rapide et actionnable de l’architecture. Oracle est un spécialiste en lecture seule — il ne peut pas apporter de changements, seulement conseiller.

Exécutez-le depuis la racine de votre projet :

opencode

OpenCode lancera son interface de terminal par défaut lorsqu’il est lancé sans arguments.

Puis demandez à Oracle de produire une analyse d’architecture et un plan concret de refactoring ou de modularisation :

Utilisez @oracle pour analyser l'architecture de ce dépôt.
Identifiez les contextes bornés clés, les arêtes de dépendance majeures et les composants à risque le plus élevé.
Terminez par un plan de refactoring qui peut être exécuté dans de petites PR.

Pour la journalisation ou le scripting, sautez complètement le TUI et utilisez opencode run :

opencode run "Utilisez @oracle pour analyser l'architecture de ce dépôt et proposer un plan de refactoring par étapes"

opencode run transmet le prompt directement et se termine une fois terminé — exactement ce que vous voulez pour les étapes CI ou les pipelines d’automatisation.

Exemple : implémentation complète de fonctionnalité avec orchestration ultrawork

Utilisez ceci lorsque vous avez besoin d’une fonctionnalité qui touche plusieurs fichiers ou couches, ou lorsque vous voulez que les tâches de fond et les agents spécialisés soient activés automatiquement.

Commencez par un prompt ultrawork :

opencode run "ultrawork implémenter un nouveau point de terminaison /health avec des vérifications de disponibilité et de vivacité, ajouter des tests, mettre à jour la documentation et vérifier qu'il fonctionne localement"

Le mot-clé ultrawork active tous les agents spécialisés configurés, le parallélisme des tâches de fond et un outillage plus profond en une seule fois. Vous n’avez pas besoin de prompts séparés pour la planification, l’implémentation et les tests.

Lorsque vous utilisez ultrawork, vous pouvez toujours diriger explicitement le comportement des spécialistes. Par exemple, vous pourriez forcer la conception d’architecture en premier :

opencode run "ultrawork demander à @oracle de concevoir le contrat du point de terminaison et les dépendances en premier, puis implémenter avec des changements minimaux et ajouter des tests"

Combiner ultrawork avec des mentions explicites d’agents comme @oracle est le point idéal : vous obtenez une orchestration complète tout en contrôlant toujours quel spécialiste gère les décisions de conception critiques.

Une chose à bien faire pour les tâches ultrawork plus grandes : gardez la concurrence dans les limites de votre fournisseur. Commencez à 2, exécutez quelques tâches proprement, puis décidez d’augmenter. Pousser au-delà du plafond de votre plan ne rend pas les choses plus rapides — cela les rend peu fiables.

Dépannage et meilleures pratiques

Le mot-clé Ultrawork ne déclenche pas

Si ulw ou ultrawork est ignoré, traitez-le comme un signal pour vérifier le chargement du plugin et la compatibilité des versions. Il y a eu au moins une régression signalée où la détection de mot-clé n’injectait pas le prompt de mode ultrawork attendu, avec l’enquête pointant vers le crochet de détecteur de mot-clé dédié.

Dans la pratique, les corrections les plus rapides sont :

  • confirmer que le plugin est enregistré et que les fichiers de configuration sont présents (voir la checklist de vérification plus tôt)
  • mettre à niveau OpenCode ou le plugin si vous êtes sur une version connue pour régresser la détection de mot-clé

Le script d’installation ne peut pas trouver votre configuration OpenCode

Vérifiez qu’OpenCode est installé (opencode --version), puis définissez explicitement une variable d’environnement de chemin de configuration avant de réexécuter l’installateur.

Trop de tâches de fond ou problèmes de limitation

Si vous rencontrez des limites de taux, des temps d’attente ou des complétions instables, la correction est toujours la même : réduisez la concurrence et réexécutez. Chasser un parallélisme plus élevé lorsque votre fournisseur vous limite déjà est une bataille perdue d’avance.

Quand vous ne devriez pas utiliser ultrawork

Ultrawork est puissant, mais ce n’est pas gratuit — chaque agent parallèle coûte des jetons et compte contre vos limites de taux. Réservez-le pour les grands refactorings, les travaux de fonctionnalités full-stack et les tâches complexes multi-étapes. Pour une petite modification de fichier unique ou une question rapide, un prompt simple est plus rapide et moins cher.

Une bonne règle de base :

  • utilisez des prompts normaux pour les petites modifications et les questions simples
  • utilisez ultrawork lorsque vous voulez que le système décompose, délègue, exécute et vérifie dans tout le dépôt

Note de conformité sur les conditions des fournisseurs

Certaines discussions communautaires autour de cet écosystème touchent aux restrictions des fournisseurs et aux conditions d’utilisation, en particulier autour de l’OAuth tiers et des couches de compatibilité. Ce sont des contraintes réelles — examinez les conditions de votre fournisseur avant d’exécuter des flux de travail automatisés ou parallèles à grande échelle, et ne supposez pas qu’une intégration fonctionnelle signifie qu’elle est autorisée.


Prêt à approfondir ? La plongée dans les agents spécialisés explique le rôle de chaque agent, les exigences de modèle et les options d’auto-hébergement. Pour des données de performance honnêtes et les risques de facturation signalés par la communauté, consultez l’article sur l’expérience Oh My Opencode.