{"version":"2.1.295","anchor":"async-hook-json-parsing-is-more-tolerant","canonical_anchor":"async-hook-json-parsing-is-more-tolerant","heading":"Async hooks can now print their JSON answer across several lines","tier":"notice","area":"Hooks","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295\/e\/async-hook-json-parsing-is-more-tolerant","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.295","markdown":"### Async hooks can now print their JSON answer across several lines\n\nAsync hooks can now print a multi-line JSON answer, and unreadable JSON lines are logged as errors\n\n**What**\n\nHooks are your own commands that Claude Code runs at set points. A hook that first prints `{\"async\":true}` can then print a JSON answer. Claude Code now finds that answer either as everything left in the output or as any single line. Before, only a single line starting with `{` was read.\n\nWhen a line starts with `{` but cannot be read as JSON, Claude Code now logs an error. Before, this was only logged in debug mode.\n\n**Why**\n\nHooks that print neatly formatted, multi-line JSON now work, and broken output is easier to spot.\n\n- Area: Hooks\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}