data-migration

data-migration is a skill for Claude Code from avmnu-sng/sutra. It costs 50 tokens per session (1,972 once invoked), scanned A, original, MIT.

A guide for changing database structures or moving existing data while a live application continues running. It uses expand-and-contract steps, where old and new data formats work together temporarily.

In plain words
What is it for?
Use it when adding, renaming, splitting, or removing fields or tables, changing data types, backfilling rows, transforming records, or moving data between stores.
Why use it?
It reduces outages, corrupted data, and failed deployments caused by making a breaking database change in one step.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the sutra plugin — 19 skills, 4 agents, 2 hooks shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/avmnu-sng/sutra/data-migration
Any agent
npx skills add avmnu-sng/sutra --skill data-migration
Clone the repo
git clone --depth 1 https://github.com/avmnu-sng/sutra

Made for: Claude Code.

Or install sutra, the plugin that ships this one along with the rest of its 19 skills, 4 agents, 2 hooks.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for data-migration

README.md
[![agentmods](https://agentmods.dev/badge/skills/avmnu-sng/sutra/data-migration.svg)](https://agentmods.dev/skills/avmnu-sng/sutra/data-migration)
Your own site
<a href="https://agentmods.dev/skills/avmnu-sng/sutra/data-migration"><img src="https://agentmods.dev/badge/skills/avmnu-sng/sutra/data-migration.svg" alt="Measured on agentmods" height="20"></a>
Per session 50 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,972 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00050 $0.01972
Opus 5 $0.00025 $0.00986
Sonnet 5 $0.00010 $0.00394
Haiku 4.5 $0.00005 $0.00197

Measured 5d ago against content hash 9b1b74e4436d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

data-migration scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/sutra/skills/data-migration/SKILL.md · 158 lines

How it starts

The opening of the file, as written. The whole thing — 158 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Data migration

A schema change or data migration against a live system is production-outage grade work. One blocking ALTER on a hot table, one unbounded UPDATE, one rename that ships ahead of the code that reads it -- any of these stalls or corrupts a running service, and the blast radius is every request in flight. Treat every such change as high-stakes and irreversible until proven otherwise.

The governing move is to never make a breaking change in one step. Split it into a sequence of small, individually deployable, individually reversible steps where old code and new code coexist at every point. That sequence is expand / contract (parallel change).

When to use / When not to

  • Use for any change to a live store's shape or contents: adding, renaming, splitting, or dropping a column/table/field; changing a type or constraint; re-keying; backfilling or transforming existing rows; moving data between stores.
  • Do not use for a fresh table or store nothing reads yet (no coexistence problem), or for a change fully gated behind a migration window with the system offline and a tested restore path. Even then, keep the batching and integrity checks below.

Why this is a T3-floor task

A data migration is one of the named triggers that forces the T3 verification floor in /sutra:effort-calibration, no matter how small the diff looks. A one-line DROP COLUMN is still T3: the stakes, not the line count, set the floor. Bring the full floor -- a rehearsed rollback, an independent reviewer, and a gate that re-runs the integrity checks -- and cut breadth elsewhere if you need to save energy. This work also sits under the strict-profile safety guardrails: never run a destructive command on a hunch, confirm the target, and prefer the reversible path.

The four phases

Each phase is a separate, deployable, reversible step. Ship it, watch it settle, then start the next. Never collapse two phases into one deploy.

1. Expand -- add the new shape additively

Read the full file on GitHub · 158 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 158 lines · 50 tokens per session scan A 9b1b74e4436d

Subscribe to this mod's changes

data-migration is a skill published in the GitHub repository avmnu-sng/sutra (2 stars, last pushed 1mo ago), licensed MIT. It adds 50 tokens to every session and 1,972 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

postgres-database-migration

Use this skill for planning, testing, and safely executing PostgreSQL schema migrations — especially when working with production data or shared databases. Trigger when user asks to: Test a schema migration before applying it to production Add, remove, or rename columns safely on a live table Change a column's data…

timescale/pg-aiguide · 220 tokens

design-postgis-tables

Comprehensive PostGIS spatial table design reference covering geometry types, coordinate systems, spatial indexing, and performance patterns for location-based applications.

timescale/pg-aiguide · 31 tokens

pgvector-semantic-search

Use this skill for setting up vector similarity search with pgvector for AI/ML embeddings, RAG applications, or semantic search. Trigger when user asks to: Store or search vector embeddings in PostgreSQL Set up semantic search, similarity search, or nearest neighbor search Create HNSW or IVFFlat indexes for vectors…

timescale/pg-aiguide · 190 tokens

setup-timescaledb-hypertables

Use this skill when creating database schemas or tables for Timescale, TimescaleDB, TigerData, or Tiger Cloud, especially for time-series, IoT, metrics, events, or log data. Use this to improve the performance of any insert-heavy table. Trigger when user asks to: Create or design SQL schemas/tables AND…

timescale/pg-aiguide · 219 tokens

postgres-hybrid-text-search

Use this skill to implement hybrid search combining BM25 keyword search with semantic vector search using Reciprocal Rank Fusion (RRF). Trigger when user asks to: Combine keyword and semantic search Implement hybrid search or multi-modal retrieval Use BM25/pgtextsearch with pgvector together Implement RRF (Reciprocal…

timescale/pg-aiguide · 162 tokens

find-hypertable-candidates

Use this skill to analyze an existing PostgreSQL database and identify which tables should be converted to Timescale/TimescaleDB hypertables. Trigger when user asks to: Analyze database tables for hypertable conversion potential Identify time-series or event tables in an existing schema Evaluate if a table would…

timescale/pg-aiguide · 184 tokens