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#
| IDE | Languages | Best For |
|---|---|---|
| IntelliJ IDEA | Java, Kotlin, Scala | Backend, Android |
| WebStorm | JavaScript, TypeScript | Frontend, Node.js |
| PyCharm | Python | Data science, Django |
| PhpStorm | PHP | Laravel, WordPress |
| RubyMine | Ruby | Rails |
| GoLand | Go | Microservices |
| Rider | C#, .NET | .NET development |
| CLion | C, C++ | Systems programming |
Prerequisites#
- JetBrains IDE installed
- Bootspring CLI installed (
npm install -g bootspring) - Node.js 18+ installed
Installation#
JetBrains Toolbox (Recommended)#
# macOS
brew install --cask jetbrains-toolbox
# Download and install your IDE via ToolboxDirect Installation#
Download from jetbrains.com.
Bootspring Setup#
Initialize Project#
cd your-project
bootspring init
bootspring generateOpen in IDE#
1# WebStorm
2webstorm .
3
4# IntelliJ IDEA
5idea .
6
7# PyCharm
8pycharm .Terminal Integration#
Configure Terminal#
- Open Settings (Ctrl+Alt+S / Cmd+,)
- Navigate to: Tools → Terminal
- Set shell path:
- macOS/Linux:
/bin/zshor/bin/bash - Windows:
pwsh.exeorcmd.exe
- macOS/Linux:
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 statusExternal Tools#
Add Bootspring Commands#
- Settings → Tools → External Tools
- 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#
- Run → Edit Configurations
- 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"
| Action | Suggested Shortcut |
|---|---|
| Bootspring Generate | Ctrl+Alt+B G |
| Bootspring Agent | Ctrl+Alt+B A |
| Bootspring Quality | Ctrl+Alt+B Q |
| Bootspring Status | Ctrl+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#
- Settings → Editor → File and Code Templates
- 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$: Expressionenum("frontend-expert","backend-expert","database-expert")$PATTERN$: Expressionenum("patterns/api-endpoint","patterns/react-component")
AI Assistant Integration#
JetBrains AI Assistant#
If using JetBrains AI Assistant:
- Context from
CLAUDE.mdimproves responses - Reference Bootspring patterns in prompts
GitHub Copilot#
If using Copilot plugin:
CLAUDE.mdprovides context- Copilot reads project patterns
- Suggestions follow your standards
Custom AI Integration#
For custom AI plugins, point them to:
CLAUDE.mdfor contextbootspring.config.jsfor 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.xmlInspections#
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#
Link to Bootspring Todos#
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:
-
Generate schema context:
bootspring generate --include-schema -
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#
- Start Bootspring with
--inspect - Run → Attach to Node.js Process
- 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 bashExternal Tools Not Working#
- Check program path is absolute
- Verify working directory
- Check PATH includes npm global
# Find bootspring path
which bootspring
# Use full path in External Tools
/usr/local/bin/bootspringNode.js Not Detected#
Settings → Languages & Frameworks → Node.js:
- Set Node interpreter path
- Enable Node.js coding assistance
Slow Performance#
- Exclude
node_modulesfrom indexing - Mark large directories as excluded
- 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 .bootspringNext Steps#
- Generate Context
- Using Agents
- Claude Desktop Setup
- VS Code Setup (alternative)