Group of 3 You'll notice
Claude Code now waits for pending SessionStart hooks before sending queued prompts, but no longer waits before routing host messages
What
- The core per-turn input processor now waits for any pending
SessionStarthooks to finish before a queued prompt (or a non-prompt-type slash command) is sent to the model, handling cancellation and re-queueing if that wait is interrupted. - When draining the command queue for a resurrected session, if every currently queued exempt command came from that resurrection, execution now waits for
SessionStarthooks to resolve before running the queue, instead of executing immediately. - In the host's reply/message-launch flow, a previous wait for pending hooks before deciding how to send an outgoing queued message (direct insert, enqueue, or immediate run) was removed from that path.
Why
This ensures prompts and resurrected-session commands aren't sent to the model until session-start setup has actually finished, while removing a redundant wait in the separate host message-dispatch path.