AUTH0_EXPERIMENTAL_EA: How to Enable Experimental Features in the Auth0 Deploy CLI

The AUTH0_EXPERIMENTAL_EA environment variable and CLI flag enable pre-release features in the Auth0 Deploy CLI, though currently no experimental features are active as the EA_FEATURES array remains empty.

The auth0-deploy-cli repository provides infrastructure for testing cutting-edge Auth0 resources before they reach general availability. By setting AUTH0_EXPERIMENTAL_EA to true, you opt into a warning-enabled mode that will surface new resource types as they are added to the codebase.

What Is AUTH0_EXPERIMENTAL_EA?

AUTH0_EXPERIMENTAL_EA is a boolean configuration flag that activates experimental early-access mode in the Auth0 Deploy CLI. When enabled, the CLI logs a warning indicating that pre-release features are active, which signals that exported or imported configurations may include unstable resource types.

According to the source code in src/context/index.ts (lines 30-34), the currently enabled experimental features are stored in the EA_FEATURES constant:

// From src/context/index.ts
const EA_FEATURES: string[] = [
  // Add experimental features here
];

As of the latest release, this array is empty, meaning no experimental features are currently available for use.

How to Enable AUTH0_EXPERIMENTAL_EA

You can activate the experimental flag via command-line argument or configuration file.

Command-Line Option

Pass the --experimental_ea flag to either the import or export command. This option is defined in src/args.ts (lines 12-15 and 47-50):


# Export with experimental features enabled

auth0-deploy-cli export \
  --config_file config.json \
  --format yaml \
  --output_folder ./out \
  --experimental_ea

Configuration File

Alternatively, set AUTH0_EXPERIMENTAL_EA to true in your JSON configuration file. The property is defined in src/types.ts (lines 95-96) as part of the Config interface:

{
  "AUTH0_DOMAIN": "example.auth0.com",
  "AUTH0_CLIENT_ID": "your-client-id",
  "AUTH0_CLIENT_SECRET": "your-client-secret",
  "AUTH0_EXPERIMENTAL_EA": true
}

How AUTH0_EXPERIMENTAL_EA Works in the Source Code

The flag propagates through the CLI architecture from argument parsing to command execution.

Argument Parsing and Propagation

In src/args.ts, the --experimental_ea argument is parsed as a boolean. This value flows into both the import and export commands.

In src/commands/import.ts (lines 43-48), the flag is extracted from arguments and merged into the configuration overrides:

// From src/commands/import.ts
const overrides = {
  AUTH0_INPUT_FILE: args.input_file,
  AUTH0_EXPERIMENTAL_EA: args.experimental_ea,  // Boolean flag passed through
};

Similarly, src/commands/export.ts (lines 48-53) handles the same propagation for export operations.

Context Initialization and Warning Display

The src/context/index.ts file manages the runtime context and displays the appropriate messaging. When AUTH0_EXPERIMENTAL_EA is true, the code at lines 154-166 checks the EA_FEATURES array and logs a warning:

// Conceptual flow from src/context/index.ts
if (config.AUTH0_EXPERIMENTAL_EA) {
  console.warn('Experimental early-access features are enabled.');
  console.warn('These features are pre-release and may change.');
  // EA_FEATURES array would be logged here if populated
}

If the flag is false (the default), an informational message explains how to enable the mode.

Current Experimental Features Available

As of the latest commit to the master branch, no experimental features are currently active. The EA_FEATURES array in src/context/index.ts remains empty, indicating that while the infrastructure for early-access features is fully implemented, the Auth0 Deploy CLI team has not yet released any resources behind this flag.

When experimental features become available, they will appear in the EA_FEATURES array, and enabling AUTH0_EXPERIMENTAL_EA will surface them in both import and export operations.

Summary

  • AUTH0_EXPERIMENTAL_EA is a boolean flag that enables pre-release features in the Auth0 Deploy CLI.
  • Set it via the --experimental_ea CLI argument or the AUTH0_EXPERIMENTAL_EA property in your JSON config file.
  • The flag is defined in src/types.ts, parsed in src/args.ts, and propagated through src/commands/import.ts and src/commands/export.ts.
  • Currently, the EA_FEATURES array in src/context/index.ts is empty, meaning no experimental features are available yet.
  • When enabled, the CLI logs a warning that experimental features are active and may change without notice.

Frequently Asked Questions

What happens when I enable AUTH0_EXPERIMENTAL_EA?

When you set AUTH0_EXPERIMENTAL_EA to true, the Auth0 Deploy CLI logs a warning message indicating that experimental early-access features are enabled. According to the source code in src/context/index.ts, this warning alerts you that any features listed in the EA_FEATURES array are pre-release and subject to change. Currently, this array is empty, so no additional functionality is exposed beyond the warning itself.

Are there any risks to using experimental features?

Yes, experimental features enabled via AUTH0_EXPERIMENTAL_EA are explicitly marked as pre-release in the codebase. The warning logic in src/context/index.ts indicates these features may change, be removed, or behave unpredictably in future versions. You should only enable this flag in development or staging environments, and never in production deployments where stability is critical.

How do I know if new experimental features are available?

You can check the EA_FEATURES array defined in src/context/index.ts in the GitHub repository. When the Auth0 Deploy CLI team releases new experimental resources, they will populate this array with feature identifiers. Additionally, the CLI will log the specific enabled features when AUTH0_EXPERIMENTAL_EA is true and the array contains entries. Currently, the array remains empty, indicating no features are available.

Can I use AUTH0_EXPERIMENTAL_EA in production?

No, you should not use AUTH0_EXPERIMENTAL_EA in production environments. The flag is designed for early testing of pre-release features that may change or break without notice. The warning system implemented in src/context/index.ts explicitly categorizes these features as unstable. For production deployments, leave this flag set to false (the default) to ensure you only use stable, supported resource types.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →