Valida y aplica planes de OpenClaw: Guía de contrato
Gestionar secretos puede ser un dolor de cabeza si no tienes claro qué se va a modificar exactamente. Para evitar errores inesperados y configuraciones corruptas, openclaw secrets apply utiliza un contrato estricto que garantiza que todo sea válido antes de realizar cualquier cambio en tu sistema.
Esta página define el contrato que aplica el comando openclaw secrets apply. Si un destino no cumple con estas reglas, el proceso fallará antes de modificar cualquier configuración.
Estructura del archivo de plan
Sección titulada «Estructura del archivo de plan»El comando openclaw secrets apply --from <plan.json> espera un array targets con los destinos del 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 los destinos soportados
Sección titulada «Alcance de los destinos soportados»Se aceptan destinos de plan para las rutas de credenciales soportadas en:
Comportamiento del tipo de destino
Sección titulada «Comportamiento del tipo de destino»Como regla general:
- El campo
target.typedebe ser reconocido y debe coincidir con la forma de la ruta normalizada entarget.path.
Se siguen aceptando alias de compatibilidad para 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 siguiendo todos estos puntos:
- El
typedebe ser un tipo de destino reconocido. - El
pathdebe ser una ruta de puntos (dot path) que no esté vacía. pathSegmentsse puede omitir. Si lo incluyes, debe normalizarse exactamente a la misma ruta quepath.- Se rechazan los segmentos prohibidos:
__proto__,prototype,constructor. - La ruta normalizada debe coincidir con la forma de la ruta registrada para ese tipo de destino.
- Si se define
providerIdoaccountId, debe coincidir con el id codificado en la ruta. - Los destinos de
auth-profiles.jsonrequieren unagentId. - Al crear un nuevo mapeo en
auth-profiles.json, asegúrate de incluirauthProfileProvider.
Comportamiento en caso de error
Sección titulada «Comportamiento en caso de error»Si un destino falla la validación, el comando apply termina con un error similar a este:
Invalid plan target path for models.providers.apiKey: models.providers.openai.baseUrlNo se confirma ninguna escritura si el plan no es válido.
Notas sobre el tiempo de ejecución y el alcance de auditoría
Sección titulada «Notas sobre el tiempo de ejecución y el alcance de auditoría»- Las entradas de
auth-profiles.jsonque solo son referencias (keyRef/tokenRef) se incluyen en la resolución en tiempo de ejecución y en la cobertura de auditoría. - El comando
secrets applyescribe los destinos soportados deopenclaw.json, los destinos deauth-profiles.jsony los destinos de limpieza (scrub) opcionales.
Comprobaciones del operador
Sección titulada «Comprobaciones del operador»Puedes validar tu plan sin realizar cambios reales usando el flag --dry-run:
# 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.jsonSi el proceso falla con un mensaje de ruta de destino inválida, te recomiendo regenerar el plan con openclaw secrets configure o corregir la ruta del destino para que coincida con una de las formas soportadas mencionadas anteriormente.
Documentación relacionada
Sección titulada «Documentación relacionada»Pasos siguientes
Sección titulada «Pasos siguientes»OpenClaw Expert
Sigues atascado?
Si esta pagina no resolvio tu caso, pregunta a OpenClaw Expert para pasos concretos.