Upgrade Cleanup

Tears down Rails dual-boot scaffolding and NextRails branches after an upgrade

Works with setup

Test report

Verdict
Works with setup
Score
8.0/10
Tested
Jul 21, 2026
Environment
Claude Code 2.x (agent harness)
Upstream re-checked
Aug 10, 2026 · b0c2e14

Located SKILL.md at upgrade-cleanup/upgrade-cleanup/SKILL.md (frontmatter parses with name+description; referenced workflows/upgrade-cleanup-workflow.md returns HTTP 200; no hardcoded paths or security smells — commands are grep/git/bundle/mv/rm, all gated behind mandatory user confirmation). Verified install in a clean HOME=$(mktemp -d) places SKILL.md correctly. For OUTPUT I built a synthetic dual-boot fixture (Gemfile with `if next?` block + next_rails, config/application.rb with a NextRails.next? ternary, spec/rails_helper.rb wiring deprecation_tracker) and ran the "keep next / finish upgrade" cleanup two ways. The naive baseline left `require "deprecation_tracker"` in rails_helper.rb (a LoadError bomb once next_rails is removed) and deleted Gemfile.next.lock leaving no lockfile; the workflow-followed artifact removed the deprecation_tracker residue (Phase 1 Step 5) and did `mv Gemfile.next.lock Gemfile.lock` (Step 7), preserving the validated 7.1 pins. Concrete diffs confirmed.

Scored on four weighted criteria — install, triggering, output vs. baseline, docs. How scoring works

  • Installs cleanly 5/5
  • Triggers reliably 5/5
  • Output vs. baseline 5/10
  • Docs & honesty 5/5

What Upgrade Cleanup does

Removes dual-boot upgrade scaffolding from a Rails app: collapses NextRails.next?/NextRails.current? conditionals, retires Gemfile.next / Gemfile.next.lock and the next_rails gem, sweeps deprecation_tracker residue, and aligns lockfile, CI, and Ruby pins to the kept version. Triggers when the user says they are done with a Rails upgrade, want to clean up dual-boot, drop NextRails branches, or abandon/pause an upgrade hop to stay on the current version. Branches every step on a mandatory "keep next vs keep current" direction confirmed with the user first.

How to install Upgrade Cleanup

git clone --depth 1 https://github.com/ombulabs/claude-code_rails-upgrade-skill.git /tmp/upgrade-cleanup-src
mkdir -p ~/.claude/skills
cp -R /tmp/upgrade-cleanup-src/upgrade-cleanup/upgrade-cleanup ~/.claude/skills/upgrade-cleanup
# SKILL.md lands at ~/.claude/skills/upgrade-cleanup/SKILL.md (verified in a clean HOME).
# Plugin-marketplace alternative (installs the whole rails-upgrade family):
#   /plugin marketplace add ombulabs/claude-skills
#   /plugin install upgrade-cleanup@ombulabs-ai
# No external deps to load the skill. Its workflow runs grep/git/bundle/mv/rm inside a
# target Rails repo; companion skills rails-upgrade + dual-boot are referenced but not
# required for this skill's own cleanup pass.

Skills live in ~/.claude/skills/ (global) or .claude/skills/ (per-project). Restart Claude Code after installing.

Commands — how to trigger Upgrade Cleanup

  • /upgrade-cleanup Tears down Rails dual-boot scaffolding and NextRails branches after an upgrade

It also activates on plain-language prompts like these:

  • Clean up dual-boot code after our Rails upgrade
  • Remove NextRails branches now that we're done
  • Roll back and abandon this upgrade attempt

Frequently asked questions

Is the Upgrade Cleanup skill free?
Yes. The skill itself is free from ombulabs/claude-code_rails-upgrade-skill. SkillProof publishes the install command and an independent test verdict at no cost.
Does Upgrade Cleanup work with Claude Code?
We tested it with Claude Code 2.x (agent harness) on Jul 21, 2026. Verdict: Works with setup. Located SKILL.md at upgrade-cleanup/upgrade-cleanup/SKILL.md (frontmatter parses with name+description; referenced workflows/upgrade-cleanup-workflow.md returns HTTP 200; no hardcoded paths or security smells — commands are grep/git/bundle/mv/rm, all gated behind mandatory user confirmation). Verified install in a clean HOME=$(mktemp -d) places SKILL.md correctly. For OUTPUT I built a synthetic dual-boot fixture (Gemfile with `if next?` block + next_rails, config/application.rb with a NextRails.next? ternary, spec/rails_helper.rb wiring deprecation_tracker) and ran the "keep next / finish upgrade" cleanup two ways. The naive baseline left `require "deprecation_tracker"` in rails_helper.rb (a LoadError bomb once next_rails is removed) and deleted Gemfile.next.lock leaving no lockfile; the workflow-followed artifact removed the deprecation_tracker residue (Phase 1 Step 5) and did `mv Gemfile.next.lock Gemfile.lock` (Step 7), preserving the validated 7.1 pins. Concrete diffs confirmed.
What is the Upgrade Cleanup SkillProof Score?
8.0/10 — installs cleanly 5/5, triggers reliably 5/5, output vs. baseline 5/10, docs & honesty 5/5.
How do I install Upgrade Cleanup?
Copy the install command from this page, run it in your terminal, and restart Claude Code. Skills live in ~/.claude/skills/ (global) or .claude/skills/ inside a project.
Can I use Upgrade Cleanup with Cursor, Copilot, Gemini CLI, Codex or other AI tools?
The SKILL.md format is native to Claude (Claude Code, Desktop, claude.ai). The instructions inside adapt to other assistants: Cursor rules, GitHub Copilot instructions, Windsurf rules, Custom GPTs, AGENTS.md for OpenAI Codex, and GEMINI.md for Google Gemini CLI — our conversion guides cover each, and the free converter on the tools page does the wrapping for you.