Key Features
Code, Not YAML
Write pipelines in Python, TypeScript, Go, or PHP — with IDE support, type checking, and testing.
Run Anywhere
Same pipeline runs on your laptop and in CI. Debug locally, push with confidence.
Automatic Caching
Every step is content-addressed and cached. Rebuilds only what changed.
Container-Native
Every step runs in a container. No "works on my machine" — reproducible by default.
Dagger Functions
Reusable pipeline modules from the community:
dagger -m github.com/dagger/dagger/dev/go call lint --source=.
dagger -m github.com/sagikazarmark/daggerverse/golangci-lint call run --source=.Multi-Language SDKs
Full SDKs for Python, TypeScript, Go, PHP, and Elixir. GraphQL API underneath.
FAQ
Q: What is Dagger? A: A programmable CI/CD engine. Replace YAML pipelines with real code (Python/TypeScript/Go). Run locally or in any CI. Automatic caching. 15.6K+ stars.
Q: Does Dagger replace GitHub Actions? A: Dagger runs inside GitHub Actions (or any CI). It replaces the YAML workflow definitions with code, while using the CI system for triggers and scheduling.