La ventana emergente de la extensión respondía a la pregunta equivocada. En la 1.16 dibuja la página en la que estás.
Telli.sh: Every Translator 1.16 reconstruye la ventana emergente de la barra de herramientas como una vista de estado: una miniatura de la página en la que estás, cinco fichas etiquetadas y puntos que solo se ponen en verde cuando la extensión puede confirmar que está funcionando. Toda la configuración se ha mudado a una página de ajustes propia con vistas previas esqueléticas en vivo, la traducción instantánea ha ganado su propia pestaña y un historial que se limpia solo a los 30 días, y una campana de notificaciones trae el blog de Telli.sh en el idioma de tu navegador, en 15 versiones lingüísticas.
Hasta esta semana, pulsar el icono de Telli.sh en la barra de herramientas abría un cajón de ajustes. El marcado de la ventana emergente de la 1.15 ocupaba 16.936 bytes e incorporaba el formulario de configuración completo de los ocho proveedores que necesitan configurarse —IA integrada de Chrome, Google, Apps Script, DeepL, Ollama, compatible con OpenAI, OpenRouter y Claude—, más cinco filas de interruptores. La página de opciones que tenía al lado ocupaba 7.621 bytes. Menos de la mitad, y era precisamente la que tenía sitio de sobra.
Eso es una arquitectura de información invertida, y no hay ajuste de tamaño de letra que lo arregle. Una ventana emergente de barra de herramientas existe para responder a una sola pregunta, que acabamos llamando la pregunta del vistazo : ¿está encendido y qué va a hacer en esta página? Deberías obtener la respuesta en menos de un segundo, sin desplazarte, y cerrar.
Telli.sh: Every Translator 1.16 se envió a Chrome Web Store el 4 de septiembre de 2026 y está en revisión mientras publicamos esto. Esta versión responde a la pregunta del vistazo con un dibujo.
TL;DR
- La ventana emergente ahora es una vista de estado. 372 píxeles de ancho, con un tope de 560 de alto, sin desplazamiento. No contiene ni un solo campo de credenciales: lo hemos contado y son literalmente cero.
- Dibuja una miniatura de la página en la que estás, con líneas guía que van desde cada parte de la maqueta hasta una ficha etiquetada: idiomas, modo de visualización, vista previa de envío, proveedor, asistencia de escritura. La maqueta refleja lo que la extensión dibuja de verdad, hasta los 8 píxeles de separación entre el botón flotante y el campo de escritura.
- El verde significa verificado, no «la casilla está marcada». Tres estados: verde para «funcionando en esta pestaña», ámbar para «activado, sin verificar», gris para «desactivado».
- La traducción instantánea y el historial son la segunda y la tercera pestaña. Las entradas del historial sin fijar caducan a los 30 días de haberse creado; las fijadas, no.
- Una campana de notificaciones trae nuestro blog en el idioma de tu navegador, leído de un feed RSS propio de cada idioma, en 15 versiones lingüísticas. Si quieres enterarte de las publicaciones nuevas sin visitar el sitio, esa campana es ahora la vía más barata.
- Todo lo que se configura vive en la página de ajustes, que te muestra una miniatura funcional de cada modo de visualización en lugar de describirlo en una frase.
La ventana emergente soltó los ajustes, y ese es todo el cambio
Detrás de la 1.16 hay una sola decisión: la configuración sale, el estado entra. El icono del engranaje de la cabecera salta directamente a la sección correspondiente de la página de ajustes, así que nada quedó más lejos: simplemente dejó de interponerse en el camino a la respuesta.
Lo que queda en la ventana emergente es deliberadamente poco. Una cabecera con el nombre del sitio y un interruptor para ese sitio, porque «apágalo aquí, en esta web» es una acción de estado y no un ajuste. Una campana. Un engranaje. Y el cuerpo.
El cuerpo es la parte que merece la pena contar.
La vista de estado es un dibujo anatómico de tu propia página
Abre la ventana emergente en un sitio de chat y verás el esquema de ese sitio: dos burbujas de mensaje, el campo de escritura abajo, el botón flotante de Telli.sh apoyado encima y, más arriba, un panel de vista previa. Barras esqueléticas grises hacen de texto. Desde cinco puntos de esa maqueta, unas líneas finas se extienden hacia la izquierda hasta una columna de fichas etiquetadas.
Cada ficha nombra una cosa y da su valor actual:
| Ficha | A qué apunta | Qué muestra |
|---|---|---|
| Idiomas | la burbuja de mensaje | tu idioma de lectura → tu idioma de salida, p. ej. English → Auto-detect |
| Visualización | la traducción bajo la burbuja | Comentario en línea, Bilingüe, Clic para desplegar, Clic para alternar |
| Vista previa de envío | los botones del panel | Activada o Desactivada |
| Proveedor | el botón flotante | cuál de los nueve proveedores está seleccionado |
| Asistencia de escritura | el campo de escritura | el idioma de destino, o Desactivada |
Las fichas se ordenan de arriba abajo igual que las partes a las que apuntan, de modo que las líneas guía nunca se cruzan. Sus posiciones verticales no están escritas a fuego: se miden al dibujar. Las fichas cuyas posiciones ideales se solapan se fusionan en un grupo, y el grupo se centra, de manera que el error de alineación se reparte en vez de recaer sobre la última. Al pasar el ratón por una ficha se resalta la parte del dibujo a la que pertenece.
Y aquí está el sentido de hacerlo así. Una lista de ajustes te dice displayMode: bilingual . Un dibujo te dice dónde va a aparecer la traducción en la página que tienes delante . Además, la maqueta no es una ilustración estilizada: reproduce la geometría real que usa el script de contenido. El botón flotante se sitúa 8 píxeles por encima del borde superior del campo de escritura, alineado a la derecha; el panel de vista previa de 350 píxeles se sitúa 8 píxeles por encima del botón, con la misma alineación. La ventana emergente te enseña la interfaz de verdad, no una ficción amable de ella.
Un punto verde tiene que significar algo, así que lo hemos hecho caro
Los interruptores antiguos mostraban intención. Veías que un interruptor estaba encendido y seguías sin saber si algo se estaba traduciendo, si tu clave de API había sido aceptada o si ese sitio estaba siquiera soportado.
Por eso la 1.16 gasta el verde con cuidado. Hay tres estados, y cada uno es una afirmación que la extensión está dispuesta a defender:
- Verde: «Funcionando en esta pestaña». La extensión puede confirmarlo ahora mismo.
- Ámbar: «Activado, sin verificar». El ajuste está encendido y las credenciales están puestas, pero nada ha demostrado que la ida y vuelta funcione.
- Gris: «Desactivado». O está apagado o falta un campo obligatorio, que viene a ser lo mismo: no se va a traducir nada.
La ficha del proveedor es el caso estricto. Solo dos proveedores pueden ganarse el verde. El modo gratuito de Google Traductor no necesita credenciales del usuario y siempre está accesible, así que es verde. La IA integrada de Chrome, que se ejecuta en el dispositivo, solo se pone verde después de que la ventana emergente pregunte de verdad a Translator.availability() por tu par de idiomas y reciba una respuesta utilizable. Todos los demás —DeepL, Claude, OpenRouter, Ollama, un endpoint compatible con OpenAI, Apps Script, la API de Google— se quedan en ámbar en cuanto tienen una URL o una clave, porque verificarlos supondría gastar tu cuota en una llamada de prueba cada vez que abres la ventana. Si el campo que necesitan está vacío, es gris, no ámbar. La extensión no te dirá que algo está encendido cuando sabe que no puede funcionar.
Es una regla deliberadamente poco favorecedora. La mayoría de quienes usan los ajustes por defecto verán un punto verde de proveedor; la mayoría de quienes usan una API de pago verán ámbar para siempre. El ámbar es honesto, y preferimos publicar honesto antes que publicar verde.
Traducción instantánea: una pestaña para el texto que no tiene página
Todo lo anterior da por hecho que estás en una página compatible. Muchas veces no lo estás: alguien pega un párrafo en un ticket, o copias una frase de un PDF.
La traducción instantánea es una segunda pestaña de la ventana emergente hecha justo para eso. Eliges idioma de origen y de destino, pegas hasta 2.000 caracteres, obtienes la traducción y la copias. Entre los dos desplegables hay un botón para intercambiarlos.
No es un segundo traductor sentado junto al primero. La petición pasa por la misma cola en segundo plano, la misma caché y el mismo proveedor que cualquier traducción que la extensión haga en una página, así que lo que configuraste una vez se aplica también aquí. Y viene desactivada: instantTranslateEnabled arranca en false , porque el trabajo de la ventana emergente es la pregunta del vistazo, y un bloc de notas que no has pedido sería una cosa más entre tú y la respuesta. Actívala en los ajustes y la ventana emergente gana su tira de pestañas; déjala apagada y seguirá siendo una única vista de estado.
Un historial que se limpia solo: 30 días, salvo que lo fijes
Con la traducción instantánea activada aparece a su lado una pestaña de Historial con lo que hayas traducido ahí, de lo más reciente a lo más antiguo, en este dispositivo.
La regla de conservación es una línea: las entradas sin fijar caducan a los 30 días de haberse creado; las entradas fijadas no caducan nunca. Fija la frase que necesitas una y otra vez y se queda. El resto envejece y desaparece por su cuenta.
Merece la pena señalar dos detalles de implementación, porque cambian aquello con lo que puedes contar. La limpieza ocurre al leer la lista, no con un temporizador en segundo plano: la ventana emergente es lo único que lee esa lista, así que una alarma no podría borrar nada antes de lo que ya lo hace el simple hecho de abrirla. Y quitar la fijación a una entrada que ya pasó de los 30 días es justamente lo que la borra: la chincheta era lo único que frenaba la caducidad, y la siguiente lectura se la lleva.
Como red de seguridad hay un tope duro de 200 entradas. Si se alcanza, se conservan las fijadas y salen primero las más antiguas sin fijar. Arriba en la pestaña hay un botón para borrarlo todo.
La campana es nuestro blog, en tu idioma
Esta es la parte que más nos gustaría que notaras, porque es la que sigue trabajando después de que cierres la pestaña.
La cabecera de la ventana emergente lleva una campana de notificaciones. Muestra entradas del blog de Telli.sh: hasta tres apiladas como tarjetas en la vista de estado, la lista completa detrás de la campana y un distintivo de no leídos sobre el icono. Cada entrada abre el artículo en telli.sh.
El feed es específico de cada idioma. La extensión lee el idioma de interfaz de tu navegador, lo compara con las 15 versiones lingüísticas en las que publica el blog —inglés, coreano, japonés, chino, alemán, francés, español, italiano, portugués, ruso, polaco, vietnamita, tailandés, indonesio y malayo— y descarga el feed RSS de ese idioma. Si tu navegador está en tailandés, los avisos llegan en tailandés. Si el idioma de tu navegador no está entre los 15, recibes inglés. Las dos variantes del chino van al mismo feed en chino.
La mecánica está pensada para no molestar. El feed lo descarga la propia ventana emergente, nunca una alarma en segundo plano, y se sirve primero desde la caché, así que las tarjetas ya están dibujadas antes de tocar la red. La caché dura 6 horas, lo que hace aflorar una entrada nueva en un día laborable y a la vez pliega toda una jornada de aperturas de la ventana —que son decenas— en cuatro peticiones como mucho. Se guardan hasta 12 elementos. Una actualización fallida nunca desplaza una caché buena; la cadena de reserva va del feed en vivo a la caché, luego a una única tarjeta permanente de Telli.sh, y luego a nada.
Una entrada descartada se queda descartada. La identidad de cada elemento sale de la propia URL de la entrada sin la cadena de consulta —los parámetros de seguimiento de esos enlaces son nuestros, no de la entrada—, de modo que un artículo descartado no reaparece la próxima vez que el feed se actualiza y se reordena.
Si llevas tiempo con la intención de seguir lo que publicamos sobre traducción de reuniones y reconocimiento de voz y nunca encuentras el momento: instala la extensión y las entradas llegarán a la barra de herramientas, en tu idioma, de tres en tres.
Ajustes que puedes ver antes de comprometerte
La página de ajustes ha crecido hasta ser la superficie que siempre debió cargar con este peso, y su idea principal es que no deberías tener que imaginarte un modo de visualización.
Bajo el selector de modo hay una miniatura viva —el mismo lenguaje de esqueletos grises que el dibujo de la ventana emergente— que muestra una burbuja de mensaje con la traducción dibujada tal y como la dibuja ese modo. Cambia de Comentario en línea a Bilingüe, a Clic para desplegar, a Clic para alternar, y la miniatura cambia contigo. Hay demostraciones equivalentes para la vista previa de envío, la asistencia de escritura y la traducción instantánea, cada una con un pie de una línea que cambia con el ajuste en vez de describirlo en abstracto.
La sección de proveedores ha dejado de pedirte que te sepas de memoria los identificadores de modelo. La lista de modelos de Ollama se obtiene del /api/tags de tu servidor local; los endpoints compatibles con OpenAI se leen de {tu URL base}/models ; OpenRouter y Anthropic vienen de sus propios catálogos. Donde la API publica precios por token, el selector los muestra convertidos a precio por millón de tokens. OpenRouter indica sus precios como números del estilo 0.0000001 , que a esa escala no hay quien lea. Nada del precio está codificado a fuego, estimado ni recordado entre actualizaciones, de modo que un precio caducado es estructuralmente imposible: si el catálogo no trae precio, el selector no muestra ninguno.
La lista de sitios compatibles eran 30 entradas en una única columna plana e imposible de recorrer. Ahora está agrupada en 8 categorías: Chat y correo (7 sitios), Redes sociales (3), Comunidades y foros (4), Desarrollo (5), Wikis y referencia (2), Blogs y boletines (3), Noticias (4) y Comentarios y reseñas (2), con una línea al pie: «¿Falta algún sitio? Pídenos que lo añadamos». Es la primera vez que la extensión ofrece siquiera una vía para eso.
Y ahora hay una primera puesta en marcha. Al instalar —y solo al instalar, atada al motivo install de Chrome, de modo que una actualización nunca la dispara— tres pasos te explican qué hace la extensión, qué dos ajustes deciden todo lo demás y dónde está el botón de la barra de herramientas. Dos de los tres pasos iluminan los controles reales de la página en vez de mostrar una imagen de un control que después tendrías que ir a buscar.
En resumen: una ventana emergente de barra de herramientas es un testigo, no un salpicadero
El error de la ventana emergente antigua no era ser fea ni desplazarse. Era tratar una superficie de un segundo como si fuera un espacio de trabajo. No se pueden configurar ocho proveedores en una caja de 372 píxeles de ancho, y no deberías tener que pasar ese intento por delante para averiguar si algo está funcionando.
La 1.16 separa esos dos trabajos con limpieza. La página de ajustes es donde decides, una vez, con una imagen de a qué se parece cada decisión. La ventana emergente es donde confirmas que la decisión está en vigor, en menos de un segundo, en esta página, ahora mismo. Si lo hemos hecho bien, abrirás la ventana más veces y te quedarás en ella menos tiempo.
La versión 1.16 está en revisión en Chrome Web Store a 4 de septiembre de 2026. Llegará como actualización automática en cuanto se apruebe.
Dónde encaja Telli.sh: la extensión cubre el texto rápido —chats, publicaciones, comentarios, correo, hilos de foro— en 30 sitios, 52 idiomas de lectura y 9 proveedores de traducción, con una interfaz disponible en 50 idiomas. Telli.sh cubre la otra mitad: el trabajo hablado. Graba o importa una reunión, la transcribe en el idioma en el que realmente se habló, la traduce a 44 idiomas de destino y guarda el texto original, la traducción alineada y el resumen de IA en una misma nota editable. La misma idea en los dos sitios: poner la traducción junto al original y conservar el original.
Empezar una nota de reunión traducida en directo
Fuentes
- Telli.sh: Every Translator en Chrome Web Store: la ficha a la que se envió el paquete 1.16 el 4 de septiembre de 2026.
- Página de producto de Telli.sh: Every Translator — los sitios compatibles, los modos de visualización, los proveedores y los compromisos de privacidad en un solo lugar.
- Telli.sh: Every Translator ya está disponible en Chrome Web Store, 23 de junio de 2026: el artículo de lanzamiento original, para ver qué hacía la extensión antes de este rediseño.
- Código fuente de la extensión,
extension/docs/UX_REDESIGN_PLAN_2026-09-04.md, 4 de septiembre de 2026: el análisis del que salieron las seis fases publicadas en esta versión, incluida la medición de 16.936 bytes de ventana emergente frente a 7.621 bytes de página de opciones y la decisión de que el verde significa verificado.