Skip to main content

Experimental Features

Atmos introduces new capabilities as experimental features before stabilizing them. The settings.experimental configuration controls how these experimental features behave, letting you choose between silent operation, warnings, disabled access, or strict error handling.

You will learn

  • Control experimental feature visibility and behavior
  • Choose from four modes: silence, disable, warn, error
  • Commands self-register as experimental
  • Automatic notifications without manual configuration

Configurationโ€‹

atmos.yaml

settings:
# Control experimental feature handling
# Values: "silence", "disable", "warn" (default), "error"
experimental: warn

Behavior Modesโ€‹

The settings.experimental setting accepts four values that control how Atmos handles experimental commands:

silence

Run experimental commands without any output or notification. Use this when you've already acknowledged the experimental status and want clean output.

settings:
experimental: silence
disable

Completely disable experimental commands. When a user attempts to run an experimental command, Atmos will display an error and exit. Use this in production environments where experimental features should not be accessible.

settings:
experimental: disable

Example output:

# Error

**Error:** experimental command is disabled

## Hints

๐Ÿ’ก Enable with settings.experimental: warn
warn (default)

Show a warning notification when running experimental commands, then continue execution. This is the recommended setting for most users - you'll be informed about experimental features while still being able to use them.

settings:
experimental: warn

Example output:

๐Ÿงช `devcontainer` is an experimental feature. Learn more https://atmos.tools/experimental
error

Show a warning notification and exit with an error code. Use this when you want to be notified about experimental features but prefer explicit opt-in before using them.

settings:
experimental: error

Example output:

๐Ÿงช `devcontainer` is an experimental feature. Learn more https://atmos.tools/experimental

# Error

**Error:** experimental command requires explicit opt-in

## Hints

๐Ÿ’ก Enable with settings.experimental: warn

Environment Variableโ€‹

You can also control experimental feature handling via environment variable:

# Silence all experimental warnings
export ATMOS_EXPERIMENTAL=silence

# Disable experimental features
export ATMOS_EXPERIMENTAL=disable

# Enable with warnings (default)
export ATMOS_EXPERIMENTAL=warn

# Require explicit opt-in
export ATMOS_EXPERIMENTAL=error

The environment variable takes precedence over the configuration file setting.

Current Experimental Featuresโ€‹

The following features are currently marked as experimental:

FeatureCommandDescription
Devcontainersatmos devcontainerDevelopment container lifecycle management
Toolchainatmos toolchainTool version management and installation
Backend Provisioningatmos terraform backendTerraform state backend management
Workdir Managementatmos terraform workdirComponent working directory management
Affected Componentsatmos list affectedIdentify changes for targeted CI/CD
NOTE:

Experimental features may change significantly or be removed in future releases. We encourage you to try them and provide feedback, but avoid relying on them in production workflows until they are stabilized.

Use Casesโ€‹

Development Environmentโ€‹

For local development where you want to experiment with new features:

settings:
experimental: warn # See warnings but continue working

CI/CD Pipelineโ€‹

For continuous integration where you want stability:

settings:
experimental: disable # Block experimental commands in CI

Or use environment-specific configuration:

# In your CI environment
export ATMOS_EXPERIMENTAL=disable

Production Environmentโ€‹

For production where experimental features must be explicitly enabled:

settings:
experimental: error # Require explicit opt-in

See Alsoโ€‹