Are you the author? Sign in to claim
A toolkit of custom commands, hooks, and utilities for Claude Code

Smart guardrails and workflow automation for Claude Code - catch errors in real-time, save checkpoints, and enhance AI coding with expert subagents
⚠️ Requires: Claude Code Max plan (for optimal token usage) • Node.js 20+
npm install -g claudekit
# or: yarn global add claudekit
# or: pnpm add -g claudekit
# Initialize in your project
claudekit setup
# In Claude Code, try these commands:
/git:status # Groups changes by type & suggests commit strategy
/spec:create "your next feature" # Researches codebase & writes full spec
/code-review # 6 specialized agents analyze code in parallel
Claudekit acts as your safety net while coding with Claude:
Before: Claude adds 'any' type → ❌ Lost type safety discovered in code review
After: Claude adds 'any' type → ✅ Instant block: "Use specific type: User | null"
Before: Risky refactor fails → ❌ Git archaeology to find working version
After: Risky refactor fails → ✅ One command: /checkpoint:restore
Before: Claude breaks tests → ❌ You discover it after Claude finishes
After: Claude breaks tests → ✅ Claude sees error immediately and fixes it
Before: Ask Claude to review → ❌ Shallow analysis, general feedback, sequential execution
After: Use /code-review → ✅ 6 specialized agents analyze in parallel, dynamically pull technology-specific expertise
Claude sees your entire project structure automatically - skips most discovery searches.
xargs, find, pipes, and command substitutionfind -name '*.env' | xargs cat before executionany types and type errors as Claude edits.agentignore, .aiignore, .aiexclude, .geminiignore, .codeiumignore, .cursorignore/checkpoint:restore to undo changesresearch-expert for comprehensive parallel research with 90% time reduction, automatic source analysis, and structured reportingcode-search for fast, parallel codebase searches with 3-10x speed improvementstriage-expert for initial problem diagnosis and routing to specialistscode-review-expert agent with 6 focused analysis aspectsdisableHooks configuration to skip unnecessary validations during specialized operations/agents-md:init to update AGENTS.md/CLAUDE.md for automatic subagent delegationclaudekit-hooks profile.claude/settings.jsonthinking-level hook invisibly enhances Claude's reasoning without manual prompt engineering/tmp/research_*.md for efficient synthesis and token optimization/research [query] - Deep parallel research with specialized subagents and structured reporting/code-review - Multi-aspect code reviews with 6 parallel agents/git:commit - Creates commits following your project's conventions/git:checkout - Smart branch creation and switching with conventional naming/git:ignore-init - Initialize AI-safe .gitignore patterns for sensitive file protection/validate-and-fix - Runs all quality checks and fixes issues/spec:create - Generates comprehensive specifications/spec:execute - Implements specifications with iterative quality assurance workflow/create-subagent - Build custom AI assistants/hook:disable [hook-name] - Temporarily disable hooks for current session/hook:enable [hook-name] - Re-enable disabled hooks for current session/hook:status [hook-name] - Show hook status (enabled/disabled/not-configured)claudekit setup # Interactive setup wizard
claudekit setup --yes # Quick setup with defaults
claudekit setup --all # Install everything (all agents)
claudekit setup --user # Install in user directory (~/.claude) instead of project
claudekit list # Show all components (hooks, commands, agents, config)
claudekit list agents # List available agents with token counts
claudekit list commands # List available commands with token counts
claudekit show agent <id> # Display agent prompt for external use
claudekit show command <id> # Display command prompt for external use
claudekit show agent <id> -f json # Output agent metadata and content as JSON
claudekit show command <id> -f json # Output command metadata and content as JSON
claudekit doctor # Check your installation and validate documentation links
# Tool status checking
claudekit status stm # Check Simple Task Master (STM) installation and initialization status
# Linting and validation
claudekit lint-commands # Lint slash command markdown files
claudekit lint-agents # Lint agent markdown files (formerly lint-subagents)
# Hook management and profiling
claudekit-hooks run <hook> # Execute a specific hook manually
claudekit-hooks profile # Profile all configured hooks performance
claudekit-hooks profile <hook> --iterations 5 # Profile specific hook with averaging
# Session-based hook control (within Claude Code sessions)
claudekit-hooks disable <hook> # Disable hook for current session
claudekit-hooks enable <hook> # Re-enable hook for current session
claudekit-hooks status <hook> # Show hook status (enabled/disabled)
The show command extracts agent and command prompts for use with Claude Code's non-interactive mode and other AI coding tools:
# Extract agent prompt for use with Claude Code CLI
EXPERT=$(claudekit show agent typescript-expert)
cat src/app.ts | claude -p --append-system-prompt "$EXPERT" "Review this code"
# Get structured metadata for integration with tools
claudekit show agent typescript-expert --format json | jq '.description'
# Works with any AI coding CLI tool
claudekit show agent react-expert | amp -x "Fix React hooks violations"
See the external LLMs guide for examples with Claude Code, Amp, Gemini CLI, and others.
Use these commands directly in Claude Code:
/checkpoint:create [msg] - Save current state/checkpoint:restore [n] - Restore to checkpoint/checkpoint:list - View all checkpoints/git:commit - Smart commit with conventions/git:status - Intelligent git analysis/git:checkout [branch] - Smart branch creation and switching with conventional naming/git:ignore-init - Initialize AI-safe .gitignore patterns/code-review [target] - Multi-aspect code review with parallel agents/validate-and-fix - Run all quality checks/research [query] - Deep parallel research with specialized subagents/spec:create [feature] - Generate specifications/spec:execute [file] - Implement specifications with 6-phase iterative workflow/agents-md:init - Configure AI assistants/create-subagent - Build custom agents/create-command - Create custom commandsHooks automatically enforce quality as Claude works:
File Security Hooks (PreToolUse - run before file access)
file-guard - Block AI access to sensitive files (.env, keys, credentials) using ignore file patternsFile Change Hooks (PostToolUse - run on edit)
typecheck-changed - Run TypeScript type checking on file changeslint-changed - Run linting validation on changed files (Biome, ESLint, etc)test-changed - Run tests for changed filescheck-any-changed - Forbid any types in changed TypeScript filescheck-comment-replacement - Detect when code is replaced with commentscheck-unused-parameters - Detect lazy refactoring where parameters are prefixed with _ instead of being removedUserPromptSubmit Hooks (run on first user prompt of each session)
codebase-map - Provide invisible codebase context once per session using codebase-map CLIthinking-level - Inject thinking level keywords to enhance Claude's reasoning capabilitiesPostToolUse Hooks (also includes file monitoring)
codebase-map-update - Incrementally update codebase map when files changeProject-Wide Hooks (typically for Stop/SubagentStop events)
typecheck-project - TypeScript validation on entire projectlint-project - Linting validation on entire project (Biome, ESLint, etc)test-project - Run full test suitecreate-checkpoint - Git auto-checkpoint on stopcheck-todos - Validate todo completionsself-review - Enhanced targeted self-review with implementation completeness detection, prioritizing mock implementations, placeholder code, and incomplete features over code quality concerns# See all available hooks with descriptions
claudekit-hooks list
# Profile hook performance and output size
claudekit-hooks profile # Profile all hooks
claudekit-hooks profile typecheck-changed # Profile specific hook
claudekit-hooks profile --iterations 5 # Multiple runs for averages
# Session-based hook control (requires active Claude Code session)
claudekit-hooks disable typecheck-changed # Disable specific hook for current session
claudekit-hooks enable typecheck # Re-enable hook (supports partial matching)
claudekit-hooks status # Show status of all hooks
claudekit-hooks status lint # Show status of specific hook
The profile command helps identify:
Session-based hook control allows you to temporarily disable hooks within specific Claude Code sessions without modifying configuration files. Features include:
Hook configuration → | Profiling guide →
Specialized AI assistants for different domains:
Popular Agents
code-review-expert - 6-agent parallel code review (architecture, security, performance, testing, quality, docs)triage-expert - Context gathering and problem diagnosis routing to specialized expertsdocumentation-expert - Documentation structure, cohesion, flow, and information architecture specialistoracle - Deep debugging and complex problem analysis (requires setup)refactoring-expert - Code smell detection and comprehensive refactoring guidancetypescript-expert - TypeScript/JavaScript development and type systemreact-expert - React components, hooks, and performancetesting-expert - Test strategy, coverage, and best practicesdatabase-expert - Query optimization and schema designai-sdk-expert - Vercel AI SDK v5 streaming and model integrationnestjs-expert - Nest.js architecture and dependency injectionkafka-expert - Apache Kafka producer/consumer configuration, topic management, cluster operations, and performance tuningloopback-expert - LoopBack 4 framework development, model relationships, authentication, and dependency injectionUsage
# List all available agents with token counts
claudekit list agents
# Install specific agents
claudekit setup --agents typescript-expert,react-expert
Once installed, agents work automatically or can be invoked directly:
"Use the oracle agent to debug this issue"
"Have the typescript-expert review this type definition"
The file-guard hook automatically protects sensitive files from AI access. Quick setup:
# New projects: Install claudekit with file-guard protection
npm install -g claudekit && claudekit setup --yes --force --hooks file-guard
# Existing projects: Add file-guard to current setup
claudekit setup --yes --force --hooks file-guard
Or manually create a .agentignore file:
# .agentignore
.env
.env.*
*.key
*.pem
.aws/credentials
.ssh/*
# Allow example files
!.env.example
The file-guard hook supports multiple ignore file formats (.agentignore, .aiignore, .cursorignore, .geminiignore, .codeiumignore, .aiexclude) and merges patterns from all of them - a unique feature that provides comprehensive protection regardless of which AI tools your team uses.
Key features:
find -name '*.env' | xargs cat and echo '.env' | xargs catSee the File Guard Guide for detailed configuration and best practices.
Claudekit uses two configuration files:
.claude/settings.json - Project settings (hooks, commands)
{
"hooks": {
"PreToolUse": [{
"matcher": "Read|Edit|MultiEdit|Write",
"hooks": [{"type": "command", "command": "claudekit-hooks run file-guard"}]
}],
"PostToolUse": [{
"matcher": "Write|Edit|MultiEdit",
"hooks": [{"type": "command", "command": "claudekit-hooks run typecheck-changed"}]
}],
"Stop": [{
"matcher": "*",
"hooks": [{"type": "command", "command": "claudekit-hooks run create-checkpoint"}]
}],
"SubagentStop": [{
"matcher": "*",
"hooks": [{"type": "command", "command": "claudekit-hooks run create-checkpoint"}]
}],
"UserPromptSubmit": [{
"matcher": "*",
"hooks": [{"type": "command", "command": "claudekit-hooks run codebase-map"}]
}]
}
}
.claudekit/config.json - Hook configuration
{
"hooks": {
"typecheck-changed": {
"command": "npm run typecheck"
},
"thinking-level": {
"level": 2
},
"codebase-map": {
"include": ["src/**", "lib/**"],
"exclude": ["**/*.test.ts", "**/*.spec.ts"],
"format": "dsl"
}
}
}
claudekit doctor to check setupHooks not triggering?
claudekit doctor # Check configuration
npm list -g claudekit # Verify installation
Tests timing out? Use the ultra-fast test configuration for hook execution:
{
"hooks": {
"test-project": {
"command": "npm run test:fast",
"timeout": 30000
}
}
}
Or configure a custom faster test command:
{
"hooks": {
"test-project": {
"command": "npm run test:unit",
"timeout": 50000
}
}
}
Codebase map not generating? Install the codebase-map CLI tool:
npm install -g codebase-map
# Check installation:
codebase-map --version
Some commands support optional MCP server integration:
# Install globally
npm install -g @upstash/context7-mcp
# Add to Claude Code
claude mcp add context7 context7-mcp
Enables /spec:create to fetch up-to-date library documentation.
# Clone and install
git clone https://github.com/claudekit/claudekit.git
cd claudekit
npm install
# Build
npm run build
# Test
npm test
# Validate production build
npm run validate:build # Check dependencies and build artifacts
npm run validate:install # Test clean installation
# Create symlinks for development
npm run symlinks
We welcome contributions! See CONTRIBUTING.md for guidelines.
MIT © claudekit contributors
Hooking implementations and supporting tools for various coding agents (Claude, Cursor, Gemini, etc)
Claude Code hook that writes a forward-only why-block (decisions, trade-offs, assumptions, limitations) into your PR des
Blocks dangerous git and shell commands from being executed by AI coding agents
One command to install 6 essential safety hooks in 10 seconds — zero dependencies