By ombulabs
Set up dual-boot Ruby/Rails environments using the next_rails gem to safely upgrade Rails, Ruby, or core dependencies with version branching and CI configuration.
A Claude Code skill that helps you set up and manage dual-boot environments for Ruby
and Rails applications using the next_rails gem.
The Dual-Boot skill helps you:
next_rails gem so your app runs with two dependency sets depending on one environment variable (ie. BUNDLE_GEMFILE)NextRails.next? (the correct pattern — never respond_to?)While most commonly used for Rails version upgrades, dual-boot works equally well for
upgrading Ruby versions or any core dependency in your Gemfile (e.g., sidekiq, devise, pg).
Dual-booting is a core part of the FastRuby.io upgrade methodology:
From inside the Claude Code CLI prompt (recommended):
/plugin marketplace add ombulabs/claude-skills
/plugin install dual-boot@ombulabs-ai
From your terminal:
claude plugin marketplace add https://github.com/ombulabs/claude-skills.git
claude plugin install dual-boot@ombulabs-ai
Manual install:
git clone https://github.com/ombulabs/claude-code_dual-boot-skill.git
cp -r claude-code_dual-boot-skill/dual-boot ~/.claude/skills/
[!NOTE] This skill works standalone, but it is part of the full Rails upgrade toolkit. You may also want to install rails-load-defaults and rails-upgrade.
In Claude Code, navigate to your Rails application directory and use natural language:
"Set up dual boot for my Rails app"
"Help me dual-boot Rails 7.0 and 7.1"
"Dual-boot Ruby 3.1 and 3.2"
"Set up dual boot for upgrading sidekiq"
"Configure dual-boot CI"
"Clean up dual-boot code after upgrade"
NextRails.next? (not feature detection)When writing code that must work with two versions, always use NextRails.next?:
# spec/requests/projects_spec.rb
test_request =
if NextRails.next?
ActionController::TestRequest.create
else
ActionController::TestRequest.new
end
Never use respond_to?, defined?, or other feature-detection patterns. They are fragile, hard to clean up, and obscure intent.
Only branch when the old API genuinely breaks on the next version. A plain deprecation warning is not a reason for a conditional — if the new API works on both versions, just use it directly.
load_defaults updatesWe welcome contributions! Found incorrect information or have a suggestion? Open an issue.
This project is licensed under the MIT License. See LICENSE for details.
OmbuLabs.ai is Philadelphia's AI Software Boutique. We build custom AI solutions that integrate with your existing workflows. From Claude Code skills to full AI agent systems.
The Rails upgrade experts. We've been upgrading Rails applications professionally since 2017, helping companies stay current and secure.
Questions? Open an issue or reach out to us at [email protected]
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub ombulabs/claude-skills --plugin dual-bootPlan and execute Rails version upgrades following FastRuby.io methodology
Align Rails load_defaults across versions with safe, incremental config changes based on FastRuby.io methodology
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.