Modos
Modos diferentes para diferentes casos de uso.
Os modos no opencode permitem que você personalize o comportamento, as ferramentas e os prompts para diferentes casos de uso.
Ele vem com dois modos integrados: build e plan. Você pode personalizar esses ou configurar os seus próprios através da configuração do opencode.
Você pode alternar entre os modos durante uma sessão ou configurá-los no seu arquivo de configuração.
Integrados
O opencode vem com dois modos integrados.
build
Build é o modo padrão com todas as ferramentas habilitadas. Este é o modo padrão para trabalho de desenvolvimento onde você precisa de acesso total a operações de arquivos e comandos do sistema.
plan
Um modo restrito projetado para planejamento e análise. No modo plan, as seguintes ferramentas estão desativadas por padrão:
write- Não pode criar novos arquivosedit- Não pode modificar arquivos existentes, exceto para arquivos localizados em.opencode/plans/*.mdpara detalhar o plano em sipatch- Não pode aplicar patchesbash- Não pode executar comandos de shell
Este modo é útil quando você deseja que a IA analise o código, sugira alterações ou crie planos sem fazer modificações reais em sua base de código.
Alternando
Você pode alternar entre modos durante uma sessão usando a tecla Tab. Ou sua tecla de atalho configurada switch_mode.
Veja também: Formatadores para informações sobre configuração de formatação de código.
Configuração
Você pode personalizar os modos integrados ou criar os seus próprios através da configuração. Os modos podem ser configurados de duas maneiras:
Configuração JSON
Configure os modos no seu arquivo de configuração 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 } } }}Configuração Markdown
Você também pode definir modos usando arquivos markdown. Coloque-os em:
- Global:
~/.config/opencode/modes/ - Projeto:
.opencode/modes/
---model: anthropic/claude-sonnet-4-20250514temperature: 0.1tools: write: false edit: false bash: false---
You are in code review mode. Focus on:
- Code quality and best practices- Potential bugs and edge cases- Performance implications- Security considerations
Provide constructive feedback without making direct changes.O nome do arquivo markdown se torna o nome do modo (por exemplo, review.md cria um modo review).
Vamos analisar essas opções de configuração em detalhes.
Modelo
Use a configuração model para substituir o modelo padrão para este modo. Útil para usar diferentes modelos otimizados para diferentes tarefas. Por exemplo, um modelo mais rápido para planejamento, um modelo mais capaz para implementação.
{ "mode": { "plan": { "model": "anthropic/claude-haiku-4-20250514" } }}Temperatura
Controle a aleatoriedade e a criatividade das respostas da IA com a configuração temperature. Valores mais baixos tornam as respostas mais focadas e determinísticas, enquanto valores mais altos aumentam a criatividade e a variabilidade.
{ "mode": { "plan": { "temperature": 0.1 }, "creative": { "temperature": 0.8 } }}Os valores de temperatura geralmente variam de 0.0 a 1.0:
- 0.0-0.2: Respostas muito focadas e determinísticas, ideais para análise de código e planejamento
- 0.3-0.5: Respostas equilibradas com alguma criatividade, boas para tarefas de desenvolvimento geral
- 0.6-1.0: Respostas mais criativas e variadas, úteis para brainstorming e exploração
{ "mode": { "analyze": { "temperature": 0.1, "prompt": "{file:./prompts/analysis.txt}" }, "build": { "temperature": 0.3 }, "brainstorm": { "temperature": 0.7, "prompt": "{file:./prompts/creative.txt}" } }}Se nenhuma temperatura for especificada, o opencode usa padrões específicos do modelo (geralmente 0 para a maioria dos modelos, 0.55 para modelos Qwen).
Prompt
Especifique um arquivo de prompt do sistema personalizado para este modo com a configuração prompt. O arquivo de prompt deve conter instruções específicas para o propósito do modo.
{ "mode": { "review": { "prompt": "{file:./prompts/code-review.txt}" } }}Este caminho é relativo a onde o arquivo de configuração está localizado. Portanto, isso funciona tanto para a configuração global do opencode quanto para a configuração específica do projeto.
Ferramentas
Controle quais ferramentas estão disponíveis neste modo com a configuração tools. Você pode habilitar ou desabilitar ferramentas específicas definindo-as como true ou false.
{ "mode": { "readonly": { "tools": { "write": false, "edit": false, "bash": false, "read": true, "grep": true, "glob": true } } }}Se nenhuma ferramenta for especificada, todas as ferramentas estão habilitadas por padrão.
Ferramentas disponíveis
Aqui estão todas as ferramentas que podem ser controladas através da configuração do modo.
| Ferramenta | Descrição |
|---|---|
bash | Executar comandos de shell |
edit | Modificar arquivos existentes |
write | Criar novos arquivos |
read | Ler conteúdos de arquivos |
grep | Pesquisar conteúdos de arquivos |
glob | Encontrar arquivos por padrão |
list | Listar conteúdos de diretório |
patch | Aplicar patches a arquivos |
todowrite | Gerenciar listas de tarefas |
todoread | Ler listas de tarefas |
webfetch | Buscar conteúdo da web |
Modos personalizados
Você pode criar seus próprios modos personalizados adicionando-os à configuração. Aqui estão exemplos usando ambas as abordagens:
Usando configuração 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 } } }}Usando arquivos markdown
Crie arquivos de modo em .opencode/modes/ para modos específicos do projeto ou ~/.config/opencode/modes/ para modos globais:
---temperature: 0.1tools: bash: true read: true grep: true write: false edit: false---
You are in debug mode. Your primary goal is to help investigate and diagnose issues.
Focus on:
- Understanding the problem through careful analysis- Using bash commands to inspect system state- Reading relevant files and logs- Searching for patterns and anomalies- Providing clear explanations of findings
Do not make any changes to files. Only investigate and report.---model: anthropic/claude-sonnet-4-20250514temperature: 0.2tools: edit: true read: true grep: true glob: true---
You are in refactoring mode. Focus on improving code quality without changing functionality.
Priorities:
- Improve code readability and maintainability- Apply consistent naming conventions- Reduce code duplication- Optimize performance where appropriate- Ensure all tests continue to passCasos de uso
Aqui estão alguns casos de uso comuns para diferentes modos.
- Modo Build: Trabalho de desenvolvimento completo com todas as ferramentas habilitadas
- Modo Plan: Análise e planejamento sem fazer alterações
- Modo Review: Revisão de código com acesso somente leitura e ferramentas de documentação
- Modo Debug: Focado em investigação com ferramentas bash e de leitura habilitadas
- Modo Docs: Redação de documentação com operações de arquivo, mas sem comandos do sistema
Você também pode descobrir que diferentes modelos são bons para diferentes casos de uso.