add-new-configuration

Registers new environment variables in dd-trace-py configuration files and documentation.

650|546|Updated Jun 20, 2016
One-click install
npx skills add https://github.com/DataDog/dd-trace-py --skill add-new-configuration
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: add-new-configuration
Source: https://github.com/DataDog/dd-trace-py/tree/main/.claude/skills/add-new-configuration
Command: npx skills add https://github.com/DataDog/dd-trace-py --skill add-new-configuration

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Adding a new environment variable to dd-trace-py requires updating multiple files in sync, and missing any of them causes the supported_configurations CI check to fail. This Skill walks through the complete registration workflow so every DD_, DD, OTEL_, or DATADOG_ variable is documented, validated, and tracked.

Core Features & Use Cases

  • Registry Update: Adds correctly typed entries to supported-configurations.json with proper implementation letters, defaults, aliases, and deprecation flags.
  • Code Generation & Verification: Regenerates ddtrace/internal/settings/_supported_configurations.py via scripts/supported_configurations.py and runs the --check validation that CI enforces.
  • Documentation & Hand-off: Adds entries to docs/configuration.rst, creates release notes for user-facing options, and reminds the user to register the variable in the cross-language feature-parity dashboard.
  • Use Case: You just added DDConfig.var(bool, AI_GUARD.ENV_OPENAI_ENABLED, default=True) to a settings module and need CI to pass with full documentation coverage.

Quick Start

Register the new DD_AI_GUARD_OPENAI_ENABLED environment variable I just added so the supported configurations check passes and it is documented.

Frequently Asked Questions about add-new-configuration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new environment variable to dd-trace-py?

Add an entry to supported-configurations.json with the correct type, string-form default, and implementation letter, then run python scripts/supported_configurations.py to regenerate the Python module. Finally document it in docs/configuration.rst and run the --check flag to verify.

Why does the supported_configurations CI check fail after adding a config variable?

The check fails when an environment variable accessed under ddtrace/ is not registered in supported-configurations.json. Run python scripts/supported_configurations.py --check locally to see which variables are unregistered and add the missing entries.

Can I edit _supported_configurations.py directly?

No, ddtrace/internal/settings/_supported_configurations.py is auto-generated and must never be hand-edited. Edit supported-configurations.json as the source of truth, then regenerate the module with python scripts/supported_configurations.py.

How do I rename an existing ddtrace configuration variable?

Treat the old name as an alias of the new variable using the aliases field in supported-configurations.json rather than deleting it. This avoids breaking existing deployments that still set the old variable name.

What format should the default value use in supported-configurations.json?

The default must be a string (or null for no default), even for integers and booleans, such as "true" or "16". It must exactly match the default defined in the DDConfig.var(...) call in the code.