mcloud-variables について
`mcloud variables`でCloud環境の変数を確認・管理するスキルです。シークレット値の扱いと、変更を反映するための再デプロイやビルド手順も説明します。
主な機能
- 01種類やスコープ別の変数一覧
- 02キーまたはIDによる変数取得
- 03変数の作成と更新
- 04確認を伴う変数の削除
- 05シークレット・ビルド・ランタイム属性の設定
活用シーン
- 01環境設定の確認
- 02APIキーなどの変数更新
- 03.envファイルからの変数読み込み
- 04不要になった変数の削除
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ medusajs/ medusa-agent-skills --skill mcloud-variablesインストール後、Claude Code で/mcloud-variablesを入力して読み込まれたか確認します。
詳細
Cloud CLI:Variables コマンド
mcloud variables コマンドを実行して、Cloud 環境の環境変数を確認・管理します。
制約
- ユーザーから明示的に求められない限り、
--revealは指定しないでください。 シークレット値は、ターミナルのスクロールバック、ログ集約ツール、プロセス一覧に表示されます。 - 変数の変更を適用するにはデプロイが必要です。
set/deleteは再ビルドや再デプロイを行いません。ランタイム変数の場合はmcloud environments redeploy <env>、ビルド変数の場合はmcloud environments trigger-build <env>を実行してください(再デプロイでは既存のイメージを再利用するため、ビルド変数の変更は反映されません)。 - システム変数は削除できません。 また、非インタラクティブモードでは
deleteに--yesが必要です。 - キーを指定して変数を検索または作成するには、
--projectと--environment(またはアクティブコンテキストの同等の値)が必要です。ID(var_...)で指定する場合は、プロジェクト/環境のコンテキストは不要です。 setとdeleteには mcloud CLI v0.1.10 以降が必要です。
コマンド
variables list
Cloud 環境のすべての環境変数を一覧表示します。
mcloud variables list \
--organization <org-id> \
--project <project-id-or-handle> \
--environment <environment-handle> \
--json
オプション:
-o/--organization <id>— 組織 ID(アクティブコンテキストにフォールバックします)-p/--project <id-or-handle>— プロジェクト ID またはハンドル(アクティブコンテキストにフォールバックします)-e/--environment <handle>— 環境ハンドル(アクティブコンテキストにフォールバックします)-t/--type <backend|storefront>— 一覧表示する変数セット(デフォルト:backend)--scope <build|runtime>— スコープで絞り込みます。複数回指定できます(デフォルト:両方のスコープ)--include-system— Medusa が自動挿入するシステム変数を含めます(デフォルト:false)--reveal— シークレット値をマスクせず、平文で出力します(明示的に求められた場合のみ使用してください)--dotenv— テーブルの代わりに、.env形式のKEY=VALUE行を出力します--json— JSON 形式で出力します
variables get
ID(var_...)またはキーで、単一の変数を取得します。
# By key (requires project + environment context)
mcloud variables get ADMIN_CORS \
--organization <org-id> \
--project <project-id-or-handle> \
--environment <environment-handle> \
--json
# By ID (works without project/environment context)
mcloud variables get var_01XYZ --json
引数:
variable— 変数 ID(var_...)またはキー(必須)
オプション:
-o/--organization <id>、-p/--project <id-or-handle>、-e/--environment <handle>-t/--type <backend|storefront>— 読み取る変数セット(デフォルト:backend)--reveal— シークレット値を平文で出力します(明示的に求められた場合のみ使用してください)--json— JSON 形式で出力します
variables set
1 つ以上の変数を作成または更新します。既存のキーまたは var_... ID を指定すると CLI は変数を更新し、それ以外の場合は新規作成します。
# Single variable
mcloud variables set API_KEY pk_123 \
--organization <org-id> \
--project <project-id-or-handle> \
--environment <environment-handle>
# Multiple at once
mcloud variables set -v API_KEY=pk_123 -v CLIENT_ID=my_app
# From a .env file
mcloud variables set --env-file .env
引数:
variable— 設定する変数 ID(var_...)またはキー(--var/--env-fileを使用する場合は省略)value— 設定する値(variable引数を指定する場合は必須)
オプション:
-o/--organization <id>、-p/--project <id-or-handle>、-e/--environment <handle>-t/--type <backend|storefront>— 書き込む変数セット(デフォルト:backend)-v/--var <KEY=VALUE|ID=VALUE>— 設定する変数。複数回指定できます--env-file <path>—.envファイルからすべての変数を設定します--secret、--no-secret— シークレットとして指定します(新規変数のデフォルト:false)--build、--no-build— ビルド時に使用可能にします(新規変数のデフォルト:false)--runtime、--no-runtime— ランタイム時に使用可能にします(新規変数のデフォルト:true)--json— JSON 形式で出力します
その後、再デプロイ(ランタイム)または trigger-build(ビルド)を実行してください。詳しくは「制約」を参照してください。
variables delete
ID(var_...)またはキーで変数を削除します。取り消せません。システム変数は削除できません。
mcloud variables delete API_KEY \
--organization <org-id> \
--project <project-id-or-handle> \
--environment <environment-handle> \
--yes
引数:
variable— 削除する変数 ID(var_...)またはキー(必須)
オプション:
-o/--organization <id>、-p/--project <id-or-handle>、-e/--environment <handle>-t/--type <backend|storefront>— 削除対象の変数セット(デフォルト:backend)-y/--yes— 確認プロンプトをスキップします(非インタラクティブモードでは必須)--json— JSON 形式で出力します
変数フィールド(JSON)
| フィールド | 説明 |
|---|---|
id | 変数 ID(var_...) |
key | 変数名(例:ADMIN_CORS) |
value | 変数の値(is_secret が設定されていて、--reveal が渡されていない場合はマスクされます) |
is_secret | 変数がシークレットとして扱われるかどうか |
is_build | ビルド時に利用可能かどうか |
is_runtime | 実行時に利用可能かどうか |
environment_id | この変数が属する環境 ID |
source | ユーザーが設定した変数の場合は user、自動挿入された変数の場合は system |
例
# List all variables for the active environment
mcloud variables list --json
# List only runtime variables, including system ones
mcloud variables list --scope runtime --include-system --json
# List storefront variables
mcloud variables list --type storefront --json
# Get a variable by key (with active context)
mcloud variables get DATABASE_URL --json
# Get a variable by ID (no env context needed)
mcloud variables get var_01XYZ --json
# Set a single variable, then redeploy to apply (runtime)
mcloud variables set REDIS_URL redis://cache:6379
mcloud environments redeploy production
# Set a secret build-only variable, then trigger a build to apply
mcloud variables set STRIPE_SECRET_KEY sk_live_123 --secret --build --no-runtime
mcloud environments trigger-build production
# Set multiple variables from a .env file
mcloud variables set --env-file .env
# Delete a variable (irreversible — confirm before running)
mcloud variables delete OLD_FLAG --yes
# Only reveal secrets when user explicitly asks
mcloud variables get STRIPE_SECRET_KEY --reveal --json | jq -r '.value'
# Export all variables to a .env file (user must explicitly request --reveal)
mcloud variables list --reveal --dotenv > .env
# Check if a specific variable exists
mcloud variables list --json | jq '.[] | select(.key == "REDIS_URL")'
コメント
Markdown 対応