O sistema de permissões controla quais ações o agente pode executar sem pedir sua aprovação. Você pode aprovar previamente ações seguras, bloquear ações perigosas e sempre exigir confirmação para operações sensíveis.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.
Comportamento padrão das permissões
| Tipo de ferramenta | Exemplo | Normal | Accept Edits | Bypass | Autonomous (sandbox) |
|---|---|---|---|---|---|
| Somente leitura | Leitura de arquivos, grep, glob | Não | Não | Não | Não |
| Fetch | Requisições HTTP | Sim | Sim | Não | Não |
| Comandos Bash | Execução no shell | Sim | Sim | Não | Não |
Edições de arquivo via edit/write | Editar/gravar arquivos | Sim | Não (no workspace) | Não | Sim |
edit/write ainda exigem confirmação, porque essas ferramentas operam fora do sandbox. Autonomous só está disponível quando o sandbox no nível do sistema operacional está ativo.
Modo Autonomous
--sandbox. Em termos conceituais, ele equivale mais ou menos a “Aceitar edições no workspace atual” mais a capacidade de executar qualquer comando de shell, com ambos os comportamentos contidos pela sandbox em nível de sistema operacional. Quando a sandbox está ativa:
- É o único modo de permissão disponível. Os modos Normal, Accept Edits e Bypass ficam ocultos em sessões com sandbox. O modo Plan continua disponível.
- Comandos de shell e fetches são aprovados automaticamente em vez de pedir confirmação, porque a sandbox impõe limites ao que eles podem ler, escrever e acessar pela rede.
- Edições diretas de arquivos com as ferramentas
editewriteainda pedem confirmação. Essas ferramentas são executadas dentro do processo da CLI, e não dentro da sandbox, então não podem ser delimitadas por ela. Conceder um escopoWrite(...)no prompt expande dinamicamente a sandbox para que os comandos de shell subsequentes possam escrever nesse local. - Escopos concedidos no meio da sessão expandem dinamicamente a sandbox para os comandos subsequentes.
--sandbox (que seleciona Autonomous) quando quiser execução sem supervisão, com limites de acesso ao sistema de arquivos e à rede impostos pelo sistema operacional. Consulte a referência de configuração do sandbox para mais detalhes sobre diretórios raiz graváveis/legíveis e filtragem de domínios, e Configurações da equipe → Aplicação do sandbox para controles do Enterprise.
Como as permissões funcionam
- Regras de negação — Verificadas primeiro. Se houver correspondência, a ação é bloqueada imediatamente.
- Regras de solicitação — Verificadas em segundo lugar. Se houver correspondência, você sempre precisará confirmar (faz override de qualquer regra de permissão).
- Regras de permissão — Verificadas por último. Se houver correspondência, a ação prossegue sem pedir confirmação.
- Padrão — Se nenhuma regra corresponder, sua aprovação será solicitada.
Como a negação é verificada antes da solicitação, e a solicitação é verificada antes da permissão, uma regra de negação sempre prevalece. Se o mesmo escopo corresponder tanto a uma regra de negação quanto a uma regra de solicitação, a regra de negação prevalecerá.
Configuração
permissions do seu arquivo de configuração:
No Windows, o caminho do arquivo de configuração do usuário é
%APPDATA%\devin\config.json (geralmente C:\Users\<you>\AppData\Roaming\devin\config.json) em vez de ~/.config/devin/config.json. Consulte Arquivo de configuração para mais detalhes.- Configuração do projeto
- Configuração do usuário
- Override local
Sintaxe de permissão
Permissões baseadas em escopo
Read(glob)
Read(glob)
Controla o acesso de leitura a arquivos. O padrão glob corresponde aos caminhos dos arquivos.Caminhos de diretório correspondem automaticamente a todos os arquivos dentro deles.
Write(glob)
Write(glob)
Controla o acesso de gravação/edição de arquivos.
Exec(prefix)
Exec(prefix)
Controla a execução de comandos de shell. Corresponde a comandos que começam com o prefixo fornecido.
Exec(git) corresponde a “git”, “git status”, “git commit -m ‘msg’”, mas NÃO a “gitk” nem “github-cli”. O prefixo deve corresponder a uma palavra completa.Fetch(pattern)
Fetch(pattern)
Controla o acesso a fetch HTTP usando padrões de URL.Os padrões de URL seguem o padrão WHATWG URL Pattern. A forma abreviada
domain: corresponde a qualquer caminho no domínio exato.Permissões por ferramenta
read, edit, grep, glob, exec
Permissões das ferramentas do MCP
| Pattern | Corresponde a |
|---|---|
mcp__server__tool | Uma ferramenta específica |
mcp__server__* | Todas as ferramentas de um servidor |
mcp__* | Todas as ferramentas MCP em qualquer lugar |
Padrões de caminho
Read() e Write() aceitam:
| Padrão | Significado |
|---|---|
* | Quaisquer caracteres em um único segmento de caminho |
** | Quaisquer caracteres em vários segmentos de caminho (recursivo) |
~ | Expansão do diretório home |
Use um prefixo de caminho absoluto (por exemplo,
Read(/**)) quando quiser corresponder a todos os arquivos do sistema. Um Read(**) sem uma / inicial é resolvido em relação ao diretório de trabalho atual, então corresponde apenas aos arquivos nesse diretório — não aos arquivos acessados por caminhos absolutos em outros locais.Opções de persistência
| Opção | Onde fica salvo | Compartilhado com a equipe? |
|---|---|---|
| Permitir uma vez | Não é salvo | Não |
| Permitir durante a sessão | Apenas na memória | Não |
| Permitir para o projeto | .devin/config.json | Sim |
| Permitir para o projeto (local) | .devin/config.local.json | Não |
| Permitir globalmente | ~/.config/devin/config.json (%APPDATA%\devin\config.json no Windows) | Não |
Permissões no nível do servidor MCP
list_issues no servidor Figma), o prompt de permissão também oferece opções mais amplas no nível do servidor:
| Opção | Efeito |
|---|---|
| Permitir esta ferramenta (nesta sessão) | Concede acesso à ferramenta específica na sessão atual |
| Sempre permitir esta ferramenta | Salva a permissão da ferramenta específica na configuração |
| Permitir todas as ferramentas neste servidor (nesta sessão) | Concede acesso a todas as ferramentas do servidor nesta sessão |
| Sempre permitir ferramentas neste servidor | Salva o acesso a todo o servidor na configuração |
Precedência
- Configurações da organização/equipe (se Enterprise)
- Permissões concedidas no nível da sessão (aprovações interativas)
- Configuração local do projeto (
.devin/config.local.json) - Configuração do projeto (
.devin/config.json) - Configuração do usuário (
~/.config/devin/config.json;%APPDATA%\devin\config.jsonno Windows)
