Notificações do Codex: receba um alerta quando ele terminar ou esperar aprovação
O Codex pode avisar quando um turno termina e quando precisa da sua aprovação. O problema: os dois mecanismos do arquivo de configuração cobrem eventos diferentes e, na maioria dos terminais, a “notificação na área de trabalho” vira silenciosamente um sino.
RESPOSTA CURTA
Use a seção [tui]: notifications = ["agent-turn-complete", "approval-requested"] e notification_condition = "always" se quiser alertas mesmo com o terminal em foco. O Codex só envia notificação na área de trabalho (OSC 9) no Ghostty, no iTerm2, no Kitty, no Warp e no WezTerm. Em todos os outros, incluindo o Windows Terminal, ele toca o sino. A configuração notify de nível superior executa um programa seu, mas apenas para agent-turn-complete, nunca para aprovações.
Duas configurações diferentes
| [tui] notifications | notify | |
|---|---|---|
| O que faz | Alerta no terminal do Codex CLI | Executa um programa escolhido por você |
| Turno concluído | Sim (agent-turn-complete) | Sim (agent-turn-complete) |
| Aprovação solicitada | Sim (approval-requested) | Não |
| Prompts de plano / pergunta | Sim (plan-mode-prompt, async-question) | Não |
| Padrão | Ativado | Desativado |
Se você quer saber quando o Codex está esperando por você, o notify sozinho nunca vai resolver. Use as notificações da TUI para isso.
Notificações da TUI
Esta é a parte relevante da configuração de exemplo da OpenAI:
notifications:true,falseou uma lista de eventos.approval-requestedcobre pedidos de aprovação de comandos, edições de arquivo e MCP.notification_condition: por padrão, os alertas só disparam quando o terminal não está em foco. Definaalwaysse você deixa o terminal visível em outro monitor.notification_method:auto,osc9oubel.
As mensagens são do tipo “Approval requested: <command>” (aprovação solicitada), “Codex wants to edit <file>” (o Codex quer editar o arquivo) e “Agent turn complete” (turno do agente concluído).
Por que você só ouve um bipe (Windows Terminal e outros)
No modo auto, o Codex só envia uma notificação na área de trabalho (a sequência de escape OSC 9) quando reconhece o Ghostty, o iTerm2, o Kitty, o Warp ou o WezTerm. Todos os outros terminais (Windows Terminal, o terminal do VS Code, o Terminal da Apple) recebem o sino do terminal. Isso vem do código-fonte do Codex (tui/src/notifications/mod.rs); a documentação só diz que o auto “prefers OSC 9” (prefere OSC 9).
No Windows Terminal, você pode tornar o sino mais perceptível: defina bellStyle como all nas configurações do perfil para tocar um som e fazer o ícone da barra de tarefas piscar (o padrão é audible).
Você também pode forçar notification_method = "osc9"; se o terminal transforma isso em notificação do sistema depende do terminal.
Execute seu próprio programa com notify
O notify executa um programa externo quando um turno termina e passa um argumento JSON com type, thread-id, turn-id, cwd, input-messages e last-assistant-message. Isso o torna ótimo para um push no celular, um webhook ou um log: qualquer coisa além do terminal. É uma chave de nível superior, então coloque-a acima de qualquer [section]:
Um script mínimo, seguindo o da documentação da OpenAI:
- O
.codex/config.tomlde um projeto não pode definirnotify. Ele precisa estar na sua configuração de usuário. - O código-fonte do Codex marca
notifycomo legado e planeja substituí-lo por hooks. Ele funciona hoje; fique de olho no changelog.
E os hooks?
O Codex também tem hooks. Eles vêm ativados por padrão e incluem os eventos PermissionRequest e Stop, configurados em ~/.codex/hooks.json ou em uma tabela [hooks], e todo hook não gerenciado precisa ser revisado e marcado como confiável com /hooks antes de rodar. Não existe evento Notification, e a documentação da OpenAI não mostra um hook de notificação. Para alertas, a configuração da TUI acima é o caminho documentado.
O app do Codex e a extensão para IDE
O app desktop do Codex tem controles próprios: os alertas de turno concluído podem ser definidos como nunca, só com o app em segundo plano ou sempre, e chaves separadas ativam ou desativam as notificações de permissão e de pergunta. A extensão para IDE não tem configurações de notificação próprias. A documentação da OpenAI indica o notify no lugar.
Se você aprova pelo celular com o app do ChatGPT, a issue #39346 relata um caso em que o celular mostra “approval waiting” (aprovação pendente) sem um card para responder.
Ver e responder
Um sino avisa que algo aconteceu em algum terminal. O Pet Island mostra o Codex em uma pequena ilha no topo da sua tela (trabalhando, esperando ou concluído) e, quando o Codex pede para executar um comando ou editar um arquivo, a solicitação aparece lá com o comando ou o diff. Permita ou negue sem trocar de janela; nas perguntas, um clique leva você ao terminal certo. Funciona com o Codex CLI e o app do Codex, ao lado do Claude Code, do Cursor e dos seus outros agentes.
PERGUNTAS FREQUENTES
Como recebo uma notificação quando o Codex termina?
As notificações da TUI do Codex vêm ativadas por padrão para agent-turn-complete, mas, por padrão, só disparam quando o terminal não está em foco. Defina notification_condition = "always" em [tui] se quiser recebê-las com o terminal em foco.
Como sou notificado quando o Codex precisa de aprovação?
Adicione "approval-requested" a notifications na seção [tui] do ~/.codex/config.toml. A configuração notify não dispara para aprovações.
Por que o Codex só apita em vez de mostrar uma notificação?
No modo auto, o Codex só envia notificação na área de trabalho no Ghostty, no iTerm2, no Kitty, no Warp e no WezTerm. Os outros terminais, incluindo o Windows Terminal, recebem o sino.
Posso colocar notify no .codex/config.toml do meu projeto?
Não. A configuração de projeto não pode definir notify; coloque-o no ~/.codex/config.toml.
O Codex tem um hook Notification?
Não. Os hooks do Codex incluem PermissionRequest e Stop, mas não existe evento Notification nem hook de notificação documentado.
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: configuração de exemplo do Codex
- OpenAI: configuração avançada do Codex (notify)
- OpenAI: notificações do Codex
- OpenAI: hooks do Codex
- Código-fonte do openai/codex: tui/src/notifications/mod.rs
- Código-fonte do openai/codex: tui/src/chatwidget/notifications.rs
- Issue #39346: o celular mostra aprovação pendente, mas sem card de aprovação
- Microsoft Learn: configurações de perfil do Windows Terminal (bellStyle)