dagger

module
v0.19.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2025 License: Apache-2.0

README

What is Dagger?

Dagger is an open-source runtime for composable workflows. It's perfect for systems with many moving parts and a strong need for repeatability, modularity, observability and cross-platform support. This makes it a great choice for AI agents and CI/CD workflows.

Key Features

  • Containerized Workflow Execution: Transform code into containerized, composable operations. Build reproducible workflows in any language with custom environments, parallel processing, and seamless chaining.

  • Universal Type System: Mix and match components from any language with type-safe connections. Use the best tools from each ecosystem without translation headaches.

  • Automatic Artifact Caching: Operations produce cacheable, immutable artifacts — even for LLMs and API calls. Your workflows run faster and cost less.

  • Built-in Observability: Full visibility into operations with tracing, logs, and metrics. Debug complex workflows and know exactly what's happening.

  • Open Platform: Works with any compute platform and tech stack — today and tomorrow. Ship faster, experiment freely, and don’t get locked into someone else's choices.

  • LLM Augmentation: Native integration of any LLM that automatically discovers and uses available functions in your workflow. Ship mind-blowing agents in just a few dozen lines of code.

  • Interactive Terminal: Directly interact with your workflow or agents in real-time through your terminal. Prototype, test, debug, and ship even faster.

Getting started

Join the community

Contributing

Interested in contributing or building dagger from scratch? See CONTRIBUTING.md.

Directories

Path Synopsis
ci module
std/go module
std/graphql module
cmd
codegen command
Go name linting.
dagger command
dialstdio command
dnsname command
This is a post-setup plugin that establishes port forwarding - using iptables, from the host's network interface(s) to a pod's network interface.
This is a post-setup plugin that establishes port forwarding - using iptables, from the host's network interface(s) to a pod's network interface.
dump-id command
dump-labels command
engine command
init command
introspect command
json-schema command
dagger-json-schema is a tool to generate json schema from Dagger module config struct.
dagger-json-schema is a tool to generate json schema from Dagger module config struct.
sdk
idtui
Package idtui provides terminal user interface frontends for Dagger operations.
Package idtui provides terminal user interface frontends for Dagger operations.
internal/ioctx
Package ioctx provides a way to pass standard input, output, and error streams through a context.Context.
Package ioctx provides a way to pass standard input, output, and error streams through a context.Context.
dev module
dirdiff module
go module
graphql module
markdown module
shellcheck module
wolfi module
docs
src/scripts command
vcs
Package vcs exposes functions for resolving import paths and using version control systems, which can be used to implement behavior similar to the standard "go get" command.
Package vcs exposes functions for resolving import paths and using version control systems, which can be used to implement behavior similar to the standard "go get" command.
distconsts module
internal
buildkit/client/connhelper
Package connhelper provides helpers for connecting to a remote daemon host with custom logic.
Package connhelper provides helpers for connecting to a remote daemon host with custom logic.
buildkit/client/connhelper/dockercontainer
Package dockercontainer provides connhelper for docker-container://<container>
Package dockercontainer provides connhelper for docker-container://<container>
buildkit/client/connhelper/kubepod
Package kubepod provides connhelper for kube-pod://<pod>
Package kubepod provides connhelper for kube-pod://<pod>
buildkit/client/connhelper/nerdctlcontainer
Package nerdctlcontainer provides connhelper for nerdctl-container://<container>
Package nerdctlcontainer provides connhelper for nerdctl-container://<container>
buildkit/client/connhelper/npipe
Package npipe provides connhelper for npipe://<address>
Package npipe provides connhelper for npipe://<address>
buildkit/client/connhelper/podmancontainer
Package podmancontainer provides connhelper for podman-container://<container>
Package podmancontainer provides connhelper for podman-container://<container>
buildkit/client/connhelper/ssh
Package ssh provides connhelper for ssh://<SSH URL>
Package ssh provides connhelper for ssh://<SSH URL>
buildkit/frontend/dockerfile/command
Package command contains the set of Dockerfile commands.
Package command contains the set of Dockerfile commands.
buildkit/frontend/dockerfile/parser
The parser package implements a parser that transforms a raw byte-stream into a low-level Abstract Syntax Tree.
The parser package implements a parser that transforms a raw byte-stream into a low-level Abstract Syntax Tree.
mage module
modules
dirdiff module
gha module
go module
golangci module
graphql module
markdown module
ps-analyzer module
ruff module
shellcheck module
wolfi module
sdk
dotnet/dev module
util
ctrns
ctrns provides utilities for containerd resources that are pre-namespaced (instead)
ctrns provides utilities for containerd resources that are pre-namespaced (instead)
gitutil
gitutil and its contents is originally forked from github.com/dagger/dagger/internal/buildkit/util/gitutil
gitutil and its contents is originally forked from github.com/dagger/dagger/internal/buildkit/util/gitutil
patternmatcher
package patternmatcher is used for implementing globbing, and is forked from github.com/moby/patternmatcher/
package patternmatcher is used for implementing globbing, and is forked from github.com/moby/patternmatcher/
version module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL