Missing STOP Hook Event After Final Tool Call
Bug Description
I have set up Claude Code hooks for all hook types.
If the last thing CC did was a tool call before handing back control to the user, no STOP hook event is send.
This makes it impossible to detect idle Claude Code sessions waiting for user input.\
Repro:
write hello to the todo list and do NOT output a message
⏺ Update Todos
⎿ ☐ Hello
☐ hello\
hook logs (ignore pid, ppid is CC process)\
[2025-07-07T18:48:11.364Z] Hook PreToolUse: pid=44019, ppid=43832, sessionId=840489a7-6198-4f0e-a4fb-d46275938477, message="TodoWrite: {"todos":[{"content":"hello","status":"pending","priority":"medium","id":"1"}]}"
[2025-07-07T18:48:11.525Z] Hook PostToolUse: pid=44034, ppid=43832, sessionId=840489a7-6198-4f0e-a4fb-d46275938477, message="TodoWrite: {"todos":[{"content":"hello","status":"pending","priority":"medium","id":"1"}]} - complet..."
Environment Info
- Platform: darwin
- Terminal: cursor
- Version: 1.0.43
- Feedback ID: a461767e-8ebb-4936-9230-56f0d496f696
Error logs are irrelevant to this issue.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗