grokbot-notify
An agent skill that lets your Claude Code agent message you in your Grok Bot chat.
Setup
You need Claude Code and a Grok Bot account with its desktop app. Sending uses curl and python3.
Install the skill:
npx skills add AlexDemzz/skills --skill grokbot-notify -gThen run the wizard in your own terminal. It needs you at the keyboard, so don’t hand it to an agent:
~/.claude/skills/grokbot-notify/scripts/setup-webhook| Stage | What you do |
|---|---|
| Create the routine | Paste the prompt the wizard copied into your Bot’s chat in the desktop app, and send it. Skip this if the routine exists. |
| Webhook URL | Copy “POST to” from the routine’s Webhook section and paste it. |
| Authorization header | Copy “header” from the same section and paste it. |
| Test message | Send one test ping, or skip it. |
The wizard saves both values to ~/.config/grokbot/webhook.env. Run it again when one changes: Enter keeps the others.
What it does
Your agent tells you when it finishes a task, gets blocked or needs your decision. Leave a session running and hear back without watching it.
The agent runs one script, which POSTs a short JSON message to the webhook of a Grok Bot routine. Grok Bot relays it in your chat, in plain words, with the links the agent attached.
When to reach for it
You don’t call it; the agent does, once per outcome, with ~/.claude/skills/grokbot-notify/scripts/grokbot-notify <status> "<summary>" [link …]. Progress never earns a message.
| Status | Sent when |
|---|---|
done | A meaningful task is finished. |
blocked | The agent can’t go on without outside help. |
question | The agent needs your decision. |
info | Something else is worth an interruption. |
A new outcome earns a new message: blocked now, done an hour later.
Common questions
The header already is Bearer <key>, so it carries the key. Paste the bare key instead and the wizard adds Bearer for you.
No. The script always exits 0. When nothing went out, it prints a warning, and the agent tells you once to run the wizard, then carries on.
Yes. One JSON object, with from set to claude-code, the repository’s folder as project, and the current branch:
{ "from": "claude-code", "project": "my-app", "branch": "fix-login-redirect", "status": "done", "message": "Fixed the login redirect loop. The PR is ready for review.", "links": ["https://github.com/owner/my-app/pull/42"]}Secrets, tokens and customer data. The skill tells agents to send summaries and links only.
It’s working if
Send the test message at the wizard’s last stage: Grok Bot tells you in your chat that it arrived. If the wizard shows a warning instead, check both values and run it again.
Where it fits
grokbot-notify lives in my skills repository on GitHub (opens in a new tab), next to design-to-shadcn, which skins shadcn primitives from a reference design, and shadcn-composition-patterns, the compound-component laws for shadcn projects.