EN JA
Free download

Claude Code Hooks Builder

Free · no sign-up · runs in your browser, nothing is uploaded

Pick the events you care about, write one command, and copy a settings.json snippet that Claude Code accepts as-is. Every one of the 33 hook events is here with its matcher values, plus the statusLine setting. If you need the field-by-field details, see the hooks reference.

Start from a preset

Save to

Events

Command

Status line

~/.claude/settings.json
  1. Open ~/.claude/settings.json (create it if it doesn't exist).
  2. If the file already has a "hooks" key, paste each event array inside it; otherwise paste the whole object.
  3. Make the command executable: chmod +x your script. Hooks run with your user's permissions.
  4. Run /hooks inside Claude Code to confirm it picked up the change.

What you're generating

A hook is a shell command Claude Code runs at a lifecycle event, with a JSON payload on stdin (session_id, hook_event_name, cwd, and per-event fields such as tool_name or notification_type). The shape the builder produces is:

{
  "hooks": {
    "<EventName>": [
      {
        "matcher": "<optional filter>",
        "hooks": [ { "type": "command", "command": "<your command>", "timeout": 600 } ]
      }
    ]
  }
}
Check the version. Claude Code releases before 2.1.101 ignore the whole settings file when it contains an unknown event name — and that silently disables every hook and permission rule in it. Run claude --version before adding newer events like StopFailure or PostCompact.

Don't want to write the status script?

AgentManager installs a ready-made hook, registers these events for you, and turns them into a live status board for every Claude Code session — free to use, no account required.

macOS 13+ — free plan shows up to 2 sessions at once