motoko-base-to-core-migration

Migrate Motoko projects from mo:base to mo:core with structured phases.

Updated Mar 19, 2026
One-click install
npx skills add https://github.com/research-ag/motoko-skills --skill motoko-base-to-core-migration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: motoko-base-to-core-migration
Source: https://github.com/research-ag/motoko-skills/tree/main/skills/base-core-migration
Command: npx skills add https://github.com/research-ag/motoko-skills --skill motoko-base-to-core-migration

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Migrate Motoko mo:base projects to mo:core using a structured, phase-driven playbook that covers renames, data-structure migrations, and upgrade workflows, enabling safer, scalable migrations.

Core Features & Use Cases

  • Phase-driven migration across multiple canisters, including import path changes, type migrations, and persistence strategy adjustments.
  • Data-structure migrations (Buffer to List, HashMap/TrieMap to Map, TrieSet to Set) with in-place mutations and verification steps.
  • Persistent actor upgrade path with guidance for maintaining state across upgrades and a production rollout plan.
  • Verification and upgrade-testing templates to ensure builds succeed and interfaces remain compatible.
  • Use Case: Migrating a Motoko project from mo:base to mo:core with zero downtime and preserved canister state.

Quick Start

Read the migration playbook and apply the six-phase plan to migrate your Motoko project from mo:base to mo:core by following the documented steps.

Frequently Asked Questions about motoko-base-to-core-migration

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

FAQPage Schema
How do I migrate a Motoko project from mo:base to mo:core?

To migrate a Motoko project from mo:base to mo:core, apply a structured six-phase playbook covering mechanical import renames, data-structure migrations, and persistent actor upgrades. This workflow ensures deterministic upgrade practices and preserves canister state.

What is the best way to handle Motoko data-structure migrations during a mo:core upgrade?

Handling Motoko data-structure migrations requires mapping existing structures to new equivalents, such as Buffer to List, HashMap or TrieMap to Map, and TrieSet to Set. The process includes in-place mutations and verification steps to maintain data integrity.

Can I preserve canister state when upgrading Motoko actors to mo:core?

Yes, you can preserve canister state when upgrading Motoko actors to mo:core by following the persistent actor upgrade path. This strategy enforces deterministic upgrade practices and provides build and audit steps to maintain state across upgrades.

Does the mo:base to mo:core migration workflow support multiple canisters?

The mo:base to mo:core migration workflow supports phase-driven migration across multiple canisters. It defines acceptance criteria for safe deployments and includes a production rollout plan to ensure zero downtime deployments.

How do I verify a Motoko canister upgrade after migrating imports to mo:core?

To verify a Motoko canister upgrade after migrating imports to mo:core, use the provided verification and upgrade-testing templates. These templates ensure builds succeed, interfaces remain compatible, and acceptance criteria are met before production rollout.

Why do I need a phase-driven plan for mo:base to mo:core migration?

A phase-driven plan for mo:base to mo:core migration is needed to safely manage mechanical import renames, data-structure conversions, and persistent state adjustments. It enforces deterministic upgrade practices and defines audit steps to prevent state loss.