Agent skill · Databases

appmigrationkit

Transfer app data to or from other platforms using AppMigrationKit. Use when implementing system-orchestrated one-time migration between iOS and Android or another platform, building an AppMigrationExtension, packaging transportable resources with ResourcesArchiver, importing resources on the destination device, reporting import progress, handling migration errors and app group cleanup, checking MigrationStatus, or testing migration code with AppMigrationTester.

Derek Pearson935★ · +23/wk · 1 repos on radarProfile →
claude-codecodexcursorNOASSERTION
Install
npx skills add dpearson2699/swift-ios-skills --skill appmigrationkit --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 3
SKILL.md size: 18 KB
Bundled scripts: none
Path: skills/appmigrationkit/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 963 · +28 this week
Language: Python
Read our review of the source →

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# AppMigrationKit One-time cross-platform data transfer for app resources. Enables apps to export data to or import data from another platform (for example, Android) during device setup or onboarding. AppMigrationKit APIs are iOS 26.0+ / iPadOS 26.0+; the data-container entitlement is iOS 26.1+ / iPadOS 26.1+ / Mac Catalyst 26.1+. Swift 6.3. > **Beta-sensitive.** AppMigrationKit is new in iOS 26 and may change before GM. > Re-check current Apple documentation before relying on specific API details. AppMigrationKit uses an app extension model. The system orchestrates the transfer between devices. The app provides an extension conforming to export and import protocols, and the system calls that extension at the appropriate time. The app itself never manages the network connection between devices. ## Contents - [Architecture Overview](#architecture-overview) - [Setup and Entitlements](#setup-and-entitlements) - [App Migration Extension](#app-migration-extension) - [Exporting Resources](#exporting-resources) - [Importing Resources](#importing-resources) - [Migration Status](#migration-status) - [Progress Tracking](#progress-tracking) - [Testing](#testing) - [Common Mistakes](#common-mi

What's inside
Steps it walks through
  1. Contents
  2. Architecture Overview
  3. Setup and Entitlements
  4. Entitlement
  5. Extension Target
  6. App Migration Extension
  7. Accessing the Data Container
  8. Exporting Resources
  9. Declaring Export Properties
  10. Implementing Export
  11. Cancellation
  12. Migration Platform
  13. Importing Resources
  14. Error Handling During Import
Ships with 2 files
  • evals/evals.json
  • references/appmigrationkit-patterns.md
More from swift-ios-skills
All skills →
About this skill
What does the appmigrationkit skill do?

Transfer app data to or from other platforms using AppMigrationKit. Use when implementing system-orchestrated one-time migration between iOS and Android or another platform, building an AppMigrationExtension, packaging transportable resources with ResourcesArchiver, importing resources on the destination device, reporting import progress, handling migration errors and app group cleanup, checking MigrationStatus, or testing migration code with AppMigrationTester.

How do I install it?

Run `npx skills add dpearson2699/swift-ios-skills --skill appmigrationkit --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From dpearson2699/swift-ios-skills, a repository with 963 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going