skills/crazydubya/database-migration-helper/SKILL.md
Creates database migration files following project conventions for Prisma, Sequelize, Alembic, Knex, TypeORM, and other ORMs. Use when adding tables, modifying schemas, or when user mentions database changes.
npx skillsauth add aiskillstore/marketplace database-migration-helperInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill helps you create database migration files that follow your project's ORM conventions and naming patterns.
First, identify which ORM or migration tool the project uses:
prisma/schema.prisma or @prisma/client in package.json.sequelizerc or sequelize-cli in package.jsonknexfile.js or knex in package.jsonormconfig.json or typeorm in package.jsonalembic.ini or alembic/ directorymanage.py and Django migrations in */migrations/db/migrate/ directoryflyway.conf or db/migration/liquibase.properties or changelog filesUse Glob to search for these indicator files.
Read existing migration files to understand:
Use Grep to find recent migrations: look in common directories like:
prisma/migrations/db/migrate/migrations/ or database/migrations/alembic/versions/Based on the detected ORM, create an appropriate migration file:
npx prisma migrate dev --name <description> ORprisma/migrations/<timestamp>_<name>/migration.sqlnpx sequelize-cli migration:generate --name <description>npx knex migrate:make <description>npm run typeorm migration:create src/migrations/<Name>alembic revision -m "<description>"python manage.py makemigrations<app>/migrations/rails generate migration <ClassName>Use consistent, descriptive names:
add_user_email_index, create_products_table, add_payment_status_to_ordersmigration1, update, fixFormat based on project patterns:
20231215120000_add_email_to_users001_create_users, 002_add_indexesAlways provide both directions when supported:
For ORMs that use reversible operations (Rails, some Sequelize), a single change method may be sufficient.
Creating Tables:
Altering Tables:
ADD COLUMN, DROP COLUMN, MODIFY COLUMNAdding Indexes:
idx_users_email, idx_orders_user_id_created_atData Migrations:
Before finalizing, check:
Suggest to the user:
Reference the templates in templates/ directory:
prisma-migration.sql - Prisma migration examplesequelize-migration.js - Sequelize migration exampleknex-migration.js - Knex migration exampletypeorm-migration.ts - TypeORM migration examplealembic-migration.py - Alembic migration examplerails-migration.rb - Rails migration exampletemplates/: Migration templates for various ORMsreference.md: Naming conventions and migration patternsdevelopment
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.