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.

A CLI do Devin carrega configurações de várias fontes e as mescla. Compreender a ordem de precedência ajuda você a definir a configuração certa para sua equipe e para suas preferências pessoais.

Camadas de configuração

Da maior para a menor prioridade:
PrioridadeOrigemObservações
1 (mais alta)Configurações da organização / equipeNão pode ser sobrescrita
2Sessão (aprovações interativas)Somente em memória
3Projeto local (.devin/config.local.json)Pessoal, ignorado pelo Git
4Projeto (.devin/config.json)Compartilhado com a equipe
5 (mais baixa)Usuário (~/.config/devin/config.json; %APPDATA%\devin\config.json no Windows)Seus padrões
Quando a mesma configuração é definida em vários níveis, prevalece a origem de maior prioridade.

Quando usar cada nível

Configuração do usuário

Caminho: ~/.config/devin/config.json (%APPDATA%\devin\config.json no Windows)Use para preferências pessoais que se aplicam em qualquer lugar:
  • Preferência de modelo padrão
  • Preferência de tema
  • Servidores MCP pessoais (por exemplo, suas próprias Chaves de API)
  • Permissões globais concedidas
{
  "agent": { "model": "opus" },
  "permissions": {
    "allow": ["Read(**)", "Exec(git)"]
  }
}
Caminho: .devin/config.jsonUse para padrões da equipe registrados no repositório. Somente permissions, mcpServers, read_config_from e hooks estão disponíveis neste nível:
  • Servidores MCP compartilhados (com configuração sem segredos)
  • Políticas de permissão da equipe
  • Configurações de importação
  • Hooks de ciclo de vida
{
  "permissions": {
    "allow": ["Exec(npm run)", "Read(src/**)"],
    "deny": ["Exec(sudo)"]
  },
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"]
    }
  }
}
Caminho: .devin/config.local.jsonUse para overrides pessoais que não devem ser registrados no repositório:
  • Chaves de API e segredos
  • Preferências pessoais de ferramentas para este projeto
  • Overrides de permissão
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_my_personal_token"
      }
    }
  }
}
Arquivos de configuração local são excluídos automaticamente do git por meio de .git/info/exclude.
Gerenciadas pelo administrador Enterprise por meio do painel de configurações da equipe. Essas configurações não podem ser alteradas por usuários individuais e aplicam políticas válidas para toda a organização, como restrições de modelo e listas de permissões de servidores MCP.

O que está disponível em cada nível

Nem todas as Configurações podem ser definidas no nível do projeto. As configurações do projeto (.devin/config.json e .devin/config.local.json) oferecem suporte a:
ConfiguraçãoConfiguração do usuárioConfiguração do projeto
permissions
mcpServers
read_config_from
hooks
agent (modelo)
theme_mode
unicode_mode
show_path
include_gitignored_files
sandbox
As configurações marcadas como exclusivas do usuário só podem ser definidas na configuração do usuário (~/.config/devin/config.json; %APPDATA%\devin\config.json no Windows) e não fazem parte da hierarquia de precedência acima.

Como funciona a mesclagem

A tabela de precedência acima se aplica apenas a configurações compatíveis com vários níveis (permissions, mcpServers, read_config_from, hooks).

Permissões

As listas de permissão são mescladas entre os níveis. Uma negação em um nível mais alto não pode ser sobreposta por uma permissão em um nível mais baixo. Por exemplo, se a sua organização negar Exec(sudo), adicionar Exec(sudo) à sua lista de permissões de usuário não terá efeito — a negação da organização sempre prevalece. No entanto, outras permissões, como Read(**) no nível do projeto, são aplicadas normalmente.

Servidores MCP

As configurações de servidores MCP são mescladas por nome. Um servidor definido em um nível superior substitui o servidor de mesmo nome em um nível inferior. Por exemplo, se tanto a configuração do usuário quanto a do projeto definirem um servidor “github”, prevalece a versão da configuração do projeto, porque ela tem prioridade sobre a configuração do usuário.

Hooks

Os hooks são reunidos de todas as fontes e todos são executados. Um hook definido na configuração do usuário é executado junto com os hooks definidos na configuração do projeto — eles não substituem uns aos outros.

Detecção da raiz do projeto

O Devin CLI encontra a raiz do projeto procurando um diretório .git ou .jj e percorrendo os diretórios acima a partir do diretório de trabalho atual. A configuração do projeto (.devin/) é carregada da raiz do projeto.
Se você tiver diretórios .devin/ aninhados (por exemplo, em um monorepo), as configurações de subdiretórios têm precedência sobre as configurações dos diretórios ancestrais.

Resumo da descoberta de arquivos

ArquivoEncontrado porCompartilhado?
~/.config/devin/config.jsoncaminho XDGNão
.devin/config.jsonPercorrendo diretórios acima a partir do cwdSim (versionado)
.devin/config.local.jsonPercorrendo diretórios acima a partir do cwdNão (ignorado pelo Git)
.devin/skills/*/SKILL.mdraiz do projetoSim (versionado)
~/.config/devin/skills/*/SKILL.mdcaminho XDGNão
AGENTS.mdraiz do projetoSim (versionado)
~/.config/devin/AGENTS.mdcaminho XDGNão
Windows: Os caminhos mostrados como ~/.config/devin/ usam a convenção XDG no Linux/macOS. No Windows, eles correspondem a %APPDATA%\devin\ (normalmente C:\Users\<YourUser>\AppData\Roaming\devin\).