stop-hook-fires-on-agent-idle-state-not-just-termination
The Stop hook fires whenever the agent finishes a turn and enters a waiting state (no pending tool calls), not only when a genuine session termination occurs. This causes repeated false-positive evaluations during multi-turn brainstorming flows where the agent asks a clarifying question and waits for user input. The hook has no way to distinguish ‘agent paused mid-conversation’ from ‘agent actually stopping’. Fix: add a session-state signal (e.g. open TodoWrite tasks, active skill checklist step in_progress) to gate the hook’s block/approve logic.
Related
- stop-hook-fires-on-agent-wait-state-not-just-stop
- stop-hook-fires-on-agent-idle-waiting-state-false-positive
- stop-hook-fires-false-positives-during-waiting-states
- stop-hook-false-positive-during-agent-wait-states
- stop-hook-false-positive-during-active-wait-state
- ucg-explicit-invocation-required-stop-hook-blocks-otherwise