dbmate

scriptabledatabase
$ brew install dbmate
Summary

SQL migrations, simple db workflows, and multiple databases from the terminal.

  • dbmate fits data & db well, especially for sql migrations, simple db workflows, and multiple databases from the terminal.
  • 524 homebrew installs (30d).
  • Easy to automate.
  • Good fit for coding-agent workflows and repeatable scripts.
  • Output is mostly text-first, so verify results before scripting around it.
database-dbmate-SKILL.md

Dbmate guide

SQL migrations, simple db workflows, and multiple databases from the terminal. Built by amacneil.

Open CLI packages the install path, verify step, and safe-start workflow so this tool can move from “interesting CLI” to something you can actually use. It also integrates with skills.sh so each CLI comes with the right companion skills, not just a binary and a docs link.

When to apply

  • sql migrations, simple db workflows, and multiple databases from the terminal.
  • You need databases in both local dev and CI.
  • You need sql migrations.
  • You need simple db workflows.
  • You need multiple databases.

Quick reference

Installbrew install dbmate
Verifydbmate --version
First real commanddbmate new create_users_table

Open CLI × skills.sh

Open CLI integrates dbmate with the right skills.sh companions so you get the tool and the workflow together.

Database Schema Design

Recommended pairing

Open CLI recommends this skills.sh skill because it fits database workflows. Use better schema and migration decisions when a CLI touches databases.

View on skills.sh
$ npx skills add https://github.com/supercent-io/skills-template --skill database-schema-design
Starter prompt

Use dbmate together with the Database Schema Design skills.sh skill. Inspect the current schema or data first, summarize what matters, and ask before any migration or write action.

Why this tool

  • dbmate fits data & db well, especially for sql migrations, simple db workflows, and multiple databases from the terminal.
  • 524 homebrew installs (30d).
  • Easy to automate.

Watch-outs

  • Output is mostly plain text.
  • Start with read-only or dry-run commands.

Example workflow

1. dbmate new create_users_table

Safe start

Step 1

Install dbmate.

Step 2

Run `dbmate --version` first.

Step 3

Start with `dbmate new create_users_table`.

Step 4

Install a CLI that matches your database engine.

Alternatives worth considering