bootstrap
Bootstrap Warp terminal configuration for Rails projects. Creates launch configurations with colored tabs for dev server, Claude, shell, and more. This skill should be used when setting up Warp for a Rails project. Triggers on "setup warp", "configure warp", "warp rails", "warp bootstrap", "terminal setup for rails", "warp-rails".
SKILL.md
| Name | bootstrap |
| Description | Bootstrap Warp terminal configuration for Rails projects. Creates launch configurations with colored tabs for dev server, Claude, shell, and more. This skill should be used when setting up Warp for a Rails project. Triggers on "setup warp", "configure warp", "warp rails", "warp bootstrap", "terminal setup for rails", "warp-rails". |
name: bootstrap description: Bootstrap Warp terminal configuration for Rails projects. Creates launch configurations with colored tabs for dev server, Claude, shell, and more. This skill should be used when setting up Warp for a Rails project. Triggers on "setup warp", "configure warp", "warp rails", "warp bootstrap", "terminal setup for rails", "warp-rails". argument-hint: "[project-path]" user-invocable: true disable-model-invocation: true
Warp Rails Bootstrap
Configure Warp terminal for optimal Rails development with colored tabs.
Critical Rules
READ THESE FIRST. VIOLATIONS WILL BREAK THE CONFIG.
- MUST use AskUserQuestion - Do NOT generate the config until user selects their tabs
- MUST use
bin/dev- Ifbin/devexists, use it. Do NOT parse Procfile.dev for individual commands - MUST use lowercase color names - Only valid:
red,green,yellow,blue,magenta,cyan - MUST use
exec:for commands - Format:- exec: bin/devNOT- "bin/dev" - MUST use absolute paths - Never use
~or relative paths incwdfield - MUST start YAML with
---- The document separator is required - MUST read reference docs - Before generating YAML, read @./references/launch-config-schema.md
Workflow
Execute these steps IN ORDER. Do not skip steps.
Step 1: Verify Rails Project
Run this command:
test -f config/application.rb && echo "RAILS PROJECT" || echo "NOT RAILS"
If NOT RAILS, stop and tell user to run from a Rails directory.
Step 2: Gather Project Context
Run these commands and store the results:
# Get absolute path (REQUIRED for cwd)
pwd
# Get project name from directory
basename "$(pwd)"
# Check for bin/dev
test -f bin/dev && echo "HAS_BIN_DEV=true" || echo "HAS_BIN_DEV=false"
# Check for background job processor
grep -l "sidekiq\|good_job\|solid_queue" Gemfile 2>/dev/null && echo "HAS_JOBS=true" || echo "HAS_JOBS=false"
IMPORTANT:
- If
HAS_BIN_DEV=true, the dev command isbin/dev. Period. Do NOT look inside Procfile.dev. - If
HAS_BIN_DEV=false, the dev command isbin/rails server.
Step 3: STOP - Ask Tab Configuration
You MUST use AskUserQuestion here. Do NOT proceed until user responds.
Ask: "Which tabs do you want in your Warp launch configuration?"
Use multi-select with these options:
| Label | Description |
|---|---|
| Server (green) | Run dev server (bin/dev or rails server) |
| Claude (blue) | Start Claude Code session |
| Shell (yellow) | Empty terminal for commands |
| Console (magenta) | Rails console |
| Logs (cyan) | Tail log/development.log |
If HAS_JOBS=true, also include: | Jobs (red) | Background job processor |
WAIT FOR USER RESPONSE BEFORE CONTINUING.
Step 4: Read Reference Documentation
Before writing ANY YAML, read the schema reference:
Read @./references/launch-config-schema.md
This ensures you use the correct format.
Step 5: Generate Launch Configuration
Create the launch configuration file.
File location: ~/.warp/launch_configurations/{project-name}.yaml
EXACT FORMAT TO USE:
---
name: {project-name}
windows:
- tabs:
- title: Server
color: green
layout:
cwd: {ABSOLUTE_PATH_FROM_PWD}
commands:
- exec: bin/dev
- title: Claude
color: blue
layout:
cwd: {ABSOLUTE_PATH_FROM_PWD}
commands:
- exec: claude
- title: Shell
color: yellow
layout:
cwd: {ABSOLUTE_PATH_FROM_PWD}
FORMAT RULES:
- File MUST start with
---(YAML document separator) colorMUST be lowercase:green,blue,yellow,magenta,cyan,redcolorMUST NOT be capitalized or an object with r/g/b valuescommandsMUST useexec:prefix:- exec: bin/devcommandsMUST NOT be plain strings like- "bin/dev"cwdMUST be the absolute path frompwdcommand (no quotes needed)cwdMUST NOT use~or relative paths
Step 6: Display Summary
Show the user what was created:
Warp launch configuration created for {project-name}!
Location: ~/.warp/launch_configurations/{project-name}.yaml
How to use:
Keyboard: Ctrl-Cmd-L → select "{project-name}"
Direct URL: warp://launch/{project-name}.yaml
Tabs configured:
{list each tab with color and command}
Common Mistakes to Avoid
| Wrong | Right |
|---|---|
color: Green | color: green |
color: { r: 34, g: 197, b: 94 } | color: green |
commands: ["bin/dev"] | commands: [- exec: bin/dev] |
cwd: ~/project | cwd: /Users/avi/project |
cwd: . | cwd: /Users/avi/project |
Missing --- at start | Start file with --- |
| Parsing Procfile.dev for commands | Just use bin/dev |
| Skipping AskUserQuestion | MUST ask and wait for response |
Reference Files
- @./references/launch-config-schema.md - Launch configuration YAML format