dstack is a Python-based unified control plane for provisioning and orchestrating training, inference, and agentic workloads across GPUs and accelerators on clouds, Kubernetes, and on-prem clusters.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
dstack is a unified control plane for GPU provisioning and orchestration that works with any GPU cloud, Kubernetes, or on-prem clusters. It streamlines development, training, and inference, and is compatible with any hardware, open-source tools, and frameworks.
Accelerators supported out of the box include NVIDIA, AMD, Google TPU, and Tenstorrent.
How it works
The project provides a server that can be installed on Linux, macOS, or Windows (via WSL 2). After starting the server, you install the CLI to interact with the server. Backends must be configured to orchestrate compute across GPU clouds or Kubernetes clusters. When using on-prem servers, backend configuration isn’t required—SSH fleets can be created once the server is up. The server and CLI interactions are demonstrated via commands such as:
$ uv tool install "dstack[all]" -U
$ dstack server
$ uv tool install dstack -U
Configuration for a server and project is done by providing server address, token, and project name:
$ dstack project add \
--name main \
--url http://127.0.0.1:3000 \
--token bbae0f28-d3dd-4820-bf61-8f4bb40815da
Configuration is updated at ~/.dstack/config.yml
Getting started
Key steps include:
- Install the server and start it:
uv tool install "dstack[all]" -Ufollowed bydstack server. - Install the CLI after the server is up:
uv tool install dstack -U. - Configure the CLI to point to the server with
dstack project addand store config at~/.dstack/config.yml. - Install agent skills using:
$ npx skills add dstackai/dstack
Configurations are defined using YAML files for Fleets, Dev environments, Tasks, Services, and Volumes, enabling provisioning, job queuing, auto-scaling, networking, volumes, run failures, and port-forwarding across clouds and on-prem clusters.
Recent releases
Latest releases include:
- 0.20.29 (2026-07-24): Presets — an agent-driven inference optimization toolkit with a headless agent for sequential trials and benchmarking.
- 0.20.28 (2026-07-16): Runs — support for calling
dstackinside another run. - 0.20.27 (2026-07-09): Backends — Slurm backend added to orchestrate container-based runs across Slurm clusters.
- 0.20.26 (2026-06-25): Server — SSH pool; server maintains a pool of reusable SSH connections by default.
- 0.20.25 (2026-06-18): Runs — Ubuntu 24.04 base images upgrade from 22.04 to 24.04.
Traction
Stars: 2203 Forks: 243 Open issues: 63
Licensing
License: MPL-2.0
Behind the repo
Not included in provided materials.
Caveats
- License: MPL-2.0
- Age: Created 2022-01-04; last_push 2026-08-04
- Language: Python
- Requires Git and OpenSSH for server/CLI operations. Frontend/docs include server deployment and configuration guides.






