Claude Code & Codex
Know when your AI agent finishes, fails, or needs you.
One command wires your agent to your phone:
stdpush install claude # adds a Stop hook to ~/.claude/settings.json
stdpush install codex # adds notify to ~/.codex/config.tomlBoth merge into your existing config without clobbering it, and the hooks
are designed to never block or fail the agent. Changed your mind?
stdpush uninstall claude / stdpush uninstall codex removes exactly
what was added and nothing else.
Invoking it
Nothing else to configure — the hook fires automatically when a session ends. Kick off something long and walk away:
claude -p "refactor the auth middleware and make the tests pass"
# …make coffee. When the session finishes, your phone buzzes:
# Claude Code finished — in stdpush-backendAnd since the CLI is on the agent's PATH, you can ask for notifications mid-task, in plain English:
run the test suite, and when it's green,
run: stdpush 'Tests are green, deploy is safe'Manual setup
Prefer wiring it yourself? The Claude Code hook is:
{
"hooks": {
"Stop": [{ "hooks": [{
"type": "command",
"command": "stdpush claude-hook"
}] }]
}
}And for Codex:
notify = ["stdpush", "codex-notify"]The dedicated claude-hook / codex-notify subcommands parse each tool's
JSON payloads (Claude pipes hook data on stdin; Codex appends a JSON
argument) — that's why the hooks don't call plain push.