Feature request: PostResponse / AssistantMessage hook event

Status Fixed / completed
Maintainer reply None cached
Activity 3 comments · opened Feb 9, 2026 · closed Feb 9, 2026

Problem

Claude Code hooks currently support Stop, PreToolUse, PostToolUse, and Notification events. There is no hook event that fires after each assistant response within a session.

This makes it impossible to build integrations that react to every response, such as:

  • Text-to-speech: Speaking Claude's response aloud after each message (not just at session end)
  • Desktop notifications: Alerting when Claude finishes a long response while you're in another window
  • Logging/analytics: Tracking individual response times or content
  • Accessibility tools: Screen reader integration, haptic feedback, etc.

Proposed solution

Add a new hook event — PostResponse, AssistantMessage, or similar — that fires after each assistant turn. The hook payload should include:

  • The assistant's response text (or a summary/truncation for large responses)
  • The conversation turn number
  • Whether tools were used in the response

Context

I built jean-claude, a Stop hook that gives Claude a voice using ElevenLabs TTS. It works great at session end, but users want to hear Claude speak after every response. The only blocker is the lack of a per-response hook event.

Workarounds considered

  • PostToolUse only fires on tool calls, not plain text responses
  • Stop only fires once at session end
  • No combination of existing hooks covers "after every assistant message"

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗