Sobre el proyecto
Capy es una CLI de gestión de secretos de código abierto con licencia AGPL-3.0, construida con primitivas estilo git para versionar, sincronizar, desplegar y revocar el acceso a las variables de entorno de la aplicación, diseñada tanto para desarrolladores humanos como para agentes de IA. Opera bajo una arquitectura de confianza cero: los secretos se cifran localmente en la máquina del usuario antes de que cualquier dato se sincronice con el servicio alojado, que solo almacena texto cifrado y registros de membresía del equipo. El servicio no posee texto plano, claves maestras ni claves de proyecto. El descifrado requiere dos partes de clave separadas: una que el servicio elimina y otra que se guarda localmente en el dispositivo del usuario, por lo que un compromiso total del servicio alojado no puede exponer los valores secretos. La instalación está disponible a través de npm, Bun o Homebrew, con un requisito mínimo de versión de Node.js de 18. El flujo de trabajo principal está diseñado para ser de baja fricción: los usuarios ejecutan `capy` para sincronizar secretos, editan valores directamente en el archivo .env (donde los valores almacenados aparecen como fragmentos identificables `capy:{resourceId}:{ciphertext}`) o mediante la TUI interactiva lanzada con `capy edit`, y luego usan `capy run -- <comando>` para inyectar secretos descifrados como variables de entorno para cualquier proceso que lea variables de entorno. No se requiere SDK personalizado, demonio en segundo plano ni panel alojado para ejecutar aplicaciones. Las capacidades clave incluyen: ramas de secretos alineadas con git, donde Capy mantiene ramas de secretos independientes vinculadas a las ramas de git correspondientes mediante un manifiesto `keep.lock` confirmado, de modo que las versiones de secretos viajan junto con el código; controles de acceso granulares a las ramas para restringir el acceso a los secretos de producción a miembros autorizados del equipo; gestión de equipos mediante invitaciones por correo electrónico, con revocación criptográfica inmediata del acceso para usuarios eliminados que no requiere rotación de claves en cascada para los miembros restantes; soporte de despliegue que guía la configuración para plataformas como Vercel, Cloudflare, Docker, Fly, Railway, Render, Heroku, GitHub Actions y AWS Lambda, con soporte de flujos de trabajo de CI mediante tokens de despliegue generados y blobs de secretos; funcionalidad sin conexión que permite que `capy run` funcione desde una caché local después de la sincronización inicial, de modo que las aplicaciones en ejecución no se interrumpan si el servicio alojado no está disponible; y migración automática para proyectos existentes, donde la primera ejecución en un .env de texto plano cifrará todos los valores, cargará el texto cifrado, reescribirá el .env con fragmentos cifrados y guardará una copia de seguridad del archivo original. La CLI incluye un conjunto completo de comandos para verificación de estado, envío de cambios locales, bloqueo de claves locales, obtención de credenciales de proveedores externos, rotación de credenciales gestionadas, gestión de perfiles de usuario, conexión a instancias de Capy autoalojadas, configuración de guías para agentes de IA mediante AGENTS.md/CLAUDE.md, recuperación de cuentas y gestión de organizaciones. El proyecto mantiene una pequeña huella de dependencias en tiempo de ejecución de solo cinco paquetes (commander, dotenv, inquirer, open, proper-lockfile) para reducir la superficie de ataque de la cadena de suministro, con Dependabot configurado para aplicar actualizaciones semanales de dependencias. La herramienta es gratuita para individuos y equipos pequeños, con planes de pago para organizaciones más grandes, admite SSO a través de proveedores de identidad comunes, cumple con el RGPD y actualmente está en proceso de auditoría SOC 2. El componente de servicio alojado es cerrado y no se ofrece autoalojamiento en el lanzamiento.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.