Skip to main content
skill CX Codex

313-frameworks-spring-db-migrations-flyway — Claude Code skill

A skill for adding and reviewing Flyway migrations in Spring Boot: Maven dependencies, db/migration scripts, spring.flyway.* settings and migration ordering.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add jabrena/plinth --skill 313-frameworks-spring-db-migrations-flyway -a claude-code
Open on GitHub

What 313-frameworks-spring-db-migrations-flyway does

The skill kicks in when you add or review Flyway migrations in a Spring Boot app. It covers flyway-core plus database-specific modules alongside the Spring Boot BOM, versioned SQL files named V{version}__{description}.sql under src/main/resources/db/migration, and the spring.flyway.* properties for locations, baseline-on-migrate and validate-on-migrate. Data backfills can go through Java migrations built on BaseJavaMigration.

Four steps: read the three references, assess the project, apply framework-aligned changes, then verify. Before touching anything the skill insists the project compiles — ./mvnw compile or mvn compile — and after improvements it runs ./mvnw clean verify. A failed build stops the work. For breaking schema changes it defaults to Parallel Change: expand, migrate, contract.

Forward-only discipline applies: applied migrations in shared environments are not rewritten. Before recommending a migration, the skill checks whether it could break deployed app versions, dependent services, reports or jobs. If it could, a human has to sign off first. It pairs with @311-frameworks-spring-jdbc and @312-frameworks-spring-data-jdbc.

What it helps with

  • add a versioned SQL migration to a Spring Boot project
  • lay out scripts under db/migration and set spring.flyway.*
  • review migration ordering and spot version conflicts
  • fix repeatable migrations that fire the wrong way
  • run a breaking schema change through expand, migrate, contract

Example prompts for the agent

  • Add a Flyway migration for a new orders table in this Spring Boot project
  • Review the migration order in db/migration and the spring.flyway.* settings
  • Write a data backfill as a Java migration using BaseJavaMigration

How to install 313-frameworks-spring-db-migrations-flyway

1Skills CLI (Vercel)

npx skills add jabrena/plinth --skill 313-frameworks-spring-db-migrations-flyway -a claude-code

2Manually: put the files in place

~/.claude/skills/313-frameworks-spring-db-migrations-flyway/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/313-frameworks-spring-db-migrations-flyway/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about 313-frameworks-spring-db-migrations-flyway

How do I install 313-frameworks-spring-db-migrations-flyway in Claude?

Run npx skills add jabrena/plinth --skill 313-frameworks-spring-db-migrations-flyway -a claude-code. The skill lands in ~/.claude/skills/313-frameworks-spring-db-migrations-flyway/SKILL.md.

What does this skill do?

It applies Flyway guidelines to Spring Boot: Maven dependencies, versioned SQL migrations, spring.flyway.* configuration, baseline and validation, and Java migrations for backfills.

What has to happen before migration changes?

The project must compile first — ./mvnw compile or mvn compile — and ./mvnw clean verify runs after the changes. If the build fails, the skill stops.

Source text

SKILL.md · Apache-2.0
---
name: 313-frameworks-spring-db-migrations-flyway
description: Use when you need to add or review Flyway database migrations in a Spring Boot application — Maven dependencies, db/migration scripts, spring.flyway.* configuration, baseline and validation, and alignment with JDBC or Spring Data JDBC. This should trigger for requests such as Add or review Flyway migrations in a Spring Boot project; Configure spring.flyway or db/migration layout; Add versioned Flyway SQL migrations for Spring Boot; Review Spring Boot database migration ordering; Fix repeatable Flyway migrations in a Spring project. Part of Plinth Toolkit
license: Apache-2.0
metadata:
  author: Juan Antonio Breña Moral
  version: 0.19.0
---
# Spring — Database migrations (Flyway)

Apply Flyway migration guidelines for Spring Boot.

**What is covered in this Skill?**

- flyway-core and database-specific Flyway modules (e.g. PostgreSQL) with Spring Boot BOM
- Versioned SQL under `src/main/resources/db/migration` (`V{version}__{description}.sql`)
- `spring.flyway.*` properties: locations, baseline-on-migrate, validate-on-migrate
- Optional Java migrations (`BaseJavaMigration`) for data backfills
- Forward-only discipline: do not rewrite applied migrations in shared environments
- Parallel Change as the safe expand, migrate, contract workflow for breaking or data-sensitive schema changes
- Coordination with `@311-frameworks-spring-jdbc` and `@312-frameworks-spring-data-jdbc`

**Scope:** Apply recommendations based on the reference rules and good/bad examples.

## Constraints

Before applying Flyway or SQL changes, ensure the project compiles. After improvements, run full verification.

- **MANDATORY**: Run `./mvnw compile` or `mvn compile` before applying any change
- **SAFETY**: If compilation fails, stop immediately
- **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` after applying improvements
- **BEFORE APPLYING**: Read the reference for detailed rules and good/bad patterns
- **BREAKING CHANGE REVIEW**: Before recommending or applying a migration, assess whether it can break deployed application versions, dependent services, reports, jobs, or production data interpretation; if yes, require explicit human review before proceeding
- **EDGE CASE**: If the user goal is ambiguous, stop and ask a clarifying question before editing files or running project-wide commands
- **EDGE CASE**: If required context, files, credentials, or tools are missing, report the blocker explicitly and ask whether to proceed with setup or fallback guidance
- **EDGE CASE**: If requested changes conflict with project constraints or safety boundaries, explain the conflict and ask for user confirmation on the preferred trade-off

## When to use this skill

- Add or review Flyway migrations in a Spring Boot project
- Configure spring.flyway or db/migration layout
- Add versioned Flyway SQL migrations for Spring Boot
- Review Spring Boot database migration ordering
- Fix repeatable Flyway migrations in a Spring project

## Workflow

1. **Read references and assess project context**

Read `references/313-frameworks-spring-db-migrations-flyway.md`, `references/313-frameworks-spring-db-migrations-flyway-antipatterns.md`, and `references/313-frameworks-spring-db-migrations-flyway-parallel-change.md`, then inspect the current project setup before proposing changes.

2. **Gather scope and decide target improvements**

Identify requested outcomes, constraints, and the minimum safe set of changes to apply.

3. **Apply framework-aligned changes**

Implement or refactor configuration/code following the reference patterns and project conventions. Use Parallel Change (expand, migrate, contract) as the safe default for breaking or data-sensitive schema changes.

4. **Run verification and report results**

Execute appropriate build/tests and summarize what changed, what was verified, and any follow-up actions.

## Reference

For detailed guidance, examples, and constraints, see:

- [references/313-frameworks-spring-db-migrations-flyway.md](references/313-frameworks-spring-db-migrations-flyway.md)
- [references/313-frameworks-spring-db-migrations-flyway-antipatterns.md](references/313-frameworks-spring-db-migrations-flyway-antipatterns.md)
- [references/313-frameworks-spring-db-migrations-flyway-parallel-change.md](references/313-frameworks-spring-db-migrations-flyway-parallel-change.md)

© Juan Antonio Breña Moral · Apache-2.0 · jabrena/plinth

Similar skills

Everything for Backend and APIs →

From the same set40

170-java-documentation A step-based skill that walks an agent through writing README.md, package-info.java and Javadoc for a Maven Java project. Useful when the code exists but the docs don't. CX Codex +1 359installs 322-frameworks-spring-boot-testing-integration-tests A skill for writing and reviewing Spring Boot 4.0.x integration tests: Testcontainers, persistence slices, HTTP assertions. CX Codex +1 357installs 030-architecture-adr-general Interactive skill that interviews developers to capture architecture decisions for Java projects in MADR format. Useful when choosing databases or framework stacks. CX Codex +1 351installs 151-java-performance-jmeter Sets up JMeter load testing in Java projects by creating a run-jmeter.sh script and standard test directories. CX Codex +1 349installs 162-java-profiling-analyze This skill reads the Java profiling data you already collected — flamegraphs, JFR, GC logs, thread dumps — and sorts the problems it finds by priority. CX Codex +1 350installs 113-java-maven-documentation Generates a DEVELOPER.md guide for Maven projects. It parses pom.xml structure to list plugin goals and build profiles. CX Codex +1 348installs 014-agile-user-story Walks the agent through a template questionnaire and writes a Markdown user story. Useful when feature requirements need splitting. CX Codex +1 339installs 163-java-profiling-refactor Takes a finished profiling report and edits Java code around the bottlenecks it names: CPU, memory, threading. Handy once the analysis is done and the fixes are next. CX Codex +1 337installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor