Política de privacidad

Revisado: 26 de octubre de 2026

La web está disponible para conocer el producto. Las secciones sobre la aplicación, las pruebas y las licencias describen cómo funcionan; visitar esta web no inicia una prueba ni activa una licencia.

Qué cubre esta política

Esta política explica qué hacen con los datos la aplicación Cowork Island y el sitio web coworkisland.com. Cowork Island es una aplicación de barra de menús para macOS que muestra el estado en directo de las sesiones de agentes de IA compatibles en un panel en la parte superior de la pantalla. La publica Daniel Pau Castro Engström, desarrollador independiente (autónomo) con sede en España.

Los mecanismos de inicio, ajustes, Sparkle, SSH, Atajos y programas locales descritos a continuación corresponden a macOS. La edición de Windows llegará próximamente a Microsoft Store; su tratamiento previsto se identifica por separado. Ambas ediciones comparten el servicio de licencias.

La versión corta

Qué lee la aplicación en tu Mac y por qué

Para mostrar la actividad de las sesiones y permitirte volver a tu trabajo, la aplicación utiliza registros locales de sesión y eventos de las integraciones que uses. Según la integración, pueden incluir nombres de sesión, directorios de trabajo, estado, instrucciones, actividad de herramientas y mensajes recientes. Para listar las sesiones de Claude Code y de la app de Codex, la aplicación también ejecuta en tu Mac los propios programas de esas herramientas mientras las vigila. Cualquier conexión que hagan esos programas es suya, según las condiciones de quienes los publican.

Estos registros permiten mostrar el panel local. Si configuras un equipo remoto, la información correspondiente puede transmitirse al destino que elijas, como se describe a continuación. Tus herramientas de IA y sus proveedores tienen sus propias prácticas de tratamiento de datos. Desde la versión 2.0, la app ya no transmite eventos de hooks a una dirección de webhook; ese ajuste ha desaparecido.

Vinculación local de Codex

Vinculación local de paneles de Codex en macOS. Para asociar una conversación que se ejecuta en el servidor compartido en segundo plano de Codex con la ventana de terminal que la inició o la reanudó expresamente, y encontrar el panel de herdr de esa ventana, la isla lee identificadores de procesos locales, rutas de ejecutables, argumentos de inicio, horas precisas de inicio de los procesos, directorios de trabajo y las variables de entorno de herdr del propio proceso de terminal. Compara la hora de creación de la conversación codificada en su identificador con la hora de inicio del proceso, o un identificador explícito de reanudación con el identificador de la conversación, junto con comprobaciones de la carpeta y del panel y título de herdr. Es una inferencia limitada, no una identificación proporcionada por Codex de la ventana que muestra la conversación en ese momento. Si hay candidatos ambiguos o un título legible que contradice la asociación, esta vía no selecciona un panel. La misma asociación permite agrupar espacios de trabajo localmente y comprobar si una conversación archivada aún tiene un panel.

La lectura al núcleo de macOS devuelve el entorno del proceso, no solo las variables de herdr: su búfer temporal y el diccionario analizado pueden incluir otras variables. La isla filtra inmediatamente ese diccionario para conservar exactamente HERDR_ENV, HERDR_PANE_ID, HERDR_TAB_ID, HERDR_WORKSPACE_ID y HERDR_SOCKET_PATH. Solo se conservan esos valores del entorno para esta decisión de vinculación. Si no se puede leer el entorno del propio proceso de terminal, este lector no toma prestado el entorno de un proceso antecesor.

Estas observaciones de procesos permanecen en memoria para tomar la decisión. Un clic consulta un listado actualizado de herdr y, antes de enfocar un panel elegido a partir de datos de procesos, vuelve a leer esos datos y exige la misma asociación única. Las nuevas observaciones de procesos no se guardan en sessions.json ni se incluyen como registros de procesos en las exportaciones de diagnóstico. El censo local de visibilidad existente sí puede registrar el panel y la agrupación de espacios de trabajo resultantes. Esta vinculación no añade peticiones de red, campos de telemetría, subidas de datos ni lecturas de procesos remotos.

En cada clic que utiliza esta vía del servidor compartido de Codex, un nuevo mensaje local del registro de salto contiene solo tres recuentos (codexRows, folderMatches, titleMatches) y dos valores de sí o no (cardTitlePresent, lineCut). Los recuentos describen las filas de paneles de Codex elegibles y sus coincidencias de carpeta y título; lineCut indica un recorte reconocido del título o de la línea entre las filas que coinciden por carpeta. Un recuento no disponible vale -1. Este mensaje no contiene texto de sesiones, títulos, carpetas, argumentos de inicio, identificadores de procesos o paneles, rutas de sockets ni valores del entorno. Los demás mensajes del registro de salto no cambian. Este mensaje de recuentos puede incluirse entre las líneas recientes de registro de la app en una exportación de diagnóstico, que la app escribe localmente para que la revises y la envíes tú.

La app ejecuta dos programas de tus propios agentes, en este Mac. Mientras vigila Claude Code, ejecuta su propio comando claude agents --json cada 30 segundos con el panel abierto y cada 2 minutos en los demás casos, para leer los agentes que Claude Code lista, y claude --version al instalar sus hooks. Mientras la app de Codex está abierta y la isla vigila Codex, inicia el auxiliar de la propia app de Codex (codex app-server) para leer sus conversaciones. Para estas operaciones de descubrimiento de sesiones, intercambia peticiones y respuestas localmente; cualquier conexión con el proveedor depende de esos programas. La actualización de medidores que se describe a continuación también pide a Claude Code o Codex que obtengan los datos de uso de sus proveedores, usando el daemon existente de Codex cuando está disponible.

Medidores de uso: consultas, nombres y cuentas retiradas

Actualización local de los medidores de uso en macOS. Con los medidores de uso activados, Actualizar las cuentas que no estás usando (Ajustes → Uso) está activado por defecto y tiene su propio interruptor. Mientras el panel de la muesca está expandido, o Ajustes → Uso está visible y Cowork Island es la app activa, la app puede pedir una lectura nueva para una cuenta sin lecturas de los últimos 15 minutos. Ejecuta el comando /usage del propio Claude Code de ese entorno o pide a Codex sus límites de uso, de uno en uno y como máximo una vez cada 15 minutos por entorno, con esperas más largas tras intentos fallidos. Cerrar esa vista detiene las nuevas peticiones; una que ya esté en marcha puede terminar. Desactivar los medidores o este interruptor de actualización cancela una petición en curso.

Nunca se consulta una carpeta de Claude cuyos ajustes efectivos desactiven el tráfico no esencial. Para decidirlo, la isla extrae CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC de los archivos de configuración y políticas de Claude y de su propio entorno, incluidos los ajustes de su propia carpeta de trabajo y de su comando. Las fuentes se enumeran más abajo. Conserva la decisión en memoria, sin registrar ni guardar esos ajustes. Si todas las carpetas con sesión iniciada de una cuenta tienen desactivadas las consultas de uso, su fila lo indica mientras falte la lectura o esté desactualizada.

Para un directorio de Codex atendido por el daemon en ejecución de la app de Codex, la isla consulta ese proceso existente mediante su socket de control local verificado y después cierra la conexión. No inicia ningún programa nuevo para esa vía. Si no hay un daemon disponible, puede iniciar el propio servidor app-server de Codex del usuario para un directorio elegible sin ningún proceso vivo de Codex, y detenerlo después de la consulta. Ambas vías usan account/rateLimits/read de Codex. Solo se acepta una respuesta si la identidad de la cuenta coincide con la que ya se identificó en el historial de conversaciones de ese directorio; si falta la identidad o es distinta, la respuesta se descarta.

La isla se identifica ante Codex como Perch, con su versión. Codex comunica esta información del cliente a OpenAI en sus propias estadísticas de uso, según sus ajustes de analítica. La conexión también cambia el sufijo User-Agent del daemon compartido a Perch; <version> hasta que se inicializa otro cliente de origen o se reinicia el daemon. Si la isla es el primer cliente de ese tipo tras un reinicio, Perch puede convertirse en la etiqueta de origen predeterminada del daemon hasta que vuelva a reiniciarse. Las conversaciones conservan los nombres de sus propios clientes. Cerrar la conexión no revierte estas etiquetas compartidas del daemon.

Los programas del proveedor usan su propia sesión iniciada y contactan con Anthropic u OpenAI para obtener los datos de uso según las condiciones de esos proveedores. Cowork Island no lee sus tokens ni sus credenciales del Llavero para esta actualización; solo comprueba que existe el archivo auth.json de Codex, sin abrirlo. No se envía nada de esta actualización a los servidores de Cowork Island. Este interruptor es independiente de Compartir estadísticas de uso. La isla conserva en memoria su calendario de actualizaciones y las últimas lecturas de Codex, que desaparecen al salir. Claude Code actualiza su propia caché local de uso y puede conservar sus archivos habituales de mantenimiento; Codex gestiona su propio estado local. La isla no conserva la salida sin procesar de esos programas ni escribe una transcripción de sesión nueva para esta actualización.

Para decidir si Claude permite ese tráfico, la app lee y analiza estos archivos para extraer únicamente env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC: settings.json (o cowork_settings.json) y remote-settings.json de cada carpeta de Claude; el campo env de nivel superior del archivo de identidad; /Library/Application Support/ClaudeCode/managed-settings.json y managed-settings.d/*.json del equipo; el perfil de usuario o dispositivo en /Library/Managed Preferences/[<user>/]com.anthropic.claudecode.plist; y .claude/settings.json y .claude/settings.local.json dentro de su propia carpeta de trabajo ~/.perch/usage-ask. También comprueba esa variable en su propio entorno y en --settings de su propio comando, y comprueba CLAUDE_CODE_USE_COWORK_PLUGINS en su entorno para elegir el archivo de ajustes del usuario. No examina los ajustes de tus proyectos. Los valores extraídos solo sirven para decidir si las consultas están desactivadas; la decisión retenida y si se pudo leer permanecen en memoria.

Para mostrar el nombre de un plan de Claude cuyo código de nivel no conoce, la app también extrae oauthAccount.organizationType del archivo de identidad que ya lee. Los valores reconocidos dan los nombres Team, Enterprise, Max o Pro; si no reconoce ni el nivel ni el tipo de organización, no muestra ninguna etiqueta de plan.

La app recuerda los nombres de las cuentas de Claude para los medidores en ~/.perch/account-names.json, en este Mac. Para cada identificador de cuenta de Claude guarda la dirección de correo y una hora registrada de última observación, además de una versión del formato del archivo; no guarda ninguna cuenta de Codex en él. Solo aprende nombres durante las lecturas de uso mientras Mostrar medidores de uso está activado, como lo está por defecto. Las observaciones proceden de archivos locales de identidad de Claude y de registros de sesión que ya están en memoria. Un registro de sesión puede seguir nombrando una cuenta después de cerrar sesión hasta que salgas de la isla, por lo que la hora de última observación no acredita que la cuenta siga conectada. El archivo es JSON sin cifrar y se escribe de forma atómica con permisos 0600 (solo tu usuario puede leerlo o escribirlo). La dirección recordada solo sirve para nombrar una cuenta en los medidores cuando ningún archivo de identidad actual ni sesión en memoria proporciona su dirección. La primera lectura de uso elimina las entradas cuya última observación registrada tenga más de 30 días, salvo que la cuenta vuelva a observarse en esa misma lectura. Si la app ha permanecido cerrada ese tiempo, ocurre en la primera lectura tras volver a ejecutarla. Desactivar Mostrar medidores de uso elimina el archivo entero. Al volver a activar los medidores, aprende de nuevo los nombres a partir de las observaciones actuales. Nada de este archivo se envía, se registra, se incluye en una exportación de diagnóstico ni se copia a sessions.json.

Para una antigua cuenta de Claude cuya dirección no esté disponible en su identidad actual, en la memoria de sesiones ni en los nombres recordados, se conserva la alternativa existente: Cuenta anterior en un Mac con una carpeta de Claude, o la etiqueta de la antigua carpeta en un Mac con varias, numerada cuando hace falta. El tipo de plan descrito antes permanece en memoria; el nuevo archivo conserva nombres de cuentas, no el plan ni las lecturas de uso.

La isla también guarda dos registros en sus propios ajustes de este Mac: usageAccountSelectionV1 contiene una versión de formato, una marca de selección inicial, los códigos opacos de las cuentas seleccionadas en su orden de selección y el código de la cuenta principal elegida, si la hay. usageForgottenAccountsV1 contiene una versión de formato, el código opaco y la hora de retirada de cada cuenta de Claude eliminada con la ✕, y códigos sin hora de antiguas cuentas seleccionadas o principales que se vigilan para poder borrar su selección cuando desaparezcan. Ambos registros usan los mismos códigos SHA-256 sin sal, derivados del proveedor y de la clave de la cuenta. Son seudónimos, no anónimos: quien conozca una posible clave de cuenta puede recalcular su código. Ninguno contiene una dirección de correo, un identificador de cuenta sin transformar, una carpeta, un nombre ni cifras de uso. El contenido de ninguno de ellos se envía, se registra ni se incluye en una exportación de diagnóstico.

La ✕ del selector elimina la fila de una antigua cuenta de Claude, borra su selección y borra también la elección de cuenta principal si lo era. Además, elimina inmediatamente la entrada de esa cuenta del registro de nombres recordados y reescribe ~/.perch/account-names.json sin ella. Un fallo de escritura o eliminación local puede dejar el contenido anterior en disco. Hasta que se confirme su vuelta o salgas de la isla, los registros de sesión no pueden volver a guardar esa dirección en el archivo de nombres; una observación del archivo de identidad aún puede proporcionarla directamente. Esto elimina la fila del medidor y el nombre recordado, no todos los rastros de la cuenta: por ejemplo, los identificadores de cuenta existentes en sessions.json permanecen.

Una fila retirada puede reaparecer cuando una actualización encuentra una lectura de esa cuenta reconocida como conectada mediante una carpeta local o una sesión conocida, o una lectura cuyo periodo de uso empezó más de dos minutos después de retirarla. Su entrada de retirada solo se borra cuando sucesivas actualizaciones muestran esa evidencia de forma consistente durante al menos un minuto. En los demás casos, se depura en la primera actualización una vez transcurridos más de 15 días desde la retirada. El uso dentro de un periodo que ya estaba abierto al retirarla no demuestra por sí solo que haya vuelto. Un código vigilado se elimina cuando la cuenta ya no está seleccionada ni es la principal, o cuando su fila vuelve a aparecer, deja de clasificarse como cuenta anterior y no hay una deselección automática pendiente. Mientras su fila está ausente, una cuenta seleccionada o principal sigue vigilada. Cuando ya no quedan entradas de retirada o vigilancia, se elimina toda la clave usageForgottenAccountsV1.

Una antigua cuenta de Claude con una lectura, que ni una carpeta local ni una sesión conocida reconocen como conectada, sale de los medidores en la siguiente actualización cuando su lectura mostrada tiene más de siete días. Esta caducidad no se aplica a las cuentas de Codex. Las lecturas de la línea de estado cuyos periodos de uso ya se han reiniciado todos usan la evidencia de actividad disponible para fechar la lectura, dentro del periodo de gracia existente y del límite del inicio del periodo de uso; sin esa evidencia conservan su marca de tiempo existente. Esto no añade lecturas de archivos ni registros persistentes. El borrado automático de la selección y de la elección de cuenta principal de una cuenta caducada o ausente vigilada exige resultados consistentes durante al menos un minuto. La salida a los siete días no borra su nombre recordado, al que sigue aplicándose la regla independiente de 30 días.

Desactivar Mostrar medidores de uso elimina el archivo de nombres, pero conserva ambos registros de ajustes. No inicia nuevas actualizaciones de uso; una que ya estuviera en marcha puede terminar y depurar el registro de retiradas. Sin actualizaciones no hay depuración, por lo que las retiradas pueden permanecer más de 15 días. Las selecciones no tienen caducidad temporal aparte del borrado de antiguas cuentas descrito; cambiar una selección actualiza ese registro. La regla de 15 días no hace caducar los códigos de vigilancia. Los identificadores temporalmente excluidos del aprendizaje de nombres y los códigos y horas de primera observación de las decisiones pendientes de vuelta o deselección solo permanecen en memoria y desaparecen al salir. Si guardar el registro de retiradas produce un error, la isla solo registra «Could not save the removed usage accounts». Esa línea fija no contiene datos de cuentas y puede aparecer en la sección de registros de una exportación de diagnóstico.

Una función opcional modifica un archivo tuyo y no envía nada. Leer el uso de la línea de estado de Claude Code (Ajustes → Uso → Claude Code, desactivada por defecto) añade un pequeño paso de Cowork Island a la entrada statusLine del propio settings.json de Claude Code, en cada directorio de configuración de Claude Code de este Mac que tenga una. Claude Code entrega a ese paso las cifras de uso del plan que ya calcula para su línea de estado, y el paso las escribe, dos porcentajes y dos horas de reinicio, en un archivo dentro de ~/.perch/usage. Tu línea de estado visible no cambia: el comando original se ejecuta después del nuestro con la misma entrada. La entrada original se guarda y se restaura literalmente al desactivar la función, y se te indica antes de activar el interruptor cualquier directorio sin línea de estado, porque añadirla también oculta los consejos del pie de Claude Code. No se lee ningún inicio de sesión, token ni elemento del Llavero; se evaluó un lector basado en credenciales y se descartó por la política de Anthropic sobre su uso. Nada de esto sale del equipo.

Exportación local de diagnóstico

Tú decides si envías la exportación de diagnóstico, que primero se depura. Exportar diagnóstico… (Ajustes → Acerca de) escribe un ZIP donde elijas y no abre nada. Contiene versiones, versión de macOS, configuración regional, zona horaria, la ruta del socket con tu carpeta de inicio ocultada y los diez ajustes de visualización: ocultar a pantalla completa, ocultar sin sesiones, contraer al salir el puntero, Smart Suppress (siempre activo desde la versión 2.0), tiempo de espera de sesiones, cuándo archivar tarjetas Pendiente y Hecho sin actividad, cuánto conservar sesiones archivadas, máximo de sesiones visibles, velocidad de las mascotas y pantalla elegida. Incluye estados de sesión (un identificador corto, estado, origen, modelo, herramienta en curso, terminal, identificador de proceso, número de subagentes y pasos de herramientas, última actividad y último nombre de carpeta del directorio de trabajo); eventos de hooks recientes (hora, nombre del evento, origen, nombre de herramienta, si llegó a través del plugin, qué campos de la carga estaban presentes —nunca su contenido— y un identificador corto de sesión); el estado del socket; y las filas de sesión que la app guarda en ~/.perch/sessions.json, sin tu texto libre (identificadores completos de sesión y proveedor, identificadores de terminal o panel que usa el salto, nombre del archivo de transcripción, identificador de proceso y marcas de tiempo). También copia las líneas de registro de la propia app de las últimas dos horas, la salida de sw_vers y hasta cinco informes de fallos de la propia app. Ese intervalo de líneas copiadas no es un plazo de conservación de los registros. Excluye instrucciones, respuestas, borradores de instrucciones, variables de entorno capturadas, títulos de sesiones y vistas previas de instrucciones de hooks; sustituye tu ruta de inicio por ~ en todos los archivos y, en las copias de los archivos de configuración de agentes, vacía el valor de las claves cuyo nombre sugiere un secreto. La opción lo explica y el archivo es para que lo revises antes de adjuntarlo donde decidas.

Licencias y conexiones opcionales

La verificación de la licencia tras activarla no requiere una conexión continua. Las integraciones opcionales, las actualizaciones y las herramientas de los proveedores pueden necesitarla. El Contrato de licencia de usuario final describe los derechos adquiridos.

Precios, compra y activación automática en macOS 2.1

En macOS 2.1, abrir la tienda o la ventana de Pro también consulta a nuestro servicio una política de precios. La petición no contiene identificador de instalación ni clave de licencia. Nuestro gestor de precios solo utiliza el país que Cloudflare deduce de la conexión y no guarda nada por sí mismo; los registros de peticiones de Cloudflare se describen más abajo.

Iniciar una compra envía a nuestro servicio el identificador de instalación, el producto elegido, el idioma, la moneda mostrada y cualquier código de descuento que introduzcas. Para crear el proceso de pago, enviamos a Polar el producto, la moneda, el idioma, cualquier descuento aplicable y la dirección IP de la conexión para precompletar los impuestos y prevenir el fraude, junto con un código aleatorio de reclamación. El propio identificador de instalación no se envía a Polar al crear el pago. La página de pago se abre en tu navegador, según las condiciones de Polar.

Para reclamar la compra, la app envía a nuestro servicio su identificador de instalación y el identificador del proceso de pago. Nuestro servicio consulta en Polar el proceso de pago, el pedido, las concesiones de beneficios del cliente y las respuestas de claves de licencia; comprueba el pago y la asociación con el pedido y devuelve únicamente las claves de ese pedido. Se puede reclamar durante 24 horas desde la creación del proceso de pago. En nuestra tabla de compras de Cloudflare D1 solo conservamos el identificador del proceso de pago, un hash adicional del identificador de instalación, el código aleatorio de reclamación, el producto, la hora de creación y, si se completa, la hora de la primera reclamación. No guardamos en esa tabla claves sin transformar, direcciones IP, códigos de descuento ni datos de contacto o facturación del cliente. Los registros de más de siete días pueden eliminarse mediante la limpieza diaria y antes de cada nuevo registro de compra; cada limpieza elimina hasta 500, por lo que una interrupción o una acumulación puede prolongar la conservación. El historial de recuperación de D1 puede conservar los datos anteriores al borrado hasta 30 días en el plan de pago. Los registros ordinarios de licencia creados al activar tienen su propio plazo. Polar conserva sus registros de compra según su propia política de privacidad.

Compras pendientes en tu Mac. Para reanudar un proceso de pago tras reiniciar, la app guarda en sus propios ajustes el identificador del proceso de pago, el producto, la hora de creación, la dirección del pago y la moneda. Elimina la entrada tras una activación correcta o un rechazo definitivo; la próxima vez que comprueba las compras pendientes elimina las que han cumplido 24 horas sin consultar al servicio. Si no vuelves a ejecutar la app, ese registro local puede permanecer en sus ajustes. La entrada de compra pendiente no contiene ninguna clave de licencia ni identificador de instalación.

La app comprueba una compra pendiente cuando vuelves de Polar, vuelves a la ventana de compra o lo intentas de nuevo: envía el identificador de instalación y el identificador del proceso de pago a license.coworkisland.com/v1/claim y después usa la activación habitual. Pasadas las 24 horas, puedes seguir pegando la clave de Polar.

El identificador de instalación de macOS es un hash SHA-256 de 64 caracteres, estable tras reinstalar o borrar preferencias. No puede convertirse de nuevo en el identificador del equipo, pero no es anónimo: la sal es una constante de la app y quien ya conozca un posible identificador puede calcular el hash y comprobar si coincide. Es un identificador seudonimizado. Puedes consultarlo en Ajustes > Licencia para citarlo al pedir soporte.

Si tu Mac no tiene ninguna clave de licencia, has desactivado tanto la búsqueda automática de actualizaciones como Compartir estadísticas de uso, no hay ningún Mac remoto configurado para conectarse automáticamente, no estás usando la tienda ni la ventana de Pro y no tienes ninguna compra pendiente, la única petición automática que hace la app a nuestros servidores es la de inicio de la prueba, cuando corresponde y en inicios posteriores solo hasta que el servicio la concede o la rechaza. No es una condición del plan Gratis: un pack activado en Gratis sí requiere revalidación. Las conexiones SSH van al equipo que elegiste, y la actualización local de medidores puede hacer que los programas de tus proveedores contacten con ellos; no nos envía nada a nosotros. Los dos interruptores de búsqueda automática de actualizaciones y estadísticas de uso están activados por defecto.

Las peticiones de prueba y gestión de claves en macOS no llevan cookies, identificadores publicitarios, un agente de usuario fijado por nosotros ni datos de sesiones o de uso. Las búsquedas de actualizaciones sí llevan el agente de usuario de Sparkle, que identifica la app, su versión y la versión de Sparkle, además de las cabeceras habituales de macOS y una cabecera que solicita el archivo RSS; no llevan hash de instalación, clave de licencia ni perfil del sistema, y no añadimos cabeceras propias ni una cadena de consulta. Una descarga que aceptes lleva el mismo agente de usuario y las cabeceras del sistema, sin la cabecera propia del archivo RSS, y su dirección identifica la versión elegida. El interruptor de actualizaciones beta solo elige qué entradas de ese mismo archivo se ofrecen; no cambia la dirección ni la petición.

Las estadísticas de uso de la app

Desde la versión 1.3, la app nos envía estadísticas de uso. Solo las usamos para calcular totales: cuántas instalaciones hay en uso y qué versiones, planes, versiones de macOS, idiomas y regiones tienen, cuántas pruebas terminan en una compra, cuántas instalaciones dejan de enviarlas y, desde la versión 2.1, en cuántas la primera puesta en marcha consigue que aparezca una sesión utilizable y en cuántas se abre la ventana de Pro. La app hace un envío alrededor de un minuto después de iniciarse y, luego, uno al día aproximadamente mientras está abierta. Si un envío falla, no se repite. Si en tu cuenta de usuario de macOS ya se ha abierto una versión anterior de la app y se conservan sus ajustes, no se envía nada hasta que cierres la ventana en la que la app te muestra un aviso que explica estas estadísticas y te permite desactivarlas. Salir de la app con esa ventana todavía abierta no cuenta como cerrarla, y la ventana vuelve a abrirse la próxima vez que se inicie la app. Desde la versión 1.3, ese aviso forma parte de la ventana de novedades de la app. En los demás casos, por ejemplo en un Mac nuevo o en una cuenta de usuario de macOS nueva, la app las envía desde la primera vez que se abre. Los dos datos que se añaden en la versión 2.1, descritos más abajo, tienen su propio aviso. Si en tu cuenta de usuario de macOS ya se ha abierto una versión anterior de la app y se conservan sus ajustes, estos dos datos no se incluyen en ningún envío hasta que cierres la ventana de novedades de la versión 2.1, o de la versión posterior a la que actualices, en la que aparece ese aviso. No basta con haber cerrado el aviso de la versión 1.3. Salir de la app con esa ventana todavía abierta tampoco cuenta como cerrarla, y la ventana vuelve a abrirse la próxima vez que se inicie la app. Mientras no la cierres, estos dos datos se quedan en tu Mac y los envíos se hacen sin ellos. En una instalación nueva, se incluyen desde el primer envío.

Cada envío contiene un identificador aleatorio que se crea en tu Mac la primera vez que la app hace un envío, la versión y el número de compilación de la app, tu plan (Gratis, prueba, Pro o Gratis con un pack de mascotas), los días que le quedan a la prueba mientras está en curso, tu versión de macOS, el idioma y la región de tu sistema (por ejemplo, es_ES), si es el envío que sigue al inicio de la app o el diario, si nuestro servicio de licencias ya ha aceptado algún envío con este identificador y si la app ya se había abierto en tu cuenta de usuario de macOS antes de que empezaran las estadísticas. La app calcula esta última respuesta en tu Mac, según existan o no algunos de sus propios ajustes, y solo envía la respuesta. Desde la versión 2.1, cada envío contiene además dos datos. El primero indica, con un sí o un no, si la app ha tenido alguna sesión que mostrar en su panel desde que empezó a anotar estos datos. Las sesiones ocultas o archivadas no cuentan. Para obtener esta respuesta, la app solo comprueba si su panel tiene alguna sesión que mostrar, algo que el panel ya calcula para mostrarse; las estadísticas no reciben nada más de tus sesiones, como su contenido, nombres, rutas, títulos o estado, ni la herramienta de IA de la que proceden, y no guardan nada más. El segundo indica cuántas veces se ha abierto la ventana de Pro en tu Mac desde que la app empezó a anotar estos datos, incluidas las veces que se abre en el paso para introducir la clave de licencia, hasta 100 (100 significa 100 o más). Traer al frente la ventana de Pro cuando ya está abierta o pasar de un paso a otro no cuenta. Ninguno de los dos datos incluye clics para ir al pago, compras, fechas ni horas, ni desde qué parte de la app se abrió la ventana. Como cada envío se guarda con la hora a la que llegó, un cambio en cualquiera de los dos datos entre dos envíos indica aproximadamente cuándo ocurrió. La app empieza a anotar estos datos con la versión 2.1, sin nada anterior. Un envío nunca contiene el identificador de instalación que se usa para las licencias, ninguna clave de licencia, tu nombre ni tu dirección de correo, ni ningún contenido de tus sesiones, como nombres de sesión, instrucciones, respuestas o rutas de archivos.

Los envíos llegan a nuestro servicio de licencias, que funciona en Cloudflare, en nuestra propia cuenta, y no los recibe ninguna empresa de analítica ni ningún otro tercero. El servicio guarda cada envío, con la hora a la que llegó, en Workers Analytics Engine, de Cloudflare, sin tu dirección IP ni otros datos técnicos de la conexión, y mantiene estos registros separados de los de las licencias. Workers Analytics Engine conserva cada registro durante tres meses desde que se escribe. Cloudflare también conserva para nosotros, durante 7 días, un registro de cada petición al servicio de licencias, incluidos estos envíos. Ese registro contiene la dirección IP desde la que se hizo la petición, la ubicación aproximada (como la ciudad y el país) y la red (como tu proveedor de internet) que se deducen de esa dirección, y el agente de usuario. No guardamos copia. Durante esos 7 días, la hora de un envío podría relacionarse con ese registro y, a través de él, con una dirección IP y con cualquier petición de licencia hecha desde esa misma dirección en esos días. Son datos seudonimizados, no anónimos.

Puedes desactivar las estadísticas en cualquier momento en Ajustes > General > Privacidad > Compartir estadísticas de uso. Esta opción está activada salvo que la desactives, tanto en una instalación nueva como después de una actualización. Cuando la desactivas, la app deja de hacer envíos y de anotar los dos datos de la versión 2.1, y el identificador aleatorio y esos dos datos se borran de tu Mac. El resto de la app sigue igual. Si vuelves a activarla, la app crea un identificador aleatorio nuevo y vuelve a anotar esos dos datos desde cero.

Futura edición de Windows

Windows y Microsoft. La edición de Windows llegará próximamente a Microsoft Store. Cuando esté disponible, obtendrá las actualizaciones a través de la Store, con comprobaciones tras iniciarse y aproximadamente una vez al día. Esas peticiones irán a Microsoft, no a nuestro sitio web; la Store podrá instalar actualizaciones según sus propios ajustes. Microsoft es responsable independiente del tratamiento de su Store, de las cuentas de Microsoft y de los diagnósticos de Windows, según la Declaración de privacidad de Microsoft. Una vez disponible la edición de Windows, como editor podremos consultar en Partner Center los totales de adquisiciones, las reseñas de la Store (incluidos sus nombres públicos) y los informes de errores de Windows. Los utilizaremos para mantener la edición de Windows y leer y responder reseñas, sobre la base de nuestro interés legítimo (art. 6.1.f del RGPD). No conservaremos copias fuera de Partner Center y podremos consultarlos mientras Microsoft los mantenga disponibles. Es independiente de los envíos de estadísticas de la propia app.

En la futura edición de Windows, el identificador de instalación será un hash SHA-256 de una etiqueta de origen, un separador, un identificador del equipo y una sal fija de la aplicación de Windows. La fuente será la API de identificación del sistema Windows (basada en TPM o UEFI cuando estén disponibles), o, en su defecto, un UUID SMBIOS válido o MachineGuid. El identificador sin transformar permanecerá en el PC; el hash se recalculará con la fuente disponible y puede cambiar si cambia esa fuente. El archivo local del identificador servirá para diagnóstico y no será la fuente de la identidad de licencia. Sus peticiones de licencia usarán un agente de usuario con la app y su versión, sin identificador de instalación. El servicio compartido admite un campo de plataforma (macos o windows); los informes de Mac hasta la versión 2.1 lo omiten y se tratan como macOS. Windows enviará su plataforma y la versión del sistema con los números principal, secundario y de compilación, sin revisión. El campo no cambia la finalidad, los destinatarios ni la conservación de los informes. Los tiempos, avisos y controles descritos en la sección de estadísticas anterior corresponden a macOS.

El sitio web

El sitio web no requiere una cuenta, no muestra publicidad y no usa cookies publicitarias ni de seguimiento. Nuestras páginas cargan un pequeño script propio que cuenta las visitas a las páginas y los clics en el enlace de descarga. De cada visita o clic guardamos la fecha y hora, un código diario, qué ocurrió (una visita o un clic en la descarga) y la página. Si la hay, guardamos la etiqueta del enlace o de la campaña (por ejemplo, qué botón de descarga se usó o qué enlace de campaña te trajo a la página) y, en una visita, el nombre del sitio desde el que llegaste, si es otro sitio. También guardamos si el dispositivo es un Mac, un móvil o una tableta, u otro dispositivo. Para distinguir un iPad de un Mac, el script envía además cuántos puntos táctiles admite la pantalla; solo lo usamos para eso y no lo guardamos. El código diario es un código corto calculado con una clave secreta a partir de la fecha, la dirección IP y el agente de usuario de tu navegador. Nos permite contar cuántas personas distintas visitan el sitio cada día. Cambia cada día y es distinto del que usamos para las búsquedas de actualizaciones de la app, así que, si no conocemos la dirección IP y el agente de usuario, no podemos relacionar las visitas de días distintos entre sí ni con una instalación de la app. El script no usa cookies ni almacenamiento del navegador y no crea ningún identificador en tu dispositivo. No guardamos la dirección IP, el agente de usuario completo ni la dirección completa de la página desde la que llegaste, y dejamos fuera los robots y scripts que podemos detectar y las páginas que el navegador carga por adelantado y que nunca llegas a abrir. Son datos seudonimizados, no anónimos.

Nuestro servidor también cuenta las peticiones al enlace de descarga de la app, como un total técnico que incluye robots y scripts y que mostramos aparte de los recuentos del script. Cada uno de estos registros guarda cuatro datos: la fecha y hora, el nombre del sitio web desde el que llegaste, la etiqueta del enlace o de la campaña y la familia de tu navegador (por ejemplo, Safari o Chrome). No contienen la dirección IP, ningún código diario ni ningún otro identificador. Si abres el enlace de descarga en un ordenador con Windows, Linux o ChromeOS, en lugar de iniciar la descarga te llevamos a una página que explica que Cowork Island es una app para Mac, y esa petición no cuenta en este total. Tampoco cuentan en él las peticiones desde móviles y tabletas. Ninguno de estos recuentos mide descargas completadas ni instalaciones.

Las peticiones desde redes que usamos nosotros quedan fuera de todos estos recuentos y del de búsquedas de actualizaciones. Para ello, nuestra base de datos guarda códigos calculados con una clave secreta a partir de las redes que decidimos excluir, nunca las propias direcciones; la red de cada petición solo se compara con ellos y nunca se guarda. También guardamos una cookie propia y funcional en los navegadores con los que desarrollamos y probamos el sitio web, a través de una página privada que no está enlazada en ninguna parte, para que nuestras propias visitas de prueba no cuenten. Tiene el mismo valor fijo en todos los navegadores que la tienen, no contiene ningún identificador ni ningún perfil, no alimenta ninguna analítica y, al visitar el sitio web, nunca la recibes. Cloudflare aloja y protege el sitio web y trata datos técnicos de las peticiones, incluidas las direcciones IP. Nuestro alojamiento ya no crea un registro rutinario, con fines de diagnóstico, de las peticiones que atiende el propio código del sitio, como la carga de las páginas, el enlace de descarga, los envíos del script de recuento y los formularios de correo. Sí conserva, durante un máximo de 7 días, los mensajes de diagnóstico y los informes de errores que genera ese código. Pueden incluir datos técnicos de la petición. Si contienen un campo para la dirección solicitada en nuestro sitio, nuestro alojamiento elimina de ese campo la parte que sigue al signo «?».

Si nos pides que te enviemos el enlace para Mac, facilitamos tu dirección de correo y el mensaje a Resend para entregar el único correo que has solicitado, en el idioma de la página. El correo contiene un enlace a la página principal de Cowork Island. Pedir el enlace no te añade a ninguna lista, y no utilizamos tu dirección para publicidad. El seguimiento de aperturas y clics está desactivado en estos mensajes.

Cuando usas uno de nuestros formularios de correo, Cloudflare Turnstile comprueba señales del navegador y de la red para ayudar a prevenir el abuso automatizado. Estas señales pueden incluir tu dirección IP e información técnica de tu navegador y dispositivo. No enviamos tu dirección de correo a Turnstile. Cloudflare trata esta información por nuestra cuenta para proteger el formulario y también actúa como responsable independiente cuando utiliza las señales de Turnstile para mejorar su detección de bots, según su Anexo de privacidad de Turnstile.

Para limitar los envíos repetidos y gestionar los reintentos, nuestro servicio conserva un identificador aleatorio de la petición, identificadores calculados con una clave a partir de la dirección de correo y de la IP, el idioma, las fechas y horas y el resultado de la petición. Estos registros de seguridad no contienen la dirección de correo original, la IP original, el token de verificación ni el contenido del correo. Son datos seudonimizados, no anónimos. La dirección original se trata al gestionar tu petición y en Resend para entregar el mensaje.

La lista de aviso para Windows

En la página que mostramos en los ordenadores con Windows, Linux y ChromeOS, puedes pedir que te enviemos un único correo cuando Cowork Island salga para Windows. Para apuntarte, marcas una casilla para dar tu consentimiento y después confirmas tu dirección: el enlace que te enviamos por correo abre una página donde la confirmas con un clic. Guardamos la lista en nuestra base de datos, alojada en Cloudflare. De cada dirección guardamos la propia dirección, el idioma de la página, la versión del texto de consentimiento que aceptaste, cuándo te apuntaste y cuándo confirmaste, y versiones en hash de los códigos de los enlaces de confirmación y de baja. No guardamos con ella tu dirección IP ni datos de tu navegador. Enviamos el correo de confirmación y el aviso a través de Resend, con el seguimiento de aperturas y clics desactivado.

Si no confirmas en 7 días, el enlace deja de funcionar y borramos tu dirección. Cuando confirmas, la conservamos hasta que te das de baja de la lista, hasta que enviamos el aviso de Windows (entonces borramos toda la lista) o, como máximo, durante 24 meses desde que te apuntaste. Cada correo de la lista incluye un enlace para quitar tu dirección: en la página que se abre, basta un clic para borrarla al instante. También puedes escribir a support@coworkisland.com.

Para prevenir abusos, el formulario utiliza Cloudflare Turnstile, como se describe más arriba. De cada intento guardamos además un código calculado con una clave secreta a partir de tu dirección IP y, por cada correo de confirmación que enviamos, otro calculado del mismo modo a partir de tu dirección de correo, cada uno con su hora. Sirven para limitar cuántas veces se puede usar el formulario desde una misma conexión y cuántos correos puede recibir una misma dirección. No contienen ni la dirección IP ni la dirección de correo, y una limpieza diaria los borra cuando cumplen 2 días. Son datos seudonimizados, no anónimos.

Pagos

Utilizamos Polar (Polar Software Inc.) como «merchant of record»: Polar es legalmente el vendedor y se encarga del pago, de los datos de tu tarjeta, de las facturas y de los impuestos. Nosotros nunca vemos los datos de tu tarjeta. Al proceso de compra se le aplica la política de privacidad de Polar: Política de privacidad de Polar. Polar es responsable independiente del tratamiento de los datos de cliente y de pago que recoge.

Tus derechos y cómo contactar

Para los datos de licencia que trata nuestro servidor de licencias (el identificador de máquina en hash y, si compraste una licencia, tu clave de licencia), el responsable del tratamiento es el desarrollador, Daniel Pau Castro Engström. La base jurídica es la ejecución de un contrato (art. 6.1.b del RGPD): esos datos hacen falta para darte la licencia que has pedido y la prueba que te concede el Contrato de licencia de usuario final. Desde la versión 1.3.1, esa prueba empieza sola. La misma base cubre consultar un precio a tu petición, crear el proceso de pago y reclamar el pedido pagado para activarlo.

Daniel Pau Castro Engström también es el responsable del tratamiento del servicio de correo solicitado y de sus registros de prevención de abusos; la base jurídica es tu petición (la prestación del servicio que has solicitado) y, para la prevención de abusos, nuestro interés legítimo en proteger el formulario.

Daniel Pau Castro Engström también es el responsable del tratamiento de los registros de búsqueda de actualizaciones. Los usamos para estimar cuántas instalaciones de cada versión están en uso, sobre la base de nuestro interés legítimo (art. 6.1.f del RGPD) en mantener la app y planificar sus actualizaciones. Puedes desactivar la búsqueda automática en cualquier momento en Ajustes > Acerca de > Actualizaciones > Buscar actualizaciones automáticamente. Los derechos que se indican a continuación se aplican a estos registros.

Daniel Pau Castro Engström también es el responsable del tratamiento de las estadísticas de uso de la app. Las usamos para contar cuántas instalaciones hay en uso y qué versiones, planes, versiones de macOS, idiomas y regiones tienen, cuántas pruebas terminan en una compra, cuántas instalaciones dejan de enviarlas y, desde la versión 2.1, en cuántas la primera puesta en marcha consigue que aparezca una sesión utilizable y en cuántas se abre la ventana de Pro. La base jurídica es nuestro interés legítimo (art. 6.1.f del RGPD) en saber, de forma agregada, cómo se usan la app y su prueba, si su primera puesta en marcha consigue que aparezca una sesión utilizable y si se abre su ventana de Pro, para poder mantener la app y planificar su desarrollo. Puedes oponerte en cualquier momento desactivándolas en Ajustes > General > Privacidad > Compartir estadísticas de uso. Desde ese momento, la app deja de hacer envíos y de anotar los dos datos de la versión 2.1, y el resto de la app sigue igual. También puedes escribirnos. Estos registros contienen un identificador aleatorio y no tu nombre, así que por nuestra cuenta no podemos saber cuáles son tuyos (art. 11 del RGPD). El identificador se guarda en los ajustes de la app en tu Mac, y al desactivar las estadísticas se borra. Si quieres que encontremos tus registros, escríbenos antes de desactivarlas y te diremos cómo consultar el identificador. Workers Analytics Engine no nos permite modificar ni borrar registros concretos, así que se conservan hasta que caducan, tres meses después de escribirse. Los derechos que se indican a continuación se aplican a estos registros.

Daniel Pau Castro Engström también es el responsable del tratamiento de los recuentos del sitio web: visitas a las páginas, clics en la descarga y solicitudes de descarga. Los usamos para entender cómo llega la gente al sitio web y si después descarga la app, sobre la base de nuestro interés legítimo (art. 6.1.f del RGPD) en saber, de forma agregada, cómo se usa el sitio web para poder mejorarlo. Puedes oponerte en cualquier momento. La forma más sencilla es bloquear el script de recuento en tu navegador; el sitio web funciona igual sin él. También puedes escribirnos. Estos registros no contienen tu dirección IP ni tu nombre, así que por nuestra cuenta no podemos saber cuáles son tuyos (art. 11 del RGPD). Si nos das la fecha de una visita y la dirección IP y el agente de usuario que usó tu navegador ese día, podemos calcular el código diario de ese día. Después podemos encontrar las visitas a las páginas y los clics en la descarga registrados con ese código, si todavía no han caducado. Workers Analytics Engine no nos permite modificar ni borrar registros concretos, así que se conservan hasta que caducan, tres meses después de escribirse. Los derechos que se indican a continuación se aplican a estos registros.

Daniel Pau Castro Engström también es el responsable del tratamiento de la lista de aviso para Windows. La base jurídica es tu consentimiento (art. 6.1.a del RGPD). Puedes retirarlo en cualquier momento con el enlace que incluye cada correo de la lista o escribiéndonos; retirarlo no afecta a la licitud del tratamiento anterior a la retirada. Para los registros de prevención de abusos del formulario de la lista, la base jurídica es nuestro interés legítimo (art. 6.1.f del RGPD) en proteger el formulario.

Daniel Pau Castro Engström también es el responsable del tratamiento de los mensajes de diagnóstico y los informes de errores que nuestro alojamiento conserva durante un máximo de 7 días y de los registros técnicos del servicio de licencias. La base jurídica es nuestro interés legítimo (art. 6.1.f del RGPD) en que el sitio web, la búsqueda de actualizaciones de la app y el servicio de licencias funcionen y sean seguros.

Cuando Cloudflare y Resend tratan tus datos por nuestra cuenta, pueden hacerlo fuera del Espacio Económico Europeo, incluido Estados Unidos. Ambas empresas están certificadas conforme al Marco de Privacidad de Datos UE-EE. UU. El Anexo de tratamiento de datos de Cloudflare y el Anexo de tratamiento de datos de Resend, que forman parte de nuestros contratos con ellas, incluyen además las cláusulas contractuales tipo de la UE para las transferencias fuera del Espacio Económico Europeo. Para más información sobre estas transferencias, escribe a support@coworkisland.com.

Con arreglo al RGPD puedes pedir el acceso, la rectificación, la supresión, la limitación o la portabilidad de tus datos, y puedes oponerte al tratamiento. Escribe a support@coworkisland.com y te responderemos. También puedes presentar una reclamación ante una autoridad de control; en España es la Agencia Española de Protección de Datos (AEPD).

Conservación de los datos

Cambios en esta política

Si cambia de forma sustancial el tratamiento de datos, explicaremos el cambio y publicaremos una política actualizada con una nueva fecha de entrada en vigor.

Último cambio (26 de octubre de 2026): desde la versión 2.1, las estadísticas de uso de la app incluyen dos datos más: si la app ha tenido alguna sesión que mostrar en su panel y cuántas veces se ha abierto la ventana de Pro, hasta 100, en ambos casos desde que empezó a anotarlos. Los usamos para saber, de forma agregada, si la primera puesta en marcha consigue que aparezca una sesión utilizable y si se abre la ventana de Pro. Si actualizas desde una versión anterior, estos dos datos solo se envían después de que cierres la ventana de novedades de la versión 2.1, o de la versión posterior a la que actualices, con el aviso que los explica. Al desactivar las estadísticas, estos datos se borran de tu Mac junto con el identificador aleatorio. Todo ello se explica en «Las estadísticas de uso de la app» y en «Tus derechos y cómo contactar». La versión 2.1 también añade acciones para la app Atajos de Apple y para Spotlight, que reciben el tipo de agente, el estado y desde cuándo de tus sesiones, y sus nombres y carpetas solo si lo activas. Esta política explica ahora, además, qué entrega nuestro servicio de licencias a Polar cuando activas una clave, que los equipos configurados para conectarse automáticamente también vuelven a conectarse si se cae la conexión, y que la aplicación ejecuta los propios programas de Claude Code y de la app de Codex para listar sus sesiones, en «Qué lee la aplicación en tu Mac y por qué» y en «Licencias y conexiones opcionales». También se describen las consultas locales de uso y sus controles, los nombres y la selección de cuentas, la retirada de cuentas anteriores y sus distintos plazos, la vinculación local de paneles de Codex y sus límites, los datos de precios, compra y activación automática, y el tratamiento previsto de la futura edición de Windows.

Cambio anterior (14 de octubre de 2026): nuestro alojamiento ya no crea, con fines de diagnóstico, un registro de alrededor de 1 de cada 100 peticiones que atiende el propio código del sitio, incluidas las búsquedas de actualizaciones de la app. Conserva durante un máximo de 7 días los mensajes de diagnóstico y los informes de errores de ese código, y elimina la parte que sigue al signo «?» de los campos que recogen la dirección solicitada, como se explica en «Licencias y conexiones opcionales», «El sitio web» y «Conservación de los datos». Los registros anteriores a este cambio caducan al cumplir sus 7 días.