---
title: Migration Guides
description: Move your existing durable workflow system to the Workflow SDK with side-by-side code comparisons and a realistic migration example.
type: overview
summary: Migrate from Temporal, Inngest, AWS Step Functions, or trigger.dev to the Workflow SDK.
related:
  - /docs/foundations/workflows-and-steps
  - /docs/getting-started
---

# Migration Guides



<Callout type="info">
  Install the Workflow SDK migration skill:

  ```bash
  npx skills add https://github.com/vercel/workflow --skill migrating-to-workflow-sdk
  ```
</Callout>

Move an existing orchestration system to the Workflow SDK. Each guide pairs a concept-mapping table with side-by-side code, so you can translate one piece of your codebase at a time.

<Cards>
  <Card href="/docs/migration-guides/migrating-from-temporal" title="Migrating from Temporal">
    Map Activities, Workers, Signals, and Child Workflows onto workflows, steps, hooks, and `start()` / `getRun()`.
  </Card>

  <Card href="/docs/migration-guides/migrating-from-inngest" title="Migrating from Inngest">
    Map `createFunction`, `step.run`, `step.sleep`, `step.waitForEvent`, and `step.invoke` onto workflows, steps, and hooks.
  </Card>

  <Card href="/docs/migration-guides/migrating-from-aws-step-functions" title="Migrating from AWS Step Functions">
    Replace ASL JSON states, Task / Choice / Wait / Parallel states, and `.waitForTaskToken` callbacks with TypeScript.
  </Card>

  <Card href="/docs/migration-guides/migrating-from-trigger-dev" title="Migrating from trigger.dev">
    Map `task()`, `schemaTask()`, `wait.for` / `wait.forToken`, `triggerAndWait`, and `metadata.stream` onto workflows, steps, hooks, and `start()` / `getRun()`.
  </Card>
</Cards>


## Sitemap
[Overview of all docs pages](/sitemap.md)
