Install the app. Then your agents can reach you.
The phone app receives each notification. Install it and sign in first. Then one keyless command connects your Mac or Linux machine and sends a test push.
- 1Phone first
Install Agent Notifier on your phone
Open Agent Notifier, sign in, and allow notifications. Use the same account when the browser asks you to authorize this machine.
- 2Recommended
Connect with one line
Installs
notify.py, links this machine by browser approval, and sends a notification to prove it works. The command carries no key, so nothing secret touches your clipboard or shell history.terminalcurl -fsSL https://notifier.aicrew.in/i | shNeeds
curlandpython3, both already present on macOS and every mainstream Linux. Prefer to see each step? The manual walkthrough is below.
Manual notification setup
Use these steps if you skip the one-line installer. The phone app above is still required.
- 1
Drop notify.py into ~/bin
One file. Plain Python 3 standard library. Re-run any time to upgrade in place.
bashcurl -fsSL https://notifier.aicrew.in/notify.py -o ~/bin/notify.py && chmod +x ~/bin/notify.pyMake sure
~/binis on yourPATH. If it isn't yet, addexport PATH="$HOME/bin:$PATH"to your shell rc file.View raw notify.py → · curl-free?
wget https://notifier.aicrew.in/notify.py -O ~/bin/notify.py - 2
Sign in - your API key is already waiting
No forms, no naming step. The first time you sign in we create an account key for you and show a ready-to-paste setup command with the key already in it.
Open the app to get your keyThe secret is shown once, so copy it from that screen. Already have keys? Rotate one from the API keys panel. Start free - every feature is unlocked from the first notification.
- 3
Or save the key yourself
Only needed if you skipped the one-line setup. notify.py reads .env.local in the current repo first, then ~/.config/agent-notifier/config.json.
.env.local# ./.env.local (any project directory) AGENT_NOTIFIER_API_KEY=an_key_REPLACE_WITH_YOUR_KEYOr store globally:
printf %s 'an_key_…' | ~/bin/notify.py --save-config --api-key-stdin. Piping keeps the secret out of the process list. Leave--projectoff and the project is auto-detected per git repo; per-project.env.localwins when present. - 4
Tell your agent to use notify.py
Optional for notification-only use. Paste the block into the listed file once when you want your agent to send proof of work for milestones.
Paste into
~/.claude/CLAUDE.md. Append to your global instructions so Claude uses the CLI in every project.~/.claude/CLAUDE.md## Agent Notifier - keep the human updated (notify.py) `~/bin/notify.py` pushes real-time updates to my phone and desktop. Use it two ways: **Ask, don't wait silently.** When you need my input mid-task, use a blocking ask instead of your built-in interactive question tool - I'm often away from the terminal, a push reaches me and a terminal prompt does not. - Yes/No or choices: `~/bin/notify.py --ask "Deploy to prod?" -c Deploy -c Hold` - Typed answer: `~/bin/notify.py --ask-text "What should the branch be named?"` **Report progress proactively, with proof.** Don't wait to be asked for status - send an update at task start, every major milestone, each blocker, and completion, unprompted. - Progress: `~/bin/notify.py "Migrating database" --progress 0.5` - Proof: `~/bin/notify.py "Tests passing" --file-path ./logs/proof.png` - Link: `~/bin/notify.py "PR ready" --url https://github.com/... --url-title "Open PR"` - Blocked/urgent: `~/bin/notify.py "Blocked: need prod creds" --priority 1` The project auto-detects from the git repo, never pass `--project`. Never echo the API key. Never say a task is done without attaching proof. Run `~/bin/notify.py --help` for the full flag list. (Configured for Claude.)
Verify install
Run this from any directory after Step 3. Your phone should light up within a second.
~/bin/notify.py "Hello from $(hostname)" --file-path /etc/hostnameDidn't arrive? Check that the mobile app is installed, signed in to the same account, and allowed to show notifications. Then confirm your API key is active in the web app.
Advanced - session watcher hooks (PreToolUse, PostToolUse, approvals)
↓
Advanced - session watcher hooks (PreToolUse, PostToolUse, approvals)
The CLI above is enough for most agents. If you want live agent session timelines (PreToolUse approvals, PostToolUse summaries, polling for tap-to-approve responses) you can also install the session watcher. This requires curl, bash, jq, and uv.
curl -fsSL https://notifier.aicrew.in/install.sh | bashPrefer a guided page? Open Session watcher setup.
Set AGENT_NOTIFIER_API_KEY in your environment before running. The installer writes .github/hooks/agent-notifier-approvals.json and .claude/settings.json for the current repo, never commits the key, and appends a project-local CLAUDE.md reminder.