.CWL file extension
To open .CWL files on Windows, if you want to run the workflow, install a CWL runner such as the cwltool reference implementation, then run it from a terminal with your .cwl file (and any required input object file).
To open a .cwl file, use a CWL runner (most commonly the cwltool reference implementation) to validate and execute the workflow/tool description. If you just want to read it, you can open it in a text editor because CWL documents are written as structured text (commonly YAML or JSON).
Last updated: April 30, 2026 · Reviewed by Julian Stricker
Open on your device
Choose your operating system for a dedicated step-by-step opening guide.
How to open .CWL files
Use these platform-specific instructions to open .CWL files safely.
Windows
- If you want to run the workflow, install a CWL runner such as the cwltool reference implementation, then run it from a terminal with your .cwl file (and any required input object file).
- If you only need to read/edit it, open the .cwl file in a plain-text editor (CWL documents are typically YAML or JSON).
- If you’re unsure which runner to use, consult the official CWL “Implementations” list and pick an executor that matches your environment.
Mac
- To execute the .cwl document, use a CWL runner such as cwltool and run it from Terminal with the .cwl file (plus required input parameters).
- To inspect or edit, open the .cwl file in a text editor (it is structured text, commonly YAML/JSON).
- If execution fails, verify your runner supports the CWL version declared by the document and consider another executor from the official implementations list.
Linux
- Install and run a CWL executor (commonly the cwltool reference implementation) and execute the workflow/tool using the .cwl file and required input object file.
- Open the .cwl file in a text editor if you just need to view or edit its YAML/JSON content.
- Use the official CWL implementations list to choose an alternative runner if needed (for example, if you need different execution backends).
iOS
- iOS typically does not run CWL workflows natively; open the .cwl file in a text/code viewer to read it, or transfer it to a desktop/Linux environment to execute it with a CWL runner.
Android
- Android typically does not run CWL workflows natively; open the .cwl file in a text/code viewer to read it, or move it to a desktop/Linux environment to execute it with a CWL runner.
Security notes
- Treat .cwl files as executable instructions: running a CWL workflow can execute command line tools and may read/write files, so only run workflows from sources you trust.
- Review the workflow steps and any referenced scripts/tools/containers before execution, especially if the workflow pulls external images or runs unfamiliar commands.
- Be cautious when running CWL documents in environments with access to sensitive files or credentials; workflows can be written to access and exfiltrate data if executed with broad permissions.
Recommended antivirus software
Scan files before opening them. These antivirus tools help protect against malware and viruses.
Avast offers free and premium antivirus software that protects against viruses, malware, ransomware, and phishing. Scan files before opening them to ensure safety.
NortonNorton 360 delivers comprehensive antivirus protection, VPN, and identity theft monitoring. Scan files for threats before opening to keep your device secure.
We may earn a commission when you use affiliate links. This supports our free file extension guides.
Can't open this file?
These are the most common causes and fixes when .CWL files fail to open.
Common reasons
- The .CWL file opens as text but does not “run”
- Runner reports validation errors or “unsupported CWL version”
- Workflow starts but fails due to missing tools, paths, or containers
- File association confusion (opens in the wrong app)
Fix steps
- Run the file using a CWL executor (for example, the cwltool reference implementation) rather than double-clicking it.
- Check whether the workflow expects a separate input parameters file (often YAML/JSON) and provide it when running.
- Ensure the referenced command line tools or containers are available in your environment.
OS-specific troubleshooting
What is a .CWL file?
A .cwl file is a Common Workflow Language document that formally describes a command line tool or a workflow, including inputs, outputs, and how steps connect. CWL is an open standard designed to make computational workflows portable and reproducible across environments. CWL documents are typically authored in YAML or JSON and are processed by CWL executors/implementations.
Background
Common Workflow Language (CWL) is an open standard for describing command line tools and workflows in a way that can be executed across different systems. A .cwl file is the workflow/tool definition itself—think of it as a machine-readable “recipe” that tells a runner what commands to execute, what inputs are required, and what outputs should be produced.
In practice, .cwl files are widely used in data-intensive and scientific computing contexts where repeatability matters. A CWL runner reads the .cwl description and executes it, usually along with separate input parameter files (often YAML/JSON) and references to containers or local tools.
Because CWL is a standard, multiple implementations exist. This means the same .cwl workflow can often be run by different CWL executors, helping teams share workflows between machines, clusters, and environments with fewer changes.
Common MIME types: application/cwl
Further reading
Authoritative resources for more details on the .CWL format.
Common .CWL issues
The .CWL file opens as text but does not “run”
A .cwl file is a workflow/tool description, not a standalone program. It must be executed by a CWL runner, usually together with an inputs object file and the required tools/containers.
- Run the file using a CWL executor (for example, the cwltool reference implementation) rather than double-clicking it.
- Check whether the workflow expects a separate input parameters file (often YAML/JSON) and provide it when running.
- Ensure the referenced command line tools or containers are available in your environment.
Runner reports validation errors or “unsupported CWL version”
CWL documents declare a CWL version and must follow the specification; a runner may reject documents that don’t match the expected schema or version.
- Confirm the document’s CWL version and compare it with your runner’s supported versions.
- Validate the document structure against the CWL specification and correct missing/incorrect fields.
- Try another CWL implementation from the official list if your current executor lacks support for the document’s features.
Workflow starts but fails due to missing tools, paths, or containers
CWL workflows often call external command-line tools or containers; failures occur if dependencies are not present, not accessible, or differ from what the workflow expects.
- Review the workflow/tool requirements and ensure required software is installed or available via container references.
- Check file paths and input filenames in your input object; ensure referenced files exist and are readable.
- Run with increased logging in your executor to identify which step failed and why, then adjust environment or inputs accordingly.
File association confusion (opens in the wrong app)
Operating systems may not recognize .cwl as an executable workflow description and will open it with a default editor or unrelated program.
- Open it explicitly with a text editor for viewing or with your CWL runner from the command line for execution.
- Avoid changing the extension; instead, install/configure a CWL runner and use it to process the file.
- If you need consistent behavior, document a standard runner and command for your team (for example, using cwltool).
FAQ
Are .cwl files just data, or are they code?
They are workflow/tool description documents (usually YAML/JSON). They are “data” in the sense of being structured text, but when executed by a CWL runner they can cause real commands to run.
What program should I use to open and run a .cwl file?
Use a CWL executor/runner—most commonly the cwltool reference implementation. Other CWL implementations are listed on the official CWL site.
Can I open a .cwl file in a text editor?
Yes. CWL documents are typically written in YAML or JSON, so any plain-text editor can open them for viewing or editing.
Is the MIME type for .cwl officially registered?
Yes. IANA lists application/cwl (and related types such as application/cwl+json) in the media types registry.
Similar file extensions
Compare related formats in the same category to find the right tool faster.