Wykrywanie agentów AI: czym przeglądarki Claude, ChatGPT i Perplexity różnią się od ludzi
Agenci AI podszywają się pod przeglądarki, ale zachowują się inaczej niż ludzie — krótkie, ukierunkowane sesje, kliknięcia co do piksela, zero literówek. 11 sygnałów odróżniających ruch Computer Use, Operatora i Perplexity od ludzi.
W 2024 roku agenci AI przeszli od eksperymentalnych demonstracji do ruchu produkcyjnego. Computer Use API od Claude potrafi sterować przeglądarką. Narzędzia przeglądania ChatGPT poruszają się po stronach, aby odpowiadać na zapytania. Silnik odpowiedzi Perplexity indeksuje treści w czasie rzeczywistym. A rosnąca kategoria asystentów opartych na AI — Browserbase, Computer Use od Anthropic, OpenAI Operator — realizuje pełne zadania w sieci w imieniu użytkowników.
Dla witryny tworzy to nową kategorię odwiedzających, która nie pasuje do żadnego z koszyków tradycyjnego wykrywania botów. Agenci AI nie są scraperami wyciągającymi dane na masową skalę. Nie są ludźmi klikającymi po interfejsie. Są czymś pośrednim — jeden użytkownik na sesję, jeden cel na wizytę, ale wykonywany z prędkością maszyny i mechaniczną precyzją.
Ich wykrywanie ma inne znaczenie niż wykrywanie botów. Czasem chcesz ich obsłużyć (pomocny agent robiący zakupy dla klienta). Czasem chcesz ich zablokować (nieautoryzowany scraping przez nakładkę AI). Tak czy inaczej, najpierw musisz wiedzieć, że tam są.
Czym agenci AI różnią się architektonicznie
Ruch agentów AI w sieci generują trzy główne architektury:
Agenci sterujący przeglądarką uruchamiają przeglądarkę headless lub headful kontrolowaną przez LLM. Pasują tu Computer Use od Anthropic, OpenAI Operator, Browserbase i Skyvern. Przeglądarka to prawdziwy Chrome lub Chromium. Agent steruje nią poprzez manipulację DOM albo przez analizę zrzutów ekranu i kliknięcia po współrzędnych.
Agenci wyłącznie API pobierają strony przez biblioteki HTTP (Node.js, Python, Go) i przekazują HTML do LLM w celu przetworzenia. Większość agentów Perplexity i tych opartych na wyszukiwaniu działa w ten sposób. Nie ma tu przeglądarki — jest tylko warstwa pobierająca, która karmi model tekstem.
Agenci hybrydowi używają przeglądarki do stron mocno opartych na JavaScript, a pobierania przez API do treści statycznych. Wielu produkcyjnych agentów należy do tej kategorii, dynamicznie wybierając podejście w zależności od celu.
Każda architektura pozostawia inne odciski.
Sygnał 1. Czas trwania sesji przeglądarki
Realni użytkownicy mają długie, rozproszone sesje. Otwierają karty, rozpraszają się, wracają. Mediana czasu trwania ludzkiej sesji przy zadaniu decyzyjnym to 8–20 minut.
Agenci AI mają krótkie, skupione sesje. Typowe zadanie Computer Use — zarezerwuj lot, zamów artykuły spożywcze, wyciągnij dane o produkcie — zajmuje od 30 sekund do 3 minut od początku do końca. Sesja zaczyna się od załadowania strony, wykonuje po kolei od 5 do 30 akcji i kończy się.
Czas trwania sesji poniżej 5 minut z ponad 10 odrębnymi akcjami i bez przełączania kart przeglądarki jest nietypowy dla człowieka, a typowy dla agenta.
Sygnał 2. Precyzja kliknięć po współrzędnych
Agenci sterujący przeglądarką od Anthropic i OpenAI używają analizy zrzutów ekranu, by rozpoznać elementy interfejsu, a następnie klikają po współrzędnych. Obliczenie współrzędnych jest precyzyjne co do piksela.
Realni użytkownicy klikają w obrębie regionów. Przycisk o rozmiarze 200x40 pikseli zbiera kliknięcia rozłożone po całej powierzchni, z przewagą wokół środka, ale z ludzką zmiennością. Agenci AI klikają w wąskim pasie — często w promieniu 2–3 pikseli od geometrycznego środka elementu. Sto kliknięć ze średnim odchyleniem poniżej 3 pikseli to nie jest ludzki rozkład.
Wykrywanie wymaga zbierania współrzędnych kliknięć i analizowania ich względem granic elementu. Działa to dobrze na danych o długości całej sesji.
Sygnał 3. Brak eksploracyjnego przewijania
Ludzie przewijają, żeby zobaczyć, co jest na stronie. Przewijają w dół, potem z powrotem w górę, potem do połowy. Zatrzymują się przy treściach, które przyciągają ich uwagę. Ich ślady przewijania są poszarpane.
Agenci AI przewijają tylko wtedy, gdy to konieczne. Jeśli celem jest kliknięcie „Dodaj do koszyka”, a przycisk znajduje się nad linią zgięcia, agent może w ogóle nie przewinąć. Jeśli docelowy element jest pod linią zgięcia, agent przewija raz, prosto do celu, po czym wykonuje akcję.
Sesje z mniej niż 2 zmianami kierunku przewijania albo z prędkością przewijania stałą we wszystkich zdarzeniach przewijania wskazują na przeglądanie zorientowane na zadanie, a nie na eksplorację.
Sygnał 4. Timing wprowadzania tekstu
Realni użytkownicy piszą z prędkością 30–60 słów na minutę, ze zmiennymi pauzami, sporadycznymi usunięciami i mikropoprawkami. Timing naciśnięć klawiszy tworzy rozkład o wysokiej zmienności i niezerowym wskaźniku usuwania.
Agenci AI wypełniają formularze, wklejając wartości lub symulując naciśnięcia klawiszy w stałym rytmie — często 50–100 znaków na sekundę, jednostajnie, bez usunięć. Pole wypełnione w 200 ms ciągiem 30 znaków i z zerem backspace’ów to nie jest ludzkie wprowadzanie.
Sygnał 5. Brak literówek
Powiązane, ale odrębne: ludzie robią literówki. Na 1000 znaków wprowadzonego tekstu realni użytkownicy produkują 15–40 poprawek. Agenci AI produkują zero. Wysłanie formularza z 3 polami o łącznej długości ponad 100 znaków i z zerem poprawek jest nietypowe dla człowieka.
Sygnał 6. Niespójności user agenta
Niektórzy agenci AI używają niestandardowych user agentów, które identyfikują ich wprost: perplexity-user, ChatGPT-User, ClaudeBot. To grzeczni agenci, którzy stosują się do konwencji samoidentyfikacji i często respektują robots.txt.
Wykrywanie jest tu trywialne — odczytaj user agenta, dopasuj do znanych list. Wartość polega na wiedzy, kiedy obsłużyć ich inaczej (albo zablokować, jeśli nie chcesz scrapingu).
Inni agenci uruchamiają frameworki sterujące przeglądarką i dziedziczą taki user agent, jakiego używa przeglądarka — zwykle Chrome. Tych trudniej rozpoznać po samym user agencie i wymagają one sygnałów behawioralnych.
Sygnał 7. Renderowanie WebGL w trybie headless
Agenci sterujący przeglądarką, którzy używają Chromium w trybie headless, ujawniają renderer SwiftShader, który omawialiśmy w artykule o Puppeteerze. Każda sesja, w której renderer WebGL zawiera SwiftShader, a odwiedzający wykonuje ponad 10 celowych akcji, to niemal na pewno agent AI sterujący przeglądarką.
Nowsze frameworki agentów (Browserbase, część konfiguracji Skyvern) uruchamiają headful Chrome, aby uniknąć tego sygnału. Prezentują prawdziwe ciągi GPU. Oznacza to, że sam WebGL jest niewystarczający do wykrywania nowoczesnych agentów — niezbędny jako filtr wstępny, ale nie pełne rozwiązanie.
Sygnał 8. Idealne trzymanie się struktury strony
Realni użytkownicy klikają w linki nawet wtedy, gdy trwa przekierowanie strony. Przerywają samym sobie. Klikają dwukrotnie, gdy wystarczyłoby jedno kliknięcie. Klikają w rzeczy, które nie są linkami.
Agenci AI podążają za DOM. Gdy chcą przejść dalej, wywołują akcję na konkretnym elemencie. Nie klikają w niewłaściwy element ani nie odświeżają strony w trakcie ładowania. Ich sesje rozwijają się z mechaniczną liniowością, jakiej nie produkuje żaden rozproszony człowiek.
Ślady sesji z idealnym trzymaniem się struktury — każde kliknięcie na prawidłowym elemencie, każde pole formularza wypełnione w kolejności DOM, każde przejście między stronami poprzedzone celową akcją — odczytuje się jako sterowane przez agenta.
Sygnał 9. Czas do interakcji równy zeru
Realni użytkownicy potrzebują czasu, by przetworzyć stronę. Czytają. Skanują wzrokiem. Rozumieją, zanim zadziałają.
Agenci AI parsują DOM natychmiast. Czas między zakończeniem ładowania strony a pierwszą akcją użytkownika wynosi dla realnego użytkownika zwykle 1,5–4 sekundy, nawet na prostych stronach. Dla agentów AI może być poniżej 200 ms — tyle, ile zajmuje LLM zidentyfikowanie docelowego elementu w DOM.
Bardzo szybki czas do pierwszej akcji na stronie wymagającej zrozumienia treści to mocny sygnał obecności agenta.
Sygnał 10. Wzorce pobierania HTTP dla agentów wyłącznie API
Perplexity, część przepływów tool-use Claude i większość agentów opartych na wyszukiwaniu nie uruchamia przeglądarek. Pobierają strony bezpośrednio przez biblioteki HTTP.
Ci agenci pozostawiają sygnały TLS i HTTP, które omawialiśmy wcześniej — odcisk undici Node.js, odcisk requests Pythona, odcisk net/http Go. Zwykle nie wykonują JavaScriptu, więc w ogóle nie wyzwalają wykrywania po stronie klienta.
Wykrywanie agentów wyłącznie API odbywa się na warstwie sieciowej: hashe TLS JA4, kolejność nagłówków HTTP, brakujące zachowania charakterystyczne dla przeglądarki (brak pobrania favicony, brak beaconu analitycznego, brak żądań o fonty). Jeśli chcesz rozpoznać tych agentów, musisz patrzeć na to, czego nie ma, w takim samym stopniu jak na to, co jest.
Sygnał 11. Cele sesji ukształtowane przez zadanie
Najsilniejszy sygnał nie jest techniczny — jest behawioralny. Sesje agentów AI są ukierunkowane na cel w sposób, w jaki sesje ludzkie rzadko bywają.
Realny użytkownik szukający produktu może obejrzeć 8 pozycji, porównać specyfikacje w 3 kartach, przeczytać recenzje, porzucić i wrócić godzinę później, a potem kupić. Agent AI wchodzi na produkt, wyciąga specyfikacje, dodaje do koszyka, finalizuje zakup. W mniej niż 90 sekund. Bez odchyleń.
Systemy wykrywania śledzące wskaźniki ukończenia celu na poziomie sesji potrafią rozpoznać ruch agentów po gęstości udanych ukończeń zadań w krótkich sesjach. To wolniejszy sygnał, ale wysoce wiarygodny w połączeniu z sygnałami dla poszczególnych akcji.
Obsługa agentów w inny sposób
Po rozpoznaniu ruch agentów AI można obsłużyć na kilka sposobów:
-
Blokada — jeśli witryna nie chce automatycznego dostępu, odrzuć na brzegu sieci. Tanie i proste.
-
Podawanie alternatywnej treści — odpowiadaj wersją zoptymalizowaną pod API (JSON, dane strukturalne), której wygenerowanie jest tańsze niż pełnej strony HTML.
-
Ograniczanie tempa — dopuść agentów, ale ogranicz ich tempo żądań, by zachować wydajność witryny.
-
Naliczanie opłat — niektóre witryny zaczynają pobierać od firm AI opłaty za programowy dostęp do swoich danych. Wykrywanie jest warunkiem wstępnym rozliczania.
-
Normalna obsługa — jeśli agent działa w imieniu realnego klienta, obsłużenie go to biznes.
Różne witryny podejmą różne decyzje. Technicznie liczy się to, by mieć wdrożone wykrywanie, tak aby wybór był dostępny.
Ruchomy cel
Frameworki agentów AI poprawiają się co miesiąc. Anthropic wydaje aktualizacje Computer Use, które dodają zmienność przewijania. Browserbase dodaje drżenie kursora. OpenAI Operator wprowadza symulację literówek. Każda generacja frameworku zamyka część powierzchni wykrywania opisanej powyżej.
Techniki, które działają w 2026 roku, będą wymagać aktualizacji do 2027. Ale leżąca u podstaw rzeczywistość się nie zmieni: agenci AI wykonują zadania. Ludzie doświadczają witryn. Ta asymetria produkuje sygnał, niezależnie od tego, jakich konkretnych technik używają agenci, by się wtopić.
Stosy wykrywania, które traktują agentów AI jako trwałą, ewoluującą kategorię — a nie jednorazowo rozwiązany problem — utrzymają widoczność. Te, które wypuszczą pojedynczy detektor i przejdą dalej, odkryją, że ich pokrycie po cichu się degraduje.