{"version":"2.1.290","anchor":"headless-stream-no-longer-emits-an-inline-message-stop-event","canonical_anchor":"headless-stream-no-longer-emits-an-inline-message-stop-event","heading":"End-of-message stream event is now produced differently","tier":"internal","area":"SDK","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.290\/e\/headless-stream-no-longer-emits-an-inline-message-stop-event","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.290","markdown":"### End-of-message stream event is now produced differently\n\nIn headless streaming output, the end-of-message event is now produced by a shared step instead of being written out in place\n\n**Unclear.** Whether the end-of-message event still looks the same, or is still sent in every case, is not known.\n\n**What**\n\nWhen Claude Code runs headless, without its interactive screen, and streams events to another program, it sends an event marking the end of each message (`message_stop`). That event used to be written out directly; it is now produced by a separate shared step.\n\n**Why**\n\nPrograms that read this stream may see a difference in the events they receive.\n\n- Area: SDK\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 0\/5\n- Scope: individual\n- Heads-up: no"}