Saltar al contenido

Administración de Teams

Cómo configurar Korva para un equipo de ingeniería — activación de licencia, invitaciones de miembros, Skills Hub, scrolls privados y audit log. Cada mutación admin queda registrada de forma inmutable para compliance.

Actualizado: 2026-04-30

Esta guía lleva a un admin desde “compré una licencia Teams” hasta “cada miembro de mi equipo comparte skills, scrolls privados y un único audit log”.

1. Activar la licencia

Terminal window
korva license activate <tu-key>
korva license status # confirma tier=teams

La licencia es un token JWS RS256. El Vault verifica la firma offline usando la clave pública embebida en el binario. Un heartbeat opcional cada 24 h la mantiene fresca; si el endpoint de licencias no es alcanzable durante 7 o más días, la instalación degrada con normalidad a Community (no se borra ningún dato).

2. Crear el equipo

Terminal window
korva teams create "Engineering Team A" --owner [email protected]
# → devuelve team_id

team_id es un ULID — anótalo o léelo de nuevo con korva teams list.

3. Invitar miembros

Terminal window
korva teams invite [email protected] --team <team_id>
# → el token se muestra UNA SOLA VEZ; el email se envía automáticamente si Resend está configurado

Si configuraste Resend (KORVA_EMAIL_API_KEY + KORVA_EMAIL_FROM), el invitado recibe un email. Si no, comparte el token por un canal seguro fuera de banda.

Por defecto los miembros invitados reciben role=member. Para otorgar acceso al panel admin, usa --role admin:

Terminal window
korva teams invite [email protected] --team <team_id> --role admin

¿Quién puede acceder al panel admin?

Hay dos maneras de hacer login en /admin:

MétodoUsado por
Admin Key (~/.korva/admin.key)La persona que instaló el vault
Session Token (~/.korva/session.token)Cualquier miembro del equipo con role=admin

Esto importa especialmente en despliegues compartidos del vault — cuando tu equipo corre un único vault en un servidor (p. ej. vault.tuempresa.com), cualquier ingeniero al que invites con --role admin puede acceder al panel admin usando su propio session token sin necesitar la clave privada del servidor.

4. Los miembros canjean la invitación

En la máquina del developer:

Terminal window
korva auth redeem <invite-token>
# → escribe ~/.korva/session.token (modo 0600)

Los miembros ahora pueden invocar vault_team_context (herramienta MCP solo para Teams) para inyectar los skills y scrolls privados de su equipo en sesiones de IA.

5. Distribuir skills (Skills Hub)

Terminal window
# Como miembro, tras canjear la invitación:
korva skills sync
# → trae skills modificados → escribe ~/.claude/<skill>.md
korva skills hook install
# → registra un hook PreToolUse en ~/.claude/settings.json para que Claude Code
# sincronice automáticamente antes de cada sesión

Los admins crean / editan / versionan skills desde la página de Skills del Beacon Admin en http://localhost:7437/admin/skills. Cada cambio crea una entrada de historial inmutable (tabla skill_history) y un evento de sync para la próxima vez que los miembros corran korva skills sync.

6. Gestionar scrolls privados

Terminal window
open http://localhost:7437/admin/scrolls-private

Los Private Scrolls son la capa de inyección de conocimiento del tier Teams. A diferencia de los scrolls de Lore públicos (que viven en tu repo Git de team-profile), los Private Scrolls viven en la BD del Vault y nunca salen de tus servidores. Úsalos para:

  • Decisiones arquitectónicas internas
  • Convenciones de lenguaje específicas del dominio
  • Reglas de negocio confidenciales
  • Cualquier cosa que no quieras que ni siquiera tu propio historial de Git recuerde

7. Inspeccionar el audit log

Terminal window
open http://localhost:7437/admin/audit

Cada mutación admin — crear equipo, agregar miembro, eliminar skill, desplegar scroll privado, modificar configuración de privacidad — queda registrada en audit_logs con actor, action, target, before_hash, after_hash, created_at. Los logs son inmutables, append-only y exportables.

Off-boarding

Cuando un miembro se va:

Terminal window
korva teams remove-member <team_id> <email>

El session token del miembro queda invalidado server-side; su próxima llamada a /auth/me devuelve 401. Su conocimiento permanece en el vault — las observaciones, decisiones y patrones que guardó siguen ahí para el siguiente developer que trabaje en esos archivos. Esta es una de las razones centrales por las que Korva existe.

Self-hosting del vault del equipo

El procedimiento para compartir un único Vault entre el equipo está documentado en Self-hosting. A grandes rasgos:

  1. Ejecuta korva-vault detrás de Traefik en una VPS / tu cloud privado.
  2. Monta admin.key como un secreto (solo lectura).
  3. Haz que los miembros del equipo definan KORVA_VAULT_HOST=vault.tuempresa.com para que su CLI hable con el servidor compartido.

Postura de compliance

  • Toda la data del vault permanece en tu infraestructura. El licensor nunca ve observaciones, skills ni scrolls.
  • El heartbeat de licencia transmite solo license_id, install_id y un timestamp — nada sobre tu código.
  • Las entradas del audit log son content-addressed (hashes SHA256 antes/después) por lo que el tampering es detectable.

Pricing y límites

  • Teams ($9/usuario/mes en lanzamiento, $19 regular, mínimo 3 asientos): Skills Hub, Smart Skill Loader, Private Scrolls, Team Management, RBAC, Audit Log, invitaciones por email, vault_code_health, vault_pattern_mine, workspaces multi-perfil, sync privado de Hive cross-team, dashboard de analítica de Beacon, soporte por email con SLA.
  • Habla con ventas para contratos a medida que requieran SSO/SAML/SCIM, despliegues dedicados on-premises, políticas de retención personalizadas, exportes alineados a SOC 2, canal Slack dedicado o SLA de uptime 99,9 % — se negocian sobre el tier Teams y no cambian el nombre del plan.

Ver Pricing para la matriz completa de features.

Siguiente