From warp-rails
Bootstraps Warp terminal launch configurations for Rails projects with colored tabs for dev server, Claude, shell, console, logs, and jobs. Use when setting up Warp in a Rails directory.
How this skill is triggered — by the user, by Claude, or both
Slash command
/warp-rails:bootstrapThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Configure Warp terminal for optimal Rails development with colored tabs.
Configure Warp terminal for optimal Rails development with colored tabs.
READ THESE FIRST. VIOLATIONS WILL BREAK THE CONFIG.
bin/dev - If bin/dev exists, use it. Do NOT parse Procfile.dev for individual commandsred, green, yellow, blue, magenta, cyanexec: for commands - Format: - exec: bin/dev NOT - "bin/dev"~ or relative paths in cwd field--- - The document separator is requiredExecute these steps IN ORDER. Do not skip steps.
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.
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:
HAS_BIN_DEV=true, the dev command is bin/dev. Period. Do NOT look inside Procfile.dev.HAS_BIN_DEV=false, the dev command is bin/rails server.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.
Before writing ANY YAML, read the schema reference:
Read @./references/launch-config-schema.md
This ensures you use the correct format.
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:
--- (YAML document separator)color MUST be lowercase: green, blue, yellow, magenta, cyan, redcolor MUST NOT be capitalized or an object with r/g/b valuescommands MUST use exec: prefix: - exec: bin/devcommands MUST NOT be plain strings like - "bin/dev"cwd MUST be the absolute path from pwd command (no quotes needed)cwd MUST NOT use ~ or relative pathsShow 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}
| 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 |
npx claudepluginhub aviflombaum/claude-code-in-avinyc --plugin warp-railsConfigures Windsurf local dev workflow: .windsurfrules, Turbo mode for npm/pnpm terminal execution, Previews for UI iteration, and .codeiumignore. For fast AI-augmented coding loops.
Manages Railway PaaS deployments via CLI for creating services, infrastructure, networking config, environment variables, logs, and SSH debugging.
Delivers Ruby on Rails expertise: assesses projects, enforces conventions, optimizes ActiveRecord queries, implements Hotwire/Turbo/Stimulus, handles Sidekiq/Solid Queue jobs, and guides RSpec/FactoryBot testing.