Notificaciones de Codex: recibe un aviso cuando termina o espera aprobación

Codex puede avisarte cuando un turno ha terminado y cuando necesita tu aprobación. El problema: los dos mecanismos del archivo de configuración cubren eventos distintos, y en la mayoría de las terminales la “notificación de escritorio” se convierte discretamente en una campana.

Por Aslan, equipo de Pet Island · Actualizado el 26 oct 2026 · 3 min de lectura

RESPUESTA CORTA

Usa la sección [tui]: notifications = ["agent-turn-complete", "approval-requested"], y notification_condition = "always" si quieres alertas incluso con la terminal en primer plano. Codex solo envía una notificación de escritorio (OSC 9) en Ghostty, iTerm2, Kitty, Warp y WezTerm. En todos los demás casos, incluido Windows Terminal, hace sonar la campana. El ajuste de nivel superior notify ejecuta tu propio programa, pero solo para agent-turn-complete, nunca para las aprobaciones.

Dos ajustes distintos

[tui] notificationsnotify
Qué haceAlerta en la terminal desde Codex CLIEjecuta el programa que elijas
Turno completadoSí (agent-turn-complete)Sí (agent-turn-complete)
Aprobación solicitadaSí (approval-requested)No
Solicitudes de plan / preguntasSí (plan-mode-prompt, async-question)No
PredeterminadoActivadoDesactivado

Si quieres saber cuándo te está esperando Codex, notify por sí solo nunca lo hará. Para eso, usa las notificaciones de la TUI.

Notificaciones de la TUI

Esta es la parte relevante de la configuración de ejemplo de OpenAI:

~/.codex/config.tomlCopiar
[tui]
# Desktop notifications from the TUI: boolean or filtered list. Default: true
notifications = ["agent-turn-complete", "approval-requested"]
# Notification mechanism for terminal alerts: auto | osc9 | bel. Default: "auto"
notification_method = "auto"
# When notifications fire: unfocused (default) | always
notification_condition = "unfocused"
  • notifications: true, false o una lista de eventos. approval-requested cubre las solicitudes de aprobación de comandos, de edición de archivos y de MCP.
  • notification_condition: de forma predeterminada, las alertas solo se disparan cuando la terminal no está en primer plano. Establece always si mantienes la terminal visible en otro monitor.
  • notification_method: auto, osc9 o bel.

Los mensajes son del tipo “Approval requested: <command>”, “Codex wants to edit <file>” y “Agent turn complete”.

Por qué solo oyes un pitido (Windows Terminal y otras)

En modo auto, Codex solo envía una notificación de escritorio (la secuencia de escape OSC 9) cuando reconoce Ghostty, iTerm2, Kitty, Warp o WezTerm. Cualquier otra terminal (Windows Terminal, la terminal de VS Code, Apple Terminal) recibe la campana de la terminal. Esto sale del código fuente de Codex (tui/src/notifications/mod.rs); la documentación solo dice que auto “prefiere OSC 9”.

En Windows Terminal puedes hacer que la campana se note más: establece bellStyle en all en la configuración del perfil para reproducir un sonido y hacer parpadear el icono de la barra de tareas (el valor predeterminado es audible).

settings.json de Windows Terminal (perfil)Copiar
{
"bellStyle": "all"
}

También puedes forzar notification_method = "osc9"; que tu terminal lo convierta en una notificación del sistema depende de la terminal.

Ejecuta tu propio programa con notify

notify ejecuta un programa externo cuando se completa un turno y le pasa un argumento JSON con type, thread-id, turn-id, cwd, input-messages y last-assistant-message. Eso lo hace útil para un aviso push en el móvil, un webhook o un log: cualquier cosa más allá de la terminal. Es una clave de nivel superior, así que colócala encima de cualquier [section]:

~/.codex/config.tomlCopiar
notify = ["python3", "/Users/you/.codex/notify.py"]

Un script mínimo, basado en el de la documentación de OpenAI:

~/.codex/notify.pyCopiar
import json, subprocess, sys
 
notification = json.loads(sys.argv[1])
if notification.get("type") == "agent-turn-complete":
message = (notification.get("last-assistant-message") or "Turn complete")[:120]
# macOS: a system notification. On Linux use ["notify-send", "Codex", message].
subprocess.run(["osascript", "-e", f'display notification {json.dumps(message)} with title "Codex"'])
  • El .codex/config.toml de un proyecto no puede definir notify. Tiene que estar en tu configuración de usuario.
  • El código fuente de Codex marca notify como heredado y prevé sustituirlo por hooks. Hoy funciona; sigue de cerca el registro de cambios.

¿Y los hooks?

Codex también tiene hooks. Están activados de forma predeterminada e incluyen los eventos PermissionRequest y Stop; se configuran en ~/.codex/hooks.json o en una tabla [hooks], y cada hook no administrado tiene que revisarse y marcarse como de confianza con /hooks antes de ejecutarse. No existe un evento Notification, y la documentación de OpenAI no muestra ningún hook de notificación. Para las alertas, la vía documentada es el ajuste de la TUI de arriba.

La app de Codex y la extensión del IDE

La app de escritorio de Codex tiene sus propios controles: las alertas de turno completado pueden configurarse como nunca, solo con la app en segundo plano o siempre, y otros interruptores activan o desactivan las notificaciones de permisos y de preguntas. La extensión del IDE no tiene ajustes de notificación propios. La documentación de OpenAI remite a notify en su lugar.

Si apruebas desde el móvil a través de la app de ChatGPT, el issue #39346 describe un caso en el que el móvil muestra “approval waiting” sin una tarjeta para responder.

Verlo y responderlo

Una campana te dice que algo ha pasado en alguna terminal. Pet Island muestra Codex en una pequeña isla en la parte superior de la pantalla (trabajando, esperando o terminado), y cuando Codex pide ejecutar un comando o editar un archivo, la solicitud aparece allí con el comando o el diff. Permítela o deniégala sin cambiar de ventana; en las preguntas, un clic te lleva a la terminal correcta. Funciona con Codex CLI y con la app de Codex, junto a Claude Code, Cursor y tus otros agentes.

PREGUNTAS FRECUENTES

¿Cómo recibo una notificación cuando Codex termina?

Las notificaciones de la TUI de Codex están activadas de forma predeterminada para agent-turn-complete, pero de forma predeterminada solo se disparan cuando la terminal no está en primer plano. Establece notification_condition = "always" en [tui] si las quieres también con la terminal en primer plano.

¿Cómo recibo un aviso cuando Codex necesita aprobación?

Añade "approval-requested" a notifications en la sección [tui] de ~/.codex/config.toml. El ajuste notify no se dispara con las aprobaciones.

¿Por qué Codex solo pita en lugar de mostrar una notificación?

En modo auto, Codex solo envía una notificación de escritorio en Ghostty, iTerm2, Kitty, Warp y WezTerm. Las demás terminales, incluida Windows Terminal, reciben la campana.

¿Puedo poner notify en el .codex/config.toml de mi proyecto?

No. La configuración del proyecto no puede definir notify; ponlo en ~/.codex/config.toml.

¿Tiene Codex un hook Notification?

No. Los hooks de Codex incluyen PermissionRequest y Stop, pero no hay un evento Notification ni ningún hook de notificación documentado.

Fuentes

Cada ajuste y comportamiento de esta página se comprobó con estas páginas el 26 de octubre de 2026. Los agentes cambian rápido; si algo ya no coincide, manda la página oficial.

SIGUE LEYENDO

Responde a todos tus agentes desde la parte superior de la pantalla.

Windows y Mac · 7 días gratis, después un único pago de $8.99 · $1 de cada venta alimenta a animales callejeros

Prueba Pet Island gratis