Cómo funciona Capy
Cómo funciona Capy
Capy no tiene cuentas ni un servidor que pueda leer tus salas. Esta página muestra cómo, desde tus primeras 24 palabras hasta el acta después de una llamada.
Cada parte está escrita para cualquier persona, con una nota “Por dentro” para quien quiera saber cómo se llaman las piezas reales.
- Sin cuentas
- Peer to peer
- IA en tu ordenador
Peer to peer, sobre Pear
Tu dispositivo habla directamente con el suyo.
En la mayoría de las apps, un mensaje va de ti al servidor de una empresa, y el servidor lo reenvía. Capy no tiene ese servidor. Tu ordenador se conecta a los ordenadores de las personas de tu sala, y la propia app no hace ninguna petición a la web.
Para encontrarse, los dispositivos usan una guía telefónica pública que nadie controla, llamada tabla hash distribuida (DHT). Cada sala tiene un tema. Los dispositivos que lo comparten lo buscan, descubren la dirección de los demás y se conectan. Una técnica llamada hole punching hace pasar la conexión por routers y cortafuegos domésticos, y todo lo que viaja por el enlace va cifrado de extremo a extremo.
A veces no se puede hacer una conexión directa, por ejemplo entre dos redes móviles estrictas. Entonces Capy pasa por un relay ciego: un ordenador siempre encendido, mantenido por el equipo de Capy, que reenvía los bytes cifrados entre los dos dispositivos. No puede leerlos, y solo se usa cuando no se puede hacer una conexión directa.
Con quién habla tu dispositivo
Con las personas de la sala, directamente
Peticiones a la web de la app
Ninguna
Cifrado
De extremo a extremo, en cada enlace
Si falla el enlace directo
Un relay ciego reenvía bytes cifrados
Por dentro
- RuntimePear · Bare
- Encontrar peersHyperDHT · Hyperswarm
- ConexionesNoise · SecretStream
- Relayblind-relay
Tu identidad
24 palabras, y ninguna cuenta.
No hay registro, correo ni contraseña. Cuando empiezas, Capy crea 24 palabras. Son tu identidad. La única copia se queda en tu dispositivo, en un archivo que solo tu cuenta de usuario puede leer, y no se envía nada a ningún sitio.
A partir de las palabras, Capy deriva una clave de identidad Keet. Cada vez que la app se ejecuta, crea además una clave nueva para este dispositivo, y tu identidad responde por ella. La clave del dispositivo firma todo lo que escribes: mensajes, tu perfil y confirmaciones de lectura. La app de los demás comprueba esas firmas, así que nadie puede escribir como tú y ningún servidor tiene que decir quién eres.
Escribe las mismas palabras en otro ordenador y encontrará tus otros dispositivos por sí solo, y tus salas llegarán con él. Al cerrar sesión, el dispositivo olvida las palabras. Vuelve a escribirlas para entrar de nuevo.
Dónde viven las palabras
Solo en tu dispositivo
Cuenta, correo, contraseña
Ninguno
Qué firma tus mensajes
Una clave del dispositivo, avalada por tu identidad
Al cerrar sesión
El dispositivo olvida las palabras
Cómo un mensaje pasa a ser tuyo
Tus 24 palabras
Se quedan solo en este dispositivo. Nada que restablecer, nada que enviar.
Tu clave de identidad
La misma en cada dispositivo donde escribes las palabras.
Una clave para este dispositivo
Se crea cada vez que la app se ejecuta. Tu identidad responde de que es tuya.
Mensajes firmados
La clave del dispositivo firma lo que escribes, para que los demás comprueben que viene de ti.
Conviene saber
Si pierdes las palabras y todos los dispositivos que las tienen, nadie puede devolverte tu identidad, ni siquiera nosotros. No hay cuenta que restablecer. Mientras un dispositivo siga con la sesión iniciada, Ajustes vuelve a mostrar las palabras.
Por dentro
- Identidadkeet-identity-key
- Tus otros dispositivosblind-pairing
Salas e invitaciones
Una sala es un registro donde todos escriben.
El dispositivo de cada miembro lleva su propio registro y le añade entradas. Autobase junta todos los registros en un solo orden en el que todos los dispositivos coinciden, y una pequeña base de datos encima (HyperDB) lo convierte en mensajes, perfiles y tareas. No hay una copia central: la sala es la suma de las copias de sus miembros.
Entras con una invitación, un código que pegas o escaneas como código QR. Tu app envía una solicitud, y la app de un miembro que esté en línea comprueba la invitación y te deja entrar. Desde ese momento todo el historial se replica hacia ti, porque el dispositivo de cada miembro guarda una copia.
Cualquier miembro podría estar usando un Capy modificado, así que ningún dispositivo se fía de un registro solo porque haya llegado. Antes de que valga, cada dispositivo comprueba su forma, su tamaño y su firma. Un registro que falla se ignora igual en todas partes.
Dónde vive una sala
En el dispositivo de cada miembro
Quién te deja entrar
Un miembro que esté en línea
Quién comprueba cada registro
Todos los dispositivos, antes de que valga
La invitación como código QR
Dibujado en tu dispositivo
Entrar en una sala
Una invitación
Quien creó la sala genera un código. Puede mostrarse como código QR, dibujado en el dispositivo.
Una solicitud
La persona pega el código y su app pide entrar.
Un miembro la deja pasar
La app de un miembro comprueba la invitación y añade a la persona como escritora.
El historial se replica
El registro se copia al dispositivo nuevo y la sala se abre, mensajes incluidos.
Por dentro
- Registro compartidoAutobase
- Base de datosHyperDB
- Invitacionesblind-pairing
- ComprobacionesAutobase apply
Blind peers
Un ayudante que guarda lo que no puede leer.
Una sala vive en los dispositivos de sus miembros. Si todos están sin conexión, quien vuelve no tiene de quién copiar. Un blind peer cubre ese hueco. Es un ordenador siempre encendido que guarda una copia cifrada de los datos de la sala, archivos incluidos, y se la entrega a los miembros cuando vuelven. Nunca tiene la clave que abre nada de eso, de ahí lo de ciego.
Capy trae uno, mantenido por el equipo de Capy, y no hay nada que configurar: cada sala se registra en él al abrirse, salvo las salas seguras, que nunca lo hacen. Un blind peer guarda bloques firmados, así que puede conservarlos o descartarlos, pero no cambiarlos.
También guarda las copias selladas de las claves de los mensajes, que permiten abrir un mensaje mientras quien lo escribió está sin conexión (más en almacenamiento).
Quién lo mantiene
El equipo de Capy
Qué guarda
Copias cifradas de las salas
Qué ve
Direcciones IP, cuánto guarda, cuándo
Qué nunca ve
Mensajes, archivos, nombres
Qué puede cambiar
Nada: los bloques están firmados
Salas seguras
Nunca se le entregan
Por dentro
- Clienteblind-peering
- Qué replicaAutobase · Hyperblobs · Hypercore
Almacenamiento y cifrado
Cada mensaje tiene su propia clave.
Todo vive en los dispositivos de los miembros, en una carpeta que la app mantiene (un Corestore). Capy no tiene una base de datos en ningún sitio. Las fotos, los vídeos y los archivos van en cores propios, cifrados para que un blind peer no pueda leerlos.
Cada mensaje se sella con una clave solo suya. Esa clave nunca está en el registro de la sala. Está en un archivo aparte en cada dispositivo y solo viaja hacia los miembros, por las conexiones cifradas de la sala.
Para que un mensaje se abra mientras su autor está fuera, cada dispositivo publica una prekey nueva cada día. El autor sella la clave de cada mensaje para las prekeys de los demás dispositivos, y los blind peers guardan esas copias. Solo el dispositivo dueño de una prekey puede abrir su copia.
Dónde están tus datos
En los dispositivos de los miembros
Qué sella un mensaje
Una clave solo suya
Dónde se guarda esa clave
En un archivo aparte en cada dispositivo
Prekeys
Nuevas cada día, destruidas tras unos 30 días
Fotos, vídeos, archivos
Cifrados, en cores propios
Tras Borrar para todos
Clave descartada, bloques de archivos limpiados
- Borrar para todos es un registro firmado. Cada dispositivo lo comprueba, descarta la clave del mensaje y limpia los bloques de los archivos. Lo que queda en el registro es ruido sellado.
- La mitad privada de una prekey se destruye cuando se acaba su plazo (unos 30 días, 60 como máximo), así que incluso las copias que guarda un blind peer no se abren para nadie.
- “Liberar espacio en este dispositivo” limpia los archivos solo aquí, y siguen limpios tras reiniciar. “Descargar de nuevo” los trae de vuelta de un miembro que los tenga.
Conviene saber
Borrar no alcanza lo que alguien ya guardó. Un miembro que leyó un mensaje, le hizo una foto o usa una app modificada se queda con lo que tiene. Lo que está garantizado: no queda nada legible en los dispositivos honestos, y quien entre después no puede leerlo.
Por dentro
- Una clave por mensajeAES-256-GCM
- PrekeysX25519 · sealed boxes
Salas seguras
Hecha para una llamada, y luego desaparece.
Una sala segura es para 2 a 8 personas. Tiene su propia carpeta y su propio almacén, que no comparte con nada más de la app, y no guarda nada salvo el chat: ni archivos, ni transcripciones, ni actas, ni notas, ni IA.
Su clave se crea en el dispositivo de quien la creó y se guarda en un único archivo del dispositivo que solo tu cuenta de usuario puede leer. Se queda ahí aunque cierres y reinicies. La sala se borra cuando termina la llamada (lo habitual), cuando se acaba su plazo (un día por defecto, una semana como máximo), cuando su creador la borra o cuando cierras sesión. Borrar limpia cada core de su almacén y elimina la carpeta, con el archivo de la clave incluido.
Una sala segura no anuncia ningún tema, así que no se puede encontrar en la DHT. Los miembros se conectan directamente entre sí por clave. Nunca entra en la lista de tu cuenta y nunca se entrega a un blind peer. Mientras hay una abierta, las ventanas de Capy quedan fuera de las capturas de pantalla, las grabaciones y la pantalla compartida en macOS y Windows. Linux no puede hacerlo, y Capy lo dice.
Personas
De 2 a 8
Dónde vive la clave
En el dispositivo, hasta que se borra
Qué guarda
Solo el chat
Blind peers
Nunca reciben una copia
Conviene saber
Alguien de la sala aún puede fotografiar la pantalla o usar un Capy modificado que guarde lo que ve. Hasta que se borra la sala, quien tenga tu ordenador y tu cuenta de usuario puede leerla, así que conviene tener cifrado de disco completo (FileVault, BitLocker).
Por dentro
- La salaCorestore · Hyperswarm
- Ventanas ocultasElectron setContentProtection
Llamadas
Las llamadas van entre las personas que están en ellas.
Tu micrófono se codifica como audio Opus y tu cámara como vídeo VP8. Ambos se cortan en paquetes pequeños y se envían directamente a los demás de la llamada, por las mismas conexiones cifradas que usa la sala, como mensajes sin orden que no esperan unos a otros.
Las métricas de la llamada tampoco vienen de un servidor. En tu ordenador, un detector de voz nota cuándo hablas. Tu dispositivo lo escribe, firmado, en la sala: por lotes, cada 5 segundos y cuando te vas. Cada dispositivo calcula entonces el reparto de palabra y las interrupciones a partir de los mismos registros, así que todas las pantallas muestran los mismos números, también para quien se unió tarde.
Nadie aloja una llamada. Cualquiera puede avanzar la ronda, marcar una decisión o editar las notas. El creador de la sala, o un admin, puede silenciar o sacar a alguien, y cada app obedece solo a ellos.
Audio
Opus
Vídeo
VP8
Se envía a
Las personas de la llamada, cifrado
Reparto de palabra
Calculado en cada dispositivo
Por dentro
- CódecsOpus · VP8 · WebCodecs
- TransporteProtomux · unordered messages
IA en tu ordenador
La IA corre aquí, no en la nube.
La IA de Capy es QVAC, la IA local de Tether. Eliges y descargas cada modelo una vez en Ajustes → Notas e IA, y llega por la red peer-to-peer, no desde una web. Hasta que descargues uno, esas funciones siguen apagadas. Los modelos corren entonces en un segundo proceso de tu ordenador.
Nadie te transcribe salvo tú. Con la transcripción activada, tu ordenador convierte tu propia voz en texto con Whisper o Parakeet y firma cada frase en la sala. El texto se comparte con la sala: eso es la transcripción. El audio no se guarda.
Cuando termina una llamada, la última persona en salir escribe el acta con un modelo de lenguaje en su propio ordenador, si tiene un modelo de actas. El acta aparece en la sala como una tarjeta que cualquiera puede abrir.
Se queda en tu ordenador
- Los modelos y todo lo que usan
- Tu voz, como sonido
- Ponme al día, Prepárame y las respuestas de Buscar y preguntar
- Las sugerencias, hasta que hagas clic
Va a la sala
- Las frases de tu propia transcripción, firmadas por ti
- El acta, cuando eres el último en salir
- Lo que decides añadir: una decisión, una tarea
De tu voz al acta
Tu micrófono
Tu voz se oye solo en tu ordenador.
Whisper o Parakeet
Convierte tu habla en texto, en tu ordenador.
Líneas firmadas en la sala
Cada frase la firmas tú y pasa a la transcripción que todos comparten.
Un modelo de lenguaje
En el ordenador de la última persona en salir, si tiene un modelo de actas.
El acta
Aparece en la sala como una tarjeta que abre las notas de la llamada.
- Los subtítulos se pueden traducir en tu ordenador con modelos Bergamot.
- Buscar y preguntar encuentra palabras en transcripciones, actas y mensajes, y responde preguntas sobre llamadas pasadas con EmbeddingGemma y el modelo de lenguaje, citando los momentos.
- Las sugerencias de decisiones, tareas y punto del orden del día tienen que citar una línea de la transcripción. Lo que no lo hace se descarta, y no se añade nada hasta que una persona hace clic.
- Lo que escribe un modelo se marca como IA y se mantiene aparte de lo que dijeron las personas.
Conviene saber
Ningún servicio de IA ni ningún servidor de Capy recibe tu voz ni tu texto. Un modelo aún puede equivocarse: trata a la IA como quien toma notas, no como fuente de verdad.
Por dentro
- WorkerBare
- Voz a texto@qvac/asr-ggml · Whisper · Parakeet
- Modelo de lenguaje@qvac/llm-llamacpp
- Los modelos vienen deQVAC registry · Hyperswarm
Actualizaciones
Las versiones nuevas llegan de otros peers.
No hay servidor de actualizaciones. El equipo de Capy publica cada versión en la red Pear, y la app la descarga de otros ordenadores que ya la tienen, igual que se replica una sala. Tu app comprueba al abrir y de nuevo cuando aparece una versión nueva.
Cuando termina la descarga, una tarjeta en la barra lateral ofrece Reiniciar. Nunca reinicia en mitad de una llamada. Una versión de producción necesita un quórum de las claves de firma del equipo, así que una sola clave no puede lanzar una actualización.
Si una versión nueva no arranca dos veces seguidas, Capy vuelve a poner la app anterior y no intenta esa versión de nuevo hasta que llegue una más reciente. En un Mac fuera de Aplicaciones, Capy se ofrece a moverse allí para poder reemplazarse más tarde.
Servidor de actualizaciones
Ninguno
De dónde llega
De otros peers de la red Pear
Firma de la versión
Un quórum de las claves del equipo
Si una versión falla dos veces
Vuelve la app anterior
El viaje de una actualización
El equipo publica
Una versión nueva entra en la red Pear, firmada con las claves del equipo.
Los peers la pasan
Los ordenadores que ya la tienen la comparten con el tuyo.
Tu app comprueba y descarga
Antes, Capy comprueba que puede reemplazarse donde está.
Reinicias
Capy ofrece Reiniciar. La app anterior se conserva hasta que la nueva haya arrancado.
Por dentro
- Actualizadorpear-runtime
Preguntas
Respuestas cortas.
¿Puede el equipo de Capy leer mis mensajes?
No. Los mensajes van entre los dispositivos de los miembros y se sellan con claves que el equipo nunca tiene. El equipo mantiene unos pocos ayudantes siempre encendidos: un relay ciego y un blind peer, que ven direcciones IP y cuántos datos cifrados circulan, nunca lo que contienen, un seeder que mantiene disponibles las actualizaciones y un buzón para los informes de problemas que decides enviar.
¿Qué pasa si todos los de una sala están sin conexión?
La sala espera. Cuando alguien vuelve, los mensajes se sincronizan. Como Capy guarda copias cifradas en su blind peer, también recibes de él lo que te perdiste, aunque no haya nadie más en línea. Si estuviste fuera más de 30 días, algunos mensajes pueden mostrar “Esperando este mensaje” hasta que se conecte un miembro que tenga la clave.
¿Dónde están mis datos?
En los dispositivos de las personas de cada sala, en una carpeta que mantiene la app. También puede haber una copia cifrada en el blind peer. Una sala segura está solo en los dispositivos de sus miembros, y se borra.
¿Y si pierdo mis 24 palabras?
Mientras uno de tus dispositivos siga con la sesión iniciada, Ajustes vuelve a mostrar las palabras para que las anotes. Si pierdes las palabras y todos los dispositivos, nadie puede recuperar tu identidad, ni siquiera nosotros. Es el precio de no tener una cuenta que restablecer.
¿La IA envía algo a un servidor?
No. Los modelos corren en tu ordenador después de descargarlos una vez, por la red peer-to-peer. La transcripción de tu voz va a la sala como texto, firmada por ti, porque eso es lo que es una transcripción compartida. El audio no se guarda. Capy no hace ninguna petición a la web.
¿Es gratis? ¿Por qué no hay servidores propios?
Sí, Capy es gratis, y está en beta. Tus dispositivos hacen el trabajo que hacen los servidores en otras apps: guardan las salas, llevan las llamadas y ejecutan la IA. El equipo solo mantiene unos pocos ayudantes ligeros, como el relay y el blind peer, que mueven y guardan bytes cifrados.
¿Qué ve un blind peer?
La dirección IP de tu dispositivo cuando se conecta, cuántos datos cifrados guarda y cuándo se leen o se escriben. No puede ver lo que hay dentro: mensajes, archivos, nombres.
¿Quién puede ver mi dirección IP?
Las personas a las que te conectas en una sala o en una llamada, los nodos de la red que ayudan a encontrarlas, y el relay y el blind peer si se usan. Así funcionan las conexiones directas. Una VPN la oculta si eso te importa.
¿Puede alguien de la sala grabarla?
Sí. Cualquiera en una sala ve lo que muestra la sala y puede fotografiar o grabar la pantalla, o usar un Capy modificado que se quede con lo que recibe. Las comprobaciones de Capy evitan que una app modificada dañe la de los demás, pero no impiden que un miembro conserve lo que vio. En una sala segura, las ventanas de Capy quedan fuera de las capturas y grabaciones de pantalla en macOS y Windows, pero una cámara apuntando a la pantalla sigue funcionando.
Todo esto corre en tus dispositivos. El equipo solo mantiene un relay, un blind peer, un seeder de actualizaciones y un buzón para informes de problemas, y ninguno puede leer tus salas.