# vercel/workflow

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/vercel-workflow).**

1,718 stars · 191 forks · TypeScript · apache-2.0

## Links

- GitHub: https://github.com/vercel/workflow
- Homepage: https://useworkflow.dev
- awesome-repositories: https://awesome-repositories.com/repository/vercel-workflow.md

## Description

Workflow is a platform for executing long-running, stateful processes that automatically persist progress and recover state after system interruptions. It functions as a durable orchestration engine designed to manage complex, multi-step asynchronous operations within distributed systems.

The framework distinguishes itself through event-sourcing and checkpointing mechanisms that record execution steps as an immutable log, allowing for precise state reconstruction after failures. It provides sandboxed task isolation to run side-effect-heavy logic in restricted environments, ensuring that sensitive operations do not interfere with the broader orchestration flow.

The system includes comprehensive capabilities for fault-tolerant process automation, including declarative retry policies that handle task failures based on defined error rules. It also integrates observability tools that propagate trace metadata across service boundaries, providing visibility into the lifecycle and health of background tasks.

The project provides tools for bundling workspace components into deployable artifacts to facilitate consistent release management and verification.

## Tags

### DevOps & Infrastructure

- [Durable Task Orchestrators](https://awesome-repositories.com/f/devops-infrastructure/automation-orchestration/task-execution-frameworks/workflow-engines/durable-task-orchestrators.md) — Orchestrates reliable multi-step processes that automatically save progress and resume execution after failures.
- [State Workflow Orchestrators](https://awesome-repositories.com/f/devops-infrastructure/cicd-pipeline-automation/workflow-orchestration/state-workflow-orchestrators.md) — Coordinates sequences of state transitions and asynchronous tasks by replaying event logs. ([source](https://github.com/vercel/workflow/blob/main/AGENTS.md))
- [Execution Context Isolation](https://awesome-repositories.com/f/devops-infrastructure/dependency-management/environment-scoping-controls/dependency-scoping/execution-context-isolation.md) — Isolates sensitive logic within specific execution flows to prevent unintended interference between components. ([source](https://github.com/vercel/workflow/blob/main/AGENTS.md))
- [Distributed Task Schedulers](https://awesome-repositories.com/f/devops-infrastructure/distributed-task-schedulers.md) — Dispatches and manages asynchronous multi-step operations across distributed computing environments.

### Software Engineering & Architecture

- [Durable Execution Persistence](https://awesome-repositories.com/f/software-engineering-architecture/durable-execution-persistence.md) — Saves workflow state to external storage to ensure recoverability after system failures.
- [Durable Workflow Engines](https://awesome-repositories.com/f/software-engineering-architecture/durable-workflow-engines.md) — Executes long-running, stateful processes that persist progress across infrastructure failures.
- [Event Sourcing](https://awesome-repositories.com/f/software-engineering-architecture/event-state-persistence/event-sourcing.md) — Persists all changes to application state as an immutable sequence of events to enable complete recovery.
- [Retry Policies](https://awesome-repositories.com/f/software-engineering-architecture/retry-policies.md) — Implements configurable retry strategies with backoff logic to handle transient failures in long-running asynchronous tasks. ([source](https://github.com/vercel/workflow/blob/main/AGENTS.md))
- [Retry Policies](https://awesome-repositories.com/f/software-engineering-architecture/error-handling/retry-policies.md) — Provides configurable strategies for automatically re-executing tasks upon encountering transient failures.
- [Fault Tolerance](https://awesome-repositories.com/f/software-engineering-architecture/fault-tolerance.md) — Manages failures and ensures resilience in distributed applications through automated retry policies.

### Development Tools & Productivity

- [Task Sandboxing](https://awesome-repositories.com/f/development-tools-productivity/execution-sandboxes/task-sandboxing.md) — Isolates task execution environments to prevent side effects from leaking into the main orchestration logic.
- [Sandboxed Execution Environments](https://awesome-repositories.com/f/development-tools-productivity/sandboxed-execution-environments.md) — Provides isolated computing environments for safely running sensitive or side-effect heavy logic.

### Networking & Communication

- [Distributed Trace Propagation](https://awesome-repositories.com/f/networking-communication/distributed-trace-propagation.md) — Maintains trace context across service boundaries using standard headers for end-to-end visibility.
- [Tracing Context Propagation](https://awesome-repositories.com/f/networking-communication/tracing-context-propagation.md) — Injects tracing headers into outgoing network requests to maintain end-to-end visibility. ([source](https://github.com/vercel/workflow/blob/main/AGENTS.md))

### System Administration & Monitoring

- [Distributed Observability Platforms](https://awesome-repositories.com/f/system-administration-monitoring/distributed-observability-platforms.md) — Provides a unified platform for monitoring complex application workflows across distributed service boundaries.
- [Execution Observability](https://awesome-repositories.com/f/system-administration-monitoring/execution-observability.md) — Provides tools for inspecting and managing the lifecycle and health of automated processes. ([source](https://github.com/vercel/workflow#readme))
- [Observability Tracing](https://awesome-repositories.com/f/system-administration-monitoring/observability-tracing.md) — Records execution spans and traces across distributed components to monitor task lifecycles.
