mcpField
L
ln-733-env-configurator

ln-733-env-configurator

github.com/levnikolaevich開発584379 回インストール2 日前に更新
リポジトリ

ln-733-env-configurator について

ln-733-env-configuratorは、開発環境と本番環境の設定を行うL3ワーカーです。プロジェクト内の環境変数を検出して設定ファイルを生成し、.gitignoreに秘密情報の保護ルールを追加します。秘密情報の保存や外部シークレット管理サービスの設定は行いません。

主な機能

  1. 01コード内の環境変数を検出
  2. 02秘密情報と設定値を分類
  3. 033種類の環境設定ファイルを生成
  4. 04.gitignoreに保護ルールを追加
  5. 05実際の秘密情報ではなくプレースホルダーを使用

活用シーン

  1. 01環境変数テンプレートの作成
  2. 02ローカル開発設定の準備
  3. 03本番用プレースホルダー設定の生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-733-env-configurator

インストール後、Claude Code で/ln-733-env-configuratorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/templates/
env_development.template
env_example.template
env_production.template
gitignore_secrets.template

詳細

パス: ファイルパス(references/、../ln-*)は、このスキルディレクトリを基準とします。

ln-733-env-configurator

タイプ: L3 ワーカー カテゴリ: 7XX プロジェクトのブートストラップ

開発環境と本番環境の環境変数を設定します。


目的と範囲

環境設定ファイルを作成します。

  • 行うこと: .env ファイルを生成し、シークレット保護のために .gitignore を更新します
  • 行わないこと: シークレットの保存、外部シークレットマネージャーの管理、CI/CD シークレットの設定

入力

入力ソース説明
プロジェクト名ディレクトリ名データベース/サービスの命名に使用
バックエンドポートスタックに依存5000(.NET)、8000(Python)
フロントエンドポートデフォルト3000
データベースポートデフォルト5432
検出された変数コード解析コード内で見つかった環境変数

出力

ファイル目的テンプレート
.env.example説明付きテンプレートenv_example.template
.env.developmentローカル開発用のデフォルト設定env_development.template
.env.production本番環境用のプレースホルダーenv_production.template
.gitignore(追記)シークレット保護gitignore_secrets.template

ワークフロー

フェーズ 1:環境の調査

プロジェクト内で既存の環境変数の使用状況を調べます。

  • 既存の .env ファイルを確認します
  • コード内で process.env、os.environ、Configuration[] を検索します
  • どの変数がシークレットで、どの変数が設定値かを特定します

出力: 必須の環境変数を種類とともに一覧表示します

フェーズ 2:変数の分類

検出した変数を分類します。

カテゴリ例対応
データベースDATABASE_URL、POSTGRES_*プロジェクト名を使用して自動生成
API 設定API_PORT、LOG_LEVEL検出した値またはデフォルト値を使用
セキュリティJWT_SECRET、API_KEY警告を添えたプレースホルダー
外部サービスREDIS_URL、SMTP_*オプションとしてコメントアウト
フェーズ 3:テンプレートの生成

テンプレートから環境ファイルを生成します。

  1. 変数を置換します
  2. 検出したすべての変数を含めます
  3. 説明のない変数にはコメントを追加します
フェーズ 4:Gitignore の更新

シークレット保護の設定を .gitignore に追記します。

  1. 既存の .gitignore を読み込みます(存在する場合)
  2. シークレットのパターンがすでに含まれているか確認します
  3. テンプレートにある未登録のパターンを追記します
  4. 既存のエントリーを保持します

生成されるファイルの構成

.env.example

すべての変数を含む、説明付きテンプレートです。

  • セクション見出し(データベース、バックエンド、フロントエンド、セキュリティ、外部サービス)
  • 各変数の説明コメント
  • 安全なプレースホルダー値(実際のシークレットは使用しません)
  • オプション変数はコメントアウト
.env.development

すぐに使える開発用設定です。

  • docker-compose で動作する値を事前に設定
  • 開発環境専用のシークレット(明確に表示)
  • デバッグレベルのログを有効化
.env.production

本番環境用のプレースホルダーファイルです。

  • デプロイ時の置換には ${VARIABLE} 構文を使用
  • 必須のシークレットを示すコメント
  • 本番環境に適したデフォルト値(Warning ログレベル)

セキュリティのベストプラクティス

対策実装
実際のシークレットを使用しないテンプレートにはプレースホルダー値のみを使用
Gitignore による保護.env.example を除くすべての .env ファイル
開発環境での警告開発用シークレットを安全でないものとして明示
本番環境向けのガイダンスシークレットマネージャーの使用に関するコメント
キーのローテーションに関する注意シークレットを定期的にローテーションするよう記載

セキュリティに関する注意事項

生成されるファイルには、次のセキュリティに関する注意事項が含まれます。

  1. 実際のシークレットを絶対にコミットしないでください - .gitignore により、誤ってコミットするのを防ぎます
  2. シークレットマネージャーを使用してください - 本番環境では GitHub Secrets、AWS Secrets Manager を使用します
  3. シークレットを定期的にローテーションしてください - 特に JWT シークレットは対象です
  4. 強力な JWT シークレットを使用してください - 最低 256 ビット(32 バイト)にします
  5. CORS を制限してください - 本番環境では必要なオリジンのみを許可します

品質基準

生成されるファイルは、次の条件を満たす必要があります。

  • .env.example に必須の変数がすべて含まれている
  • どのファイルにも実際のシークレットやパスワードが含まれていない
  • .gitignore がシークレットのパターンで更新されている
  • .env.development が docker-compose で動作する
  • .env.production がプレースホルダー構文を使用している

重要な注意事項

  1. テンプレートベース:references/ のテンプレートを使用してください。ファイルの内容をハードコードしないでください。
  2. 冪等性:ファイルの存在を確認してください。.gitignore は上書きせず、追記してください。
  3. 実際のシークレットを使用しない:実際のパスワードや API キーを含むファイルを生成しないでください。
  4. 開発環境の安全性:開発環境のデフォルト設定は、docker-compose ですぐに使用できる必要があります。

参照ファイル

ファイル用途
env_example.template説明付きの .env テンプレート
env_development.template開発環境のデフォルト設定
env_production.template本番環境用のプレースホルダー
gitignore_secrets.template.gitignore への追加項目

完了の定義

  • .env.example、.env.development、.env.production が生成されている
  • 生成されたファイルに実際のシークレットやパスワードが含まれていない
  • .gitignore がシークレット保護パターンで更新されている

バージョン: 1.1.0 最終更新日: 2026-01-10

コメント