> ## Documentation Index
> Fetch the complete documentation index at: https://openworkflow.dev/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> ### When to use OpenWorkflow
>
> Use OpenWorkflow in TypeScript or JavaScript apps for:
>
> - Background jobs that need retries and must resume after a crash or deploy.
> - Multi-step integrations and data pipelines that need to save progress between operations.
> - AI workflows with multiple model or tool calls that need durable checkpoints.
> - Workflows that wait for a human approval, a webhook, or a timer before continuing.
>
> OpenWorkflow runs on Node.js 22.5+ or Bun, with PostgreSQL or SQLite storing workflow state. Your app enqueues runs, and a worker executes them.
>
> ### How to use OpenWorkflow
>
> Read and follow https://openworkflow.dev/skills/setup.md to set up OpenWorkflow.
>
> Define workflows with `defineWorkflow`, wrap operations in `step.run`, and enqueue runs with `ow.runWorkflow(workflow.spec, input)`. Start a worker with `npx @openworkflow/cli worker start` to execute them. See [Workflows](https://openworkflow.dev/docs/workflows.md), [Steps](https://openworkflow.dev/docs/steps.md), and [Signals](https://openworkflow.dev/docs/signals.md) for the APIs.

# About OpenWorkflow

> Why OpenWorkflow exists, how it runs durable workflows, and how to contribute to the open-source project

## Why OpenWorkflow exists

A background job can finish several operations before a crash stops it.
Restarting the whole job can repeat work that already succeeded. OpenWorkflow
saves progress between steps so your code can resume after a crash or deploy.

You write workflows in TypeScript or JavaScript and wrap operations in steps.
Workers execute them and save the results in PostgreSQL or SQLite. Workflows can
retry failed steps, pause on a timer, or wait for a signal before continuing.
Your application and workers connect directly to your database, so you can run
OpenWorkflow on your own infrastructure.

Use it for background jobs, multi-step integrations, data pipelines, and AI
workflows that need to keep their progress. The [Quick Start](/docs/quickstart)
walks through running a workflow locally, and the [overview](/docs/overview)
explains how workflows, steps, and workers fit together.

## An open-source project

OpenWorkflow is developed on
[GitHub](https://github.com/openworkflowdev/openworkflow) under the [Apache-2.0
license](https://github.com/openworkflowdev/openworkflow/blob/main/LICENSE.md).
The repository includes the workflow engine, CLI, dashboard, documentation, and
examples. Bugs, feature proposals, and code changes are discussed there.

Contributions can be code, documentation fixes, bug reports, or feedback from
using OpenWorkflow. Read the [contribution
guide](https://github.com/openworkflowdev/openworkflow/blob/main/CONTRIBUTING.md)
before starting a change, and check the [roadmap](/docs/roadmap) for planned
work. See [Contact](/contact) for where to ask questions or report a problem.
