Okienko rozszerzenia odpowiadało na złe pytanie. W wersji 1.16 rysuje zamiast tego stronę, na której właśnie jesteś
Telli.sh: Every Translator 1.16 przebudowuje okienko na pasku narzędzi w widok stanu: miniaturę strony, na której jesteś, pięć opisanych plakietek i kropki, które robią się zielone wyłącznie wtedy, gdy rozszerzenie potrafi potwierdzić, że naprawdę działa. Cała konfiguracja przeniosła się na osobną stronę ustawień z żywymi szkieletowymi podglądami, tłumaczenie natychmiastowe dostało własną kartę i historię czyszczącą się sama po 30 dniach, a dzwonek powiadomień przynosi blog Telli.sh w języku Twojej przeglądarki — w 15 wersjach językowych.
Do tego tygodnia kliknięcie ikony Telli.sh na pasku narzędzi otwierało szufladę z ustawieniami. Kod okienka w wersji 1.15 miał 16 936 bajtów i zawierał w sobie pełne formularze konfiguracji wszystkich ośmiu dostawców, których trzeba skonfigurować — wbudowana SI Chrome, Google, Apps Script, DeepL, Ollama, zgodny z OpenAI, OpenRouter i Claude — plus pięć wierszy przełączników. Sąsiednia strona opcji miała 7621 bajtów. Mniej niż połowę, a to właśnie ona miała miejsce w zapasie.
To odwrócona architektura informacji i żadne majstrowanie przy rozmiarze czcionki tego nie naprawi. Okienko na pasku narzędzi istnieje po to, by odpowiedzieć na jedno pytanie, które zaczęliśmy nazywać pytaniem jednego spojrzenia : czy jest włączone i co zrobi na tej stronie? Odpowiedź powinna przyjść w niecałą sekundę, bez przewijania, po czym okienko się zamyka.
Telli.sh: Every Translator 1.16 trafił do Chrome Web Store 4 września 2026 roku i w chwili publikacji jest w trakcie weryfikacji. Ta wersja odpowiada na pytanie jednego spojrzenia rysunkiem.
TL;DR
- Okienko jest teraz widokiem stanu. 372 piksele szerokości, najwyżej 560 wysokości, bez przewijania. Nie ma w nim ani jednego pola na dane logowania — policzyliśmy, jest ich dosłownie zero.
- Rysuje miniaturę strony, na której jesteś, a od każdej części makiety biegnie linia odniesienia do opisanej plakietki: języki, tryb wyświetlania, podgląd przed wysłaniem, dostawca, pomoc przy pisaniu. Makieta odwzorowuje to, co rozszerzenie naprawdę rysuje, aż po 8 pikseli odstępu między przyciskiem pływającym a polem tekstowym.
- Zielony znaczy „potwierdzone”, a nie „ptaszek jest postawiony”. Trzy stany: zielony dla „działa w tej karcie”, bursztynowy dla „włączone, niepotwierdzone”, szary dla „wyłączone”.
- Tłumaczenie natychmiastowe i historia to druga i trzecia karta. Nieprzypięte wpisy historii wygasają 30 dni po utworzeniu; przypięte nie wygasają.
- Dzwonek powiadomień przynosi nasz blog w języku Twojej przeglądarki, czytany z osobnego kanału RSS dla każdego z 15 języków. Jeśli chcesz wiedzieć o nowych tekstach, nie odwiedzając strony, ten dzwonek jest teraz najtańszą drogą.
- Wszystko, co się konfiguruje, mieszka na stronie ustawień, a ta pokazuje działającą miniaturę każdego trybu wyświetlania zamiast opisywać go jednym zdaniem.
Okienko oddało ustawienia i na tym polega cała zmiana
Za wersją 1.16 stoi jedna decyzja: konfiguracja wychodzi, stan wchodzi. Ikona koła zębatego w nagłówku okienka przenosi wprost do właściwej sekcji strony ustawień, więc nic nie stało się trudniejsze do znalezienia — przestało tylko zasłaniać drogę do odpowiedzi.
To, co zostało w okienku, jest celowo skromne. Nagłówek z nazwą witryny i przełącznikiem dla tej właśnie witryny, bo „wyłącz tutaj, na tej stronie” to działanie o stanie, a nie ustawienie. Dzwonek. Koło zębate. I korpus.
To o korpusie warto opowiedzieć.
Widok stanu to rysunek anatomiczny Twojej własnej strony
Otwórz okienko na stronie z czatem, a zobaczysz szkielet tej strony: dwa dymki wiadomości, pole tekstowe na dole, oparty nad nim pływający przycisk Telli.sh, a jeszcze wyżej panel podglądu. Szare paski udają tekst. Z pięciu miejsc tej makiety cienkie linie odniesienia biegną w lewo, do kolumny opisanych plakietek.
Każda plakietka nazywa jedną rzecz i podaje jej bieżącą wartość:
| Plakietka | Na co wskazuje | Co pokazuje |
|---|---|---|
| Języki | dymek wiadomości | język czytania → język wysyłania, np. English → Auto-detect |
| Wyświetlanie | tłumaczenie pod dymkiem | Komentarz w wierszu, Dwujęzycznie, Kliknij, aby rozwinąć, Kliknij, aby przełączyć |
| Podgląd przed wysłaniem | przyciski panelu | Włączony lub Wyłączony |
| Dostawca | pływający przycisk | który z dziewięciu dostawców jest wybrany |
| Pomoc przy pisaniu | pole tekstowe | język docelowy albo „Wyłączona” |
Plakietki idą z góry na dół w tej samej kolejności co części, na które wskazują, więc linie odniesienia nigdy się nie krzyżują. Ich pionowe położenia nie są zapisane na sztywno, tylko mierzone podczas rysowania: plakietki, których idealne pozycje na siebie zachodzą, są łączone w grupę, a grupa zostaje wyśrodkowana, dzięki czemu błąd wyrównania rozkłada się na wszystkie, zamiast spadać na ostatnią. Najechanie na plakietkę podświetla część rysunku, do której należy.
I o to w tym chodzi. Lista ustawień mówi displayMode: bilingual . Rysunek mówi, gdzie tłumaczenie pojawi się na stronie, którą właśnie masz przed oczami . Makieta nie jest przy tym stylizowaną ilustracją: odwzorowuje prawdziwą geometrię skryptu treści. Pływający przycisk stoi 8 pikseli nad górną krawędzią pola tekstowego, wyrównany do prawej; panel podglądu o szerokości 350 pikseli stoi 8 pikseli nad przyciskiem, tak samo wyrównany. Okienko uczy prawdziwego interfejsu, a nie uprzejmej fikcji o nim.
Zielona kropka musi coś znaczyć, więc uczyniliśmy ją drogą
Stare przełączniki pokazywały zamiar. Widziałeś, że przełącznik jest włączony, i nadal nie wiedziałeś, czy cokolwiek się tłumaczy, czy Twój klucz API został przyjęty i czy ta witryna jest w ogóle obsługiwana.
Dlatego 1.16 wydaje zieleń oszczędnie. Są trzy stany, a każdy z nich to twierdzenie, którego rozszerzenie gotowe jest bronić:
- Zielony — „Działa w tej karcie”. Rozszerzenie potrafi to potwierdzić w tej chwili.
- Bursztynowy — „Włączone, niepotwierdzone”. Ustawienie jest włączone, dane logowania są na miejscu, ale nic nie dowiodło, że droga tam i z powrotem działa.
- Szary — „Wyłączone”. Albo wyłączone, albo wymagane pole nadal puste, co wychodzi na to samo: nic nie zostanie przetłumaczone.
Plakietka dostawcy to przypadek surowy. Tylko dwaj dostawcy mogą zasłużyć na zieleń. Darmowy tryb Tłumacza Google nie wymaga żadnych danych użytkownika i zawsze jest osiągalny, więc jest zielony. Wbudowana SI Chrome, działająca na urządzeniu, robi się zielona dopiero wtedy, gdy okienko naprawdę zapyta Translator.availability() o Twoją parę językową i dostanie użyteczną odpowiedź. Wszyscy pozostali — DeepL, Claude, OpenRouter, Ollama, punkt końcowy zgodny z OpenAI, Apps Script, API Google — zostają bursztynowi, gdy tylko pojawi się adres URL albo klucz, bo weryfikacja oznaczałaby wydawanie Twojego limitu na wywołanie testowe przy każdym otwarciu okienka. Jeśli potrzebne pole jest puste, jest szaro, a nie bursztynowo. Rozszerzenie nie powie Ci, że coś jest włączone, skoro wie, że to nie może zadziałać.
To celowo niepochlebna reguła. Większość osób na ustawieniach domyślnych zobaczy jedną zieloną kropkę dostawcy; większość osób na płatnym API będzie widzieć bursztyn na zawsze. Bursztyn jest uczciwy, a my wolimy wydać uczciwe niż zielone.
Tłumaczenie natychmiastowe: karta dla tekstu, który nie ma strony
Wszystko powyżej zakłada, że jesteś na obsługiwanej stronie. Często nie jesteś: ktoś wkleja akapit do zgłoszenia albo kopiujesz zdanie z pliku PDF.
Tłumaczenie natychmiastowe to druga karta okienka zrobiona dokładnie po to. Wybierasz język źródłowy i docelowy, wklejasz do 2000 znaków, dostajesz tłumaczenie, kopiujesz. Między dwoma listami jest przycisk zamiany.
To nie jest drugi tłumacz siedzący obok pierwszego. Żądanie idzie tą samą kolejką w tle, tym samym buforem i tym samym dostawcą co każde tłumaczenie, które rozszerzenie robi na stronie — więc to, co skonfigurowałeś raz, obowiązuje i tutaj. Domyślnie jest wyłączone: instantTranslateEnabled startuje z wartością false , bo zadaniem okienka jest pytanie jednego spojrzenia, a notatnik, o który nikt nie prosił, byłby kolejną rzeczą między Tobą a odpowiedzią. Włącz je w ustawieniach, a okienko dostanie pasek kart; zostaw wyłączone, a pozostanie pojedynczym widokiem stanu.
Historia, która sprząta po sobie: 30 dni, o ile jej nie przypniesz
Po włączeniu tłumaczenia natychmiastowego obok pojawia się karta Historia z tym, co tam przetłumaczyłeś, od najnowszego, na tym urządzeniu.
Reguła przechowywania mieści się w jednym wierszu: wpisy nieprzypięte wygasają 30 dni po utworzeniu; wpisy przypięte nie wygasają nigdy. Przypnij zwrot, którego potrzebujesz bez przerwy, a zostanie. Reszta zestarzeje się i zniknie sama.
Dwa szczegóły implementacji warto wypowiedzieć, bo zmieniają to, na czym możesz polegać. Czyszczenie następuje przy odczycie listy, a nie przez zegar w tle: okienko jest jedyną rzeczą, która kiedykolwiek czyta tę listę, więc żaden alarm nie usunąłby niczego wcześniej, niż robi to samo jej otwarcie. Poza tym odpięcie wpisu, który już przekroczył 30 dni, jest dokładnie tym, co go usuwa: pinezka była jedyną rzeczą wstrzymującą wygaśnięcie, a następny odczyt go zabiera.
Jako zabezpieczenie działa twardy limit 200 wpisów. Gdyby został osiągnięty, przypięte zostają, a najstarsze nieprzypięte wychodzą pierwsze. Na górze karty jest przycisk czyszczenia wszystkiego.
Dzwonek to nasz blog, w Twoim języku
To ta część, którą najbardziej chcielibyśmy, żebyś zauważył, bo jako jedyna pracuje dalej po zamknięciu karty.
W nagłówku okienka jest dzwonek powiadomień. Pokazuje wpisy z bloga Telli.sh: do trzech ułożonych jako karty w widoku stanu, pełna lista za dzwonkiem, a na ikonie znacznik nieprzeczytanych. Każdy wpis otwiera artykuł na telli.sh.
Kanał jest osobny dla każdego języka. Rozszerzenie czyta język interfejsu przeglądarki, zestawia go z 15 wersjami językowymi, w których ukazuje się blog — angielską, koreańską, japońską, chińską, niemiecką, francuską, hiszpańską, włoską, portugalską, rosyjską, polską, wietnamską, tajską, indonezyjską i malajską — i pobiera kanał RSS tego języka. Jeśli przeglądarka jest po tajsku, ogłoszenia przychodzą po tajsku. Jeśli języka przeglądarki nie ma wśród tych 15, dostajesz angielski. Oba warianty chińskiego trafiają na ten sam chiński kanał.
Mechanika jest zbudowana tak, żeby nie wchodzić w drogę. Kanał pobiera samo okienko, nigdy alarm w tle, i najpierw podaje go z bufora — karty są więc narysowane, zanim w ogóle dojdzie do sieci. Bufor żyje 6 godzin, co wydobywa nowy wpis w ciągu jednego dnia roboczego, a jednocześnie zwija cały dzień otwarć okienka — a są ich dziesiątki — do najwyżej czterech żądań. Przechowywanych jest do 12 pozycji. Nieudane odświeżenie nigdy nie wypiera sprawnego bufora; łańcuch awaryjny prowadzi od kanału na żywo do bufora, potem do jednej stałej karty Telli.sh, a potem do niczego.
Odrzucony wpis zostaje odrzucony. Tożsamość pozycji bierze się z adresu URL samego wpisu, bez ciągu zapytania — parametry śledzenia w tych linkach są nasze, nie wpisu — więc odrzucony artykuł nie wraca, gdy kanał się odświeży i zmieni kolejność.
Jeśli od dawna zamierzasz śledzić to, co piszemy o tłumaczeniu spotkań i rozpoznawaniu mowy, i wciąż Ci to umyka: zainstaluj rozszerzenie, a wpisy przyjdą na pasek narzędzi, w Twoim języku, po trzy naraz.
Ustawienia, które widać, zanim się na nie zdecydujesz
Strona ustawień urosła do powierzchni, która od początku miała nieść ten ciężar, a jej naczelna myśl brzmi: nie powinieneś musieć wyobrażać sobie trybu wyświetlania.
Pod listą trybów stoi żywa miniatura — ten sam język szarych szkieletów co na rysunku w okienku — pokazująca dymek wiadomości z tłumaczeniem wyrenderowanym dokładnie tak, jak renderuje je dany tryb. Przełącz z Komentarza w wierszu na Dwujęzycznie, na Kliknij, aby rozwinąć, na Kliknij, aby przełączyć, a miniatura zmienia się razem z Tobą. Takie same demonstracje mają podgląd przed wysłaniem, pomoc przy pisaniu i tłumaczenie natychmiastowe, każda z jednowierszowym podpisem, który zmienia się wraz z ustawieniem, zamiast opisywać je w oderwaniu.
Sekcja dostawców przestała wymagać znajomości identyfikatorów modeli na pamięć. Lista modeli Ollamy pobierana jest z /api/tags Twojego lokalnego serwera; punkty końcowe zgodne z OpenAI czytane są z {Twój adres bazowy}/models ; OpenRouter i Anthropic przychodzą z własnych katalogów. Tam, gdzie API publikuje cenę za token, lista ją pokazuje, przeliczoną na milion tokenów. OpenRouter podaje ceny jako liczby w rodzaju 0.0000001 , których w tej skali nikt nie odczyta. Nic w cenach nie jest zapisane na sztywno, oszacowane ani zapamiętane między odświeżeniami, więc nieaktualna cena jest strukturalnie niemożliwa: jeśli katalog nie niesie ceny, lista jej nie pokaże.
Lista obsługiwanych witryn była płaską, nieczytelną kolumną 30 pozycji. Teraz jest pogrupowana w 8 kategorii: Czaty i poczta (7 witryn), Media społecznościowe (3), Społeczności i fora (4), Dla programistów (5), Wiki i źródła (2), Blogi i newslettery (3), Wiadomości (4) oraz Komentarze i opinie (2), a na dole doszedł wiersz „Brakuje jakiejś witryny? Poproś nas o dodanie”. To pierwszy raz, gdy rozszerzenie w ogóle oferuje na to jakąkolwiek drogę.
Jest też pierwsze uruchomienie. Przy instalacji — i tylko przy instalacji, przypięte do powodu install w Chrome, więc aktualizacja nigdy go nie wywoła — trzy kroki tłumaczą, co rozszerzenie robi, które dwa ustawienia decydują o całej reszcie i gdzie jest przycisk na pasku. Dwa z trzech kroków podświetlają prawdziwe elementy sterujące na stronie, zamiast pokazywać obrazek elementu, którego potem trzeba szukać.
Podsumowanie: okienko na pasku to kontrolka, a nie deska rozdzielcza
Błąd starego okienka nie polegał na tym, że było brzydkie ani że się przewijało. Polegał na traktowaniu jednosekundowej powierzchni jak warsztatu. Ośmiu dostawców nie da się skonfigurować w pudełku o szerokości 372 pikseli i nikt nie powinien przewijać tej próby tylko po to, by sprawdzić, czy cokolwiek działa.
1.16 rozdziela te dwa zadania czysto. Strona ustawień to miejsce, w którym decydujesz — raz, z obrazkiem tego, jak każda decyzja wygląda. Okienko to miejsce, w którym potwierdzasz, że decyzja obowiązuje — w niecałą sekundę, na tej stronie, teraz. Jeśli trafiliśmy, będziesz otwierać okienko częściej i zostawać w nim krócej.
Wersja 1.16 na dzień 4 września 2026 roku jest w weryfikacji w Chrome Web Store. Po zatwierdzeniu przyjdzie jako aktualizacja automatyczna.
Gdzie w tym Telli.sh: rozszerzenie obsługuje szybki tekst — czaty, posty, komentarze, pocztę, wątki na forach — na 30 witrynach, w 52 językach czytania i z 9 dostawcami tłumaczeń, a jego interfejs wychodzi w 50 językach. Sam Telli.sh obsługuje drugą połowę: to, co wypowiedziane. Nagrywa albo przyjmuje spotkanie, transkrybuje je w języku, w którym naprawdę mówiono, tłumaczy na 44 języki docelowe i trzyma tekst źródłowy, dopasowane tłumaczenie i streszczenie od SI w jednej edytowalnej notatce. W obu przypadkach ta sama myśl: postawić tłumaczenie obok oryginału i zachować oryginał.
Zacznij notatkę ze spotkania z tłumaczeniem na żywo
Źródła
- Telli.sh: Every Translator w Chrome Web Store — wpis, do którego 4 września 2026 roku trafił pakiet 1.16.
- Strona produktu Telli.sh: Every Translator — obsługiwane witryny, tryby wyświetlania, dostawcy i zobowiązania dotyczące prywatności w jednym miejscu.
- Telli.sh: Every Translator jest już w Chrome Web Store, 23 czerwca 2026 — pierwotny tekst premierowy, dla porównania, co rozszerzenie robiło przed tym przeprojektowaniem.
- Źródła rozszerzenia,
extension/docs/UX_REDESIGN_PLAN_2026-09-04.md, 4 września 2026 — przegląd, z którego wyszło sześć faz wydanych w tej wersji, w tym pomiar 16 936 bajtów okienka wobec 7621 bajtów strony opcji oraz decyzja, że zielony znaczy „potwierdzone”.