{"version":"2.1.311","anchor":"headless-in-place-re-run-of-a-refused-prompt-and-plain-text","canonical_anchor":"headless-in-place-re-run-of-a-refused-prompt-and-plain-text","heading":"Programs running Claude Code can re-run a refused prompt and stream plain text","tier":"notice","area":"SDK","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311\/e\/headless-in-place-re-run-of-a-refused-prompt-and-plain-text","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.311","markdown":"### Programs running Claude Code can re-run a refused prompt and stream plain text\n\nClaude Code run from another program can re-run an already stored prompt in place and pass plain-text pieces to the host as they arrive\n\n**Unclear.** It is not stated whether these options are open to SDK users generally or only to particular host programs.\n\n**What**\n\nClaude Code can be run by another program without its usual screen, for example through the SDK (a library for driving Claude Code from code). The loop that handles each turn in that mode gains several things:\n\n- an option to re-run a prompt in place, reusing a prompt that is already stored, without processing slash commands, attachments or the hooks that run when a prompt is submitted\n\n- a way to pass each piece of plain text to the host program as it streams in, which is dropped if the host's handler fails\n\n- a record of which tools were used, passed on when processing input\n\n- the client platform, now recorded on user messages\n\n**Why**\n\nThis points to new behaviour for programs that embed Claude Code, around prompts that were refused and run again.\n\n- Area: SDK\n- Tier: You'll notice\n- Useful: 4\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: no"}