O Codex vive pedindo aprovação? Políticas de aprovação, sandbox e “não perguntar novamente” explicados
O Codex pede aprovação quando um comando precisa sair do sandbox. A maioria das reclamações de que “ele vive perguntando” vem de um sandbox restrito demais, de uma configuração que não existe mais ou de um “não perguntar novamente” que só valeu para a sessão.
RESPOSTA CURTA
No Codex atual, approval_policy pode ser on-request (o padrão: o modelo pergunta quando precisa), never ou uma tabela granular; untrusted foi removido e on-failure agora é só outro nome para on-request. O que decide com que frequência você recebe perguntas é, principalmente, o sandbox: com sandbox_mode = "workspace-write", o Codex edita e executa comandos dentro do seu projeto sem perguntar. Para comandos em que você sempre confia, adicione uma prefix_rule com decision = "allow" em ~/.codex/rules/default.rules. É também lá que o “não perguntar novamente para comandos que começam com …” se grava.
Primeiro: o que mudou no Codex
Muitos guias e respostas em fóruns descrevem configurações que não funcionam mais. Antes de ajustar qualquer coisa, compare seu ~/.codex/config.toml com esta lista:
| Configuração antiga | Hoje |
|---|---|
approval_policy = "untrusted" | Removido. O Codex informa “approval_policy = "untrusted" is no longer supported; remove this setting” (não é mais suportado; remova esta configuração). A documentação sugere usar sandbox_mode = "read-only" com on-request no lugar. |
approval_policy = "on-failure" | Ainda é aceito, mas apenas como alias de on-request. |
--full-auto | Não está mais na referência da CLI. A flag mais próxima é --approve-for-me (alias --not-so-yolo): revisão automática de aprovações com on-request e o sandbox workspace-write. |
[profiles.name] dentro do config.toml | Desde o Codex 0.134.0, --profile name lê $CODEX_HOME/name.config.toml. Uma chave profile = "x" esquecida agora gera erro. |
/approvals | Use /permissions (“Set what Codex can do without asking first.”, ou seja, defina o que o Codex pode fazer sem perguntar antes) |
A documentação do Codex também mudou de lugar: as antigas páginas developers.openai.com/codex agora redirecionam para learn.chatgpt.com.
Como o Codex decide perguntar
Duas configurações trabalham juntas. O sandbox limita o que um comando pode acessar: arquivos fora do projeto, a rede. A política de aprovação decide o que acontece quando um comando precisa de mais do que o sandbox permite.
| sandbox_mode | O que o Codex pode fazer sem perguntar |
|---|---|
read-only (padrão) | Ler arquivos e executar comandos em um sandbox somente leitura |
workspace-write | Ler, editar e executar comandos no diretório de trabalho automaticamente |
danger-full-access | Tudo, sem sandbox. Não recomendado |
| approval_policy | Comportamento |
|---|---|
on-request (padrão) | O modelo decide quando perguntar. Comandos que o sandbox permite rodam sem aprovação |
never | Nunca pergunta. Tudo o que falha volta para o modelo, sem ser repassado a você |
{ granular = { … } } | Mantém algumas categorias de prompt interativas e rejeita automaticamente o resto (sandbox_approval, rules, skill_approval, request_permissions, mcp_elicitations) |
Então, se você está em read-only, toda edição precisa de um sim. Essa é a causa mais comum de “o Codex pergunta sobre tudo”. Mesmo em workspace-write, .git, .codex, .agents e .aws continuam somente leitura, e o acesso à rede fica desligado até você ativá-lo.
Esta é a configuração de exemplo da documentação da OpenAI, com as opções de workspace explicadas:
Versões mais novas também oferecem perfis de permissão (default_permissions com os perfis internos :read-only, :workspace e :danger-full-access). Use perfis ou sandbox_mode, não os dois.
Predefinições na CLI, na extensão para IDE e no app
Você não precisa editar TOML. Na CLI, /permissions abre as predefinições; no app e na extensão para IDE há um controle de permissões abaixo da caixa de mensagem. As predefinições da CLI são:
- Read Only: lê o workspace; é preciso aprovar para editar arquivos ou acessar a internet.
- Default: edita dentro do workspace; é preciso aprovar para acessar a internet ou editar outros arquivos.
- Full Access: edita fora do workspace e usa a internet sem perguntar.
O app e a extensão para IDE descrevem a mesma escolha como Ask for approval, Approve for me e Full access. Capturas de tela mais antigas da IDE as chamam de Chat, Agent e Agent (Full Access).
Permita comandos específicos com regras
Quando você quer que o Codex execute um comando fora do sandbox sem perguntar (gh pr view, por exemplo), escreva uma regra. As regras são experimentais e ficam em um arquivo .rules dentro de uma pasta rules/ ao lado de uma camada de configuração, por exemplo ~/.codex/rules/default.rules:
allow: executa fora do sandbox sem perguntar.prompt: pergunta antes de cada comando correspondente.forbidden: bloqueia sem perguntar.
Quando várias regras correspondem, vence a mais restritiva: forbidden vence prompt, que vence allow. Teste um comando com codex execpolicy check antes de confiar em uma regra.
O que o “não perguntar novamente” realmente salva
O prompt de aprovação do Codex CLI oferece tipos diferentes de “sim”, e eles duram tempos bem diferentes:
| Opção | Quanto tempo dura |
|---|---|
| Yes, proceed (Sim, continuar) | Só este comando |
Yes, and don’t ask again for commands that start with <prefix> (Sim, e não perguntar novamente para comandos que começam com o prefixo) | Permanentemente (gravado como regra em ~/.codex/rules/default.rules) |
| Yes, and don’t ask again for this command in this session (Sim, e não perguntar novamente para este comando nesta sessão) | Até o fim da sessão |
| Yes, and don’t ask again for these files (Sim, e não perguntar novamente para estes arquivos) | Edições de arquivo, nesta sessão |
Se você continuar escolhendo a opção da sessão, vai receber a pergunta de novo amanhã. Escolha a opção do prefixo ou escreva a regra você mesmo.
Codex no Windows
O Windows era onde o “ele pergunta tudo” era pior. Na issue #10187, um membro da equipe da OpenAI explicou o motivo: “Without a sandboxing mechanism, all tool calls need to be manually approved on Windows.” (Sem um mecanismo de sandbox, todas as chamadas de ferramenta precisam ser aprovadas manualmente no Windows.) Agora o Codex tem um sandbox nativo para Windows e o usa por padrão:
mxc: o sandbox recomendado em dispositivos Windows compatíveis.elevated: a alternativa preferida quando o MXC não está disponível.unelevated: uma alternativa legada.
Execute /setup-default-sandbox na CLI para configurar o sandbox elevated (ou codex sandbox setup --elevated para a equipe de TI). O Windows 11 é recomendado; no Windows 10 1809 ou mais recente, o suporte é de melhor esforço. Se você trabalha no WSL, o Codex usa o sandbox de Linux lá, e o WSL1 não é mais suportado.
A configuração do projeto só é carregada em projetos confiáveis
Um .codex/config.toml dentro de um repositório só é lido quando você confia no projeto. Se as configurações do seu projeto parecem ignoradas, esse é o motivo. Uma entrada de confiança na sua configuração de usuário fica assim:
As configurações ficam em camadas, da maior prioridade para a menor: flags de linha de comando e substituições -c, o .codex/config.toml do projeto confiável, o arquivo de --profile, seu ~/.codex/config.toml e, por fim, os padrões do sistema.
Sobre --yolo
--dangerously-bypass-approvals-and-sandbox (alias --yolo) executa todos os comandos sem aprovações nem sandbox. O código-fonte o descreve como “EXTREMELY DANGEROUS. Intended solely for running in environments that are externally sandboxed.” (EXTREMAMENTE PERIGOSO. Destinado apenas a ambientes isolados externamente.) approval_policy = "never" com danger-full-access faz o mesmo pelo arquivo de configuração. Se você só quer menos prompts, workspace-write com algumas regras allow resolve, com o sandbox ainda ligado.
Para os prompts que você mantém
Quando o Codex só pergunta sobre o que importa (a rede, arquivos fora do projeto, um push), o problema que resta é perceber a pergunta. O Pet Island coloca as aprovações de comandos e de edição de arquivos do Codex em uma pequena ilha no topo da sua tela, com o comando ou o diff, para você permitir ou negar sem procurar o terminal certo. Ele mostra quando o Codex está trabalhando e quando terminou, e as perguntas do Codex levam você à janela certa com um clique. Funciona com o Codex CLI e o app do Codex e, se a ilha estiver fechada, o Codex pergunta na própria janela, como sempre.
PERGUNTAS FREQUENTES
Como faço o Codex parar de pedir aprovação o tempo todo?
Use sandbox_mode = "workspace-write" para que o Codex possa editar e executar comandos dentro do seu projeto, mantenha approval_policy = "on-request" e adicione entradas prefix_rule com decision = "allow" em ~/.codex/rules/default.rules para os comandos em que você sempre confia.
approval_policy = "untrusted" ainda é suportado?
Não. O Codex atual o rejeita com “approval_policy = "untrusted" is no longer supported; remove this setting”. Use sandbox_mode = "read-only" com approval_policy = "on-request" no lugar.
O que aconteceu com o --full-auto?
Ele não está mais na referência do Codex CLI. A opção mais próxima é --approve-for-me (alias --not-so-yolo), que usa revisão automática de aprovações com on-request e o sandbox workspace-write.
Por que o “não perguntar novamente” não fica salvo?
“Don’t ask again for this command in this session” (não perguntar novamente para este comando nesta sessão) só dura a sessão. Escolha “don’t ask again for commands that start with …” (não perguntar novamente para comandos que começam com …), que salva uma regra em ~/.codex/rules/default.rules.
Por que o Codex pergunta mais no Windows?
Sem sandbox, toda chamada de ferramenta precisa de aprovação. Agora o Codex usa um sandbox nativo do Windows por padrão; execute /setup-default-sandbox se ele não estiver configurado.
Por que o .codex/config.toml do meu projeto é ignorado?
O Codex só carrega a configuração de projeto em projetos confiáveis.
Fontes
Todas as configurações e comportamentos desta página foram conferidos com estas páginas em 26 de outubro de 2026. Os agentes mudam rápido; se algo não bater mais, vale o que diz a página oficial.
- OpenAI: aprovações e segurança do agente Codex
- OpenAI: modos de permissão do Codex
- OpenAI: noções básicas de configuração do Codex
- OpenAI: configuração de exemplo do Codex
- OpenAI: regras do Codex
- OpenAI: sandbox do Codex para Windows
- OpenAI: referência do Codex CLI
- OpenAI: comandos de barra do Codex
- Código-fonte do openai/codex (prompt de aprovação, erros de configuração)
- Issue #10187: o Codex pede aprovação de comandos repetidamente
- Issue #5131: sempre é preciso aprovar edições de arquivo
- Issue #29406: o prompt de aprovação continua mesmo com “não perguntar novamente”