mcpField
M
mcloud-variables

mcloud-variables

github.com/medusajsクラウド・DevOps2341.3k 回インストール1 週間前に更新
リポジトリ

mcloud-variables について

`mcloud variables`でCloud環境の変数を確認・管理するスキルです。シークレット値の扱いと、変更を反映するための再デプロイやビルド手順も説明します。

主な機能

  1. 01種類やスコープ別の変数一覧
  2. 02キーまたはIDによる変数取得
  3. 03変数の作成と更新
  4. 04確認を伴う変数の削除
  5. 05シークレット・ビルド・ランタイム属性の設定

活用シーン

  1. 01環境設定の確認
  2. 02APIキーなどの変数更新
  3. 03.envファイルからの変数読み込み
  4. 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")'

コメント