What
Plugins can include hooks, which are small actions Claude Code runs automatically at set moments. An HTTP hook sends a web request instead of running a command. Plugin HTTP hooks gain several pieces in this release:
- Hook requests now carry
headersandallowedEnvVars, and the response carrieshttpStatus,appliesandinSessionCwd. - A new
RunPluginHttpHookhandler runs them. On a machine with no sign-in it fails with "this machine holds no sign-in, so the organization's HTTP hook lists cannot be read". - The runner for plugin hooks on another machine now accepts a hook type of
commandorhttp. Before, it only matchedcommandhooks. - For
httphooks it matches the hook by url, headers andallowedEnvVars, refusesSessionStartandSetupevents, and checks that the plugin is an account plugin. Only an account plugin's http hooks are sent for another machine.
Separately, the plugin listing can now be trimmed to fit a size limit. It supports a headsExcept option. Entries whose text is too long are cut to their start plus a chars count, items that do not fit are dropped, and the summary ends with ", N left out: the answer has no room for them". Before, the listing showed every command, skill and agent.
Why
HTTP hooks from account plugins can now run on another machine, where before only command hooks could. Large plugin sets no longer have to fit in full: if you see "left out" at the end of a listing, some commands, skills or agents were omitted for space.