# Sqlx Migration

> Create SQLx migration files with `sqlx migrate add <name>`. Use when asked to add, create, or generate a sqlx/sqlx-cli database migration.

- Skill: `macro-inc/sqlx-migration` (Agent Skill)
- Install (CLI): `npx skillmds@latest add macro-inc/sqlx-migration`
- Raw SKILL.md: https://api.skillmd.com/api/skills/macro-inc/sqlx-migration/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: macro-inc (https://skillmd.com/u/macro-inc)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/macro-inc/sqlx-migration

---


# SQLx Migration

Use the SQLx CLI to create migration files instead of manually creating timestamped files.

## Instructions

1. Identify the project or crate root where SQLx migrations should live.
   - Prefer the directory that contains an existing `migrations/` directory.
   - If there are multiple crates/projects, ask the user which one unless the target is obvious.
2. Convert the requested migration description to a short snake_case name, for example `create_users_table`.
3. Run `just setup_test_envs` from the project root
4. Run the SQLx CLI from `crates/macro_db_client` folder:

   ```bash
   cargo sqlx migrate add name_of_migration
   ```

   Replace `name_of_migration` with the actual snake_case migration name.
5. Do not manually add timestamps or hand-create migration filenames; `sqlx migrate add` generates the correct timestamped file.
6. After the command succeeds, read the generated migration file and add the requested SQL changes there.
7. If `sqlx` is not installed or not on `PATH`, stop and tell the user to install `sqlx-cli` rather than manually creating the migration file.

