Anthropic introduced mods for Claude Code: small TypeScript functions that change how the tool behaves and looks. According to the official blog, a mod can rewrite a prompt, add UI, replace a built-in feature, or add new functionality. You can write one yourself or ask Claude Code to write it. Mods ship inside plugins, install like any plugin, and work in both the Claude Code CLI and the desktop app.
For current plans, prices and every Maitz article on Claude, see our Claude hub.

Important: mods run with the same machine access as Claude Code itself. They are not sandboxed. Anthropic says to install mods only from sources you trust, the same way you would install any local code. If you are just getting started, see install Claude Code and run a first task.
Why this is more than hooks
Developers wanted deeper control without waiting for an official feature. Hooks helped, but Anthropic says they cannot rewrite events, draw new UI, or replace features. Mods can. The company shared the design on GitHub before launch and took community feedback.
How mods work
Each time Claude Code does something, it emits an event: a tool call, a permission request, drawing part of the screen. A mod is a function hooked to one of those events. It can run before, after, instead of, or wrap the event (before and after). With one function you can rewrite a prompt before it reaches the model, block/rewrite/retry a tool call, approve or deny a permission, or redact secrets from tool output before Claude reads it.
A mod can also change what you see: edit or replace part of the interface, add buttons and inputs, and other mods can react when you press them. A mod can target the terminal, the desktop app, or both. When several mods hook the same event, they run in load order: the first to load sees the event first and the result last, so you can stack mods from different authors.
You can also ask Claude Code to mod itself: it can write the TypeScript, install it, and hot-reload it in the session.
Built-ins that ship as mods
Some built-in features now ship as mods. For example, the built-in /diff command is now a mod: you can turn it off in /plugin or replace it with your own. Anthropic plans to move more built-ins this way, so you can pare Claude Code down to a small core and add back only what you need.
Teams and enterprises
Because mods live inside plugins, existing plugin controls apply. Admins can allow or block plugin marketplaces. On Team and Enterprise plans an owner sets this in the admin console; on Claude API and third-party API plans, admins push managed settings to users’ machines.
On Team/Enterprise plans and on any machine with managed settings, a built-in mod called sec-default (“security default”) loads first. It stops user-installed mods from risky overrides, such as overriding permission deny rules. You can view the source to see what it restricts. Admins can load their own mods first instead; Anthropic says to keep sec-default in that list if you do.
Team examples in the post include a CI/CD status pane beside the conversation, confirmation before any command touches production config, and an audit-logging mod that loads first and records calls made by other mods. For Claude in larger orgs, see also Barclays expanding Claude and Claude Frontier Academy.
Availability
Mods are available today in the Claude Code CLI and desktop app. Install plugins that include mods from the Claude directory or with /plugin in the CLI. To share, package a mod in a plugin and submit it to the directory. Getting-started guidance and docs are linked from the official post. More updates are in AI News.
Sources
- Anthropic / Claude, Customize Claude Code with mods in TypeScript, official blog: claude.com/blog/claude-code-mods


