Claude Code Hooks and Settings Builder

Claude Code Settings Builder

Build a settings.json with hooks, permissions and a status line by ticking what you want, or paste your own file and check it for mistakes.

Home
Report
About the Claude Code Settings Builder

A Free Claude Code Hooks and Settings Builder

Claude Code reads its settings from settings.json files: which commands it may run without asking, which files it must never touch, the hooks it runs at set moments, the status line and more. The JSON is strict, and many mistakes fail without a word: a hook under a misspelled event never runs, and a permission rule for the wrong tool never matches. This free builder writes a correct settings.json and the hook scripts from a few clicks, and its checker finds those silent mistakes in a file you already have.

How to Build Your Settings

  1. Pick a quick start, or start from nothing.
  2. Choose where the file goes: the team file for a project, your own file for one project, or your file for every project.
  3. Tick permission presets, or type allow, ask and deny rules, one per line.
  4. Tick ready hooks, such as blocking dangerous commands or formatting files after each edit, and add your own hooks for any event.
  5. Open More settings for the model, the status line, attribution and environment variables.
  6. Fix anything the settings check flags, then copy or download the files.

How to Check a Settings File

Switch to Check settings, choose which file it is and paste it. The report lists errors, warnings and tips with line numbers.

What the Checker Looks For

  • Invalid JSON, such as comments or trailing commas, which Claude Code reports as a Settings Error.
  • Unknown settings keys, and keys that only work in another file, such as managed-only keys or ~/.claude.json keys.
  • Hook events that do not exist, matchers on events that ignore them, and handlers placed outside the hooks list.
  • MCP matchers without .*, “if” on events where it never runs, and hook types an event does not support.
  • Permission rules that never match, such as Write(path) or Grep(path), and rules a deny rule cancels.
  • Risky setups: allowing every shell command, or bypassPermissions outside a container.

Where Settings Files Go

  • .claude/settings.json: the team file for one project. Commit it to git.
  • .claude/settings.local.json: your own settings for one project. Keep it out of git.
  • ~/.claude/settings.json: your settings for every project on this computer.

When the same key is set in more than one file, the local file wins over the team file, and the team file wins over your personal file. Lists such as permissions.allow are combined instead. Claude Code reloads settings files when they change, so most edits apply without a restart. Type /hooks to see your hooks and /status to see which settings files loaded.

Built With Claude Code

We built this tool with Claude Code and took every rule from Anthropic’s Claude Code documentation on settings, permissions and hooks. No AI runs on this page. The builder fills in tested templates, and the checker runs plain rules in your browser. Its score is our own checklist, not an official grade. The hook scripts are bash scripts for macOS and Linux and need jq.

Claude Code Settings Builder FAQ

Is it free?

Yes. It is free, needs no sign-up and has no limits.

Does it send my settings anywhere?

No. Everything stays in your browser. Your choices are saved in this browser only.

Should I block commands with a hook or a deny rule?

Use a deny rule for a hard block. Claude Code enforces deny rules itself. A hook is a good second line, because a script can look at the whole command and explain the block to Claude.

Why does my hook not run?

The usual causes are a misspelled event name, a matcher that names the wrong tool, a script that is not executable, or a missing jq. Paste the file into Check settings, and run chmod +x on your scripts.

Can a Stop hook make Claude loop forever?

No. The test hook here lets Claude stop when it is already going again because of the hook, and Claude Code ends the turn after 8 blocks in a row anyway.

Newsletter

New AI tools in your inbox

The best new tools and the AI news that matters, in one short email. Unsubscribe any time.

Free · No spam · Unsubscribe any time

✓ Looks like you’re subscribed

Loading Google’s sign-up form…

Looks like you’re already subscribed

Thanks for reading! New AI tools and the AI news that matters will land in your inbox.

Not subscribed yet? Refresh the page to load the sign-up form.

The sign-up form couldn’t load. If you use an ad or content blocker, allow news.google.com and reload the page.

Free instant check before you pay. Takes a few seconds.

Scroll to Top