Group of 8 Use it now Notable
No documentation found
Plugins can now register/run/list slash commands and open persistent UI panes via new host APIs
What
- Plugins can now register, run, list, and describe custom slash commands using new host operations
command.register,command.run,command.list, andcommand.describe.command.registeradds a new slash command (name, description, argument hint, immediate flag), rejecting name collisions with other plugins, built-in commands, or MCP commands, and capping how many commands one plugin can register.command.runlets a plugin queue a command invocation for the current session.command.listlists available commands together with where each comes from (built-in, plugin, user, or MCP).command.describelets a hook dynamically override a command's description, argument hint, or hidden state.- A plugin command with no matching
command.runhook now replies with an explanatory stub message instead of failing silently.
- Plugins can also open and close a new UI surface called a "pane": a persistent, titled window, using new
ui.open/ui.closeoperations (with id, title, and focus options). Each plugin can have at most 8 panes open at once. - Internally, the hooks event dispatch table was expanded to recognize
ui.open,ui.close,command.run, andcommand.describeas valid events (and the oldPreToolUseevent was renamedclassic.PreToolUsewithout changing its behavior).
Why
This gives plugins much deeper integration with Claude Code: they can add slash commands that behave like built-in ones, and they can show their own persistent UI panels instead of being limited to existing surfaces.
Names in the bundlecommand.registercommand.runcommand.list