Codex doesn't have a hooks system like Claude Code, but it can run one command at the end of every turn — the notify setting. Silicon Workers uses it to learn "a turn just finished, take a look".
agent-turn-complete) shows up as a weak "take a look" signal; the project name is taken from the working directory.Codex's notify can hold only one command. If your ~/.codex/config.toml already has one (say, desktop notifications), the one-click Connect wraps it instead of replacing it:
~/.butler/hooks/codex-notify-forward (one argument per line; app updates never overwrite it).notify is pointed at the Silicon Workers capture script, which first forwards to your original command, then writes its own event log. Your existing notifications keep working.~/.codex/config.toml is backed up as config.toml.backup-butler.Only needed if your notify value is written in a form the auto-wrapper can't parse (e.g. a multi-line array). Create a small script that calls your original command first, then the capture script:
#!/bin/sh
/path/to/your-original-notify "$@"
/Users/YOU/.butler/hooks/codex-notify.sh "$@"
Make it executable and point notify at it. Two things to know:
~ — use absolute paths.codex-notify.sh itself; app updates overwrite it.notify in config.toml back to your original command (or restore the config.toml.backup-butler backup).~/.butler/hooks/codex-notify-forward.Next: How it works · Uninstall