Codex um eine Systembenachrichtigung „bitte komm zurück und kümmer dich darum“ ergänzen: Codex Attention Notifier

Ich habe das Problem, dass Codex-Benachrichtigungen auf meinem Rechner manchmal nicht zuverlässig daran erinnern, gerade in ein kleines Tool gepackt:

Und ich habe es auch im Diskussionsbereich von openai/codex gepostet:

Das Problem, das es löst: Die Standard-Benachrichtigung von Codex am Ende eines Turns deckt nicht alle Situationen ab, in denen du „zurückkommen und etwas erledigen“ musst. Zum Beispiel, wenn ein Task mitten drin eine Rechtefreigabe braucht, oder wenn gleich Befehle wie sudo xcodebuild -license accept, Installer, softwareupdate etc. ausgeführt werden sollen, bei denen sehr wahrscheinlich ein Admin-Passwort eingegeben werden muss. Wenn das Fenster nicht im Vordergrund ist, denkt man dann leicht, Codex läuft noch – dabei hängt es schon und wartet auf dich.

Effekt:

  • Wenn Codex PermissionRequest ausgibt, erscheint eine macOS-Systembenachrichtigung.
  • Es erinnert vor der Ausführung typischer Befehle, die oft manuelles Eingreifen erfordern, z. B. sudo, xcodebuild -license, xcodebuild -runFirstLaunch, .pkg-Installer, softwareupdate, AppleScript administrator privileges.
  • Normale Befehle lösen keine Erinnerung aus; es poppt also nicht bei jedem ls, git oder Build auf.
  • Es macht nur Benachrichtigungen und Logging; es genehmigt/ablehnt nichts automatisch und schreibt auch keine Codex-Tool-Calls um.
  • Logs werden nach ~/.codex/logs/codex-attention-notifier.log geschrieben.

Installation:

git clone https://github.com/constansino/codex-attention-notifier.git
cd codex-attention-notifier
python3 install.py

Nach der Installation Codex Desktop neu starten oder eine neue Codex-Session öffnen, damit die neue Hooks-Konfiguration greift.

Mit diesem Befehl kannst du testen: Es führt nicht wirklich sudo aus, sondern simuliert nur den Codex-Hook-Input:

printf '%s\n' '{"hook_event_name":"PreToolUse","tool_name":"Bash","cwd":"'"$PWD"'","tool_input":{"command":"sudo xcodebuild -license accept"}}' \
  | python3 ~/.codex/hooks/codex_attention_notify.py

Wenn alles passt, siehst du eine macOS-Benachrichtigung und auch die Logs:

tail -n 5 ~/.codex/logs/codex-attention-notifier.log

Die Einschränkungen habe ich auch klar benannt: Das ist keine offizielle First-Class-Funktion, sondern ein praktischer Patch auf Basis der Codex-Hooks. Für den Fall „Unterprozess läuft schon und bleibt dann an stdin/Passwort hängen“ gibt es in Codex aktuell noch keinen stabilen Hook für ein „wartet auf Eingabe“-Event. Daher fängt dieses Tool häufige Situationen ab, indem es vor der Ausführung riskante Befehle erkennt.