CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/flyway-migrations

Authors and runs Flyway database migrations - versioned (`V1__add_users.sql`), repeatable (`R__refresh_views.sql`), and undo (`U1__remove_users.sql`) migration files in `db/migration/`; runs `flyway migrate` / `info` / `validate` / `clean` / `baseline` / `repair`; tracks state in the `flyway_schema_history` table; supports 50+ databases including Oracle / SQL Server / MySQL / PostgreSQL / MariaDB / Snowflake / BigQuery; integrates with Maven, Gradle, CLI, and Docker. Use when the user works with Flyway-managed schemas, asks about migration ordering, or needs CI gates on schema changes.

73

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, well-structured body: sequenced steps, executable commands and config, real validation and destructive-operation guardrails, and a verified one-level-deep reference. The main deductions are the incomplete Maven install snippet, a couple of trimmable meta/explanatory passages, and a dangling sister-tools list that gestures at navigation without providing it.

Suggestions

Complete the Maven install path in Step 1: either include the actual `flyway-maven-plugin` `<plugin>` XML or point to a concrete section of references/commands.md, instead of the '# add to pom.xml under <build><plugins>' stub.

Trim meta and redundant text: drop the 'Follow Steps 1 - 7 below in order; each numbered step is the single source' sentence (the step headers already convey this) and fold the 'Safety property' paragraph into the existing `outOfOrder` config comment.

Fix the dangling sister-tool references in the References section: either describe when to switch to `liquibase-migrations` / `atlas-migrations` / `sqlmesh-migrations` with an actionable condition, or drop the list if those skills are not part of this bundle.

DimensionReasoningScore

Conciseness

The body is dense and assumes competence: real commands, a prefix table, an anti-patterns table, and no primers on what databases or migrations are. Minor over-explanation keeps it below a 5: the meta 'Follow Steps 1 - 7 below in order; each numbered step is the single source' sentence and the narrative 'Safety property' paragraph that restates `outOfOrder` semantics already covered in the config comments.

4 / 5

Actionability

Mostly executable: `docker run --rm -e FLYWAY_PASSWORD flyway/flyway ... migrate`, `brew install flyway`, a real `flyway.conf` properties block, and a worked example with actual SQL (`CREATE INDEX idx_users_email ON users(email);`). The gap is the Maven path - the install snippet is a stub comment ('# add to pom.xml under <build><plugins>') with no actual plugin XML, and the Testcontainers pattern is deferred to the reference file.

4 / 5

Workflow Clarity

Steps 1-7 are clearly sequenced, the daily loop 'info -> migrate -> validate' is stated, and validation for destructive operations is explicit: the failed-migration path routes to `flyway repair` instead of editing applied files, the worked example shows `validate` catching a checksum mismatch and recovering with a `V3` migration, and `flyway clean` is guarded by the `cleanDisabled=true` production rule plus an anti-patterns row. This satisfies the destructive-operation feedback-loop requirement rather than triggering the cap at 3.

5 / 5

Progressive Disclosure

One reference file (references/commands.md) is one level deep, referenced inline twice with purpose stated ('Full command reference (baseline, undo, clean, and the rest)' and 'The full GitHub Actions job ... are in references/commands.md') and listed again in the References section; the file exists and delivers the promised command table and CI job. Minor gaps: the 'How to use' section is only a pointer sentence, and the trailing sister-tool list (`liquibase-migrations`, `atlas-migrations`, `sqlmesh-migrations`) names files that are not part of this bundle and give no navigation guidance.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A model description: third-person voice, comprehensive concrete capabilities with real file patterns, commands, and table names, and an explicit 'Use when...' clause with natural trigger phrases. Distinctiveness is high because the tool is named and its artifacts are unambiguous.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with real artifacts: 'Authors and runs Flyway database migrations - versioned (`V1__add_users.sql`), repeatable (`R__refresh_views.sql`), and undo (`U1__remove_users.sql`)', 'runs `flyway migrate` / `info` / `validate` / `clean` / `baseline` / `repair`', 'tracks state in the `flyway_schema_history` table'. Coverage is comprehensive with no notable gap, matching the 5 anchor.

5 / 5

Completeness

Both halves are explicit: a detailed 'what' (author, run, track, 50+ databases, integrations) followed by 'Use when the user works with Flyway-managed schemas, asks about migration ordering, or needs CI gates on schema changes' with concrete trigger phrases. This mirrors the 5 anchor example structure exactly.

5 / 5

Trigger Term Quality

Natural user terms are comprehensively covered: 'Flyway', 'database migrations', 'migration ordering', 'schema changes', 'CI gates', plus file naming patterns (`V1__...sql`), database names, and integration names (Maven, Gradle, CLI, Docker). A user needing this skill would naturally say any of these; nothing obvious is missing.

5 / 5

Distinctiveness Conflict Risk

Flyway is a specific named tool with distinct triggers (Flyway commands, file prefixes, `flyway_schema_history`), so overlap risk with generic SQL or migration skills is minimal. Sister tools like Liquibase are clearly out of scope.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents