mcpField
C
config-env-parameters

config-env-parameters

github.com/dev-toolingsDevelopment22790 installsUpdated 3w ago
Repository

About config-env-parameters

A Symfony configuration skill for managing environment variables, parameters, and secrets across environments. It covers storage, injection, and parsing choices, with safeguards against committing credentials.

Key features

  1. 01Choose defaults, environment variables, or vault
  2. 02Declare safe committed defaults
  3. 03Inject and process values via parameters or Autowire
  4. 04Set environment-specific configuration
  5. 05Fail fast on missing required values

Use cases

  1. 01Add or change environment variables and parameters
  2. 02Manage values across dev, test, and prod
  3. 03Parse integer, boolean, JSON, or CSV values
  4. 04Store credentials in the Symfony secrets vault

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/dev-toolings/superpowers-symfony --skill config-env-parameters

After installing, type/config-env-parametersin Claude Code to confirm it loaded.

Bundled filesreference.md

Details

From the project README

Config Env Parameters (Symfony)

Use when

  • Adding or changing an environment variable, a parameter, or a secret.
  • A value differs between environments (dev, test, prod).
  • Casting or parsing env values (int:, bool:, json:, csv:, file:).
  • Storing credentials in the Symfony secrets vault.

Default workflow

  1. Decide where the value lives: .env default, .env.local, real environment, or the vault for secrets.
  2. Declare it with a safe committed default, never a real credential.
  3. Inject it with %env(...)% and the right processor, through a parameter or #[Autowire].
  4. Put environment-specific settings in config/packages/<env>/ or when@<env> blocks.
  5. Fail fast in the service when a required value is empty.

Guardrails

  • Never commit .env.local, .env.*.local or the vault decryption key.
  • In production, set variables in the server or container environment, not in files.
  • Env values are strings until processed: cast them, do not compare "false" to false.
  • Remember the loading order: .env, .env.local (skipped in test), .env.<env>, .env.<env>.local.

Progressive disclosure

  • Use this file for execution posture and risk controls.
  • Open references when deep implementation details are needed.

Output contract

  • Where each new value is defined, per environment.
  • The injection point and the processor used.
  • Secrets added to the vault, named but never printed.

References

  • reference.md

Comments

Markdown supported