migrate

parcadei's avatarfrom parcadei

Migration workflow - research → analyze → plan → implement → review

⭐2.2kstars🔀157forks📁View on GitHub🕐Updated Jan 10, 2026

When & Why to Use This Skill

The Migrate skill is a sophisticated multi-agent workflow designed to automate high-risk technical migrations across frameworks, languages, and infrastructure. By orchestrating a sequence of specialized agents—Oracle for research, Phoenix for impact analysis, Plan-Agent for strategy, Kraken for implementation, and Surveyor for review—it provides a structured and safe environment for modernizing software. This skill is essential for developers and engineering teams looking to reduce technical debt, handle breaking changes efficiently, and ensure architectural consistency during complex transitions.

Use Cases

  • Framework Upgrades: Automate the transition between major versions (e.g., React 17 to 18) by identifying deprecated APIs and implementing new patterns.
  • Language Versioning: Seamlessly migrate codebases to newer language specifications (e.g., Python 3.9 to 3.12) while maintaining compatibility and performance.
  • Database Migration: Facilitate the move between different database engines (e.g., MongoDB to PostgreSQL) including schema redesign and data transformation logic.
  • Cloud Infrastructure Shifts: Manage the migration of services between cloud providers (e.g., AWS to GCP) with automated configuration translation and service mapping.
  • Large-scale Refactoring: Execute complex, phased code improvements with built-in risk assessment, automated testing, and rollback strategies.
namemigrate
descriptionMigration workflow - research → analyze → plan → implement → review

/migrate - Migration Workflow

Safe migrations for frameworks, languages, and infrastructure.

When to Use

  • "Migrate to X"
  • "Upgrade framework"
  • "Move from X to Y"
  • "Upgrade Python/Node/etc."
  • "Migrate database"
  • Framework version upgrades
  • Language migrations
  • Infrastructure changes

Workflow Overview

┌──────────┐    ┌──────────┐    ┌────────────┐    ┌──────────┐    ┌───────────┐
│  oracle  │───▶│ phoenix  │───▶│   plan-    │───▶│  kraken  │───▶│ surveyor  │
│          │    │          │    │   agent    │    │          │    │           │
└──────────┘    └──────────┘    └────────────┘    └──────────┘    └───────────┘
  Research       Analyze          Plan             Implement       Review
  target         current          migration        changes         migration

Agent Sequence

# Agent Role Output
1 oracle Research target framework/version Research report
2 phoenix Analyze current codebase for migration impact Impact analysis
3 plan-agent Create phased migration plan Migration plan
4 kraken Implement migration changes Code changes
5 surveyor Review migration for completeness Migration review

Why Extra Gates?

Migrations are high-risk:

  • Breaking changes between versions
  • Dependency conflicts
  • Data format changes
  • API deprecations

The extra research and review phases catch issues early.

Execution

Phase 1: Research Target

Task(
  subagent_type="oracle",
  prompt="""
  Research migration target: [TARGET]

  Investigate:
  - Breaking changes from current version
  - New APIs and patterns
  - Deprecated features we use
  - Migration guides from official docs
  - Common pitfalls and solutions

  Output: Migration research report
  """
)

Phase 2: Analyze Current State

Task(
  subagent_type="phoenix",
  prompt="""
  Analyze codebase for migration: [FROM] → [TO]

  Identify:
  - Files using deprecated APIs
  - Dependency conflicts
  - Patterns that need updating
  - Test coverage of affected areas
  - Risk areas (critical paths)

  Output: Impact analysis with affected files
  """
)

Phase 3: Plan Migration

Task(
  subagent_type="plan-agent",
  prompt="""
  Create migration plan: [FROM] → [TO]

  Research: [from oracle]
  Impact: [from phoenix]

  Plan should:
  - Be phased (incremental if possible)
  - Each phase independently testable
  - Include rollback strategy
  - Prioritize critical path stability

  Output: Phased migration plan
  """
)

Phase 4: Implement

Task(
  subagent_type="kraken",
  prompt="""
  Implement migration phase: [PHASE_N]

  Plan: [from plan-agent]

  Requirements:
  - Follow plan exactly
  - Run tests after each change
  - Document any deviations
  - Stop if tests fail

  Output: Completed phase with test results
  """
)

Phase 5: Review Migration

Task(
  subagent_type="surveyor",
  prompt="""
  Review migration: [FROM] → [TO]

  Check:
  - All deprecated APIs replaced
  - No remaining compatibility shims
  - Tests passing
  - Performance acceptable
  - No security regressions

  Output: Migration review report
  """
)

Migration Types

Framework Upgrade

User: /migrate React 17 → 18
→ Full workflow with hooks/concurrent mode changes

Language Version

User: /migrate Python 3.9 → 3.12
→ Focus on new syntax, removed features

Database Migration

User: /migrate MongoDB → PostgreSQL
→ Schema design, data transformation, query rewrite

Infrastructure

User: /migrate AWS → GCP
→ Service mapping, config translation

Example

User: /migrate from Express to Fastify

Claude: Starting /migrate workflow: Express → Fastify

Phase 1: Researching Fastify...
[Spawns oracle]
Key differences:
- Schema-based validation (vs middleware)
- Plugin architecture
- Async/await native
- Different middleware pattern

Phase 2: Analyzing current Express usage...
[Spawns phoenix]
Impact analysis:
- 23 route files to update
- 8 middleware to convert
- 3 plugins need Fastify equivalents
- Test coverage: 78%

Phase 3: Creating migration plan...
[Spawns plan-agent]

Migration Plan: Express → Fastify
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Phase 1: Setup & Core
- Add Fastify alongside Express
- Migrate core server setup
- Run both in parallel

Phase 2: Routes (by domain)
- Migrate auth routes
- Migrate user routes
- Migrate product routes
- ...

Phase 3: Middleware
- Convert error handler
- Convert auth middleware
- Convert logging

Phase 4: Cleanup
- Remove Express
- Remove compatibility layer
- Final testing

Rollback: Keep Express until Phase 4 complete

Phase 4: Implementing Phase 1...
[Spawns kraken]
✅ Fastify server running alongside Express
✅ Core routes migrated
✅ Tests passing

[Continues through phases...]

Phase 5: Reviewing migration...
[Spawns surveyor]
✅ All Express code removed
✅ 23/23 routes migrated
✅ Performance improved (2.1x faster)
✅ No security regressions

Migration complete! Express → Fastify

Incremental Migration

For large codebases, run one phase at a time:

User: /migrate React 17 → 18 --phase 1
[Runs only Phase 1]

User: /migrate React 17 → 18 --phase 2
[Runs Phase 2, reads previous handoff]

Flags

  • --phase N: Run specific phase only
  • --dry-run: Plan without implementing
  • --rollback: Execute rollback plan
  • --parallel: Run new alongside old (strangler fig)