CtrlK
BlogDocsLog inGet started
Tessl Logo

database-migration

Execute database migrations across ORMs and platforms with zero-downtime strategies, data transformation, and rollback procedures. Use when migrating databases, changing schemas, performing data transformations, or implementing zero-downtime deployment strategies.

80

1.08x
Quality

74%

Does it follow best practices?

Impact

92%

1.08x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./tests/ext_conformance/artifacts/agents-wshobson/framework-migration/skills/database-migration/SKILL.md

The canonical home for this skill is database-migration in wshobson/agents

SKILL.md
Quality
Evals
Security

Quality

Content

65%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.

Highly actionable content with complete, runnable code for all three ORMs and explicit commands, but it is over-long for a SKILL.md overview and its progressive-disclosure structure is broken in practice: seven referenced bundle files are listed yet missing, while the detailed material they should contain is inlined. Destructive migration workflows also lack the validation checkpoints the rubric requires.

Suggestions

Create the seven bundle files listed in Resources (references/orm-switching.md, schema-migration.md, data-transformation.md, rollback-strategies.md, assets/schema-migration-template.sql, assets/data-migration-script.py, scripts/test-migration.sh) and move the exhaustive per-pattern code examples into them, leaving a concise overview with one canonical example per topic in SKILL.md.

Add explicit validation checkpoints between phases of the destructive workflows — e.g., after the blue-green backfill phase, verify row counts match ("SELECT COUNT(*) FROM users WHERE email_new IS NULL" must be 0) before proceeding to phase 4; similarly verify the transformed age_new column before dropping age.

Add a verification step to the per-row data transformation example — confirm no NULL street/city/state values and correct row count before dropping address_string, since that migration is destructive and the split() parsing can silently miss parts.

DimensionReasoningScore

Conciseness

The body avoids explaining concepts Claude already knows, but at ~430 lines it inlines many near-duplicate Sequelize migration examples (ORM creation, schema transformations, data migration, rollback, blue-green) that a competent model could derive from one canonical example each. It could be substantially tightened by moving the exhaustive variants into the reference files the skill already lists.

3 / 5

Actionability

Every section contains complete, executable code with the exact run and rollback commands (e.g., "npx sequelize-cli db:migrate" / "db:migrate:undo", "npm run typeorm migration:run", "npx prisma migrate deploy"), covering the common cases for each ORM in copy-paste-ready form.

5 / 5

Workflow Clarity

Multi-step workflows are clearly sequenced (the 3-step column rename, the 5-phase blue-green deploy) and one section shows verification ("SELECT COUNT(*) ... if (result[0].count > 0) throw"), but the flagship destructive workflows — blue-green phases, the column type change, and the per-row data migration — lack validation checkpoints between phases. Per the rubric, database operations without validation cap workflow clarity at 3.

3 / 5

Progressive Disclosure

The Resources section signals one-level-deep references with per-file descriptions, which is good structure — but none of the seven listed bundle files (references/*.md, assets/*, scripts/test-migration.sh) actually exist on disk, and the detailed content those files should hold is instead inlined in the 430-line body. This matches the anchor where structure exists but content that should be separate is inline.

3 / 5

Total

14

/

20

Passed

Description

83%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 strong description that clearly and explicitly covers both what the skill does and when to use it, with natural trigger phrases in third-person voice. The only weaknesses are unnamed ORMs and slight overlap risk with general deployment skills on the zero-downtime trigger.

DimensionReasoningScore

Specificity

The description lists several concrete third-person actions — "Execute database migrations across ORMs and platforms with zero-downtime strategies, data transformation, and rollback procedures" — but never names the specific ORMs it covers (Sequelize, TypeORM, Prisma), leaving a minor gap versus the comprehensive-coverage anchor at 5.

4 / 5

Completeness

It explicitly answers both questions: the first sentence states what the skill does, and "Use when migrating databases, changing schemas, performing data transformations, or implementing zero-downtime deployment strategies" provides four concrete trigger phrases.

5 / 5

Trigger Term Quality

Trigger phrases like "migrating databases", "changing schemas", "performing data transformations", and "implementing zero-downtime deployment strategies" are natural things a user would say, though common variations such as "schema migration", "ORM switch", or specific tool names are missing.

4 / 5

Distinctiveness Conflict Risk

Database migration is a clear niche with distinct triggers ("changing schemas", "data transformations"), but the "zero-downtime deployment strategies" trigger could also fire for a general deployment/DevOps skill, creating minor overlap risk.

4 / 5

Total

17

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 7 missing

Warning

Total

15

/

16

Passed

Repository
Dicklesworthstone/pi_agent_rust
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.