Контракт плана применения секретов
На этой странице определяется строгий контракт, применяемый командой 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" },
},
],
}
Поддерживаемая область действия целей
Цели плана принимаются для поддерживаемых путей учетных данных в:
Поведение типа цели
Общее правило:
target.typeдолжен быть распознан и должен соответствовать нормализованной формеtarget.path.
Псевдонимы для совместимости остаются принятыми для существующих планов:
models.providers.apiKeyskills.entries.apiKeychannels.googlechat.serviceAccount
Правила валидации пути
Каждая цель проверяется по всем следующим критериям:
typeдолжен быть распознанным типом цели.pathдолжен быть непустым путем в точечной нотации.pathSegmentsможет быть опущен. Если предоставлен, он должен нормализоваться точно в тот же путь, что иpath.- Запрещенные сегменты отклоняются:
__proto__,prototype,constructor. - Нормализованный путь должен соответствовать зарегистрированной форме пути для данного типа цели.
- Если задан
providerIdилиaccountId, он должен совпадать с идентификатором, закодированным в пути. - Для целей
auth-profiles.jsonтребуетсяagentId. - При создании нового сопоставления в
auth-profiles.jsonукажитеauthProfileProvider.
Поведение при ошибке
Если цель не проходит валидацию, применение завершается с ошибкой, например:
Invalid plan target path for models.providers.apiKey: models.providers.openai.baseUrl
Для невалидного плана никакие записи не фиксируются.
Примечания по области действия выполнения и аудита
- Записи
auth-profiles.json, содержащие только ссылки (keyRef/tokenRef), включаются в разрешение во время выполнения и охват аудита. secrets applyзаписывает поддерживаемые целиopenclaw.json, поддерживаемые целиauth-profiles.jsonи опциональные цели очистки.
Проверки оператора
# Проверить план без записи
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
# Затем применить по-настоящему
openclaw secrets apply --from /tmp/openclaw-secrets-plan.json
Если применение завершается ошибкой с сообщением о недопустимом пути цели, пересоздайте план с помощью openclaw secrets configure или исправьте путь цели на поддерживаемую форму, указанную выше.