mcpField
M
migrate

migrate

github.com/parcadeiDevelopment3.9k483 installsUpdated 40w ago
Repository

About migrate

migrate is a workflow skill for framework, language, database, and infrastructure migrations. It coordinates research, codebase analysis, planning, implementation, and review, with options for phased runs and dry runs.

Key features

  1. 01Research migration targets
  2. 02Analyze codebase impact
  3. 03Create phased migration plans
  4. 04Implement migration changes
  5. 05Review migration completeness
  6. 06Run selected phases or dry runs

Use cases

  1. 01Upgrade a framework between versions
  2. 02Move a codebase to another language version
  3. 03Migrate a database and transform data
  4. 04Plan infrastructure changes between providers

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/parcadei/continuous-claude-v3 --skill migrate

After installing, type/migratein Claude Code to confirm it loaded.

Details

From the project README

/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

#AgentRoleOutput
1oracleResearch target framework/versionResearch report
2phoenixAnalyze current codebase for migration impactImpact analysis
3plan-agentCreate phased migration planMigration plan
4krakenImplement migration changesCode changes
5surveyorReview migration for completenessMigration 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)

Comments

Markdown supported