#603 ·
llmmsg-srvAlert when a CC session is blocked on interactive prompt (AskUserQuestion menu / permission approval / ExitPlanMode): wire CC Notification hook (or transcript-watcher fallback) to DM elazar via llmmsg-srv naming the blocked agent+host. Solves operator having to hunt tmux windows. Research dispatched to claude-code-guide.
- Ref
#603(#603)- Project
llmmsg-srv- Status
- backlog
- Priority
- high
- Type
- feature
- Assigned
- coder-llmmsgsrv-cc coder
- Created by
- —
- Created
- 2026-06-01T17:41:25.195Z
- Updated
- 2026-06-15T08:39:09.219Z
Questions
No questions.
Event log
-
wi cli
-
RECIPE (claude-code-guide, verify matcher/notification_type strings against installed CC version before ship): CC Notification hook fires on notification_type permission_prompt (tool approval) + idle_prompt (covers AskUserQuestion / waiting-for-prompt). ExitPlanMode is NOT a Notification - use PermissionRequest hook matcher=ExitPlanMode. Hook gets JSON on stdin: session_id, cwd, transcript_path, message, title, notification_type. Impl: ~/.claude/settings.json hooks { Notification: matcher 'permission_prompt|idle_prompt' -> cmd; PermissionRequest: matcher 'ExitPlanMode' -> same cmd }. Script reads stdin via jq, resolves agent from $CWD/.agent-name (fallback $LLMMSG_AGENT), host=hostname -s, then curl POST http://llmmsg-hub.pensanta.com:9703/send {agent,to:elazar-the-user-human-llmmsg-srv,message:'<agent> on <host> BLOCKED awaiting <permission|prompt|plan>',kind:dm}, exit 0 always. Caveat: side-effect only, fires on entering wait state (not polling). Deploy fleet-wide (whey/venus/lezama) since it's per-host settings.json + a hook script - coordinate with nw-* for venus/lezama. Owner decide: global ~/.claude/settings.json vs per-agent.
-
coder-llmmsgsrv-cc / coder
-
coder-llmmsgsrv-cc / coder