Skip to content

About

Nineteen small, dependency-free Claude Code tools, set up in one click from a local page or one command, with one plugin marketplace and an end-to-end test of all nineteen together

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Claude Code toolkit

e2e test license: MIT node >= 18 dependencies: none

Nineteen small, open-source tools that make Claude Code cheaper, safer and easier to share. Each one is a dependency-free Node command or plugin that adds few or no tokens to your sessions, and all nineteen are tested together, installed from GitHub, on Windows, macOS and Linux.

Website: nrzz.github.io/claude-code-toolkit

Set up in one click

npx -y github:nrzz/claude-code-toolkit

That opens a setup page in your browser. The first time, the recommended tools (guardrails, notify and glow) are already switched on, so pressing Install is the whole setup. Each tool's Settings hold the few choices that need you: the glow theme (shown with its colors), the guardrails preset, where notify reaches you (desktop, phone, Slack, Discord or Teams), cost guard's budgets and, for the project you ran it in, the handover files, team sync's hub and a starter kit you can preview before it writes anything. Run it again any time to change a setting or switch a tool off; it shows what is installed and how it is set.

The setup page: guardrails, notify and glow already switched on, each with its token cost and settings, and one Install button

The page is served by the command itself on 127.0.0.1, with a one-time key in its link, and only runs each tool's own installer, which backs up settings.json first. It stops when you press Done. Where no browser can open (over SSH, in a container) it asks the same questions in the terminal, and for scripts there is no question at all:

npx -y github:nrzz/claude-code-toolkit install recommended --theme nord --daily 20usd

status shows what is installed, uninstall all takes out what the tools added to your Claude Code settings (handover keeps your project notes and the effort defaults it set, and says so), and --help lists every option. Nothing here runs Claude, so setting up costs no tokens.

Pick what you need

You want to Use What it adds to a session
Stop paying to reload one giant chat claude-code-handover About 700 tokens when new (your rules, the handover file and the latest decisions; the handover stays under 120 lines), and 110 to 200 more on a prompt that matches an earlier session
Share sessions, notes and context with coworkers claude-code-team-sync 0 when nothing is new, at most about 375 tokens when a teammate shared something
Theme the whole interface and watch your context, limits and cost claude-code-glow 0
Stop rm -rf /, force pushes, secrets in commits and .env edits claude-code-guardrails 0 for every allowed call, about 45 tokens for a denied one
Look away while Claude works, and get a ping when it needs you claude-code-notify 0
Keep spending inside a daily or weekly budget claude-cost-guard 0
See what your CLAUDE.md costs in every session, and slim it claude-md-doctor 0: it runs outside Claude
Start a project with a lean, safe .claude/ for your stack claude-code-starter-kits The CLAUDE.md it writes: 230 to 260 tokens
Find a past discussion, or share a session as a web page claude-session-replay 0: it runs outside Claude
Continue a Cursor or Antigravity chat in Claude Code, or hand a session to them claude-chat-ferry 0: it runs outside Claude
Delete, keep and restore your sessions before the 30-day cleanup removes them claude-session-tidy 0: it runs outside Claude; the optional skill costs about 1,400 tokens per use
See why a permission prompt appeared, drop dead rules and add the ones you keep approving by hand claude-permission-doctor 0: it runs outside Claude; the optional skill costs about 850 tokens per use
Run every hook with the JSON Claude Code sends, and see what each one does claude-hook-bench 0: it runs outside Claude; the optional skill costs about 500 to 900 tokens per use
Move Claude Code's config folder to another drive, or into the XDG folders, and keep every shell pointed at it claude-relocate 0: it runs outside Claude
Comment your settings, see what Claude Code merges and from which file, and find the mistakes it ignores in silence claude-settings-doctor 0: it runs outside Claude; the optional skill costs about 340 tokens per use
See what auto mode and its classifier decided, which refusals were the service rather than your settings, and lint the autoMode settings claude-automode-doctor 0: it runs outside Claude; the optional skill costs about 280 tokens per use
List every MCP server Claude Code would load and from which file, start each one the way Claude Code would, and see what its tools cost claude-mcp-check 0: it runs outside Claude; the optional skill costs about 490 tokens per use
Find out whether Claude Code's Bash sandbox can work on your machine, why a command ran inside it or outside it, and which sandbox settings never take effect claude-sandbox-doctor 0: it runs outside Claude; the optional skill costs about 440 tokens per use
On Windows: which shell the Bash tool gets and why, every claude on your machine and which one runs, and the setup problems behind common Windows issues claude-windows-doctor 0: it runs outside Claude; the optional skill costs about 540 tokens per use

Every tool's README has a "What it costs in tokens" table with the details, and a "What was verified, and how" section that says what was checked and what was not.

Other ways to install

The plugins, from one marketplace

Spendcap (cost guard) is in Anthropic's plugin directory since 14 October 2026, so it installs with nothing to add first: /plugin install spendcap@anthropic-plugin-directory, and /plugin, Discover, lists it. For all sixteen, add this marketplace. If you prefer Claude Code's own plugin system, in Claude Code:

/plugin marketplace add nrzz/claude-code-toolkit
/plugin install guardrails@claude-code-toolkit

Then install any of the others the same way, or browse them with /plugin:

Plugin Install
Glow: themes and status line /plugin install glowline@claude-code-toolkit
Glow HUD (early access) /plugin install glowbar@claude-code-toolkit
Guardrails /plugin install guardrails@claude-code-toolkit
Notify /plugin install nudge@claude-code-toolkit
Cost guard /plugin install spendcap@claude-code-toolkit
CLAUDE.md doctor /plugin install md-doctor@claude-code-toolkit
Session replay /plugin install replayer@claude-code-toolkit
Chat ferry /plugin install chat-ferry@claude-code-toolkit
Session tidy /plugin install session-tidy@claude-code-toolkit
Permission doctor /plugin install permission-doctor@claude-code-toolkit
Hook bench /plugin install hook-bench@claude-code-toolkit
Settings doctor /plugin install settings-doctor@claude-code-toolkit
Auto mode doctor /plugin install automode-doctor@claude-code-toolkit
MCP check /plugin install mcp-check@claude-code-toolkit
Sandbox doctor /plugin install sandbox-doctor@claude-code-toolkit
Windows doctor /plugin install windows-doctor@claude-code-toolkit

Five plugins were renamed on 4 October 2026 so that each has a name of its own in Anthropic's plugin directory: glow is now glowline, glow-hud is glowbar, notify is nudge, cost-guard is spendcap and replay is replayer. If you installed one under its old name, uninstall it and install the new one; the tools, their commands and your settings are unchanged.

By Claude Code's own estimate (claude plugin details), all sixteen together add about 233 always-on tokens, and only because the estimate counts the descriptions of user-only skills, which Claude Code leaves out of the list it gives the model. So the end-to-end test checks the request itself: with all sixteen plugins installed it has Claude Code resume a session against a fake API on localhost, and no request that reaches the fake API may mention any user-only skill, while a skill the model may invoke is listed in it. The estimate stays as a tripwire: since 1.7.0 the end-to-end test keeps it under 250 always-on tokens, so that a skill the model can invoke cannot slip in unnoticed. The limit was 150 until the tenth plugin and 200 until the thirteenth: a new tool's user-only skill adds 9 to 17 to the estimate (session tidy's 15, permission doctor's 17, hook bench's 15, settings doctor's 11, auto mode doctor's about 12, MCP check's about 9, sandbox doctor's and windows doctor's together about 21; the nine before added 148), and cutting a description until it fits would only make it harder to read, to save text the model is never sent.

One tool at a time

Each tool also runs straight from GitHub with npx, nothing to install first:

npx -y github:nrzz/claude-code-handover init
npx -y github:nrzz/claude-code-team-sync init
npx -y github:nrzz/claude-code-starter-kits
npx -y github:nrzz/claude-md-doctor
npx -y github:nrzz/claude-session-replay list
npx -y github:nrzz/claude-chat-ferry import cursor:latest
npx -y github:nrzz/claude-session-tidy list
npx -y github:nrzz/claude-permission-doctor lint
npx -y github:nrzz/claude-hook-bench run
npx -y github:nrzz/claude-relocate plan
npx -y github:nrzz/claude-settings-doctor lint
npx -y github:nrzz/claude-automode-doctor report
npx -y github:nrzz/claude-mcp-check show
npx -y github:nrzz/claude-sandbox-doctor check
npx -y github:nrzz/claude-windows-doctor check
npx -y github:nrzz/claude-code-glow install

Guardrails, notify, cost guard and session tidy have the same init; handover's and team sync's run in the project folder. Every tool that changes your Claude Code settings has an uninstall that takes out what it added; team sync and the starter kits write files into the project, which you commit or delete like any other. Permission doctor installs nothing: it writes a settings file only when you ask it to (lint --fix, suggest --write), after a backup that restore puts back. Hook bench installs nothing either, and never writes a settings file: it runs your hooks and reports. Relocate changes nothing without --yes, and its undo puts the folder back where it was. Settings doctor writes a settings file only with init, build, absorb, watch and restore, after a backup that restore puts back. Auto mode doctor writes one only with suggest --write, and MCP check only with toggle, each after a backup that restore puts back; MCP check starts your MCP servers only when you run check or why. Sandbox doctor writes no settings file. Windows doctor changes only the Windows user environment, and only with fix --git-bash, which undo takes out again.

Built the same way

  • No dependencies. Node 18 or newer and nothing from npm, so there is nothing to audit but the code itself.
  • Token cost is a feature. A hook puts text in front of the model only when that is its job (a recalled line, a teammate's news, the reason a command was stopped), and the README says how much. Everything else talks to you, not to the model. Skills that Claude does not need to see are user-only.
  • Your settings stay yours. Each tool backs up settings.json before writing, changes only the keys it is there for, leaves a file that is not valid JSON alone, and its uninstall takes out what it added (handover keeps the effort defaults it set, and says so).
  • Tested. Over 7,300 automated tests across the nineteen repositories, each run on Windows, macOS and Linux with Node 20, 22 and 24, and on Linux with Node 18, plus the end-to-end run below.

Tested together

e2e/run.mjs does what a new user would, on a clean machine:

  1. It makes a throwaway home folder and Claude Code config folder that already hold settings of their own (a theme, an env variable, a permission, a Stop hook).
  2. It installs every tool from GitHub with npx and runs every hook exactly as settings.json lists it, with the JSON Claude Code sends: guardrails denies rm -rf / and passes npm test in silence, notify stays quiet after a 5-second turn and pings after a 60-second one, cost guard holds a prompt over a hard budget but lets /compact through, the starter kit's CLAUDE.md passes the doctor in CI mode, two teammates share a session through one git remote, a replay export escapes hostile text, session tidy keeps one old session and moves another to its trash and back byte for byte, permission doctor explains a prompt, finds a dead rule and proposes a rule from a transcript without changing a file, hook bench runs a settings file's hooks with the JSON Claude Code sends and calls the deny a deny, the invalid output an error and the typo a hook that never fires, relocate moves a config folder with its sessions to another folder and puts it back byte for byte, settings doctor finds the trailing comma that makes Claude Code ignore a whole file, an unknown key and a wrong type, and builds settings.json from a commented settings.jsonc, auto mode doctor tells a classifier refusal from a refusal with no verdict in a transcript and finds an autoMode list that drops the built-in rules, MCP check starts a stdio server the way Claude Code would, lists and sizes its tools, and finds a .mcp.json server pending approval and a ${VAR} set nowhere, sandbox doctor finds an allowedDomains entry with a scheme and tells a command that an excludedCommands entry takes out of the sandbox from one that stays in it, windows doctor reports the shell Claude Code would give the model on Windows and says there is nothing to check on Linux and macOS, and handover's self-test passes and its init sets up a project, changes nothing on a second run and uninstalls cleanly.
  3. In a second home folder it runs the one-command setup as a user would: install recommended,cost-guard with options, a guardrails hook it installed denying rm -rf /, status reading the choices back, then the setup page started for real and driven through its own API (the one-time key refused when missing, Apply changing a theme and removing a tool, Done stopping it), and uninstall all.
  4. With a Claude Code CLI available, it validates this marketplace, installs all sixteen plugins from GitHub with claude plugin install, runs the guardrails, notify, cost guard and session tidy plugins' own hooks and the permission doctor, hook bench, settings doctor, auto mode doctor, MCP check, sandbox doctor and windows doctor plugins' skill commands from the installed copies, checks the token estimate and that Claude Code sends the model none of their user-only skills, and runs the HUD's engine tests inside that Claude Code.
  5. It uninstalls everything and checks that settings.json is exactly what the user had, in both home folders.
node e2e/run.mjs

--local uses sibling checkouts instead of GitHub, --only setup,glow runs a few, and E2E_CLAUDE=<path to claude> points at the CLI for step 4. CI runs it on every push and every week on Windows, macOS and Linux, so a change in Claude Code that breaks a tool shows up here.

Contributing

Every tool welcomes issues and pull requests: each repository has a CONTRIBUTING.md and issue templates, and there are issues labelled good first issue and help wanted to start with. For the marketplace, the website or the end-to-end test, see CONTRIBUTING.md. Questions and ideas for new tools go to Discussions.

Stay in the loop

If a tool here saves you tokens, a star on this repository helps other people find it. New tools and releases are announced in Discussions, and following @nrzz on GitHub shows them in your feed.

License

MIT

About

Nineteen small, dependency-free Claude Code tools, set up in one click from a local page or one command, with one plugin marketplace and an end-to-end test of all nineteen together

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages