# rails-upgrade

Evaluates Rails version bumps, checks JS assets, and guides selective configuration merging without wiping custom code.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 54
- Author: robzolkos
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/robzolkos/skill-rails-upgrade/tree/HEAD/SKILL.md
- Updated: 2026-01-27
- HTML: https://affpapa.org/en/nevibecode/skills/rails-upgrade

## What it does

The skill validates your project by looking for `Gemfile`, `config/application.rb`, and `config/environment.rb`, then extracts the installed version from `Gemfile.lock`. It queries the Rails repository using GitHub CLI to find the newest release tag and categorizes the jump as patch, minor, or major.

Next, it pulls relevant upgrade guides and fetches boilerplate changes from `railsdiff.org`. The workflow also audits frontend packages across `package.json` or `config/importmap.rb`, targeting libraries like `@hotwired/turbo-rails` and `@rails/actioncable`. Without GitHub CLI configured in your shell, fetching remote tags will fail.

Instead of invoking `rails app:update` blindly, the skill emphasizes careful file updates. This preserves custom initializers and local modifications while bringing default configs and migrations up to date.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add robzolkos/skill-rails-upgrade --skill rails-upgrade -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/rails-upgrade/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/rails-upgrade/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add robzolkos/skill-rails-upgrade --skill rails-upgrade -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/rails-upgrade/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add robzolkos/skill-rails-upgrade --skill rails-upgrade -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/rails-upgrade/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install robzolkos/skill-rails-upgrade rails-upgrade
```

2. **Manually: put the files in place**
- File: `.github/skills/rails-upgrade/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add robzolkos/skill-rails-upgrade --skill rails-upgrade -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/robzolkos/skill-rails-upgrade
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/rails-upgrade/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add robzolkos/skill-rails-upgrade --skill rails-upgrade -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/robzolkos/skill-rails-upgrade/tree/HEAD/SKILL.md

## When to use it
- Assess Rails upgrade difficulty between current and target releases
- Inspect config differences via railsdiff.org without overwriting customizations
- Check version alignment for npm and importmap JavaScript dependencies
- Outline required migrations and deprecation cleanup steps

## Example prompts
- Check my Rails version and generate an upgrade roadmap to the latest release
- Inspect package.json and config/importmap.rb for outdated Rails JavaScript packages
- Show the diff for default Rails configuration files without overwriting local changes

## Similar
- [mcp-builder](https://affpapa.org/en/nevibecode/skills/mcp-builder.md) — skill · 130949 installs
- [claude-api](https://affpapa.org/en/nevibecode/skills/claude-api.md) — skill · 74198 installs
- [lark-im](https://affpapa.org/en/nevibecode/skills/lark-im.md) — skill · 472900 installs
- [lark-event](https://affpapa.org/en/nevibecode/skills/lark-event.md) — skill · 466800 installs
- [caveman-discover](https://affpapa.org/en/nevibecode/skills/caveman-discover.md) — skill · 104400 installs
- [migration](https://affpapa.org/en/nevibecode/skills/migration.md) — skill · 103900 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
