- 従来の .env/.env.example 方式の限界を克服し、コラボレーション/AI/セキュリティ/型安全性を一度に解決する 次世代環境変数管理ツール
.env.schema で環境変数スキーマを一か所で管理でき、.env.example と違って実際の値と例示の不一致を心配する必要がない
- @env-spec デコレーター注釈 を通じて、スキーマ、型、検証、例、機密性、外部シークレット管理など多様な情報を .env ファイルに宣言的に追加
@required, @type=string, @sensitive, @example など
- 強力なバリデーション: 誤った設定/未入力エラーを即座に明確なメッセージで案内(ランタイム前に事前防止)
- スキーマベースの 自動型生成 により、コード内で環境変数へアクセスする際の型安全性と IDE インテリセンス対応 を提供
- セキュリティ: 機密情報の自動マスキング(ログ/コンソール)、バンドルされたクライアント/レスポンス内での漏えいを検知
- マルチ環境とオーバーライド: デフォルト値、環境ごとのファイル、git-ignored の個人値、プロセス env の組み合わせなど、複合的な環境構成をサポート
- 外部シークレット統合: 1Password、exec などコマンドベースのシークレット動的読み込みに対応し、プラグイン・ローカル暗号化・チーム vault も近日対応予定
- 言語非依存/ランタイム非依存: JS/TS だけでなく、
varlock run -- python my.py のようにあらゆる言語・プロセスへ検証済み env を注入可能
- dotenv を完全に置き換え可能: dotenv import を varlock に変えるだけで、即時バリデーション、自動型生成、セキュリティ強化、マルチ環境/シークレット統合など多様な機能を利用可能
2件のコメント
これなら
.gitignoreに.env.schemaも含める必要があるのでしょうか?ああ…
.envに情報を置いて、.env.schemaがそれを読み込む方式なんですね