Use the mods API changedplugins/mods/api
Nearest release: v2.1.294, published an hour after upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 8 Oct 2026 01:49 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 8 Oct 2026 02:07 UTC.
Upstream edited
Recorded here
Lines+5added
Lines−0removed
From line
188
where the diff opens
First seen
1 Oct 2026
this site's first read of the page
Recorded edits6to this page, all time
The whole hunk
from line 188, old and new numbered
/
from line 188
188188
189189Every one of these calls is itself an event, named for its namespace and method without the `$.`, such as `fs.read` for `$.fs.read`. A mod [earlier in the chain](/docs/en/plugins/mods/events#the-order-mods-run-in) can observe, rewrite, or refuse your call, which is how an organization restricts what mods reach.
190190
191A mod can refuse your `$.process.spawn` call after the command has produced output or exited, and nothing the command did is undone. The call then rejects with a message that ends with one of these strings and the refusing mod's reason:
192
193* **`$.process.spawn started, and a plugin withheld its result:`**: the refusing mod hadn't read the command's output to the end. Claude Code stops the command if it's still running.
194* **`$.process.spawn ran, and a plugin withheld its result:`**: the refusing mod had read the command's output to the end, so the command had exited
195
191196## Next steps
192197
193198* [React to events](/docs/en/plugins/mods/events): hook tool calls, prompts, and turns
No line in this hunk matches that.