Dlaczego warto używać agenta przeglądarkowego Jev

2026-10-08 • Simon Scrapes • AI zagraniczne •tutorial •waga 4/5 •15 min czytania

Jev, tani model klasyfikujący, decyduje o każdym kliknięciu agenta przeglądarkowego w ułamku sekundy. Materiał pokazuje, jak połączyć go z Claude, zbudować własnego agenta w kwadrans i na jakie pułapki uważać.

Robocza publikacja redakcyjna na podstawie publicznego transkryptu YouTube. Źródło: YouTube.

Oryginalny tytuł filmu

You Should Be Using Jev's Browser Agent, Here's Why

O czym jest ten film

  1. Agenci przeglądarkowi od zawsze słynęli z powolności: zadanie na dwie minuty rozciągało się na 10–20 minut, więc szybciej było zrobić je samemu. Z Jevem pojedyncza decyzja o kliknięciu zapada w ok. 1/3 sekundy.
  2. Jev to „model osądu”: dostaje na wejściu tekst (tzw. stan) i pytania, a zwraca odpowiedź z przygotowanej przez nas listy opcji plus poziom pewności. Nie generuje tekstu; koszt to ok. 4 centy za milion tokenów wejściowych, wyjście jest darmowe, a odpowiedź przychodzi w ułamku sekundy.
  3. Trzy typy pytań: tak/nie (czy podjąć działanie), wybór z listy (kierowanie ruchem), ocena na skali (porządkowanie danych) — typ dobiera się według tego, co dzieje się dalej z odpowiedzią.
  4. Jev nie zastępuje Claude: pełni rolę klasyfikatora dla tysięcy szybkich decyzji, a Claude planuje, pisze i weryfikuje wyniki. Twórcy modelu sami przyznają, że jest on słaby w rozumowaniu.
  5. Trik wydajnościowy: Playwright lub Jev Ultraast wypisuje z kodu wszystkie interaktywne elementy strony i numeruje je (do ok. stu). Jev dostaje czyste dane — bez zrzutów ekranu i pikseli — dlatego decyduje błyskawicznie.
  6. W jednym wywołaniu Jev rozstrzyga dwie kwestie: typ działania (klik, wpisanie tekstu, przewinięcie, czekanie, koniec, blokada) i numer elementu (albo „żaden”). Obie odpowiedzi muszą przekroczyć próg pewności, np. 0,7.
  7. Samo wykonanie decyzji to czysty, deterministyczny kod ze skryptów zdefiniowanych w skillu TypeSafe — bez udziału AI. Claude włącza się tylko przy niskiej pewności, blokadzie, wpisywaniu tekstu i końcowej weryfikacji statusu „done”.
  8. browseruse.com przebudowało na tym fundamencie własnego agenta: wyszukiwanie w Google Flights zamknęło się w 7 sekund, a liczba wywołań przeglądarki spadła z 1 092 do 101.
  9. Autor pokazuje własne narzędzie do dokumentowania flow (cenniki, onboardingi, blogi SaaS-ów) i udostępnia darmowy prompt, dzięki któremu Claude Code zbuduje podobnego agenta w kilka–kilkanaście minut.
  10. W praktyce trzeba się liczyć z pułapkami: banery cookie, iframy i uploady plików niewidoczne dla agenta, fałszywe „gotowe” oraz pamięć sięgająca ledwie pięciu ostatnich akcji — każda z nich wymaga dodatkowych pytań i iteracji.

10 najważniejszych takeaways — z kontekstem zastosowania

1.Rozdzielaj tanie decyzje od drogiego rozumowania

Na czym polega: Jev odpowiada wyłącznie z gotowych opcji (plus pewność), więc świetnie nadaje się do tysięcy drobnych rozstrzygnięć, a planowanie, pisanie i walidację zostawia się modelowi takiemu jak Claude. browseruse.com dzięki takiemu podziałowi zadań zredukowało liczbę wywołań przeglądarki z 1 092 do 101 przy wyszukiwaniu w Google Flights.

Jak stosować: przejrzyj swój przepływ pracy i wydziel z niego wszystkie decyzje dające się sprowadzić do tak/nie albo wyboru z listy — te powierz Jevowi; wszystko, co wymaga rozumienia kontekstu i języka, zostaw LLM-owi.

Na co uważać: Jev nie generuje tekstu i — jak deklaruje sama firma — słabo radzi sobie z rozumowaniem. Nie próbuj robić z niego czatu ani copywritera.

2.Typ pytania dobieraj do przeznaczenia odpowiedzi

Na czym polega: Jev obsługuje trzy rodzaje pytań: tak/nie, wybór z listy i ocenę na skali. Kryterium wyboru jest proste — co zrobisz z odpowiedzią. Tak/nie poprzedza działanie (albo jego zaniechanie), wybór z listy służy kierowaniu ruchem (np. przekazanie zapytania do właściwego zespołu), ocena pozwala uporządkować dane według wyniku.

Jak stosować: przy projektowaniu każdej integracji zacznij od pytania „co będzie dalej z tą odpowiedzią?” i dopiero na tej podstawie ustal format zapytania.

Na co uważać: pytanie o więcej, niż potrzebujesz (np. ocena, gdy wystarczy tak/nie), spowalnia odpowiedź i utrudnia przetwarzanie wyniku.

3.Przekaż agentowi stronę jako ponumerowaną listę, nie obraz

Na czym polega: Playwright (albo Jev Ultraast) steruje Chrome’em z poziomu kodu i wypisuje wszystko, z czym można wejść w interakcję: link do cennika — 1, przycisk darmowego okresu próbnego — 2, pole na e-mail — 3… Jev dostaje te dane jako liczby i tekst, więc nie ładuje pikseli ani nie analizuje obrazu — stąd ok. 1/3 sekundy na decyzję.

Jak stosować: budując własnego agenta, zawsze najpierw twórz listę interaktywnych elementów z identyfikatorami i dopiero do niej adresuj pytania.

Na co uważać: osadzone ramki (iframes) i przyciski przesyłania plików często są niewidoczne dla takiej listy — formularz płatności czy rejestracji może „zniknąć” z danych wejściowych.

4.Ustal próg pewności i ścieżkę eskalacji

Na czym polega: obie odpowiedzi Jeva (działanie i element) wracają ze wskaźnikiem pewności. Poniżej progu (autor stosuje 0,7) albo przy statusie „blocked” pętla się zatrzymuje, a Claude rozpatruje, co się stało, i albo wysyła nowy zestaw pytań, albo sam podejmuje działanie.

Jak stosować: wpisz jawny próg akceptacji do konfiguracji i zaprojektuj awaryjne przekazanie sterowania do mocniejszego modelu — niska pewność nigdy nie może być ignorowana.

Na co uważać: zbyt niski próg oznacza błędne kliknięcia, zbyt wysoki — ciągłe przestoje i eskalacje, które podnoszą koszt i czas wykonania.

5.Nie ufaj statusowi „done” bez niezależnej weryfikacji

Na czym polega: Jev potrafi zgłosić koniec na stronie z błędem albo na podstronie, o którą w ogóle nie chodziło. W teście autora z dziesięciu „ukończonych” stron rzeczywistych wpisów blogowych były może dwie. Dlatego status „done” wraca do Claude, który sprawdza rezultat względem celu — i sam zespół Browser Use zaleca to w swojej dokumentacji.

Jak stosować: ostatni krok każdego przepływu zakończ kontrolą wyniku przez LLM („czy cel został osiągnięty?”) i porównaniem artefaktów, np. zrzutów ekranu, z założeniem.

Na co uważać: weryfikator też się myli — tam, gdzie pomyłka dużo kosztuje, zostaw człowiekowi przegląd końcowy.

6.Decyzje zostaw modelowi, wykonanie — kodowi

Na czym polega: skrypty wykonawcze są zdefiniowane z góry w skillu TypeSafe. Po decyzji Jeva agent działa czystym, deterministycznym kodem: klika, czeka kilkaset milisekund, aż strona się ustabilizuje, wczytuje nowe elementy i wraca z nimi do modelu.

Jak stosować: w architekturze wyraźnie rozdziel warstwę decyzyjną (Jev) od wykonawczej (kod) i trzymaj się tego podziału konsekwentnie.

Na co uważać: pokusa przeniesienia logiki wykonania do promptu — to oddaje przewagę szybkości i przewidywalności całego rozwiązania.

7.Krótkie, łańcuchowane cele: jeden cel na stronę lub formularz

Na czym polega: agent widzi tylko pięć ostatnich akcji. Przy dłuższej serii zadań (u autora: 39) zaczyna gubić wątek po drodze do celu, więc zadania trzeba dzielić i łączyć w sekwencję.

Jak stosować: rozbij duże zlecenie na kroki typu „jedna strona — jeden cel” i podawaj je kolejno, zamiast formułować jeden obszerny cel na całą wizytę.

Na co uważać: zbyt długi cel w jednym promptie kończy się chaotycznym klikiem i przedwczesnym „gotowe”.

8.Ucz agenta typowych pułapek osobnymi pytaniami

Na czym polega: banery cookie potrafią zawiesić cały przepływ. Autor dodaje prostą regułę: pytanie tak/nie („czy to baner cookie albo okno zarządzania zgodami?”) i skrypt egzekwujący kliknięcie akceptacji. Każda taka poprawka wymagała testów i iteracji — to nie magia, choć tak wygląda.

Jak stosować: po każdej porażce ustal, na którym kroku agent padł, i dopisz dedykowane pytanie albo regułę wykonawczą; potem przetestuj całość od nowa.

Na co uważać: każda reguła przesuwa przepływ w stronę klasycznej automatyzacji kosztem „inteligencji” — akceptuj ten kompromis świadomie.

9.Policz opłacalność: grosze za tysiące decyzji

Na czym polega: Jev kosztuje ok. 4 centy za milion tokenów wejściowych, wyjście jest darmowe, a odpowiedź przychodzi w ułamku sekundy — dlatego przy masowych drobnych decyzjach wychodzi bezkonkurencyjnie tanio.

Jak stosować: przy klasyfikacji lub kierowaniu ruchem licz rozmiar stanu wejściowego (np. lista elementów strony) i porównuj z kosztem pełnego wywołania LLM.

Na co uważać: stan wejściowy bywa spory (do ok. stu elementów na stronę), więc przy długich sesjach koszty rosną mimo niskiej stawki.

10.Prototyp agenta w kilkanaście minut: klucz, skill, gotowy plan

Na czym polega: z Claude Code, kluczem TypeSafe w pliku .env i skillem Jev (uczy Claude formułować pytania i pakować je w jedno wywołanie) działający agent powstaje z jednego promptu. Autor odtworzył w ten sposób czyjeś demo z Twittera w ok. 20 minut; gotowy plan do pobrania jest w opisie filmu.

Jak stosować: pobierz darmowy prompt, podstaw własny cel (np. „cenniki z przełącznikiem rozliczeń rocznych u narzędzi SaaS”) i uruchom — biblioteka Jev Ultraast oszczędza konfigurację Playwrighta.

Na co uważać: płynne demo jest efektem wielu iteracji w społeczności kursowej autora — realnie trzeba doliczyć czas na poprawki, zwłaszcza przy nietypowych stronach.

Redakcyjne tłumaczenie

(Informacja dodatkowa: materiał powstawał na podstawie automatycznej transkrypcji; pisownię niektórych nazw własnych — m.in. „Jev Ultraast” — zachowano zgodnie ze źródłem.)

Agenci przeglądarkowi wreszcie przyspieszyli

Agenci przeglądarkowi mieli dotąd jedną wspólną cechę: żmudność. Zadanie, które człowiek załatwia w dwie minuty, rozciągało się na 10–20 minut, więc po prostu nie opłacało się ich używać. Przy poprawnie skonfigurowanym Jevie wygląda to zupełnie inaczej — pojedyncza decyzja o kliknięciu zapada w mniej więcej trzecią część sekundy. W sieci krąży mnóstwo znakomitych pokazów: użytkownicy sterują wyszukiwaniem głosem, poruszają się po stronach, publikują posty na Twitterze. Efekty zrobiły tak duże wrażenie, że zespół browseruse.com — infrastruktury służącej agentom do przeglądania sieci — przebudował na tym fundamencie własnego agenta i wykonał w Google Flights skuteczne wyszukiwanie w siedem sekund. Poniżej wyjaśnienie, jak to działa, oraz przepis na własnego agenta w czasie krótszym niż kwadrans.

(Informacja dodatkowa: Browser Use to znany projekt open source do budowy agentów poruszających się po przeglądarce; w transkrypcie jego nazwa pojawia się zarówno jako „browseruse.com”, jak i „browser use”.)

Czym jest Jev

Jev to model osądu, zbudowany przez założyciela, który pomagał tworzyć metody stojące za ChatGPT w OpenAI. Na wejściu dostaje tekst — nazywany stanem — oraz jedno pytanie albo ich listę. Na wyjściu nie zwraca zdania ani słowa, lecz odpowiedź wybraną z opcji zdefiniowanych przez nas, wraz z prawdopodobieństwami i wskaźnikiem pewności. To właśnie dlatego kosztuje grosze — około 4 centy za milion tokenów wejściowych, z całkowicie darmowym wyjściem — i odpowiada w ułamku sekundy. W ciągu kilku sekund potrafi rozstrzygnąć tysiące drobnych kwestii.

Trzy typy pytań — i jak wybrać właściwy

Do Jeva wysyła się trzy rodzaje pytań: tak albo nie; wybór jednej pozycji z podanej listy; ocena na skali opisanej własnymi słowami. Wybór między nimi jest prosty — wystarczy zadać sobie pytanie, co dalej stanie się z odpowiedzią. Tak/nie stosujemy, gdy po rozstrzygnięciu ma (lub nie ma) nastąpić jakieś działanie. Wybór z listy pasuje do kierowania ruchem, na przykład gdy zapytanie klienta ma trafić do właściwego zespołu. Ocena przydaje się, gdy chcemy uporządkować dane według wyniku.

Duet, nie konkurencja: Jev i Claude

Jev nie zastępuje Claude. Firma TypeSafe sama przyznaje, że jej model kiepsko radzi sobie z rozumowaniem i ze wszystkim, co wymaga pisania — przecież nie zwraca żadnego tekstu. Ujmijmy to tak: Jev pełni rolę klasyfikatora przyjmującego tysiące drobnych zapytań, a Claude myśli, pisze i sprawdza jego odpowiedzi. Razem tworzą zgrany duet — tani i szybki model obsługuje lawinę pytań, a większy model dogląda tego, co wymaga rozumu i języka.

Trik z ponumerowanymi elementami

Największa zagadka — przynajmniej dla autora — brzmiała: jak ten mechanizm ma się do strony, która przy każdym przeładowaniu wygląda inaczej? Skąd model „widzi” dynamiczny interfejs? Rozwiązanie łączy kilka narzędzi. Pierwszym jest Playwright albo Jev Ultraast, open source’owy framework rozwijany za browseruse.com. Oba służą do sterowania Chrome’em z poziomu kodu: wypisują wszystko, z czym na danym ekranie można wejść w interakcję. Każdy element dostaje numer — jedynką może być link do cennika, dwójką przycisk darmowego okresu próbnego, trójką pole tekstowe na adres e-mail. Takich pozycji trafia do modelu nawet sto. I właśnie tu tkwi źródło przewagi: żadnych zrzutów ekranu, żadnych pikseli do załadowania, żadnego „zastanawiania się”. Model dopasowuje pytania do ponumerowanych danych — na przykład rozpoznaje, że na ekranie wisi baner cookie, i postanawia kliknąć „akceptuję”, żeby przejść dalej.

(Informacja dodatkowa: Playwright to popularna biblioteka open source do automatyzacji przeglądarki — klika, wpisuje tekst i odczytuje zawartość stron na polecenie programu.)

Dwa pytania, jedna decyzja

W praktyce Jev dostaje w pojedynczym wywołaniu dwa pytania typu „wybór z listy”. Pierwsze dotyczy rodzaju działania: kliknąć, wpisać tekst, zaznaczyć opcję, przewinąć w dół lub w górę, zaczekać — a może zadeklarować koniec albo blokadę. To pełen zestaw ruchów dostępnych na stronie. Drugie pytanie brzmi: na którym ponumerowanym elemencie wykonać ruch — z zapasową odpowiedzią „żaden z powyższych”, gdy właściwego po prostu nie ma. Do tego dołącza się cel wpisany lub wypowiedziany przez użytkownika. Zdarzają się bardziej szczegółowe pytania o dane, ale sedno pozostaje to samo — i dlatego całość działa tak szybko.

Pętla: decyzja, kod, nowy stan

Obie odpowiedzi wracają ze wskaźnikiem pewności. Jeśli oba przekraczają przyjęty próg — autor pracuje na poziomie 0,7 — Playwright lub Jev Ultraast wykonuje ruch. Agent klika, czeka ułamek sekundy, aż strona się przeładuje i uspokoi, wczytuje nowe elementy i ponownie wysyła je do Jeva z tym samym zestawem pytań. Ważne rozróżnienie: po podjęciu decyzji nie działa już żadne AI. Skrypty wykonawcze są z góry zdefiniowane w skillu TypeSafe jako część planu, więc agent po prostu uruchamia gotowy kod. Czysty determinizm.

Pełna sekwencja wygląda więc tak: plan z Claude; zebranie danych ze strony przez Playwright, Jev Ultraast lub inne narzędzie; wysłanie pytań do Jeva wraz ze stanem wejściowym — w tym wypadku stroną z ponumerowanymi elementami; odebranie odpowiedzi do skryptów; przetworzenie ich kodem; ewentualnie weryfikacja z Claude. Potem pętla rusza od nowa na kolejnym stanie: po kliknięciu „wstecz” agent wczytuje świeżą listę elementów, która staje się kolejnym stanem wejściowym dla tych samych pytań.

Kiedy do gry wchodzi Claude

Są dwa momenty wymagające mocniejszego modelu. Pierwszy: pewność którejś odpowiedzi spada poniżej progu albo Jev zgłasza blokadę. Wtedy wszystko się zatrzymuje — Claude dołącza rozumowanie: ocenia względem celu, co wydarzyło się dotąd, i albo odsyła do Jeva nowy zestaw pytań, albo sam pomaga dokończyć zadanie. Drugi moment: gdy akcją jest wpisanie tekstu, na przykład adresu e-mail. Jev wskaże właściwe pole, ale nie napisze, co w nie wpisać — treść pochodzi z celu, jeśli tam ją zawarto, albo generuje ją Claude. Co ciekawe, to jedyny fragment całej pętli wymagający pisania; dlatego pozostałe decyzje przelatują błyskawicznie.

„Done” to dopiero hipoteza

Gdy Jev melduje „koniec”, system nie wierzy mu na słowo i oddaje sterowanie Claude. Zresztą sam zespół Browser Use pisze w readme, że definicja „done” wymaga niezależnego sprawdzenia — i właśnie do tego służy końcowa kontrola z większym modelem.

Demo: katalogowanie cenników i onboardingów

Autor zbudował własne narzędzie — z Jevem, Claude i interfejsem pokazującym każde posunięcie. Program chodzi po witrynach SaaS-owych i realizuje na nich cel: dokumentuje zrzutami ekranu onboardingi, cenniki czy blogi, czyli dowolny przepływ (flow) z wybranej strony. Okno z podglądem na żywo nie jest niezbędne, ale pozwala śledzić, co się dzieje. Podaje się liczbę przebiegów do przebadania oraz cel, na przykład „cenniki z przełącznikiem rozliczeń rocznych u narzędzi SaaS”. Narzędzie robi research, przedstawia listę znalezionych produktów (można dopisać własne), po czym uruchamia pięć niezależnych przeglądarek opartych na Jev Ultraast. Na żywo widać, jak szybko agent przeciera się przez kolejne widoki w poszukiwaniu stron cenników — to zasługa Jeva pracującego w tle. Zebrane materiały mogą posłużyć choćby za inspirację przy projektowaniu własnej aplikacji.

Skalę zysku potwierdzają liczby z browseruse.com: w teście na Google Flights liczba wywołań przeglądarki spadła z 1 092 do 101, czyli do około jednej dziesiątej poprzedniej wartości — dzięki połączeniu taniego, szybkiego LLM z Jevem odpowiadającym za decyzje deterministyczne.

Własny agent w kilkanaście minut

Najprościej zlecić budowę Claude Code z odpowiednim skillem i promptem — to dosłownie kwestia około pięciu minut. Potrzebne są dwie rzeczy. Pierwsza: klucz TypeSafe zapisany w pliku .env. Druga: skill — nazywany tu zamiennie skill TypeSafe albo skill Jev — który ma podstawowe znaczenie, bo podpowiada Claude, jak formułować pytania kierowane do Jeva i jak pakować je w jedno wywołanie, dopasowane do tego, czego model oczekuje; dzięki temu połączenia są natychmiastowe. Gotowy prompt, czyli plan, autor udostępnia za darmo w opisie filmu. Pozwala on zbudować dokładnie to, co widać w demie — narzędzie do wyciągania dowolnych flow z sieci wraz z interfejsem — oraz przepływ łączący Claude z Jevem w realizacji celu. Po wpisaniu promptu Claude Code wypisuje pełny plan pracy.

Podstawą pokazu było demo Omara z Twittera, który nie udostępnił kodu — autor postanowił odtworzyć go samodzielnie i w Claude Code zajęło mu to około 20 minut, co uważa za spory wyczyn. Plan zawiera zrzuty z filmu, dzięki którym odtworzenie jest niemal identyczne, oraz fazy budowy pilnujące między innymi tego, by do API Jeva faktycznie szły żądania. W tym konkretnym przykładzie do przeszukiwania sieci użyto biblioteki Jev Ultraast zamiast Playwrighta — ten sam efekt przy mniejszym nakładzie konfiguracji. Uruchomiony na modelu Opus 5.5 plan produkuje działającego agenta z jednego promptu. Całość powstała w ramach pracy w społeczności kursowej autora, gdzie takie projekty łączy się z Jevem i Claude, a wyniki — wraz z promptami, fragmentami, które się wysypały, i tymi, które sprawiły więcej trudności — publikuje do wglądu; linki w opisie filmu.

Gdzie to jeszcze kuleje

Na pierwszy rzut oka demo wygląda jak wzór wszystkiego działającego bez zarzutu. Ale nawet z Jev Ultraast w warstwie przeglądarkowej czeka nas kilka typowych pułapek — autor wpadł w każdą podczas testów, a każda wymagała dopisania kolejnych pytań do zapytań Jeva, przemyślenia i iteracji. Prawdopodobnie i inni będą musieli podobnie. Przez to przepływ staje się bardziej deterministyczny, niżby się chciało: spodziewalibyśmy się, że agent dostanie cel i sam sobie poradzi z banerem cookie, a w rzeczywistości na takich krokach często pada — i trzeba go tego nauczyć.

Banery cookie i popupy zgody. Lekarstwo jest proste: dodać do instrukcji zasadę „akceptuj pliki cookie, jeśli zostaniesz zapytany” oraz pytanie tak/nie — „czy to baner cookie albo okno zarządzania zgodami?”. Jeśli odpowiedź brzmi tak, skrypt sam klika akceptację.

Osadzone ramki i uploady plików. Playwright nie zajrzy do wnętrza iframe’ów, więc formularz płatności czy osadzona rejestracja będą niewidoczne dla danych wejściowych Jeva — podobnie jak przyciski przesyłania plików. Nawet Browser Use wymienia te elementy jako poza obecnym zakresem możliwości agentów.

Fałszywe „gotowe”. Autor zlecił agentowi odwiedzenie dziesięciu stron blogowych na czterech serwisach specjalizujących się w widoczności w wyszukiwaniach AI — pobranie i sfotografowanie ich ostatnich wpisów. To był test dla jego drugiego przedsięwzięcia, Rankspot.ai, usługi zdobywającej dla klientów rekomendacje w ChatGPT za pomocą działań automatycznych; chodziło o rozpoznanie konkurencji. Agent zameldował sukces: 77 sekund, dziesięć „ukończonych” stron. Tyle że w całym zbiorze zrzutów rzeczywistych wpisów blogowych były może jeden–dwa — program przeklikiwał różne podstrony, aż w końcu trafił na coś w rodzaju bloga, a jedno „gotowe” padło na stronie z błędem. Właśnie dlatego potrzebna jest końcowa kontrola Claude: wyniki wracają do modelu, który na tle celu i danych wejściowych sprawdza, czy zadanie faktycznie zostało wykonane.

Krótka pamięć. Agent widzi tylko pięć ostatnich akcji, więc przy dłuższej serii zadań — u autora było ich 39 — potrafi zgubić wątek po drodze do celu. Cele trzeba więc trzymać krótkie i łączyć w łańcuch: jeden cel na stronę albo na formularz.

Podsumowanie

Przy wszystkich tych ograniczeniach metoda pozostaje niesamowicie użyteczna i stanowi ogromny krok naprzód wobec poprzedników. Kto próbował kiedyś agenta przeglądarkowego chociażby w Claude, ten wie, ile wysiłku kosztowało najprostsze zadanie. Tym razem kierunek jest właściwy.