fvtt-data-migrations

Migrate Foundry VTT module data structures with versioned, idempotent workflows.

1|Updated Jan 4, 2026
One-click install
npx skills add https://github.com/ImproperSubset/hh-agentics --skill fvtt-data-migrations
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fvtt-data-migrations
Source: https://github.com/ImproperSubset/hh-agentics/tree/main/fvtt-dev/skills/fvtt-data-migrations
Command: npx skills add https://github.com/ImproperSubset/hh-agentics --skill fvtt-data-migrations

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps you implement safe, version-controlled migrations for Foundry VTT modules when changing data structures or storage locations, ensuring data integrity across updates.

Core Features & Use Cases

  • Safe migration patterns for moving data between storage locations, transforming data structures, renaming fields, and removing deprecated data.
  • Schema-versioned migrations with an idempotent workflow that runs once per world.
  • Batch updates and robust testing, with utilities and patterns for handling embedded documents, flags, and system fields.

Quick Start

Trigger migrations by calling Migration.migrate() in the browser console or reloading a world to run the ready hook. This guides you through validating old-to-new data mappings and verifying that the schemaVersion increments correctly.

Frequently Asked Questions about fvtt-data-migrations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate Foundry VTT module data structures across schema versions?

To migrate Foundry VTT module data structures across schema versions, use a versioned, idempotent migration flow triggered by calling Migration.migrate() or reloading a world to run the ready hook. This ensures data integrity by validating old-to-new mappings and incrementing the schemaVersion correctly.

What is the safest way to handle Foundry VTT data migration for embedded documents and flags?

Foundry VTT data migration for embedded documents and flags is handled safely by applying schema-versioned patterns that batch updates and provide user feedback. This approach transforms data structures, renames fields, and removes deprecated data while ensuring updates run only once per world.

How do I trigger a Foundry VTT data migration in the browser console?

Trigger a Foundry VTT data migration in the browser console by calling Migration.migrate() directly. Alternatively, reloading a world runs the ready hook to initiate the migration flow, guiding you through validating data mappings and verifying schemaVersion increments.

Does Foundry VTT data migration work with batch updates and idempotent workflows?

Yes, Foundry VTT data migration supports batch updates and idempotent workflows to ensure data integrity. The migration flow runs exactly once per world, batching document updates and providing user feedback while safely moving data between storage locations.

Why does my Foundry VTT module migration run repeatedly instead of once per world?

Foundry VTT module migrations run repeatedly if the schema version is not incrementing correctly. The idempotent workflow requires validating old-to-new data mappings and ensuring the schemaVersion updates properly so the migration flow executes only once per world.