Mods Claude Code
A mod is a plugin whose JavaScript or TypeScript code runs inside Claude Code itself (available since version 2.1.287). On each event (tool call, prompt sent, slash command, drawing of part of the interface), Claude Code calls your handler, which can let the event through, change it or take it over. A settings.json hook stays a script launched from the outside; a mod lives in the process, can rewrite the event and draw in the interface.
Strengths
- Three moves on an event: observe, rewrite, answer in its place (refuse a command, for example)
- Does what a settings hook cannot: a panel beside the transcript, a banner above the prompt, a restyled spinner, a slash command that runs without a Claude turn
- You can ask Claude to write the mod: you describe what you want, it builds the plugin
Limitations
- Not isolated, with your full rights: a mod that approves tool calls can approve what an `ask` rule would make you confirm, or what one of your `PreToolUse` hooks blocked
- It can restyle much of the interface, but not the permission prompt
- Early October 2026 feature: the format and its events may still move
Best for
- Anyone who wants a guardrail with a preview before a deletion or a force push, where a hook just refuses
- Anyone who wants to show in Claude Code a piece of information they keep looking at, such as context fill