Guide|Claude Code Mods

ModsCode / Claude Code Mods / Install

How to install Claude Code mods

A mod installs like any plugin. These steps follow Anthropic's documentation, checked on 2026-10-11. A mod runs with your permissions, so check it before you install it.

Before you start

Mods are on by default. Check the version where you use them:

  • Terminal: v2.1.287 or later. Run claude --version.
  • Desktop app: it carries its own Claude Code, and mods work there from v2.1.286. In a local session in the Code tab, enter /status and read the Claude Code row.

Install from a marketplace

A mod installs as a plugin, from a marketplace. You name it plugin@marketplace. Add the marketplace once, then install. In a Claude Code session:

/plugin marketplace add your-org/plugins
/plugin install token-chart@your-org

Here your-org/plugins is the GitHub repository that holds the marketplace, token-chart is the plugin, and your-org is the marketplace's name, which Claude Code prints when it adds it. A mod's page on ModsCode shows both lines for it when its repository lists it in a marketplace.

In a session, /plugin install does not install at once. It opens the /plugin panel on the plugin's details, so you can read what it adds and choose a scope:

  • Install for you (user scope): every project on this machine.
  • Install for all collaborators on this repository (project scope): everyone who works in this repository.
  • Install for you, in this repo only (local scope): this repository, for you.

Then read the last sentence of the summary. Plugin is now active. means it is ready. Run /reload-plugins to apply. means it needs a reload; the panel closes and Claude Code runs it for you. The plugin couldn't be loaded means you should open the Errors tab in /plugin for the reason.

The same two steps work from your shell, without a session. The scope is user unless you add --scope project or --scope local:

claude plugin marketplace add your-org/plugins
claude plugin install token-chart@your-org

With Claude Code v2.1.292 or later, one command adds the marketplace and installs the plugin (in a session, /plugin install takes the same --marketplace from v2.1.275):

claude plugin install token-chart --marketplace your-org/plugins

Install in the desktop app or VS Code

Desktop app (Code tab, local or SSH session)

  1. Click the + next to the prompt box, choose Plugins, then Add plugin.
  2. Pick the mod in the plugin browser, which lists the plugins of your marketplaces.
  3. Choose a scope: your account, this project, or local only.

Enable, disable or uninstall later under + > Plugins > Manage plugins. The plugin browser is not available in the app's cloud sessions.

VS Code

  1. In the Claude Code panel, type /plugins in the prompt box to open Manage plugins.
  2. On the Plugins tab, search for the mod and click Install. If the tab lists no plugins, add the marketplace on the Marketplaces tab first.
  3. Choose a scope: Install for you, Install for this project, or Install locally.

The mod's hooks run in the VS Code chat panel, but nothing it draws appears there. The terminal, the app's local sessions and the VS Code extension on one computer read the same settings files, so a plugin you install at user scope in one is there in the other two.

Try one for a single session

--plugin-dir loads a plugin from a folder (or a .zip) for one session only, with nothing installed. To try the commit you read, clone the repository, check out that commit, and point at the folder that holds .claude-plugin/plugin.json:

git clone https://github.com/owner/repo.git
git -C repo checkout <commit>
claude --plugin-dir ./repo

The session's copy takes the place of an installed plugin of the same name for that session.

Check that it loaded

  • In a terminal session, run /plugin. A dim line under the tabs gives the count and the names, such as 1 mod active · token-chart.
  • The Installed tab in /plugin lists the plugin with its scope.
  • In your shell, claude plugin list prints each plugin with its version, scope and status. A plugin loaded with --plugin-dir shows only if the flag comes first: claude --plugin-dir ./repo plugin list, as name@inline.

Reload and update

If you install or update a mod from your shell while a session is open, run /reload-plugins in that session to load it. Otherwise it loads the next time you start Claude Code. Closing the /plugin panel after a change made in it reloads for you.

A marketplace from a third party does not update on its own: auto-update is on by default for most of Anthropic's official marketplaces and for those added from claude.ai. Update one plugin with:

claude plugin update token-chart@your-org

or choose Update now on the Installed tab. A running session keeps the version it loaded until you reload. A marketplace that follows an author's latest commit changes whenever the author pushes, so install the commit you read. For a GitHub source you can add #ref to pin a branch or tag: /plugin marketplace add your-org/plugins#v1.2.0.

Turn a mod off, or uninstall it

Choose how many mods to stop, and for how long. To turn them back on, undo the same change.

One mod

On the Installed tab in /plugin, press Space to switch the selected plugin off or on, or Enter to open it and choose Uninstall. From your shell:

claude plugin disable token-chart@your-org
claude plugin enable token-chart@your-org
claude plugin uninstall token-chart@your-org

uninstall acts on user scope unless you pass --scope.

Every installed mod, for one session

Start Claude Code with claude --safe-mode. It disables all your customizations, not only mods: CLAUDE.md, skills, plugins, hooks, MCP servers, custom commands and agents, the status line and more.

Every installed mod, in every session

Set "disableAllHooks": true in ~/.claude/settings.json. Your settings hooks and custom status line stop too, and what your organization manages keeps running. The plugins stay installed, and their skills, commands, agents and MCP servers still load. If your organization manages Claude Code, an administrator can also limit which mods load.

If you set CLAUDE_CODE_ENABLE_FUNCTION_HOOKS during early access, remove it. Claude Code v2.1.287 and later ignores it, so setting it to 0 does not keep mods off.

Where mods run

A mod's hooks run in every kind of session that loads the plugin. Only the terminal and the desktop app show what a mod draws.

claude in a terminal, including an editor's integrated terminal and the JetBrains pluginHooks run. What the mod draws appears.
The Code tab of the desktop app, except in a WSL sessionHooks run. What the mod draws appears, except terminal-only elements.
A WSL session in the desktop appPlugins are not available there, so no hooks run and nothing is drawn.
The VS Code extension's chat panelHooks run. Nothing is drawn.
claude -p and the Agent SDKHooks run. Nothing is drawn.
Remote Control from claude.ai or the mobile appHooks run in the session on your machine, and what the mod draws appears in the terminal on your machine.
A cloud sessionHooks run for a plugin that reaches the cloud session. Nothing is drawn.

The ranking says where each mod draws, and its Runs in filter narrows the list to the terminal, the desktop app, or both.

It does not show up

When a mod fails to load, Claude Code skips it and the session goes on, so a broken mod can look like one that does nothing. Work down this list.

  1. Is it named? Run /plugin and read the dim line under the tabs. If the mod is not named there, its hooks module did not load.
  2. Is Claude Code new enough? See the versions above.
  3. Is it switched off? Some plugins are set by their author to start off. Turn it on from the Installed tab, or run claude plugin enable token-chart@your-org. If it failed to load, the Errors tab in /plugin says why.
  4. Did you reload? Run /reload-plugins.
  5. Is this a folder you opened for the first time? No mod loads there until you answer the trust prompt. Start claude in the folder and accept it.
  6. Is something turning mods off? A session started with --safe-mode loads no installed plugin. A WSL session in the desktop app has no plugins. A disableAllHooks setting or your organization's policy can stop them too.

To see whether your setup lets mods load at all, run claude plugin test in your shell, from a directory that does not hold a mod. If the message includes:

no hooks module to loadMods can load. The command found no mod to test in this directory.
hooks modules are turned off hereA setting is blocking your mods: disableAllHooks in your own settings, or your organization's policy.
the rollout switch served offAnthropic has turned installed mods off remotely.

To read the reason Claude Code gives, write a debug log and open the file:

claude --debug-file ./mod-debug.log

A mod that was refused has a line that starts with hooks module, the mod's name and not loaded:. The reason follows the colon, such as disableAllHooks in managed settings (your organization turned off hooks from installed plugins) or another plugin of that name loads first. The refusal messages list them all.

If the mod is named but nothing it draws appears, check the table above. A drawing that works in the terminal can use an element the desktop app does not have. If you have the mod's folder, claude plugin validate ./some-mod catches a misspelled event, a bad manifest and a module Claude Code cannot read. If it passes but lists no hooks line, hooks/hooks.json has no modules key, or the key is misspelled.

Check a mod before you install it

A mod is not sandboxed. It can read and write your files, start programs, make network requests and read your environment variables, API keys included. Before you install one, list what it does without running it. Get its files first, for example by cloning its repository, then run claude plugin validate on the folder:

claude plugin validate ./some-mod

The hooks: and calls: lines list the events the mod handles and what it asks Claude Code to do, such as read a file or make a network request.

ModsCode shows the same for every listed mod: each row of the ranking has a reach gauge, from drawing only up to the network, and each mod's page lists what its code calls. How mods are chosen says how to check one yourself. ModsCode does not vouch for any mod: read the code, and install the commit you read.

Sources

Anthropic's documentation, checked on 2026-10-11: