{"name":"prompt.submit","slug":"prompt-submit","family":"setting","title":"Settings keys","noun":"settings key","description":"Hooks can now rewrite or drop your prompt before it is sent.","description_source":"entry","described_by":{"version":"2.1.242","anchor":"prompts-pass-through-a-submit-hook-chain-that-can-rewrite-or"},"presence":{"first_seen":null,"removed_in":null,"in_current_build":false,"newest_mined":"2.1.308","builds":0,"mined_builds":149,"first_cited":{"version":"2.1.242","released_at":"2026-08-24 19:16:14","spans":12}},"aliases":[],"entries":[{"version":"2.1.300","anchor":"mod-event-table-gains-promptchange-policy-decision-gets-se","heading":"Plugin mods gain a prompt-change event and richer permission decisions","line":"Plugin mods get a `prompt.change` event, and permission decisions can now name a setting and a decider","released_at":"2026-10-14 14:27:26","reason":"found in this entry's text"},{"version":"2.1.300","anchor":"userpromptsubmit-hook-detection-restricted-by-a-new-module-c","heading":"Fewer mods count as prompt hooks when Claude Code checks for them","line":"The check for mods that hook prompt submission now applies an extra test, so some mods that counted before no longer do","released_at":"2026-10-14 14:27:26","reason":"found in this entry's text, named in this entry"},{"version":"2.1.299","anchor":"plugin-hooks-can-read-prompt-attachments-by-id","heading":"Plugin hooks can read images and documents attached to a prompt","line":"Plugin hooks can now read, in chunks, the bytes of an image or document attached to the prompt being sent","released_at":"2026-10-14 00:23:19","reason":"found in this entry's text, named in this entry"},{"version":"2.1.299","anchor":"userpromptsubmit-and-promptsubmit-hook-blocks-now-carry-str","heading":"Prompts stopped by hooks now come with a reason","line":"When a `UserPromptSubmit` hook or `prompt.submit` handler stops a prompt, Claude Code now records which kind of stop it was","released_at":"2026-10-14 00:23:19","reason":"found in this entry's text, named in this entry"},{"version":"2.1.299","anchor":"hook-default-responses-become-functions-with-reason","heading":"Plugin hook denials now carry a reason","line":"Default deny responses for plugin hooks such as tool.check and agent.spawn now include a reason alongside the decision","released_at":"2026-10-14 00:23:19","reason":"found in this entry's text"},{"version":"2.1.299","anchor":"plugin-hooks-module-only-plugins-count-as-having-hooks-res","heading":"Plugin hooks get stricter checks and a way to restore prompt text","line":"Plugin hook handling now adds restoreArgument for prompt.submit and skill.prompt and rejects unsafe frontmatter data","released_at":"2026-10-14 00:23:19","reason":"found in this entry's text"},{"version":"2.1.296","anchor":"prompt-submit-hook-interrupted-while-checking","heading":"Interrupting a turn no longer lets a prompt slip past a checking hook","line":"If you interrupt while a prompt-submit hook is still checking your prompt, a block it already gave stands","released_at":"2026-10-09 16:58:10","reason":"found in this entry's text"},{"version":"2.1.296","anchor":"interrupted-while-prompt-checked-handling","heading":"Handling for turns interrupted while prompt hooks are running","line":"Claude Code can now handle a turn that is interrupted while prompt-submit hooks are still checking your prompt","released_at":"2026-10-09 16:58:10","reason":"found in this entry's text, named in this entry"},{"version":"2.1.286","anchor":"composer-gains-composedfromownwordsonly-and-a-promptcompose","heading":"Plugin hooks gain a prompt.compose method and an asUser option on submit","line":"Plugin hooks can now call a new prompt.compose method, and prompt.submit now accepts an asUser option that must be true or false","released_at":"2026-09-30 17:14:38","reason":"found in this entry's text"},{"version":"2.1.286","anchor":"plugin-promptsubmit-accepts-asuser-and-marks-origin","heading":"Plugins can submit a prompt marked as coming from the user","line":"Plugins that submit prompts can now pass an `asUser` flag, which marks the queued prompt as sent on the user's behalf","released_at":"2026-09-30 17:14:38","reason":"found in this entry's text"}],"entries_total":23,"docs":[{"source":"claude-code","path":"changelog","title":"Claude Code changelog","documented":false},{"source":"claude-code","path":"plugins\/mods\/admin","title":"Manage mods for your organization","documented":false},{"source":"claude-code","path":"plugins\/mods\/api","title":"Use the mods API","documented":false},{"source":"claude-code","path":"plugins\/mods\/events","title":"React to events with a mod","documented":false},{"source":"claude-code","path":"plugins\/mods\/interface","title":"Draw in the interface with a mod","documented":false},{"source":"claude-code","path":"plugins\/mods\/reference","title":"Mods reference","documented":false},{"source":"claude-code","path":"plugins\/mods\/test","title":"Test a mod","documented":false},{"source":"claude-code","path":"plugins\/mods\/troubleshoot","title":"Troubleshoot a mod","documented":false}],"docs_total":8,"gates":[],"related":[{"name":"prompt.attachment","slug":"prompt-attachment","description":"New `prompt.attachment` hook lets plugins rewrite or remove text attached to a message"},{"name":"prompt.autocomplete","slug":"prompt-autocomplete","description":"A new `prompt.autocomplete` plugin hook lets plugins add completion rows under the prompt, including for desktop, mobile and VS Code composers"},{"name":"prompt.change","slug":"prompt-change","description":"The `prompt.change` hook runs when a plugin or the landing screen changes the prompt box, and stops itself if plugins keep refilling it"},{"name":"prompt.compose","slug":"prompt-compose","description":"Claude Code can now compare two versions of a changing schema and label the difference, such as text only or new live additions"},{"name":"prompt.context","slug":"prompt-context","description":"A new prompt.context hook event lets plugins add named context blocks to a prompt, capped at 32 blocks and 32000 characters."},{"name":"prompt.edit","slug":"prompt-edit","description":"Plugins can now hook into 'prompt.attachment' to rewrite or drop attachment text before it reaches the model"},{"name":"prompt.fill","slug":"prompt-fill","description":"Plugins can now fill in or suggest text directly in the prompt input box via two new prompt.fill and prompt.suggest actions"},{"name":"prompt.md","slug":"prompt-md","description":"`plugin eval` warns when writing results inside a plugin's own directory could get picked up as plugin components"},{"name":"prompt.read","slug":"prompt-read","description":"New plugin hook API lets plugins read the current text and cursor position in the prompt box"},{"name":"prompt.suggest","slug":"prompt-suggest","description":"Plugins can now fill in or suggest text directly in the prompt input box via two new prompt.fill and prompt.suggest actions"}],"url":"https:\/\/changelogs.core-directive.com\/reference\/setting\/prompt-submit","family_url":"https:\/\/changelogs.core-directive.com\/reference\/setting.json"}