[BUG] Hooks systemMessage no longer displaying after 1.0.115 update

Status Fixed / completed
Maintainer reply None cached
Activity 6 comments · opened Sep 17, 2025 · closed Sep 23, 2025

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Hooks documentation says systemMessage field is for "// Optional warning message shown to the user", and my hook implementation uses it for warnings intended for the user. The latest changelog says "Show condensed output for post-tool hooks to reduce visual clutter", which seems to mean hiding the message, which is less than ideal.

Message is still visible in transcript mode, but the idea here was to surface warnings during the working flow as a user alert mechanism. If this isn't what systemMessage is intended for anymore, is there another way? What does systemMessage do now?

What Should Happen?

systemMessage should be displayed to the user as a warning. If I have to add another parameter to opt into this, that's fine, but I'd like to be able to show user facing messages.

Error Messages/Logs

Steps to Reproduce

Create a Stop hook that runs with a JSON result including a system message. Expected behavior is the previous yellow text with the warning. Current behavior is no text displayed.

Claude Model

Not sure / Multiple models

Is this a regression?

Yes, this worked in a previous version

Last Working Version

1.0.113

Claude Code Version

1.0.115

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

WSL (Windows Subsystem for Linux)

Additional Information

_No response_

View original on GitHub ↗

6 Comments

cahaseler · 1 year ago

It appears as if the reason field may also not be getting passed to Claude. That is, I don't see it and Claude also claims he doesn't see it, though it's still showing in the transcript view.

stevencowles · 1 year ago

I was using output from the post-hook to show me the number of linting issues left to fix -- can we at least get some way of reverting to prior behavior, please?

cahaseler · 1 year ago

@stevencowles The primary way this manifested for me was caused by an error in my code, I can confirm that it's now working again for me. I was able to effectively debug exactly what was happening by using claude --debug, see if that works for you? You should be able to output to the systemMessage field and have it show up.

stevencowles · 1 year ago

@cahaseler I was not using systemMessage -- can confirm it works, though -- cheers!

cahaseler · 1 year ago

Perfect! Yea, the adjustment to make for something like a post tool lint hook is to still use block and reason to pass the message back to Claude (possibly with the full lint output), and then you can add systemMessage to send the user a shorter note or count or something.

github-actions[bot] · 1 year ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.