Setting up BULLETPROOF is simple - just run the interactive wizard and you're done!
# Install from GitHub (npm)
npm install -D git+https://github.com/VapiAI/bulletproof.git
# Or with pnpm
pnpm add -D git+https://github.com/VapiAI/bulletproof.git
# Run the wizard - handles everything automatically
npx bulletproof initThat's it! The wizard will:
- Detect your project type (Next.js, NestJS, React, Node.js, etc.)
- Detect your package manager (npm, yarn, pnpm, bun)
- Install and configure Husky with the pre-push hook
- Generate
bulletproof.config.jsonwith smart defaults - Help you set up your Anthropic API key
npx bulletproof init -yThis accepts all defaults without prompts. Set ANTHROPIC_API_KEY in your environment beforehand.
- Node.js >= 18.0.0
- Git repository initialized
- Anthropic API key (console.anthropic.com)
| Component | What It Does |
|---|---|
| Husky | Installs husky and runs husky init |
| Pre-push Hook | Creates .husky/pre-push to run bulletproof before each push |
| Config File | Creates bulletproof.config.json with project-appropriate defaults |
| API Key | Optionally adds ANTHROPIC_API_KEY to .env.local |
yarn add -D git+https://github.com/VapiAI/bulletproof.gitAfter running the wizard, test it:
# Check installation
npx bulletproof --help
# Dry run (checks without pushing)
npx bulletproof run --verboseThe wizard creates sensible defaults, but you can customize bulletproof.config.json:
{
"coverageThresholds": {
"lines": 70,
"statements": 70,
"functions": 65,
"branches": 60
}
}{
"checks": {
"rules": true,
"typecheck": true,
"tests": true,
"coverage": false
}
}{
"commands": {
"typecheck": "tsc --noEmit",
"test": "vitest run",
"testCoverage": "vitest run --coverage"
}
}{
"model": "claude-sonnet-4-20250514"
}Set your API key:
export ANTHROPIC_API_KEY="sk-ant-..."Or re-run the wizard to add it to .env.local:
npx bulletproof initCheck that the hook is executable:
chmod +x .husky/pre-pushThe wizard is idempotent - safe to run again:
npx bulletproof initIt will detect existing setup and offer to update or skip components.
| Command | Description |
|---|---|
npx bulletproof init |
Interactive setup wizard |
npx bulletproof init -y |
Non-interactive setup (accept defaults) |
npx bulletproof run |
Run checks and push |
npx bulletproof run --verbose |
Detailed output |
npx bulletproof --help |
Show all options |
- Issues: GitHub Issues
- Slack: Ask in #engineering or #tasker channels