Configuration

Customize Bootspring for your project and workflow.

Configuration File#

Bootspring uses bootspring.config.js in your project root:

1// bootspring.config.js 2module.exports = { 3 // Project information 4 project: { 5 name: 'my-awesome-app', 6 type: 'fullstack', // web, api, fullstack, mobile, cli 7 description: 'A full-stack application built with Next.js', 8 }, 9 10 // Tech stack detection (auto-detected if not specified) 11 stack: { 12 frontend: ['react', 'nextjs', 'tailwindcss'], 13 backend: ['nodejs', 'express'], 14 database: ['postgresql', 'prisma'], 15 testing: ['jest', 'playwright'], 16 }, 17 18 // Agent configuration 19 agents: { 20 // Enable/disable specific agents 21 enabled: [ 22 'frontend-expert', 23 'backend-expert', 24 'database-expert', 25 'testing-expert', 26 ], 27 // Or disable specific ones 28 // disabled: ['devops-expert'], 29 }, 30 31 // Quality gate configuration 32 quality: { 33 // Gates to run 34 gates: ['pre-commit', 'pre-push'], 35 36 // Quality thresholds 37 thresholds: { 38 complexity: 10, // Max cyclomatic complexity 39 coverage: 80, // Min test coverage % 40 duplicates: 5, // Max duplicate blocks 41 }, 42 43 // Files to exclude 44 exclude: [ 45 'node_modules/**', 46 'dist/**', 47 '*.config.js', 48 ], 49 }, 50 51 // Context generation settings 52 context: { 53 // Auto-regenerate CLAUDE.md on changes 54 autoGenerate: true, 55 56 // Include patterns in context 57 includePatterns: true, 58 59 // Custom sections to add 60 customSections: [ 61 { 62 title: 'Team Conventions', 63 content: 'We use conventional commits and PR reviews.', 64 }, 65 ], 66 }, 67 68 // Skill pattern preferences 69 skills: { 70 // Preferred patterns 71 preferred: { 72 components: 'functional', // functional, class 73 styling: 'tailwind', // tailwind, css-modules, styled-components 74 state: 'hooks', // hooks, redux, zustand 75 api: 'rest', // rest, graphql, trpc 76 }, 77 }, 78 79 // MCP server settings 80 server: { 81 port: 3100, // Default port 82 host: 'localhost', // Default host 83 timeout: 30000, // Request timeout (ms) 84 }, 85};

Environment Variables#

Bootspring supports environment variables for sensitive configuration:

# .env or .env.local BOOTSPRING_API_KEY=your_api_key_here BOOTSPRING_TIER=pro # free, pro, team BOOTSPRING_DEBUG=true

Available Environment Variables#

VariableDescriptionDefault
BOOTSPRING_API_KEYAPI key for premium features-
BOOTSPRING_TIERSubscription tierfree
BOOTSPRING_DEBUGEnable debug loggingfalse
BOOTSPRING_PORTServer port3100
BOOTSPRING_TIMEOUTRequest timeout (ms)30000

MCP Configuration#

The .mcp.json file configures the MCP server connection:

1{ 2 "mcpServers": { 3 "bootspring": { 4 "command": "npx", 5 "args": ["-y", "bootspring", "serve"], 6 "env": { 7 "BOOTSPRING_API_KEY": "${BOOTSPRING_API_KEY}", 8 "BOOTSPRING_DEBUG": "false" 9 } 10 } 11 } 12}

Custom Server Path#

If you've installed Bootspring globally:

1{ 2 "mcpServers": { 3 "bootspring": { 4 "command": "bootspring", 5 "args": ["serve", "--config", "./bootspring.config.js"] 6 } 7 } 8}

Agent Configuration#

Enabling Specific Agents#

1// bootspring.config.js 2module.exports = { 3 agents: { 4 // Only enable these agents 5 enabled: [ 6 'frontend-expert', 7 'backend-expert', 8 ], 9 }, 10};

Disabling Specific Agents#

1// bootspring.config.js 2module.exports = { 3 agents: { 4 // Disable these agents (all others enabled) 5 disabled: [ 6 'devops-expert', 7 'mobile-expert', 8 ], 9 }, 10};

Custom Agent Instructions#

1// bootspring.config.js 2module.exports = { 3 agents: { 4 customInstructions: { 5 'frontend-expert': ` 6 Always use TypeScript. 7 Prefer functional components. 8 Use Tailwind CSS for styling. 9 `, 10 'backend-expert': ` 11 Use async/await for all async operations. 12 Include comprehensive error handling. 13 Follow REST conventions. 14 `, 15 }, 16 }, 17};

Quality Gate Configuration#

Pre-commit Gate#

1// bootspring.config.js 2module.exports = { 3 quality: { 4 gates: ['pre-commit'], 5 'pre-commit': { 6 checks: [ 7 'lint', 8 'format', 9 'types', 10 'security', 11 ], 12 autoFix: true, 13 failOnWarning: false, 14 }, 15 }, 16};

Pre-push Gate#

1// bootspring.config.js 2module.exports = { 3 quality: { 4 gates: ['pre-push'], 5 'pre-push': { 6 checks: [ 7 'test', 8 'coverage', 9 'build', 10 ], 11 minCoverage: 80, 12 testTimeout: 60000, 13 }, 14 }, 15};

Custom Quality Rules#

1// bootspring.config.js 2module.exports = { 3 quality: { 4 customRules: [ 5 { 6 name: 'no-console-in-production', 7 pattern: /console\.(log|debug|info)/, 8 message: 'Remove console statements before committing', 9 severity: 'warning', 10 exclude: ['*.test.js', '*.spec.js'], 11 }, 12 ], 13 }, 14};

Context Generation#

Custom Context Sections#

1// bootspring.config.js 2module.exports = { 3 context: { 4 customSections: [ 5 { 6 title: 'API Conventions', 7 content: ` 8 - All endpoints return JSON 9 - Use camelCase for field names 10 - Include pagination for list endpoints 11 `, 12 }, 13 { 14 title: 'Component Guidelines', 15 content: ` 16 - Use PascalCase for component names 17 - One component per file 18 - Co-locate tests with components 19 `, 20 }, 21 ], 22 }, 23};

Exclude Files from Context#

1// bootspring.config.js 2module.exports = { 3 context: { 4 exclude: [ 5 'node_modules/**', 6 '.git/**', 7 'dist/**', 8 'coverage/**', 9 '*.log', 10 '.env*', 11 ], 12 }, 13};

Skill Preferences#

1// bootspring.config.js 2module.exports = { 3 skills: { 4 preferred: { 5 // Component patterns 6 components: 'functional', 7 8 // Styling approach 9 styling: 'tailwind', 10 11 // State management 12 state: 'hooks', 13 14 // API style 15 api: 'rest', 16 17 // Testing framework 18 testing: 'jest', 19 20 // Error handling 21 errors: 'try-catch', 22 }, 23 24 // Custom skill templates 25 templates: { 26 'api-endpoint': './templates/api-endpoint.ts', 27 'component': './templates/component.tsx', 28 }, 29 }, 30};

Multiple Configurations#

For monorepos or multiple environments:

1// bootspring.config.js 2const baseConfig = { 3 quality: { gates: ['pre-commit'] }, 4}; 5 6module.exports = process.env.BOOTSPRING_ENV === 'production' 7 ? { 8 ...baseConfig, 9 quality: { 10 ...baseConfig.quality, 11 gates: ['pre-commit', 'pre-push', 'pre-deploy'], 12 }, 13 } 14 : baseConfig;

Validation#

Validate your configuration:

bootspring config validate

View effective configuration:

bootspring config show

Next Steps#