Este es el mapa de la CLI de kovra. Cada comando pasa por la misma
decisión de política; ejecutar kovra <command> --help para ver sus
flags y argumentos exactos.
| Comando |
Qué hace |
kovra init |
Inicializa el registro de vaults y la master key. Crea una clave solo cuando el keyring no tiene ninguna; sobre una bóveda que ya guarda registros sellados pide --force y su aprobación. |
kovra setup |
Incorpora el repo actual: asegura el vault, registra el servidor MCP en .mcp.json, inserta el bloque de convenciones en CLAUDE.md, instala los hooks del gate de credenciales en .claude/settings.local.json (las reglas que deniegan Read, en .claude/settings.json) y registra kovrad al iniciar sesión (macOS). --dry-run muestra los cambios sin escribirlos. |
kovrad es el servicio de kovra por usuario; ejecuta el gate de credenciales. En macOS arranca al iniciar sesión y aparece como kovrad en Ajustes → General → Ítems de inicio → Permitir en segundo plano. Si lo apaga ahí, no arranca al iniciar sesión y kovra lo arranca solo cuando lo necesita, sin reiniciarlo si se cae; kovra daemon status y kovra doctor se lo recuerdan y distinguen ese interruptor de un registro que falló, que kovra daemon install repara.
| Comando |
Qué hace |
kovra daemon status |
Muestra si kovrad está corriendo: pid, versión, tiempo activo, conexiones y los contadores del gate. |
kovra daemon start |
Arranca kovrad si no está corriendo (y reinicia uno de otra versión). |
kovra daemon stop |
Detiene kovrad. |
kovra daemon install |
Registra kovrad para que arranque al iniciar sesión y se reinicie si se cae (macOS); termina cuando kovrad responde. |
kovra daemon uninstall |
Detiene kovrad y quita ese registro; desde entonces kovra setup lo deja apagado hasta kovra daemon install. |
| Comando |
Qué hace |
kovra add <coord> |
Crea un secreto (valor por prompt oculto o --stdin; nunca por argv). Crear uno en la bóveda de un proyecto (--project) sobre un secreto global crítico pide su aprobación, igual que add, set, generate, keygen, import, intake fulfill y unpack. --description escribe la nota de uso que leen los agentes (hasta 500 caracteres); --mint-only marca una credencial maestra que solo debe acuñar tokens hijos con alcance acotado (literales y referencias). |
kovra set <coord> |
Actualiza el valor de un secreto y conserva su nota y su marca mint-only. Sobrescribir uno high o inject-only pide su aprobación. |
kovra edit <coord> |
Edita metadatos (sensibilidad / descripción / referencia / --mint-only true|false); bajar la sensibilidad es un downgrade protegido. En un secreto crítico, una sola edición no puede cambiar a la vez la sensibilidad y la referencia. La CLI es el único lugar donde se desmarca un secreto mint-only o se cambia su nota; un agente solo puede marcarlo. |
kovra rm <coord> |
Elimina un secreto. Uno high o inject-only pide su aprobación (Touch ID, o la contraseña de su sesión). |
kovra list |
Lista secretos — solo metadatos, nunca valores. Los valores high, inject-only y de prod no muestran fingerprint (—). El modo muestra mint-only en un secreto marcado, y la columna de nota su nota de uso. |
kovra show <coord> |
Revela un valor a stdout (high requiere bioProve; inject-only nunca). Un secreto mint-only viene con el aviso de kovra en stderr. |
kovra generate <coord> |
Genera un valor aleatorio del lado del servidor; nunca se imprime. |
kovra import <coord> --from op://… |
Copia un valor de 1Password al vault como un literal. |
El flujo iniciado por el agente: un agente (o la persona) encola una solicitud para crear un secreto —
nombrando solo la coordenada, nunca un valor — y un humano la cumple por fuera de banda, de modo que el
valor nunca pasa por el contexto del agente. Ver kovra sobre MCP.
| Comando |
Qué hace |
kovra intake request <coord> |
Encola una solicitud para crear un secreto (--sensitivity, --description; sin valor aquí). |
kovra intake list |
Lista las solicitudes de creación de secretos pendientes. |
kovra intake fulfill <id> |
Provee el valor para una solicitud y la sella (--stdin / --clipboard / --window; crear un secreto high o prod pide confirmación). Sobre un secreto que ya existe, lo rota y siempre pide su aprobación. |
kovra intake cancel <id> |
Descarta una solicitud pendiente sin cumplirla. |
En macOS, la app de barra de menú kovra-menulet lista las solicitudes pendientes y abre la ventana
nativa de cumplimiento.
| Comando |
Qué hace |
kovra mcp |
Sirve el servidor MCP de kovra por stdio. Su agente lo inicia desde .mcp.json, que escribe kovra setup; no se ejecuta a mano. Scope desde KOVRA_MCP_OPERATIONS, KOVRA_MCP_ENVIRONMENTS y KOVRA_MCP_PROJECTS. Vea kovra por MCP. |
| Comando |
Qué hace |
kovra run --env <e> -- <cmd> |
Resuelve un .env.refs y ejecuta un comando con los valores inyectados en el proceso hijo. --allow agrega un ejecutable (por su ruta resuelta) a la allowlist para high/prod en esa ejecución, con su aprobación — que se pide solo cuando la ejecución de verdad entrega un valor así. Una ejecución que entrega high/prod recibe un entorno saneado (PATH fijo, sin variables que cargan código). Una ejecución que inyecta un secreto mint-only escribe un aviso en el stderr de kovra — la coordenada, el consejo de kovra y la nota — antes de lanzar el hijo (también con --stdio), y se ejecuta igual. |
kovra allow add / rm / list |
Administra la allowlist de ejecutables — los programas revisados que pueden recibir un valor high/prod. Está sellada con la clave del vault, así que solo kovra la escribe; add pide su aprobación. Cada entrada fija el contenido del programa (una edición lo saca de la lista; list lo marca changed since it was approved); se rechazan los intérpretes y lanzadores genéricos (sh, bash, env, python, node, make, npm, docker, …). |
kovra run --stdio -- <cmd> |
Igual, pero hereda stdin/stdout/stderr en el hijo (alias --interactive) — necesario para envolver procesos interactivos y servidores MCP de stdio. La salida no se captura, así que no hay enmascarado; el secreto igual se inyecta solo por el entorno y los gates de high/prod siguen aplicando. |
| Comando |
Qué hace |
kovra code <coord> |
Imprime el código TOTP actual (nunca la semilla). Se controla como un reveal: un enrolamiento inject-only nunca muestra un código, y un código de prod pedido desde la sesión de un agente se rechaza (I14); desde su propia shell pide su aprobación. |
kovra keygen <coord> |
Genera y custodia un keypair asimétrico (la mitad privada nunca en disco). |
kovra pubkey <coord> |
Imprime la clave pública OpenSSH de un keypair (gratis). |
kovra sign <coord> [archivo] |
Firma un archivo, o stdin, con la clave privada; la firma va a stdout. Una clave high, inject-only o de prod pide su aprobación, y la aprobación muestra el SHA-256 de los datos firmados y, en la Mac, el documento mismo (vea Qué muestra la aprobación de una firma). --reason "<texto>" indica para qué es la firma, en una línea de 200 caracteres como máximo; la aprobación lo muestra como texto de quien pide, que kovra no verifica, y la auditoría lo registra. Un motivo vacío, más largo, o con un salto de línea, un carácter de control, de formato, bidi, combinante o invisible, o un espacio que no sea el espacio común se rechaza con código de salida 2, antes de pedir nada. |
kovra verify <coord> [archivo] |
Verifica una firma (--signature <archivo>) con la clave pública, también la de una entrada solo-pública (gratis). |
kovra encrypt / decrypt |
Cifra hacia / descifra con un keypair ed25519. |
kovra ssh-add <coord> |
Carga una clave custodiada en el ssh-agent en ejecución, solo en memoria. Rechaza las claves high, inject-only y de prod — esas firman solo a través de kovra ssh-agent. |
kovra ssh-agent |
Ejecuta kovra como un ssh-agent gobernado (firma en memoria; high/prod confirman por cada firma, y el diálogo indica el proceso que la pide y qué se firma). |
| Comando |
Qué hace |
kovra add <coord> --reference azure-kv://… |
Almacena un puntero a Azure Key Vault. |
kovra add <coord> --reference aws-sm://… |
Almacena un puntero a AWS Secrets Manager. |
Las referencias se resuelven en tiempo de ejecución bajo la propia identidad. Ver
Referencias cloud.
| Comando |
Qué hace |
kovra preflight <operación> … |
Responde, antes de que una operación se ejecute, si le pediría aprobación, dónde (la Mac, el teléfono vinculado, o solo el teléfono por SSH) y por qué. Nunca pregunta, nunca imprime un valor y nunca contacta al teléfono; --json imprime los mismos campos. Vea Preflight. kovra preflight sign <coord> --reason "<texto>" revisa el motivo como lo hace kovra sign y lo rechaza de la misma forma (código de salida 2). |
| Comando |
Qué hace |
kovra phone pair |
Vincula la app kovra Mobile de su iPhone (próximamente, todavía no publicada): imprime un QR y, cuando el teléfono responde, el código de 6 dígitos que comparten ambas pantallas, y conserva la vinculación cuando usted la aprueba en la Mac. --relay <url> elige otro relay. |
kovra phone status |
Muestra el teléfono vinculado, su relay y si las notificaciones están activas o silenciadas. |
kovra phone forget |
Olvida el teléfono vinculado, con aprobación en la Mac. |
Vea Aprobar desde su iPhone.
| Comando |
Qué hace |
kovra license status |
Muestra la licencia: estado, plan, arrendamiento y gracia, y si las actualizaciones están permitidas. --json para la app de la barra de menús. |
kovra license activate |
Activa esta Mac con el código que le envió Kaeus (prompt oculto, o --stdin; nunca un argumento). |
kovra license refresh |
Renueva la licencia ahora (kovrad la renueva por su cuenta). |
kovra license deactivate |
Libera el cupo de esta Mac en la licencia (activarla de nuevo necesita un código nuevo); se aprueba solo en esta Mac. |
Una licencia nunca le impide llegar a sus secretos; solo gobierna las actualizaciones. Vea La licencia Free.
| Comando |
Qué hace |
kovra confirm <text> |
Solicita una confirmación humana atendida (exit 0 si se aprueba) — para que un host/app gobierne su propia acción. La aprobación presenta el texto como del programa que llama: A program — not kovra — asks you to approve. |
kovra approve [id] |
Builds de desarrollo y plataformas distintas de macOS: aprueba/deniega un pedido del broker de archivos. En una Mac toda aprobación es en la ventana de revisión de kovra, y un agente no puede aprobar: dentro de una sesión de Claude Code se niega. |
| Comando |
Qué hace |
kovra ui |
Levanta la UI de administración loopback bajo demanda. En macOS se abre por defecto en una ventana nativa; --browser la abre en cambio en el navegador del sistema (--no-open también implica el modo navegador y solo imprime la URL; rechazado en macOS, donde la URL impresa nunca lleva el token de sesión); --window fuerza la ventana nativa; --persistent la mantiene levantada y la bloquea al quedar inactiva en lugar de apagarse. |
| Comando |
Qué hace |
kovra scaffold |
Escanea el código fuente en busca de referencias a variables de entorno y propone un .env.refs (lee solo nombres, nunca valores). |
kovra doctor (lint) |
Valida la configuración de secretos de un proyecto; solo coordenadas + estado, nunca un valor. Sale con un código distinto de cero ante un hallazgo grave. Sin ./.env.refs no verifica ningún contrato, imprime sus notas sobre esta Mac (PATH, kovrad, notificaciones, licencia) y sale con 0; con --refs <archivo>, un archivo que falta es un error, así que un hook o un paso de CI que deba validar el contrato pasa --refs. |
kovra hooks |
Administra los git hooks que mantienen los secretos fuera de los commits. |
kovra audit |
Consulta el registro de auditoría — coordenadas, fingerprints truncados, timestamps, origen; nunca un valor. |
kovra key export / import |
Respalda / restaura la master key del vault (recuperación ante desastres). export se aprueba solo con biometría cuando la Mac tiene Touch ID; import restaura solo una clave que abre los registros de la bóveda. |