openclaw secrets apply コマンドが強制する厳格な仕様(コントラクト)について定義します。
指定されたターゲットが以下のルールに一致しない場合、構成設定を変更する前に処理は失敗します。
プランファイルの形式
openclaw secrets apply --from <plan.json> は、以下のような targets 配列を含む JSON を想定しています:
サポートされる対象範囲
プランのターゲットとして受け入れられる認証情報のパスについては、以下を参照してください:ターゲット型 (Target type) の挙動
一般原則:target.typeは既知の種類である必要があり、正規化されたtarget.pathの形状と一致していなければなりません。
models.providers.apiKeyskills.entries.apiKeychannels.googlechat.serviceAccount
パス検証ルール
各ターゲットは、以下のすべての項目で検証されます:typeは既知のターゲット型であること。pathは空でないドット区切りのパスであること。pathSegmentsは省略可能ですが、指定された場合はpathと全く同じパスに正規化されること。- 禁止されたセグメント(
__proto__,prototype,constructor)が含まれていないこと。 - 正規化されたパスが、そのターゲット型に対して登録済みの形状と一致すること。
providerIdやaccountIdが指定されている場合、パス内に埋め込まれた ID と一致すること。auth-profiles.jsonを対象とする場合はagentIdが必須であること。- 新しい
auth-profiles.jsonのマッピングを作成する場合はauthProfileProviderを含めること。
失敗時の挙動
ターゲットの検証に失敗した場合、コマンドは以下のようなエラーを出力して終了します:実行時および監査に関する補足
- SecretRef のみで構成された
auth-profiles.jsonのエントリ(keyRef/tokenRef)は、実行時の解決プロセスおよび監査(Audit)の対象に含まれます。 secrets applyは、サポートされているopenclaw.jsonおよびauth-profiles.jsonのターゲットへの書き込み、およびオプションでの平文の消去(Scrub)を行います。
運用チェック
openclaw secrets configure でプランを再生成するか、サポートされている形状に合わせてターゲットパスを修正してください。