Summary
_agmsg_agent_binaries has no grok-build arm, so the type falls through to claude codex gemini. agmsg_agent_pid grok-build therefore does not see a live grok process, and grok-build watchers are not liveness-gated.
This is the same function that needs a cursor arm for cursor monitor, but the grok mapping does not depend on that work. Split out of #856. Independently mergeable (#860).
Manifest already has detect_proc=grok grok-*. Reading that key for plugins stays a follow-up (#631).
Do not add agent. Homebrew grok-build and the Cursor CLI installer both use that basename; the policy lives on #856. #860 comments the omission.
#858 stays a draft until this and #857 have landed.
Repro
. scripts/lib/resolve-project.sh
_agmsg_agent_binaries grok-build # claude codex gemini (wrong)
Fix, before the * arm:
grok-build) echo "grok" ;;
The matcher already accepts "$bin"|"$bin"-*. Observed 2026-08-18: live grok pid 2469, vanilla NO, one-arm patch YES.
Do not change grok "${GROK_SESSION_ID:--}" callers.
Related
Summary
_agmsg_agent_binarieshas nogrok-buildarm, so the type falls through toclaude codex gemini.agmsg_agent_pid grok-buildtherefore does not see a livegrokprocess, and grok-build watchers are not liveness-gated.This is the same function that needs a
cursorarm for cursor monitor, but the grok mapping does not depend on that work. Split out of #856. Independently mergeable (#860).Manifest already has
detect_proc=grok grok-*. Reading that key for plugins stays a follow-up (#631).Do not add
agent. Homebrew grok-build and the Cursor CLI installer both use that basename; the policy lives on #856. #860 comments the omission.#858 stays a draft until this and #857 have landed.
Repro
Fix, before the
*arm:The matcher already accepts
"$bin"|"$bin"-*. Observed 2026-08-18: live grok pid 2469, vanilla NO, one-arm patch YES.Do not change grok
"${GROK_SESSION_ID:--}"callers.Related
monitor, and pid name for cursor-agent #856 (cursor monitor +cursor-agentarm;agentalias policy)detect_procfrom the manifest)