Skip to content
Docs/Get started

Installation

Use the Python SDK to define workflows in your application, test them locally, and package them for a dagy.io workspace. The dagy command is installed with the SDK. Python 3.10 or later is required.

On this pageInstall in your projectInstall from a source checkoutAdd integration dependenciesResolve installation problems

Install in your project

Create and activate a virtual environment, then install dagy from the package source approved for your workspace:

Shell
python -m venv .venv
source .venv/bin/activate
python -m pip install dagy

On Windows, activate with .venv\Scripts\activate. If your package index does not contain dagy, obtain the SDK wheel or source distribution from your workspace administrator and install that distribution. A package name in these examples does not establish public release availability.

Check the installation:

Shell
python -c "from dagy import flow, task; print('SDK ready')"
dagy --version
dagy --help

Local execution does not require a dagy.io account. Continue with your first workflow. To deploy or call the hosted API, connect to your workspace.

Install from a source checkout

If you have been given access to the dagy.io source distribution, run this from its root:

Shell
python -m pip install -e .

For contributors using uv, uv sync installs the core package. uv sync --extra dev adds development tools; uv sync --extra docs adds the documentation tooling. These commands are for a source checkout, not prerequisites for a customer integration.

Add integration dependencies

The base SDK does not include every third-party client used by built-in nodes. Install the dependencies for the nodes you use. The connector bundle is:

Shell
python -m pip install 'dagy[nodes]'

This adds clients for MySQL, Snowflake, Redshift, Google Cloud Storage, Azure Blob Storage, MongoDB, SFTP, Qdrant, pgvector, and OpenSearch. Other nodes need their own packages; for example:

Shell
python -m pip install aiohttp asyncpg openai

See the node catalog for each integration's credentials, ports, configuration, dependency, and current limitations. Installing a dependency locally does not install it in a deployed runtime. Use dependency packages when your deployment needs additional libraries.

Resolve installation problems

SymptomResolution
dagy: command not foundActivate the environment in which you installed the package. Run python -m pip show dagy to confirm the interpreter and installation location.
ModuleNotFoundError: dagyInstall into the Python environment running your application. Avoid mixing system Python with a project virtual environment.
No matching distribution foundConfirm Python 3.10+, your configured package source, and access to the SDK distribution.
A node reports a missing dependencyInstall the package listed for that node into its execution environment. The base SDK and the nodes extra have different dependency sets.
Local execution starts a hosted run unexpectedlyUse flow.run_local() explicitly. flow.run() and dagy run choose hosted execution when an API URL is configured.

Pin the SDK and integration-client versions in your application's dependency file after testing them together. Consult release information before upgrading.