Gateway
Контракт плану застосування секретів
Ця сторінка визначає суворий контракт, який застосовує openclaw secrets apply.
Якщо ціль не відповідає цим правилам, застосування завершується помилкою до внесення змін у конфігурацію.
Форма файла плану
openclaw secrets apply --from <plan.json> очікує масив targets із цілями плану:
{
version: 1,
protocolVersion: 1,
targets: [
{
type: "models.providers.apiKey",
path: "models.providers.openai.apiKey",
pathSegments: ["models", "providers", "openai", "apiKey"],
providerId: "openai",
ref: { source: "env", provider: "default", id: "OPENAI_API_KEY" },
},
{
type: "auth-profiles.api_key.key",
path: "profiles.openai:default.key",
pathSegments: ["profiles", "openai:default", "key"],
agentId: "main",
ref: { source: "env", provider: "default", id: "OPENAI_API_KEY" },
},
],
}
Підтримувана область цілей
Цілі плану приймаються для підтримуваних шляхів credentials у:
Поведінка типу цілі
Загальне правило:
target.typeмає бути розпізнаним і має відповідати нормалізованій форміtarget.path.
Псевдоніми сумісності для наявних планів і далі приймаються:
models.providers.apiKeyskills.entries.apiKeychannels.googlechat.serviceAccount
Правила перевірки шляху
Кожна ціль перевіряється за всіма наведеними нижче правилами:
typeмає бути розпізнаним типом цілі.pathмає бути непорожнім dot-шляхом.pathSegmentsможна не вказувати. Якщо його вказано, він має нормалізуватися точно до того самого шляху, що йpath.- Заборонені сегменти відхиляються:
__proto__,prototype,constructor. - Нормалізований шлях має відповідати зареєстрованій формі шляху для типу цілі.
- Якщо задано
providerIdабоaccountId, вони мають відповідати id, закодованому в шляху. - Цілі
auth-profiles.jsonпотребуютьagentId. - Під час створення нового зіставлення
auth-profiles.jsonвключайтеauthProfileProvider.
Поведінка при помилці
Якщо ціль не проходить перевірку, застосування завершується з помилкою на кшталт:
Invalid plan target path for models.providers.apiKey: models.providers.openai.baseUrl
Для невалідного плану жодні записи не фіксуються.
Поведінка згоди для exec provider
--dry-runза замовчуванням пропускає перевірки exec SecretRef.- Плани, що містять exec SecretRef/provider, відхиляються в режимі запису, якщо не задано
--allow-exec. - Під час перевірки/застосування планів, що містять exec, передавайте
--allow-execі для dry-run, і для режиму запису.
Примітки щодо runtime та області аудиту
- Записи
auth-profiles.jsonлише з ref (keyRef/tokenRef) включаються до розв’язання під час виконання та покриття аудиту. secrets applyзаписує підтримувані ціліopenclaw.json, підтримувані ціліauth-profiles.jsonі необов’язкові scrub-цілі.
Перевірки оператора
# Validate plan without writes
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
# Then apply for real
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
# For exec-containing plans, opt in explicitly in both modes
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run --allow-exec
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --allow-exec
Якщо застосування завершується помилкою з повідомленням про невалідний шлях цілі, заново згенеруйте план за допомогою openclaw secrets configure або виправте шлях цілі на одну з підтримуваних форм вище.