Back to Dagger

Features

docs/current_docs/introduction/features/index.mdx

0.20.72.7 KB
Original Source

Features

Dagger provides a comprehensive set of features for building, validating, and managing application delivery workflows. Explore the features below to learn how Dagger can improve your development and deployment processes.

:::tip Looking for Toolchains or Checks? These fundamental concepts have been elevated to Core Concepts for easier discovery. Check out:

  • Toolchains - Install and use modules without writing code
  • Checks - Validate commits with automated quality checks
  • Functions - Building blocks of Dagger workflows :::

Core Features

Programmable Workflows

Write workflows in code, not YAML. Use your favorite programming language to build delivery pipelines with full type safety and IDE support.

Caching

Automatic, intelligent caching of operations and artifacts. Dagger caches everything by default, dramatically speeding up workflow execution.

Sandboxed Runtime

Security-first design with fully sandboxed execution. All Dagger Functions run in isolated containers without direct access to the host system.

Observability

Visualize workflows in real-time with interactive terminal output and comprehensive tracing. Understand exactly what's happening at every step.

Composition & Reusability

Reusability

Create, reuse, and share frequently-used workflows as Dagger modules. Build once, use everywhere across teams and projects.

Ephemeral Services

Create service containers at run-time for testing and development. Spin up databases, caches, and other services on-demand.

Advanced Capabilities

LLM Integration

Build powerful AI agents with Large Language Models. Integrate LLMs into your workflows with native support for tool use and Model Context Protocol.

Interactive Shell

Iterate faster with familiar Bash-like syntax and autocomplete. Explore and test workflows interactively before committing to code.

Secrets Integration

Built-in support for secrets with multiple providers. Securely inject sensitive data into your workflows without exposing it in logs or cache.

Local Defaults (.env)

Persist default arguments for Dagger functions in a .env file. Set CLI arguments once and they're applied automatically on every call.


Next Steps