Ship fast.
Break nothing.
Install a production-ready Claude Code HookStack in one command
Up and running in 60 seconds
project root
0 / 86 selected
$ npx hookstack-cli@latest install Will writes the hooks into .claude/hooks and patches settings.json — nothing else.
or fine-tune it hook by hook
PreToolUse
18Secret detection before Bash execution
Security
Security
Destructive command blocking
Security
Security
Sensitive file write protection
Security
Security
Lock file write protection
Security
Security
git push to main guardrail
Security
Security
Domain allowlist for WebFetch
Workflow
Workflow
Enforce package managers
Validation
Validation
Worktree guardrail (Edit/Write)
Workflow
Workflow
Enforce uv for Python dependencies
Validation
Validation
Block file writes on main branch
Security
Security
Block push on closed PR
Workflow
Workflow
WebSearch temporal context injector
Context
Context
Binary file to Markdown converter
Context
Context
Binary file read blocker
Context
Context
Large JSON/CSV compactor
Context
Context
WebFetch HTML-to-Markdown converter
Context
Context
Write-time secret detection
Security
Security
Env file read guard
Security
Security
PostToolUse
11Automatic formatting after write
Validation
Validation
ESLint lint after write
Validation
Validation
TypeScript type checking
Validation
Validation
Tool usage tracking
Notification
Notification
Bash command log
Workflow
Workflow
Ruff format after write
Validation
Validation
Ruff lint after write
Validation
Validation
Pyright type checking
Validation
Validation
Next.js App Router quality checker
Validation
Validation
Motion rules guard
Validation
Validation
Conflict marker detector
Validation
Validation
PostToolUseFailure
1Structured tool failure log
Context
Context
UserPromptSubmit
4Project conventions injection
Context
Context
Current date and time injection
Context
Context
Per-session prompt log
Context
Context
Automatic session naming
Context
Context
PermissionRequest
2Auto-approve read-only permissions
Security
Security
Automatic ExitPlanMode approval
Workflow
Workflow
Notification
3Slack notification on agent event
Notification
Notification
TTS voice notification
Notification
Notification
System sound notification
Notification
Notification
Stop
13Run tests at end of response
Validation
Validation
Session summary generation
Documentation
Documentation
Automatic quality check (Stop)
Validation
Validation
Missing test detection (Stop)
Validation
Validation
Per-modified-file coverage (Stop)
Validation
Validation
Per-modified-file lint (Stop)
Validation
Validation
Auto-disable Stop hook after N failures
Workflow
Workflow
Full i18n validation (Stop)
Validation
Validation
Voice task-completion announcement
Notification
Notification
System sound on task completion
Notification
Notification
Run pytest at end of response
Validation
Validation
Registry drift check at stop
Validation
Validation
Code duplication guard
Validation
Validation
SubagentStop
1Subagent end voice summary
Notification
Notification
SubagentStart
1Subagent start voice announcement
Notification
Notification
PreCompact
1Transcript backup before compaction
Workflow
Workflow
SessionStart
11Load Git context at startup
Context
Context
Worktree env initialization
Workflow
Workflow
Worktree dependency update
Workflow
Workflow
Dependency check and install at startup
Workflow
Workflow
Re-inject context after compaction
Context
Context
Install project dependencies on init
Workflow
Workflow
Auto-create worktree when starting on main
Workflow
Workflow
Auto-pull on main at session start
Context
Context
Stale stash warning at session start
Context
Context
AGENTS.md context loader
Context
Context
GitHub context loader
Context
Context
SessionEnd
2End-of-session audit log
Notification
Notification
Temporary file cleanup at session end
Workflow
Workflow
CwdChanged
1Reload direnv on directory change
Workflow
Workflow
ConfigChange
1Configuration change audit log
Workflow
Workflow
FileChanged
5Reload .env on file change
Workflow
Workflow
Auto-run tests when source files change
Validation
Validation
Registry auto-sync
Workflow
Workflow
Registry schema validation on change
Validation
Validation
Docs consistency reminder
Documentation
Documentation
InstructionsLoaded
1Audit log for CLAUDE.md file loads
Workflow
Workflow
MessageDisplay
1Redact secrets from displayed output
Security
Security
PermissionDenied
1Log auto-mode permission denials
Workflow
Workflow
PostCompact
1Save compaction summary to log
Documentation
Documentation
PostToolBatch
1Typecheck after parallel file edits
Validation
Validation
StopFailure
2Desktop notification on rate limit
Notification
Notification
Log API errors to file
Workflow
Workflow
TaskCompleted
1Test suite gate before task completion
Validation
Validation
TaskCreated
1Enforce task naming conventions
Workflow
Workflow
UserPromptExpansion
1Inject context on skill invocation
Context
Context
WorktreeRemove
1Clean up artifacts on worktree removal
Workflow
Workflow
Select hooks (+ button) to generate your
settings.json configuration.Frequently asked questions
- What is an agentic hook?
- An agentic hook is a Node.js script triggered by Claude Code lifecycle events — PreToolUse, PostToolUse, SessionStart, Stop. Hooks enforce deterministic behavior in agentic workflows: block dangerous commands, run tests automatically, inject context, and notify your team — without relying on the LLM to remember.
- How do agentic hooks improve vibe coding?
- Vibe coding lets an AI agent like Claude Code drive most of your implementation while you set direction. Hooks add CI-like guardrails that fire on every agent action — making your agentic workflow production-safe, auditable, and repeatable regardless of what the model decides to do.
- Does HookStack work with GitHub Copilot?
- HookStack is built around Claude Code hooks today. The agentic hook patterns are portable: any AI coding agent that exposes lifecycle events can adopt the same deterministic-behavior approach. GitHub Copilot Workspace and similar tools are natural targets as they mature.
- Why are Claude Code hooks better than prompt instructions?
- Prompts are probabilistic — the model may or may not follow them. Claude Code hooks are deterministic Node.js scripts that execute unconditionally on matching events. No drift, no hallucination, no forgotten rules. That guarantee is what makes agentic workflows trustworthy in production.
- How do I install Claude Code hooks with HookStack?
- Browse the catalogue, select the hooks you want, then run the generated npx hookstack-cli@latest install command in your project root. HookStack writes the scripts to .claude/hooks/ and patches your settings.json — nothing else touched.
- I already use Claude Code commands like /gen-test-unit or /create-worktree — aren't hooks the same thing?
- Commands are interactive: you type them, Claude reads and acts on them inside the conversation. Hooks are the opposite — Node.js scripts that fire unconditionally outside the model, triggered by lifecycle events (PreToolUse, PostToolUse, Stop…). The model never sees them, never decides whether to run them, and can't skip them. Commands steer the AI; hooks constrain it.
- Do hooks consume tokens from my context window?
- No. Hooks run in a separate process, outside the model entirely. They can inject context back into the session via stdout, but the hook scripts themselves — and whatever they compute — are never sent to the model unless you explicitly return a message. Commands, on the other hand, are part of the conversation and consume context. Hooks are a zero-cost enforcement layer.