Contrato de plan de aplicación de Secrets
Contrato de plan de aplicación de Secrets
Sección titulada «Contrato de plan de aplicación de Secrets»Esta página define el contrato estricto impuesto por openclaw secrets apply.
Si un destino no coincide con estas reglas, la aplicación falla antes de mutar la configuración.
Formato del archivo de plan
Sección titulada «Formato del archivo de plan»openclaw secrets apply --from <plan.json> espera una matriz targets de destinos de plan:
{ 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" }, }, ],}Alcance de destino admitido
Sección titulada «Alcance de destino admitido»Los destinos de plan se aceptan para rutas de credenciales admitidas en:
Comportamiento del tipo de destino
Sección titulada «Comportamiento del tipo de destino»Regla general:
target.typedebe ser reconocido y debe coincidir con la forma normalizadatarget.path.
Los alias de compatibilidad siguen siendo aceptados para los planes existentes:
models.providers.apiKeyskills.entries.apiKeychannels.googlechat.serviceAccount
Reglas de validación de rutas
Sección titulada «Reglas de validación de rutas»Cada destino se valida con todo lo siguiente:
typedebe ser un tipo de destino reconocido.pathdebe ser una ruta de puntos no vacía.pathSegmentsse puede omitir. Si se proporciona, debe normalizarse a exactamente la misma ruta quepath.- Los segmentos prohibidos se rechazan:
__proto__,prototype,constructor. - La ruta normalizada debe coincidir con la forma de ruta registrada para el tipo de destino.
- Si se establece
providerIdoaccountId, debe coincidir con el id codificado en la ruta. - Los destinos
auth-profiles.jsonrequierenagentId. - Al crear una nueva asignación
auth-profiles.json, incluyaauthProfileProvider.
Comportamiento de fallo
Sección titulada «Comportamiento de fallo»Si un destino falla la validación, la aplicación se cierra con un error como:
Invalid plan target path for models.providers.apiKey: models.providers.openai.baseUrlNo se confirman escrituras para un plan no válido.
Comportamiento del consentimiento del proveedor exec
Sección titulada «Comportamiento del consentimiento del proveedor exec»--dry-runomite las comprobaciones exec SecretRef de forma predeterminada.- Los planes que contienen exec SecretRefs/proveedores se rechazan en modo de escritura a menos que se establezca
--allow-exec. - Al validar/aplicar planes que contienen exec, pase
--allow-exectanto en comandos de simulación como de escritura.
Notas sobre el alcance de tiempo de ejecución y auditoría
Sección titulada «Notas sobre el alcance de tiempo de ejecución y auditoría»- Las entradas solo de referencia
auth-profiles.json(keyRef/tokenRef) se incluyen en la resolución en tiempo de ejecución y la cobertura de auditoría. secrets applyescribe objetivosopenclaw.jsonadmitidos, objetivosauth-profiles.jsonadmitidos y objetivos de limpieza opcionales.
Comprobaciones del operador
Sección titulada «Comprobaciones del operador»# Validate plan without writesopenclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run
# Then apply for realopenclaw secrets apply --from /tmp/openclaw-secrets-plan.json
# For exec-containing plans, opt in explicitly in both modesopenclaw secrets apply --from /tmp/openclaw-secrets-plan.json --dry-run --allow-execopenclaw secrets apply --from /tmp/openclaw-secrets-plan.json --allow-execSi la aplicación falla con un mensaje de ruta de destino no válida, regenere el plan con openclaw secrets configure o corrija la ruta de destino a una forma admitida anteriormente.