A notification on your phone when Claude Code finishes or needs you
Claude Code runs a hook when it needs a decision and when it finishes. One curl in that hook lands on your phone. The same works for Codex and Cursor, and with the MCP server the agent can tell you itself.
/config; code.claude.com/docs/en/remote-control, read 12 September 2026). This page is for when that does not fit: you sign in with an API key or through Bedrock, Vertex or a gateway, you do not run Remote Control, you use Codex or Cursor, or you want the notification in one inbox with everything else you run, in email, Slack or a webhook, with your own rules for what gets through.1 · Get a key
Sign in at youlmk.com or in the app, create a source of type AI agent (name it claude), and copy its key. The source's own rules decide how loud these get: Banner while you are away, Badge on a day you are at the desk. See Reach.
2 · The hook
In ~/.claude/settings.json (every project) or .claude/settings.json (one project), with your key in place of the example:
The Notification hook fires with a type, and the matcher picks the ones worth a push:
Stop fires at the end of every response, short ones included. Three things keep that from being noise: identical titles within ten minutes become one card with a count (Grouping), the source's Reach can be Badge on a day you are at the keyboard, and the needs you push is high priority, which pins it to the top of the inbox for an hour, while done is normal. If you want only the moments that need you, keep the first hook and drop the second.
3 · Or install it as a plugin
The same hooks, plus the MCP server, as one plugin. It asks for your source's bearer token once and keeps it in the keychain.
Inside Claude Code the same two lines are /plugin marketplace add bylivebetter/youlmk-claude and /plugin install youlmk@youlmk. The plugin is one small open-source repository, so you can read exactly what it sends: the event name and nothing from your session.
4 · Let the agent tell you itself
With the MCP server connected, Claude Code has a notify tool and a watch tool. Tell it in your instructions: "notify me when a long task finishes or when you need a decision", and it sends with the source's rules. It can also start a watch for you ("watch the build at example.com/… and tell me when it finishes").
Codex
Codex reads ~/.codex/hooks.json (or the project's .codex/hooks.json) with the same shape. Its events include Stop and PermissionRequest:
Cursor
Cursor reads ~/.cursor/hooks.json (or the project's .cursor/hooks.json), whose hooks point at a script. Its stop event fires when the agent finishes:
Make the script executable (chmod +x ~/.cursor/hooks/youlmk.sh). Cursor can also load hooks written for Claude Code, so the settings from step 2 work there too.
Next
Cron jobs and scripts: A notification when a cron job or a script finishes or fails: one line at the end of the job, high priority for the failures, one card for the repeats. · MCP server · Reach · Grouping