skills/atman-33/skills/supabase-migration-prep

supabase-migration-prep

SKILL.md

Supabase Migration Prep

Supabaseデータベースのマイグレーション前準備を自動化します。バックアップと差分マイグレーションファイルを生成します。

注意: マイグレーションは適用しません。準備のみを行います。

前提条件

ローカルでスキーマを編集済みであること:

  • supabase/schema.sql などのローカルファイルを編集
  • または supabase/migrations/ に新規SQLファイルを追加

重要:

  • このスキルは supabase start でローカルインスタンスを起動します
  • Docker Composeなど他のPostgreSQLが起動中の場合、ポート競合が発生する可能性があります
  • 初回実行時はDockerイメージのダウンロードで時間がかかります

実行手順

1. PROJECT-REF確認

ユーザーに確認:

  • PROJECT-REF(16文字の英数字、例: abcdefghijklmnop
  • マイグレーション名(オプション、デフォルト: schema_update

PROJECT-REF確認方法:

  • Dashboard URL: https://supabase.com/dashboard/project/[YOUR-PROJECT-REF]
  • 設定: Dashboard → Settings → General → Reference ID

2. スクリプト実行

# run_in_terminal ツールを使用
bash .claude/skills/supabase-migration-prep/scripts/prepare_migration.sh <PROJECT_REF> [migration_name]

:

bash .claude/skills/supabase-migration-prep/scripts/prepare_migration.sh abcdefghijklmnop add_profile_fields

スクリプトが自動実行:

  1. バックアップディレクトリ作成
  2. Supabase認証確認
  3. プロジェクトリンク
  4. 完全バックアップ作成(ロール、スキーマ、データを個別に取得)
  5. ローカルSupabaseインスタンス起動(supabase start
  6. ローカルスキーマをインスタンスに適用(supabase db reset
  7. ローカルとリモートの差分確認
  8. マイグレーションファイル生成

3. 完了報告

スクリプト出力から以下を確認してユーザーに報告:

  • ✅ ロールバックアップ: supabase/backup/roles_YYYYMMDD_HHMMSS.sql
  • ✅ スキーマバックアップ: supabase/backup/schema_YYYYMMDD_HHMMSS.sql
  • ✅ データバックアップ: supabase/backup/data_YYYYMMDD_HHMMSS.sql
  • ✅ マイグレーションファイル: supabase/migrations/YYYYMMDDHHMMSS_<name>.sql
  • ⚠️ マイグレーション未適用(適用前に内容確認を推奨)
  • ℹ️ ローカルインスタンス起動中(不要なら npx supabase stop で停止)

トラブルシューティング

エラー発生時は、スクリプト出力のエラーメッセージを確認し、以下を試行:

  • 認証エラー: npx supabase login を再実行
  • リンクエラー: npx supabase unlink 後に再実行
  • 差分なし: ローカルでスキーマ変更後に再実行

参考

詳細手順: DATABASE_MIGRATION_CLOUD.md

Weekly Installs
1
Repository
atman-33/skills
First Seen
Feb 5, 2026
Installed on
replit1
opencode1
codex1
claude-code1
gemini-cli1