Guardrails that say no first
Ten guards catch leaked secrets, force-pushes, production commands and rm -rf before they run, then explain the safer path.
200+ open-source mods: guardrails, live panes, status lines, agent controls and checks that know your stack. Browse them, install them and keep them current from a store that lives right inside your terminal.
/plugin marketplace add plagemes/claude-mods
Terminal and desktop Code tab · Claude Code 2.1.292+ · MIT
New in v2
A second shelf of categories: checks that know your stack, your database and your cloud, and controls that scope, queue and supervise Claude itself. Plus a shared core, mods-hub, so mods share one event bus, one side panel and one notification router, with bridges to WhatsApp, Telegram, Slack and Discord. Same store, same two commands.
Install
Install the store once, then add, update and remove every other mod from inside Claude Code.
/plugin marketplace add plagemes/claude-mods
/plugin install mod-store@claude-mods
Then run /reload-plugins to load it.
/mods
Search, filter by category, install, update and uninstall. Works offline from cache.
/plugin install <mod>@claude-mods
Why mod
Each mod does one thing well. Stack the ones you need, skip the rest. They stay out of the way until the moment they matter.
Ten guards catch leaked secrets, force-pushes, production commands and rm -rf before they run, then explain the safer path.
Live cost, context fill and cache hits in your status line. Set a budget and get stopped at 100%, not surprised by the invoice.
Tool timelines, touched files, subagents and errors in panes beside the conversation.
Commit messages, PR descriptions, standups and checkpoints, each reduced to a keystroke.
A chime when a long turn ends, a ping when Claude needs approval, a webhook when CI goes green.
Decisions, journals, glossaries and lessons, saved as plain files you own and recalled when they matter.
The store
Press / to search. Copy an install command, or open a mod for the details.
Loading the catalog…
Nothing matches .
Try a broader word, or request the mod you were looking for.
Under the hood
A mod is a plugin of function hooks. Claude Code emits events: a tool call, a prompt, a finished turn, a frame to draw. Your hook sees each one and can let it pass, rewrite it, answer it, or draw something new.
tool.callBash, Edit, Write, Read…prompt.submitwhat you just typedturn.completethe turn is doneui.rendera frame to drawsession.starta new session($, e, next) => …
next({ ...e })Mods run in a sandbox with no DOM and no Node. Everything outside reaches them through $, the engine interface, so a mod can only do what its hooks ask for.
Build a mod
If you can write a function, you can write a mod. Start from the example, load it live, and open a pull request when it feels right.
mods/<name>/ with a plugin.json and a hooks module.claude --plugin-dir mods/<name>.claude plugin validate mods/<name>.catalog.json, run node scripts/build.mjs, open a PR.import type { Register } from 'claude-code'
// Block force-pushes to main, explain the safer path.
export const register: Register = on => {
on('tool.call', { tool: 'Bash' }, ($, e, next) =>
/git push .*--force\b.*\bmain\b/.test(e.command)
? { deny: 'Use --force-with-lease, never on main.' }
: next(e),
)
}
One install, 200+ mods, zero lock-in. Every mod is a folder of plain TypeScript you can read in a minute.
/plugin marketplace add plagemes/claude-mods