Política de privacidad
Operant está construido bajo el principio de privacidad por diseño: ni la extensión ni el host nativo recopilan, almacenan o transmiten tu historial, credenciales, medios o datos de navegación a ningún servidor externo. Todo el cómputo ocurre estrictamente en tu dispositivo. Esta política describe de forma exhaustiva qué toca el software, dónde se almacenan los datos y cuándo se eliminan.
1. Ámbito
Esta política cubre los dos componentes del proyecto: la extensión de navegador (Manifest V3) y el host de Native Messaging escrito en Python. Operant se distribuye como software de código abierto sin servicio alojado — no existe sistema de cuentas, backend ni infraestructura de servidores operada por el proyecto. Las dudas sobre esta política deben canalizarse a través del repositorio oficial del proyecto.
2. Cero telemetría
Operant no incluye analíticas de terceros de ningún tipo (ni Google Analytics, Mixpanel, Sentry ni equivalentes). No existen bases de datos remotas, endpoints de reporte de errores ni servidores de recopilación. Cada acción ocurre entre tu navegador y el proceso Python local registrado en tu sistema operativo.
3. Datos tratados por la extensión
El content script descubre recursos multimedia en la pestaña activa (img, video, fondos CSS, recursos con lazy loading) y el observador de red registra las URLs de los manifiestos de streaming (HLS .m3u8, DASH .mpd). Este metadata — URLs, dimensiones, tipos de medio — se conserva solo en la memoria volátil de la pestaña y en chrome.storage.session para mantener el panel lateral sincronizado. Nunca se escribe en disco, nunca sale del navegador y se destruye al cerrar la pestaña o el navegador.
4. Observación de red y reglas de cabeceras
Para detectar manifiestos de streaming la extensión inspecciona cabeceras de red mediante webRequest. Para descargar recursos protegidos contra hotlinking, reglas efímeras de declarativeNetRequest inyectan el Referer real de la página en la petición saliente. Estas reglas existen únicamente durante la transferencia y se eliminan inmediatamente después; nunca se persisten.
5. El host nativo
El proceso operant_host.py se comunica con el navegador exclusivamente por stdio y solo acepta mensajes del ID de extensión registrado en tu sistema. Recibe instrucciones únicamente para:
- Descargar e instalar versiones oficiales de
ffmpegyyt-dlpen su propio directorio. - Transcodificar, redimensionar o extraer audio de archivos locales que elijas explícitamente.
- Guardar las descargas solicitadas en una subcarpeta de tu directorio de descargas.
6. Permisos del navegador
El manifest.json declara exactamente los permisos necesarios para las funciones anteriores:
sidePanel— aloja la interfaz en el panel lateral persistente del navegador.activeTab— acceso temporal a la pestaña activa para analizar el contenido cuando abres el panel.storage— persistencia local de preferencias de vista y filtros.downloads— guardado de archivos y ZIPs en la carpeta de descargas de tu equipo.webRequest/declarativeNetRequest— identificación pasiva de streams y reglas efímeras de cabeceras.nativeMessaging— el puente de comunicación con el proceso Python local.
Ninguno de estos permisos otorga acceso a datos más allá de las pestañas donde uses la extensión.
7. Descarga de binarios de terceros
Cuando solicitas la instalación o actualización de yt-dlp o ffmpeg, el host nativo se conecta directamente a los repositorios oficiales de lanzamiento (github.com/yt-dlp/yt-dlp, github.com/BtbN/FFmpeg-Builds o gyan.dev) mediante conexiones cifradas HTTPS. Los binarios se almacenan en tu espacio de usuario local sin elevar privilegios y sin modificar la configuración global del sistema operativo. No se realiza ninguna otra petición de red.
8. Ubicaciones y retención de datos
Todo el estado persistente vive en tu máquina, en ubicaciones que puedes inspeccionar y borrar:
%LOCALAPPDATA%\Operant\(Windows) o~/Operant/— binarios gestionados y estado del host.~/Downloads/Operant/— los archivos que decidas descargar.chrome.storage.session— estado volátil del panel, que se limpia con la sesión de navegación.
Borrar estas carpetas y desregistrar el host elimina cualquier rastro de Operant de tu sistema.
9. Base jurídica
Operant no transmite datos personales ni al distribuidor ni a terceros, por lo que no existe tratamiento para el que el proyecto actúe como responsable de datos. Todo el tratamiento de medios y datos de página ocurre en local, en tu dispositivo, bajo tu control directo y para fines que tú decides.
10. Tus derechos
Bajo normativas como el RGPD puedes solicitar acceso, rectificación o supresión de tus datos personales. Como ningún dato llega a nuestro lado, dichas solicitudes no pueden ejecutarse contra nosotros — no se conserva nada en tu nombre. Mantienes el control total en todo momento: desinstalar la extensión y borrar las carpetas locales indicadas arriba elimina cada dato al instante.
11. Menores
Operant es software técnico no dirigido a menores. Con independencia de la edad, no se recopila ningún dato personal, por lo que nunca se trata ni almacena información sobre menores fuera del propio dispositivo del usuario.
12. Seguridad
El host nativo está escrito solo con la librería estándar de Python, su código fuente es totalmente auditable y acepta mensajes exclusivamente del ID de extensión registrado por stdio — ningún otro programa o página web puede alcanzarlo. Las descargas de herramientas se realizan por HTTPS desde repositorios oficiales, y los streams fMP4 concatenados se validan antes de escribir nada en disco.
13. Transferencias internacionales
Ninguna. Ningún dato sale de tu dispositivo, por lo que no se producen transferencias transfronterizas de datos personales.
14. Cambios en esta política
Los cambios sustanciales se reflejarán en la fecha de actualización mostrada al inicio de esta página. Los cambios funcionales relevantes se anunciarán también en las notas de versión del proyecto.