Common Workflow Language (CWL) – Portable Scientific Workflow Standard
The Common Workflow Language (CWL) is an open standard for describing command-line tools and connecting them into computational workflows. It provides a machine-readable way to specify workflow steps, inputs, outputs, parameters, and relationships between operations.
CWL is designed to make data-intensive analysis workflows portable, reusable, and reproducible across compatible computing environments, from individual workstations to cloud platforms and high-performance computing (HPC) systems.
Key capabilities include:
- Tool description: Define command-line tools, their required inputs, parameters, outputs, and execution requirements.
- Workflow composition: Connect multiple tools into a directed workflow in which the output of one step can become the input of another.
- Parameterization: Describe inputs and settings separately from the workflow definition.
- Portability: Enable compatible workflow runners to interpret and execute the same workflow description across different supported environments.
- Reproducibility: Document processing steps, tool requirements, and workflow structure.
- Scalability: Support execution environments ranging from local computers to clusters and cloud or HPC infrastructure, depending on the runner.