Skip to main content

概要

変数を使うと手順書を再利用可能にできます。一度定義すれば、ステップの値で {{variableName}} 構文で参照できます。値は対話プロンプト、環境変数、コンテキストファイル、シークレット、固定値から取得できます。

変数ソース

変数は手順書内で source とともに定義し、値の解決方法を決定します:

解決優先順位

実行時に変数は以下の順序で解決されます。最初にマッチしたものが使用されます: つまり、secrets は常に最優先です。--secrets で値を渡すと、他のソースを上書きします。

シークレットの扱い

シークレットはログやレポートに表示されるべきではない機密値です。指定方法は 2 つあります:

--secrets フラグで指定

キー・バリューペアの JSON ファイルを作成します:
シークレットファイルの全値は自動的に sensitive として扱われ、すべての出力でマスクされます。

sensitive: true フラグで指定

手順書内で個別の変数を sensitive としてマークします:

コンテキストベースの解決

変数が source: context の場合、AI が --context マークダウンファイルを読み取り、変数の説明に基づいて値を抽出します。値がドキュメント化されているがハードコードされていない場合に有用です:
AI は adminUrlhttps://admin.example.com/dashboard に解決します。

テンプレート構文

二重中括弧で変数を任意の文字列フィールドに参照できます:
テンプレートは以下に対応しています:
  • シンプルな参照:{{variableName}}
  • キャプチャされたオブジェクトのドット記法:{{captured.field}}
  • 最大 3 階層のネスト

ベストプラクティス

  • 認証情報には prompt を使用 — 手順書にパスワードをハードコードしない
  • 環境固有の値には env を使用 — ベース URL、API エンドポイント、リージョン
  • ドキュメント化された値には context を使用context.md を信頼できるソースとして維持
  • 機密値にはマークを付けるsensitive: true または --secrets でマスクを確保
  • シークレットはバージョン管理から除外secrets.json.gitignore に追加

次のステップ

YAML 変数リファレンス

変数スキーマとフィールドの全リファレンス。

手順書を実行する

変数を使った手順書の実行。