JetBrains IDE Setup Guide

Complete guide to integrating Bootspring with JetBrains IDEs (IntelliJ IDEA, WebStorm, PyCharm, and others).

Overview#

JetBrains IDEs are powerful development environments. Bootspring integrates through:

  • Terminal - CLI access within IDE
  • External Tools - Custom Bootspring commands
  • Context File - CLAUDE.md for AI plugins
  • Run Configurations - Workflow automation

Supported IDEs#

IDELanguagesBest For
IntelliJ IDEAJava, Kotlin, ScalaBackend, Android
WebStormJavaScript, TypeScriptFrontend, Node.js
PyCharmPythonData science, Django
PhpStormPHPLaravel, WordPress
RubyMineRubyRails
GoLandGoMicroservices
RiderC#, .NET.NET development
CLionC, C++Systems programming

Prerequisites#

  • JetBrains IDE installed
  • Bootspring CLI installed (npm install -g bootspring)
  • Node.js 18+ installed

Installation#

# macOS brew install --cask jetbrains-toolbox # Download and install your IDE via Toolbox

Direct Installation#

Download from jetbrains.com.

Bootspring Setup#

Initialize Project#

cd your-project bootspring init bootspring generate

Open in IDE#

1# WebStorm 2webstorm . 3 4# IntelliJ IDEA 5idea . 6 7# PyCharm 8pycharm .

Terminal Integration#

Configure Terminal#

  1. Open Settings (Ctrl+Alt+S / Cmd+,)
  2. Navigate to: Tools → Terminal
  3. Set shell path:
    • macOS/Linux: /bin/zsh or /bin/bash
    • Windows: pwsh.exe or cmd.exe

Shell Integration#

For Zsh:

# ~/.zshrc eval "$(bootspring completions zsh)"

For Bash:

# ~/.bashrc eval "$(bootspring completions bash)"

Use Terminal#

Open terminal: Alt+F12 (Windows/Linux) or Option+F12 (macOS)

bootspring generate bootspring agent invoke frontend-expert "Help with this component" bootspring status

External Tools#

Add Bootspring Commands#

  1. Settings → Tools → External Tools
  2. Click "+" to add new tool

Generate Context Tool#

Name: Bootspring Generate Program: bootspring Arguments: generate Working directory: $ProjectFileDir$

Invoke Agent Tool#

Name: Bootspring Agent Program: bootspring Arguments: agent invoke $Prompt$ "$Prompt$" Working directory: $ProjectFileDir$

Quality Check Tool#

Name: Bootspring Quality Program: bootspring Arguments: quality pre-commit Working directory: $ProjectFileDir$

Access External Tools#

  • Menu: Tools → External Tools → [Tool Name]
  • Shortcut: Assign via Settings → Keymap
  • Context Menu: Right-click → External Tools

Run Configurations#

Create Bootspring Configurations#

  1. Run → Edit Configurations
  2. Click "+" → Shell Script

Generate Configuration#

Name: Bootspring: Generate Script path: /usr/local/bin/bootspring Script options: generate Working directory: $ProjectFileDir$

Workflow Configuration#

Name: Bootspring: Feature Workflow Script path: /usr/local/bin/bootspring Script options: workflow start feature-development Working directory: $ProjectFileDir$ Execute in terminal: checked

Run Configurations#

  • Use Run menu (Shift+F10)
  • Or toolbar dropdown

Keyboard Shortcuts#

Add Custom Shortcuts#

Settings → Keymap → search "External Tools"

ActionSuggested Shortcut
Bootspring GenerateCtrl+Alt+B G
Bootspring AgentCtrl+Alt+B A
Bootspring QualityCtrl+Alt+B Q
Bootspring StatusCtrl+Alt+B S

Keymap Configuration#

1<!-- .idea/keymap.xml --> 2<keymap version="1" name="Custom" parent="$default"> 3 <action id="Tool_External Tools_Bootspring Generate"> 4 <keyboard-shortcut first-keystroke="ctrl alt b" second-keystroke="g" /> 5 </action> 6</keymap>

File Templates#

CLAUDE.md Template#

  1. Settings → Editor → File and Code Templates
  2. Add new template
1#parse("Header.md") 2 3# ${PROJECT_NAME} - AI Context 4 5## Overview 6${DESCRIPTION} 7 8## Tech Stack 9- Framework: ${FRAMEWORK} 10- Language: ${LANGUAGE} 11 12## Architecture 13[Describe architecture] 14 15## Patterns 16[List patterns] 17 18--- 19*Generated with Bootspring*

Config Template#

1// bootspring.config.js template 2module.exports = { 3 project: { 4 name: '${PROJECT_NAME}', 5 type: '${PROJECT_TYPE}', 6 }, 7 context: { 8 include: ['src/**/*'], 9 exclude: ['node_modules/**'], 10 }, 11 agents: { 12 enabled: [ 13 'frontend-expert', 14 'backend-expert', 15 ], 16 }, 17};

Live Templates#

Create Bootspring Snippets#

Settings → Editor → Live Templates

Agent Comment#

Abbreviation: bsagent Template text: // @bootspring-agent: $AGENT$ // $PROMPT$ $END$

Skill Reference#

Abbreviation: bsskill Template text: // @bootspring-skill: $PATTERN$ $END$

Variables#

  • $AGENT$: Expression enum("frontend-expert","backend-expert","database-expert")
  • $PATTERN$: Expression enum("patterns/api-endpoint","patterns/react-component")

AI Assistant Integration#

JetBrains AI Assistant#

If using JetBrains AI Assistant:

  1. Context from CLAUDE.md improves responses
  2. Reference Bootspring patterns in prompts

GitHub Copilot#

If using Copilot plugin:

  1. CLAUDE.md provides context
  2. Copilot reads project patterns
  3. Suggestions follow your standards

Custom AI Integration#

For custom AI plugins, point them to:

  • CLAUDE.md for context
  • bootspring.config.js for configuration

Project Structure#

.idea Directory#

JetBrains stores settings in .idea/:

.idea/ ├── bootspring.xml # Bootspring run configs ├── externalTools.xml # External tool definitions ├── runConfigurations/ # Run configurations └── workspace.xml # Workspace settings

Shared Configurations#

Share with team by including:

# .gitignore !.idea/runConfigurations/ !.idea/externalTools.xml

Inspections#

Custom Inspections#

Create inspections for Bootspring patterns:

Settings → Editor → Inspections

CLAUDE.md Validation#

1<!-- .idea/inspectionProfiles/Project_Default.xml --> 2<inspection_tool class="RegExpInspection" enabled="true" level="WARNING"> 3 <option name="regExp" value="^#\s+Project\s+Context" /> 4 <option name="message" value="CLAUDE.md should start with # Project Context" /> 5 <option name="fileType" value="Markdown" /> 6</inspection_tool>

Tasks Integration#

Settings → Tools → Tasks → Servers

Configure to read bootspring todo list:

Server URL: local Pattern: bootspring todo list --json

File Watchers#

Auto-Generate Context#

Settings → Tools → File Watchers

Name: Bootspring Context File type: Any Scope: Project Files Program: bootspring Arguments: generate --quiet Output paths to refresh: CLAUDE.md

Watch Patterns#

Working directory: $ProjectFileDir$ Environment variables: BOOTSPRING_QUIET=1 Auto-save edited files: unchecked Trigger on external changes: checked

Database Integration#

IntelliJ/DataGrip Database Tools#

When using Bootspring with databases:

  1. Generate schema context:

    bootspring generate --include-schema
  2. Invoke database expert:

    bootspring agent invoke database-expert "Optimize these queries"

Connect to DataGrip#

DataGrip reads CLAUDE.md for schema documentation.

Debugging Integration#

Debug Bootspring Commands#

Run Configuration for debugging:

Type: Node.js Node parameters: --inspect JavaScript file: $(which bootspring) Application parameters: generate --verbose

Attach Debugger#

  1. Start Bootspring with --inspect
  2. Run → Attach to Node.js Process
  3. Debug MCP or CLI operations

Plugin Development#

Create IDE Plugin#

For custom Bootspring integration:

1// build.gradle.kts 2plugins { 3 id("org.jetbrains.intellij") version "1.16.0" 4} 5 6intellij { 7 version.set("2023.3") 8 plugins.set(listOf("terminal")) 9}

Action Example#

1class BootspringGenerateAction : AnAction() { 2 override fun actionPerformed(e: AnActionEvent) { 3 val project = e.project ?: return 4 val terminal = TerminalView.getInstance(project) 5 terminal.createLocalShellWidget(project.basePath, "Bootspring") 6 .executeCommand("bootspring generate") 7 } 8}

Troubleshooting#

Terminal Not Found#

1# Check terminal settings 2# Settings → Tools → Terminal 3 4# Verify shell path exists 5which zsh 6which bash

External Tools Not Working#

  1. Check program path is absolute
  2. Verify working directory
  3. Check PATH includes npm global
# Find bootspring path which bootspring # Use full path in External Tools /usr/local/bin/bootspring

Node.js Not Detected#

Settings → Languages & Frameworks → Node.js:

  • Set Node interpreter path
  • Enable Node.js coding assistance

Slow Performance#

  1. Exclude node_modules from indexing
  2. Mark large directories as excluded
  3. Increase IDE memory in Help → Change Memory Settings

IDE-Specific Notes#

WebStorm#

Best for TypeScript/JavaScript projects:

  • Full TypeScript support
  • Built-in Node.js tools
  • npm/yarn integration

IntelliJ IDEA#

For full-stack or backend projects:

  • Enable JavaScript/TypeScript plugin
  • Configure Node.js interpreter
  • Use Ultimate for full web support

PyCharm#

For Python projects:

  • Configure Python interpreter
  • Use terminal for Bootspring
  • Context includes Python patterns

Uninstalling#

Remove External Tools#

Settings → Tools → External Tools → Delete

Remove Run Configurations#

Run → Edit Configurations → Delete

Remove Bootspring Files#

rm CLAUDE.md rm bootspring.config.js rm -rf .bootspring

Next Steps#