Avaliação de Risco de Comandos
Cada comando de terminal recebe uma pontuação com um sistema de risco em 4 níveis antes da execução.
Níveis de Risco
| Nível | Auto-Aprovado? | Exemplos |
|---|---|---|
| Safe | Sim (se prefixo na lista de permissões) | ls, cat, date, echo |
| Medium | Após primeira aprovação | curl, git push, npm install |
| High | Após primeira aprovação | rm, mv, chmod, kill |
| Critical | Nunca persistido (padrão) | sudo rm -rf, dd, mkfs |
Modos de Permissão
| Key | Type | Default | Description |
|---|---|---|---|
default | — | — | Aprovações Safe/Medium/High persistem entre reinicializações. Critical é apenas por sessão. |
cautious | — | — | Todas as aprovações são apenas por sessão. |
yolo | — | — | Todas as aprovações persistem para sempre. |
Construções Perigosas
Padrões que sempre elevam o risco:
- Substituição de comando:
$(...)e backticks - Substituição de processo:
>(...),<(...) - Redirecionamento:
>,>> - Múltiplos comandos:
;,&&,|| - Pipes para shells ou
sudo
Detecção de Caminhos Sensíveis
Comandos que referenciam esses arquivos são automaticamente elevados:
.env— segredos de ambiente- Chaves SSH:
id_rsa,id_ed25519 - Configs de nuvem:
.aws,.kube,.docker - Autenticação do sistema:
shadow,passwd,sudoers - Credenciais:
master.key,.netrc,.pgpass
Bloqueios Rígidos (Novo)
Mesmo antes do fluxo de aprovação, padrões de exclusão amplos ou sensíveis são bloqueados, incluindo alvos arriscados com rm -rf e find ... -delete.
Configuração
Defina
terminal.permission_mode no config.toml. O padrão é "default".