Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

O Devin CLI usa arquivos JSON (com suporte a comentários) para configuração. Esta página documenta todas as opções disponíveis.

Localização dos arquivos

ArquivoFinalidade
~/.config/devin/config.jsonConfigurações do usuário
.devin/config.jsonConfigurações do projeto (versionadas)
.devin/config.local.jsonOverrides locais do projeto (ignorados pelo Git)
No Windows, o caminho do arquivo de configuração do usuário é %APPDATA%\devin\config.json (por exemplo, C:\Users\<you>\AppData\Roaming\devin\config.json), não ~\.config\devin\config.json.

Referência completa da configuração

// ~/.config/devin/config.json
{
  // Comportamento do agente
  "agent": {
    "model": "swe-1-6-fast",           // Modelo padrão
    "show_history_on_continue": true  // Mostrar mensagens ao retomar
  },

  // Tema
  "theme_mode": null,            // "light", "dark", "terminal-dark", "terminal-light", "nocolor" ou null (automático)

  // Permissões
  "permissions": {
    "allow": [],
    "deny": [],
    "ask": []
  },

  // Servidores MCP
  "mcpServers": {},

  // Exibição
  "show_path": false,             // Mostrar o CWD na borda do campo de entrada
  "unicode_mode": "auto",         // "auto", "unicode" ou "ascii"
  "show_hints": true,             // Mostrar dicas entre interações

  // Completar arquivos
  "include_gitignored_files": false, // Incluir arquivos ignorados pelo git nas conclusões com @

  // Acesso a arquivos
  "respect_gitignore": false,        // Bloquear o acesso de ferramentas a caminhos ignorados pelo git

  // Atualizações
  "auto_update": true,            // Instalar novas versões em segundo plano

  // Notificações
  "notify": "smart",              // "never" | "smart" | "always" — notificações no terminal

  // Configurações de proxy para o tráfego HTTP da CLI
  "proxy": {
    "mode": "system",           // "system" | "manual" | "off"
    "url": null,                // URL do proxy (obrigatória no modo manual)
    "no_proxy": null            // Lista de exceções separada por vírgulas
  },

  // Filtragem de rede do sandbox
  "sandbox": {
    "allowed_domains": [],       // Lista de permissões de domínios (vazio = sem filtragem)
    "denied_domains": [],        // Lista de bloqueio de domínios (tem precedência)
    "network_mode": "full"       // "full" ou "limited" (somente GET/HEAD/OPTIONS)
  },

  // Importar configurações de outras ferramentas
  "read_config_from": {
    "cursor": true,
    "windsurf": true,
    "claude": true
  }
}

Referência de opções

As opções marcadas com User only só podem ser definidas na configuração do usuário (~/.config/devin/config.json; %APPDATA%\devin\config.json no Windows). Apenas permissions, mcpServers, read_config_from e hooks estão disponíveis nas configurações de projeto.

agent (apenas para o usuário)

OpçãoTipoPadrãoDescrição
modelstring"swe-1-6-fast"Modelo de IA padrão
show_history_on_continuebooleantrueMostrar mensagens anteriores ao retomar uma sessão

theme_mode (apenas para o usuário)

ValorComportamento
nullDetecção automática (pergunta na primeira execução)
"light"Tema claro
"dark"Tema escuro
"terminal-dark"Tema escuro quantizado em 16 cores ANSI (respeita o esquema de cores do terminal)
"terminal-light"Tema claro quantizado em 16 cores ANSI (respeita o esquema de cores do terminal)
"nocolor"Sem saída em cores (monocromático, útil para terminais VT100)

permissões

Consulte Permissões para acessar a documentação completa.
{
  "permissions": {
    "allow": ["Read(**)", "Exec(git)"],
    "deny": ["Exec(sudo)"],
    "ask": ["Write(**/.env*)"]
  }
}

mcpServers

Mapa de nomes de servidores para configurações de servidor. Oferece suporte a comandos locais (stdio) e servidores HTTP remotos. Consulte Configuração do MCP.
{
  "mcpServers": {
    "server-name": {
      "command": "executable",
      "args": ["arg1", "arg2"],
      "env": { "KEY": "value" }
    },
    "remote-server": {
      "url": "https://mcp.example.com/mcp",
      "transport": "http"
    }
  }
}

show_path (apenas para o usuário)

Mostra o caminho do diretório de trabalho atual na borda do campo de entrada. Quando ativado, a borda superior do campo de entrada exibe seu CWD em um formato mais legível (por ex. ~/projects/my-app).
ValorComportamento
falseOculto (padrão)
trueMostra o caminho do CWD na borda do campo de entrada

unicode_mode (apenas para o usuário)

Controla se a UI do terminal usa símbolos Unicode ou alternativas seguras para ASCII. Defina como "ascii" se o terminal ou a fonte não renderizar corretamente os glifos Unicode (por exemplo, se o símbolo ⏺ aparecer como um quadrado).
ValorComportamento
"auto"Detecta o suporte a Unicode no ambiente (padrão)
"unicode"Sempre usa símbolos Unicode
"ascii"Sempre usa caracteres seguros para ASCII

show_hints (apenas para o usuário)

Exibe dicas ocasionais entre as interações (por exemplo, “Você sabia? Use /model para alternar entre os modelos disponíveis”). Útil para conhecer os recursos da CLI; defina como false para ocultá-las depois que já estiver familiarizado.
ValorComportamento
trueExibe dicas ocasionalmente (padrão)
falseNunca exibe dicas

include_gitignored_files (apenas para o usuário)

Inclua arquivos ignorados pelo Git nos resultados de autocompletar da aba @. Quando ativado, arquivos que correspondem aos padrões de .gitignore aparecerão nas conclusões de menção com @. Isso é útil se você armazena documentação ou outros arquivos em diretórios ignorados pelo Git que deseja referenciar.
ValorComportamento
falseExclui arquivos ignorados pelo Git das conclusões (padrão)
trueInclui arquivos ignorados pelo Git nas conclusões com @

respect_gitignore (apenas para o usuário)

Controla se o agente respeita o .gitignore ao ler ou gravar arquivos por meio de ferramentas. Quando ativado, chamadas de ferramenta que acessam caminhos ignorados pelo Git são bloqueadas. Isso é separado de include_gitignored_files, que afeta apenas o preenchimento automático de @ na aba.
ValorComportamento
falseO agente pode acessar todos os arquivos independentemente do .gitignore (padrão)
trueBloqueia o acesso de ferramentas a caminhos ignorados pelo Git

auto_update (apenas para o usuário)

Controla a atualização automática em segundo plano no macOS e no Linux. Quando ativada, novas versões são baixadas e aplicadas enquanto o Devin CLI está em execução, para que a próxima execução de devin use automaticamente a versão mais recente. A sessão em execução no momento não é afetada — a troca do symlink current só entra em vigor na próxima inicialização. A atualização foi projetada para ser segura contra interrupções: cada etapa no sistema de arquivos é preparada em um caminho temporário e promovida com uma renomeação atômica, e atualizações simultâneas são serializadas com um bloqueio de arquivo. Encerrar no meio da atualização não deixa a instalação em um estado corrompido — na próxima vez, ela simplesmente iniciará com a versão antiga. Aplica-se apenas a instalações autogerenciadas (curl | bash no macOS/Linux). Instalações incluídas em outro produto (por exemplo, Windsurf) ignoram essa configuração e são atualizadas pelo aplicativo principal.
ValorComportamento
trueBaixa e instala novas versões em segundo plano (padrão)
falseApenas verifica se há novas versões; instale manualmente via /update

notify

Controla as notificações do terminal quando o agente termina ou precisa de entrada do usuário. A CLI grava um caractere BEL (aciona o sino do terminal / alerta visual), uma sequência de escape OSC 9 (aciona uma notificação do sistema no iTerm2 e em terminais compatíveis) e uma sequência OSC 777 (notificação na área de trabalho no rxvt-unicode e em outros terminais). Terminais que não reconhecem essas sequências simplesmente as ignoram com segurança.
ValorComportamento
"never"Sem notificações
"smart"Notifica apenas quando a janela do terminal está fora de foco (usa relatórios de foco OSC) (padrão)
"always"Notifica em todos os eventos aplicáveis, independentemente do foco

read_config_from

Controle a importação de configurações de outras ferramentas de IA:
OpçãoTipoPadrãoDescrição
cursorboolean/nulltrueImporta de .cursorrules, .cursor/rules/
windsurfboolean/nulltrueImporta de .windsurf/rules/
claudeboolean/nulltrueImporta de .claude/
Defina como false para desativar uma importação específica. null é tratado como true.

proxy (apenas para o usuário)

Configure como a CLI encaminha seu próprio tráfego HTTP/HTTPS de saída (chamadas à API, atualizações, servidores MCP etc.). Isso não afeta a rede dos processos filhos do sandbox (consulte sandbox abaixo). O campo mode define a estratégia de proxy:
ModeBehavior
"system" (default)Respeita as variáveis de ambiente (HTTP_PROXY, HTTPS_PROXY, ALL_PROXY) e o PAC (Configuração Automática de Proxy) nativo da plataforma no macOS e no Windows
"manual"Encaminha todo o tráfego da CLI pela url especificada
"off"Conecta diretamente — sem proxy
OptionTypeDefaultDescription
modestring"system"Estratégia de proxy: "system", "manual" ou "off"
urlstring/nullnullURL do proxy. Obrigatória quando mode é "manual". Oferece suporte aos esquemas http://, https:// e socks5://
no_proxystring/nullnullLista de hosts/domínios separados por vírgula que ignoram o proxy. Usa a mesma sintaxe da variável de ambiente NO_PROXY (por exemplo, "localhost,127.0.0.1,.corp.example.com"). Aplica-se em qualquer modo
Exemplo — proxy corporativo:
{
  "proxy": {
    "mode": "manual",
    "url": "http://proxy.corp.example.com:8080",
    "no_proxy": "localhost,127.0.0.1,.internal.corp"
  }
}
Exemplo — desativar o proxy:
{
  "proxy": {
    "mode": "off"
  }
}

sandbox (apenas para o usuário)

A filtragem de rede do sandbox está instável no momento. Se você precisar desse recurso, entre em contato com o representante da sua conta para saber os prazos de estabilização.
Configure a filtragem de rede no nível de domínio para o sandbox. Quando --sandbox está ativo e a filtragem de domínio está configurada, um proxy de rede gerenciado é iniciado no loopback, e o sandbox restringe todo o tráfego dos processos filhos para passar por ele. A flag --sandbox aplica, no nível do sistema operacional, os escopos de permissão ativos de Read e Write. As raízes graváveis são derivadas dos escopos Write(...) concedidos, além dos diretórios do workspace; as raízes legíveis vêm dos escopos Read(...) (com os padrões da plataforma sempre legíveis). Escopos concedidos no meio da sessão expandem dinamicamente o sandbox para os comandos subsequentes.
Se --sandbox for informado, mas a resolução do sandbox falhar (por exemplo, se as ferramentas de sandbox não estiverem disponíveis na plataforma atual), a CLI se recusará a iniciar em vez de executar sem sandbox. Esse comportamento de fail-closed garante que a intenção de segurança de --sandbox nunca seja ignorada silenciosamente.
OpçãoTipoPadrãoDescrição
allowed_domainsstring[][]Padrões de domínio permitidos pelo proxy. Quando não está vazio, apenas os domínios correspondentes são permitidos (modo de lista de permissões)
denied_domainsstring[][]Padrões de domínio sempre bloqueados. Regras de bloqueio têm precedência sobre regras de permissão
network_modestring"full""full" permite todos os métodos HTTP; "limited" permite apenas GET/HEAD/OPTIONS
Sintaxe de padrão de domínio:
PadrãoCorresponde a
example.comApenas correspondência exata
*.example.comQualquer subdomínio (não o raiz)
**.example.comDomínio raiz e qualquer subdomínio
Exemplo:
{
  "sandbox": {
    "allowed_domains": [
      "github.com",
      "**.npmjs.org",
      "**.crates.io",
      "**.pypi.org"
    ],
    "denied_domains": ["evil.example.com"],
    "network_mode": "full"
  }
}
A filtragem de domínios se aplica quando o sandbox está ativo (--sandbox). Sem --sandbox, a seção de sandbox é ignorada.
Para teams do Enterprise, administradores podem fazer override das listas de domínios em Configurações da Team. As listas de permissões do Enterprise prevalecem (substituem seu allowed_domains local), enquanto as listas de bloqueio do Enterprise são aditivas (mescladas com seu denied_domains local).

JSON com comentários

Arquivos de configuração oferecem suporte a comentários no estilo JavaScript:
{
  // Comentários de linha
  "agent": {
    "model": "sonnet"  // Comentários inline
  },
  /* Comentários
     em bloco */
  "permissions": {}
}