Modes
Diffrents modes pour diffrents cas d'utilisation.
Les modes dans opencode vous permettent de personnaliser le comportement, les outils et les invites pour diffrents cas d’utilisation.
Il est fourni avec deux modes intgrs : build et plan. Vous pouvez personnaliser ceux-ci ou configurer les vtres via la configuration opencode.
Vous pouvez basculer entre les modes pendant une session ou les configurer dans votre fichier de configuration.
Intgr
opencode est fourni avec deux modes intgrs.
Build
Build est le mode par dfaut avec tous les outils activs. C’est le mode standard pour le travail de dveloppement o vous avez besoin d’un accs complet aux oprations de fichiers et aux commandes systme.
Plan
Un mode restreint conu pour la planification et l’analyse. En mode plan, les outils suivants sont dsactivs par dfaut :
write- Ne peut pas crer de nouveaux fichiersedit- Ne peut pas modifier les fichiers existantspatch- Ne peut pas appliquer des correctifsbash- Ne peut pas excuter de commandes shell
Ce mode est utile lorsque vous voulez que l’IA analyse le code, suggre des modifications ou cre des plans sans apporter de modifications relles votre base de code.
Basculement
Vous pouvez basculer entre les modes pendant une session en utilisant la touche Tab. Ou votre raccourci clavier switch_mode.
Voir aussi : Formatters pour des informations sur la configuration du formatage du code.
Configuration
Vous pouvez personnaliser les modes intgrs ou crer les vtres via la configuration. Les modes peuvent tre configurs de deux manires :
Configuration JSON
Configurez les modes dans votre fichier de configuration opencode.json :
{ "$schema": "https://opencode.ai/config.json", "mode": { "build": { "model": "anthropic/claude-sonnet-4-20250514", "prompt": "{file:./prompts/build.txt}", "tools": { "write": true, "edit": true, "bash": true } }, "plan": { "model": "anthropic/claude-haiku-4-20250514", "tools": { "write": false, "edit": false, "bash": false } } }}Configuration Markdown
Vous pouvez galement dfinir des modes en utilisant des fichiers Markdown. Placez-les dans :
- Global :
~/.config/opencode/mode/ - Projet :
.opencode/mode/
---model: anthropic/claude-sonnet-4-20250514temperature: 0.1tools: write: false edit: false bash: false---
Vous tes en mode de rvision de code. Concentrez-vous sur :
- Qualit du code et bonnes pratiques- Bugs potentiels et cas limites- Implications de performance- Considrations de scurit
Fournissez des feedbacks constructifs sans apporter de modifications directes.Le nom du fichier Markdown devient le nom du mode (par exemple, review.md cre un mode review).
Examinons ces options de configuration en dtail.
Modle
Utilisez la configuration model pour remplacer le modle par dfaut pour ce mode. Utile pour utiliser diffrents modles optimiss pour diffrentes tches. Par exemple, un modle plus rapide pour la planification, un modle plus capable pour la mise en uvre.
{ "mode": { "plan": { "model": "anthropic/claude-haiku-4-20250514" } }}Temprature
Contrlez l’alatoire et la crativit des rponses de l’IA avec la configuration temperature. Les valeurs plus faibles rendent les rponses plus concentres et dterministes, tandis que les valeurs plus leves augmentent la crativit et la variabilit.
{ "mode": { "plan": { "temperature": 0.1 }, "creative": { "temperature": 0.8 } }}Les valeurs de temprature vont gnralement de 0,0 1,0 :
- 0,0-0,2 : Rponses trs concentres et dterministes, idales pour l’analyse de code et la planification
- 0,3-0,5 : Rponses quilibres avec une certaine crativit, bonnes pour les tches de dveloppement gnral
- 0,6-1,0 : Rponses plus cratives et varies, utiles pour le brainstorming et l’exploration
{ "mode": { "analyze": { "temperature": 0.1, "prompt": "{file:./prompts/analysis.txt}" }, "build": { "temperature": 0.3 }, "brainstorm": { "temperature": 0.7, "prompt": "{file:./prompts/creative.txt}" } }}Si aucune temprature n’est spcifie, opencode utilise les valeurs par dfaut spcifiques au modle (gnralement 0 pour la plupart des modles, 0,55 pour les modles Qwen).
Invite
Spcifiez un fichier d’invite systme personnalis pour ce mode avec la configuration prompt. Le fichier d’invitation doit contenir des instructions spcifiques l’objectif du mode.
{ "mode": { "review": { "prompt": "{file:./prompts/code-review.txt}" } }}Ce chemin est relatif l’emplacement du fichier de configuration. Cela fonctionne donc pour la configuration globale opencode et la configuration spcifique au projet.
Outils
Contrlez quels outils sont disponibles dans ce mode avec la configuration tools. Vous pouvez activer ou dsactiver des outils spcifiques en les dfinissant sur true ou false.
{ "mode": { "readonly": { "tools": { "write": false, "edit": false, "bash": false, "read": true, "grep": true, "glob": true } } }}Si aucun outil n’est spcifi, tous les outils sont activs par dfaut.
Outils disponibles
Voici tous les outils qui peuvent tre contrls via la configuration du mode.
| Tool | Description |
|---|---|
bash | Excuter des commandes shell |
edit | Modifier les fichiers existants |
write | Crer de nouveaux fichiers |
read | Lire le contenu des fichiers |
grep | Rechercher le contenu des fichiers |
glob | Trouver des fichiers par motif |
list | Lister le contenu du rpertoire |
patch | Appliquer des correctifs aux fichiers |
todowrite | Grer les listes de tches |
todoread | Lire les listes de tches |
webfetch | Rcuprer le contenu web |
Modes personnaliss
Vous pouvez crer vos propres modes personnaliss en les ajoutant la configuration. Voici des exemples utilisant les deux approches :
Utilisation de la configuration JSON
{ "$schema": "https://opencode.ai/config.json", "mode": { "docs": { "prompt": "{file:./prompts/documentation.txt}", "tools": { "write": true, "edit": true, "bash": false, "read": true, "grep": true, "glob": true } } }}Utilisation de fichiers Markdown
Crez des fichiers de mode dans .opencode/mode/ pour les modes spcifiques au projet ou ~/.config/opencode/mode/ pour les modes globaux :
---temperature: 0.1tools: bash: true read: true grep: true write: false edit: false---
Vous tes en mode de dbogage. Votre objectif principal est d'aider enquter et diagnostiquer les problmes.
Concentrez-vous sur :
- Comprendre le problme par une analyse soigne- Utiliser les commandes bash pour inspecter l'tat du systme- Lire les fichiers et journaux pertinents- Rechercher des motifs et des anomalies- Fournir des explications claires des rsultats
Ne faites aucune modification aux fichiers. Enqutez et signalez uniquement.---model: anthropic/claude-sonnet-4-20250514temperature: 0.2tools: edit: true read: true grep: true glob: true---
Vous tes en mode de refactoring. Concentrez-vous sur l'amlioration de la qualit du code sans changer la fonctionnalit.
Priorits :
- Amliorer la lisibilit et la maintenabilit du code- Appliquer des conventions de dnomination cohrentes- Rduire la duplication de code- Optimiser les performances lorsque cela est appropri- Assurer que tous les tests continuent passerCas d’utilisation
Voici quelques cas d’utilisation courants pour diffrents modes.
- Mode Build : Travail de dveloppement complet avec tous les outils activs
- Mode Plan : Analyse et planification sans apport de modifications
- Mode Review : Rvision de code avec un accs en lecture seule plus les outils de documentation
- Mode Debug : Concentr sur l’enqute avec les outils bash et read activs
- Mode Docs : Rdaction de documentation avec des oprations de fichiers mais sans commandes systme
Vous pouvez galement trouver que diffrents modles sont bons pour diffrents cas d’utilisation.