/ ディレクトリ / プレイグラウンド / claude-code_rails-upgrade-skill
● コミュニティ ombulabs ⚡ 即起動

claude-code_rails-upgrade-skill

作者 ombulabs · ombulabs/claude-code_rails-upgrade-skill

監査から非推奨の修正、bundle updateまで、Railsのアップグレードを体系的に進めるClaude Codeスキルです。既存の動作を壊さずにアップグレードを完了します。

Rails Upgrade Skill(OmbuLabs製)は、Claudeを標準的なRailsアップグレード手順に沿って導きます。コードベースの監査、非推奨の修正、フレームワークデフォルトの適用、Gem非互換への対応、新バージョンでの動作検証を行います。OmbuLabsの本番環境でのRailsアップグレード経験に基づいています。N → N+1のアップグレードや、古いバージョンからの追い上げに適しています。

なぜ使うのか

主な機能

ライブデモ

実際の動作

claude-code-rails-upgrade-skill.replay ▶ 準備完了
0/0

インストール

作者のリポジトリ · Claude Skills の公式ドキュメント

ユースケース

実用的な使い方: claude-code_rails-upgrade-skill

コードに手を付ける前にRailsアップグレードを計画する方法

👤 複数バージョンをまたぐアップグレードに直面しているRails開発者 ⏱ ~60 min intermediate

使うタイミング: Rails 6.1を使用中で7.2まで上げる必要がある場合。運任せではなく、計画が欲しいとき。

フロー
  1. 現在の状態を監査する
    このRailsアプリを監査してください:現在のバージョン、Rubyバージョン、Gem、テスト実行時の非推奨警告。✓ コピーしました
    → ベースラインレポート
  2. アップグレードパスを構築する
    Rails 7.2へのアップグレードを計画してください。バージョンごとに段階的に進め(6.1 → 7.0 → 7.1 → 7.2)、各段階のマイルストーン基準を設定。✓ コピーしました
    → 複数段階の計画
  3. ブロッカーを特定する
    7.2互換バージョンが存在しないGemはどれですか?各Gemへの対応案(アップグレード/置換/フォーク)を提示してください。✓ コピーしました
    → Gem別ブロッカーリスト

結果: 段階的なマイルストーンを含む現実的なアップグレード計画。

注意点
  • メジャーバージョンを2つ一度に飛ばす — スキルは一度に1マイナー/メジャーずつ進めるよう制御します。上書きしないでください

非推奨警告の一括検出と修正

👤 アップグレード途中のRails開発者 ⏱ ~90 min intermediate

使うタイミング: バージョン間の移行中で、テスト実行結果が非推奨警告で埋め尽くされているとき。

フロー
  1. 収集
    テストを実行し、ユニークな非推奨警告をすべて収集してください。✓ コピーしました
    → 重複を除いたリスト(ファイル名:行番号付き)
  2. グループ化して修正
    原因別にグループ化し、各グループに対して最小限の修正をdiff形式で提案してください。✓ コピーしました
    → グループ化された修正diff

結果: 次のバージョンアップに向けてクリーンなテスト実行結果が得られる。

新しいフレームワークデフォルトを安全に適用する

👤 rails app:updateの対応に取り組むRails開発者 ⏱ ~60 min advanced

使うタイミング: Gemfileのバージョンを上げてrails app:updateを実行した後、新しいイニシャライザが大量に生成されたとき。

フロー
  1. diffをレビューする
    rails app:updateのdiffをレビューしてください。アプリに破壊的影響を与える可能性のあるデフォルト変更(strict_loading、zeitwerkモードなど)をフラグ付けしてください。✓ コピーしました
    → 変更ごとのリスク注釈
  2. 段階的に有効化する
    リスクのある各デフォルトについて、段階的ロールアウト計画を作成してください:環境フラグで有効化 → ステージングで検証 → 本番切り替え。✓ コピーしました
    → デフォルトごとの段階的計画

結果: 予期しないリグレッションなくデフォルトが有効化される。

注意点
  • load_defaultsをすべて一度に有効化する — new_framework_defaults_X.Y.rbを使って個別に段階的に有効化する

組み合わせ

他のMCPと組み合わせて10倍の力を

claude-code-rails-upgrade-skill + claude-code-owasp-skill

アップグレード後のコードに対するセキュリティレビュー

Rails 7.2へのアップグレード後、認証とパラメータ処理に対してOWASPレビューを実行してください。✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
Audit repo すべてのアップグレードの開始時 Claude tokens
Plan upgrade path current, target 監査の後 Claude tokens
Gem compat check Gemfile, target Rails バージョンを上げる前 Claude tokens + RubyGems API
Deprecation sweep test log バージョン間の移行時 Claude tokens
Framework defaults migration diff from rails app:update rails app:update実行後 Claude tokens

コストと制限

運用コスト

APIクォータ
なし
呼び出しあたりのトークン
アップグレード全体で20〜80kトークン
金額
無料
ヒント
非推奨の一括検出はアプリ全体ではなく、特定のディレクトリに絞って実行してください。

セキュリティ

権限、シークレット、影響範囲

認証情報の保管: 認証情報なし
データ送信先: コードが推論のためにClaudeに送信されます

トラブルシューティング

よくあるエラーと対処法

rails app:updateがコミットされていないバイナリファイルを生成する

通常はシステムファイルです。.gitignoreに追加し、クリーンな状態で再生成してください。

テストがローカルでは通るがアップグレード後にCIで失敗する

オートロードの違いやproductionモードでのeager_loadが原因の可能性があります。ローカルでRAILS_ENV=productionを指定して実行してください。

Gemのbundle解決が失敗する

スキルが代替のGemバージョンを提案します。フォークや別のGemへの置き換えが必要な場合もあります。

確認: bundle update --conservative

代替案

claude-code_rails-upgrade-skill 他との比較

代替案代わりに使う場面トレードオフ
next_rails gem決定論的なアップグレードヘルパーが欲しい場合LLMによる非推奨修正のガイドなし

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る