config-env-parameters について
Symfony の環境変数、パラメーター、シークレットを環境ごとに管理する設定スキルです。保存先や注入・変換方法を扱い、認証情報のコミットを防ぐ注意点も示します。
主な機能
- 01デフォルト値、環境変数、Vault の選択
- 02安全なコミット済みデフォルトの定義
- 03パラメーターまたは Autowire による注入と変換
- 04環境別設定の指定
- 05必須値が空の場合の早期失敗
活用シーン
- 01環境変数やパラメーターの追加・変更
- 02開発・テスト・本番環境の値の管理
- 03整数、真偽値、JSON、CSV の変換
- 04Symfony の Secrets Vault への認証情報保存
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dev-toolings/ superpowers-symfony --skill config-env-parametersインストール後、Claude Code で/config-env-parametersを入力して読み込まれたか確認します。
同梱ファイルreference.md
詳細
環境変数とパラメーターの設定(Symfony)
使用する場面
- 環境変数、パラメーター、またはシークレットを追加または変更するとき。
- 値が環境(dev、test、prod)によって異なるとき。
- 環境変数の値をキャストまたは解析するとき(
int:、bool:、json:、csv:、file:)。 - Symfony のシークレットボールトに認証情報を保存するとき。
デフォルトのワークフロー
- 値をどこに置くかを決めます。.env のデフォルト値、.env.local、実際の環境、またはシークレット用のボールトから選びます。
- 安全なコミット可能なデフォルト値を指定し、実際の認証情報は決して使いません。
- パラメーターまたは
#[Autowire]を介し、適切なプロセッサーと%env(...)%を使って注入します。 - 環境固有の設定は
config/packages/<env>/またはwhen@<env>ブロックに記述します。 - 必須の値が空の場合、サービス内で速やかにエラーにします。
ガードレール
.env.local、.env.*.local、またはボールトの復号キーを決してコミットしないでください。- 本番環境では、ファイルではなくサーバーまたはコンテナーの環境に変数を設定します。
- 環境変数の値は処理されるまでは文字列です。キャストしてから使い、
"false"とfalseを比較しないでください。 - 読み込み順を忘れないでください。.env、.env.local(test ではスキップ)、.env.、.env..local の順です。
段階的な情報開示
- 実行方針とリスク管理には、このファイルを使用します。
- 実装の詳細が必要な場合は、リファレンスを確認します。
出力要件
- 新しい値を環境ごとにどこで定義するか。
- 注入箇所と使用するプロセッサー。
- ボールトに追加したシークレットは名前のみ記載し、値は決して表示しないこと。
リファレンス
reference.md
コメント
Markdown 対応