Detectarea agenților AI: cum diferă browserele Claude, ChatGPT și Perplexity de oameni
Agenții AI se prezintă ca browsere, dar se comportă altfel decât oamenii — sesiuni scurte, clicuri la nivel de pixel, zero greșeli. Cele 11 semnale care separă traficul Computer Use, Operator și Perplexity de vizitatorii reali.
În 2024, agenții AI au făcut saltul de la demo-uri experimentale la trafic de producție. API-ul Computer Use de la Claude poate conduce un browser. Instrumentele de navigare ale ChatGPT parcurg site-urile pentru a răspunde la interogări. Motorul de răspunsuri Perplexity face crawling în timp real. Iar o categorie în creștere de asistenți alimentați de AI — Browserbase, Computer Use de la Anthropic, OpenAI Operator — execută sarcini web cap la cap în numele utilizatorilor.
Pentru un site web, asta creează o nouă categorie de vizitator care nu se încadrează în niciunul dintre tiparele detectării clasice de boți. Agenții AI nu sunt scrapere care extrag date la scară largă. Nu sunt oameni care dau clic printr-o interfață. Sunt ceva la mijloc — un vizitator per sesiune, un scop per vizită, dar executând la viteza mașinii, cu o precizie mecanică.
Detectarea lor contează altfel decât detectarea boților. Uneori vrei să-i servești (un agent util care face cumpărături pentru un client). Alteori vrei să-i blochezi (scraping neautorizat printr-un wrapper de AI). Oricum ar fi, mai întâi trebuie să știi că sunt acolo.
Cum diferă agenții AI la nivel de arhitectură
Trei arhitecturi principale produc trafic de agenți AI pe web:
Agenții care conduc un browser rulează un browser headless sau headful controlat de un LLM. Computer Use de la Anthropic, OpenAI Operator, Browserbase și Skyvern se încadrează toate aici. Browserul este un Chrome sau Chromium real. Agentul îl comandă prin manipularea DOM-ului sau prin analiza capturilor de ecran și clicuri pe coordonate.
Agenții exclusiv pe API aduc paginile prin biblioteci HTTP (Node.js, Python, Go) și transmit HTML-ul unui LLM pentru procesare. Cei mai mulți agenți Perplexity și bazați pe căutare funcționează astfel. Nu există niciun browser — doar un strat de fetching care alimentează un model cu text.
Agenții hibrizi folosesc un browser pentru site-uri încărcate cu JavaScript și fetching prin API pentru conținut static. Mulți agenți de producție intră în această categorie, alegând dinamic în funcție de țintă.
Fiecare arhitectură lasă amprente diferite.
Semnalul 1. Durata de viață a sesiunii de browser
Utilizatorii reali au sesiuni lungi și lipsite de focalizare. Deschid file, se distrag, revin. Durata mediană a unei sesiuni umane pe o sarcină decizională este de 8–20 de minute.
Agenții AI au sesiuni scurte și focalizate. O sarcină tipică de Computer Use — rezervarea unui zbor, comanda de alimente, extragerea datelor despre un produs — durează de la 30 de secunde la 3 minute cap la cap. Sesiunea începe cu încărcarea paginii, execută 5–30 de acțiuni în succesiune și se încheie.
O durată de sesiune sub 5 minute cu mai mult de 10 acțiuni distincte și fără comutare între filele browserului este un comportament uman atipic și un comportament tipic de agent.
Semnalul 2. Precizia clicului pe coordonate
Agenții care conduc un browser de la Anthropic și OpenAI folosesc analiza capturilor de ecran pentru a identifica elementele de interfață, apoi dau clic pe coordonate. Calculul coordonatelor este precis la nivel de pixel.
Utilizatorii reali dau clic în interiorul unor regiuni. Un buton de 200x40 pixeli primește clicuri distribuite pe toată suprafața, ponderate spre centru, dar cu o variație umană. Agenții AI dau clic într-o bandă îngustă — adesea la 2–3 pixeli de centrul geometric al elementului. O sută de clicuri cu o deviație medie sub 3 pixeli nu este o distribuție umană.
Detectarea necesită colectarea coordonatelor clicurilor și analizarea lor raportat la limitele elementului. Asta funcționează bine pe date la nivel de sesiune.
Semnalul 3. Absența scroll-ului exploratoriu
Oamenii dau scroll ca să vadă ce se află pe o pagină. Coboară, apoi urcă înapoi, apoi parțial. Se opresc la conținutul care le atrage atenția. Traseele lor de scroll sunt neregulate.
Agenții AI dau scroll doar când e necesar. Dacă scopul este să dea clic pe Adaugă în coș, iar butonul este vizibil fără scroll, agentul s-ar putea să nu deruleze deloc. Dacă elementul-țintă este sub linia de pliere, agentul dă scroll o singură dată, direct la țintă, apoi execută.
Sesiunile cu mai puțin de 2 schimbări de direcție a scroll-ului, sau cu o viteză de scroll constantă în toate evenimentele de derulare, indică o navigare orientată spre sarcină, nu explorare.
Semnalul 4. Sincronizarea inputului de text
Utilizatorii reali scriu cu o viteză de 30–60 de cuvinte pe minut, cu pauze variabile, ștergeri ocazionale și micro-corecții. Sincronizarea tastelor urmează o distribuție cu variație mare și o rată de ștergere diferită de zero.
Agenții AI completează formularele lipind valori sau simulând apăsări de taste la o cadență fixă — adesea 50–100 de caractere pe secundă, uniform, fără ștergeri. Un câmp completat în 200ms cu un șir de 30 de caractere și zero ștergeri nu este un input uman.
Semnalul 5. Absența greșelilor de scriere
Legat, dar distinct: oamenii fac greșeli de scriere. La 1000 de caractere de input de text, utilizatorii reali produc 15–40 de corecții. Agenții AI produc zero. O trimitere de formular cu 3 câmpuri însumând peste 100 de caractere și zero corecții este neobișnuită pentru un om.
Semnalul 6. Inconsecvențe ale user agent-ului
Unii agenți AI folosesc user agent-uri personalizate care îi identifică explicit: perplexity-user, ChatGPT-User, ClaudeBot. Aceștia sunt agenți politicoși care respectă convenția auto-identificării și adesea respectă robots.txt.
Detectarea aici este banală — citești user agent-ul și îl compari cu liste cunoscute. Valoarea stă în a ști când să-i servești diferit (sau să-i blochezi, dacă nu vrei scraping).
Alți agenți rulează framework-uri care conduc un browser și moștenesc oricare user agent folosește browserul — de regulă Chrome. Aceștia sunt mai greu de identificat doar din user agent și necesită semnale comportamentale.
Semnalul 7. Randarea WebGL în mod headless
Agenții care conduc un browser și folosesc Chromium în mod headless expun renderer-ul SwiftShader pe care l-am discutat în articolul despre Puppeteer. Orice sesiune în care renderer-ul WebGL conține SwiftShader, iar vizitatorul execută peste 10 acțiuni deliberate, este aproape sigur un agent AI care conduce un browser.
Framework-urile de agenți mai noi (Browserbase, unele configurații Skyvern) rulează Chrome headful pentru a evita acest semnal. Ele prezintă șiruri GPU reale. Asta înseamnă că WebGL de unul singur este insuficient pentru detectarea agenților moderni — necesar ca filtru de pornire, nu ca soluție completă.
Semnalul 8. Aderența perfectă la structura paginii
Utilizatorii reali dau clic pe linkuri chiar și când are loc o redirecționare de pagină. Se întrerup singuri. Dau dublu-clic acolo unde un singur clic ar fi fost suficient. Dau clic pe lucruri care nu sunt linkuri.
Agenții AI urmează DOM-ul. Când vor să navigheze, emit o acțiune asupra unui element specific. Nu dau clic pe elementul greșit și nu reîmprospătează la jumătatea încărcării. Sesiunile lor se desfășoară cu o liniaritate mecanică pe care niciun om distras nu o produce.
Urmele de sesiune cu aderență perfectă — fiecare clic pe un element valid, fiecare câmp de formular completat în ordinea DOM-ului, fiecare tranziție de pagină precedată de o acțiune intenționată — se citesc ca fiind conduse de un agent.
Semnalul 9. Timpul până la interacțiune este zero
Utilizatorii reali au nevoie de timp să proceseze o pagină. Citesc. Scanează. Înțeleg înainte să acționeze.
Agenții AI parsează DOM-ul instantaneu. Timpul dintre finalizarea încărcării paginii și prima acțiune a utilizatorului, pentru un utilizator real, este de regulă 1,5–4 secunde chiar și pe pagini simple. Pentru agenții AI, poate fi sub 200ms — timpul de care are nevoie LLM-ul pentru a identifica elementul-țintă în DOM.
Un timp foarte scurt până la prima acțiune pe o pagină care necesită înțelegerea conținutului este un semnal puternic de agent.
Semnalul 10. Tiparele de fetch HTTP pentru agenții exclusiv pe API
Perplexity, unele fluxuri de tool-use ale Claude și majoritatea agenților bazați pe căutare nu rulează browsere. Aduc paginile direct prin biblioteci HTTP.
Acești agenți lasă semnalele TLS și HTTP discutate anterior — amprenta undici de Node.js, amprenta requests de Python, amprenta net/http de Go. De regulă nu execută JavaScript, așa că nu declanșează deloc detectarea din partea clientului.
Detectarea agenților exclusiv pe API are loc la nivel de rețea: hash-uri TLS JA4, ordinea antetelor HTTP, absența comportamentelor specifice browserului (fără fetch de favicon, fără beacon de analytics, fără cereri de fonturi). Dacă vrei să identifici acești agenți, trebuie să te uiți la ce nu se întâmplă la fel de mult ca la ce se întâmplă.
Semnalul 11. Scopuri de sesiune modelate de sarcină
Cel mai puternic semnal nu este tehnic — este comportamental. Sesiunile agenților AI sunt orientate spre scop în feluri în care sesiunile umane rareori sunt.
Un utilizator real care caută un produs poate să se uite la 8 articole, să compare specificațiile în 3 file, să citească recenzii, să abandoneze și să revină o oră mai târziu, apoi să cumpere. Un agent AI merge la produs, extrage specificațiile, adaugă în coș, finalizează comanda. Sub 90 de secunde. Fără abateri.
Sistemele de detectare care urmăresc ratele de finalizare a scopului la nivel de sesiune pot identifica traficul de agenți prin densitatea finalizărilor reușite de sarcini în sesiuni scurte. Acesta este un semnal mai lent, dar foarte fiabil atunci când este combinat cu semnale per acțiune.
Servirea diferită a agenților
Odată identificat, traficul de agenți AI poate fi tratat în mai multe feluri:
-
Blocare — dacă site-ul nu vrea acces automat, refuză-l la margine. Ieftin și simplu.
-
Servirea unui conținut alternativ — răspunde cu o versiune optimizată pentru API (JSON, date structurate) care e mai ieftin de generat decât pagina HTML completă.
-
Limitarea ratei — permite agenții, dar constrânge rata cererilor lor pentru a păstra performanța site-ului.
-
Taxare — unele site-uri încep să taxeze companiile de AI pentru accesul programatic la datele lor. Detectarea este o condiție prealabilă facturării.
-
Servirea normală — dacă agentul acționează în numele unui client real, servirea lui este o afacere.
Site-uri diferite vor face alegeri diferite. Ceea ce contează tehnic este să ai detectarea la locul ei, astfel încât alegerea să fie disponibilă.
Ținta în mișcare
Framework-urile de agenți AI se îmbunătățesc lunar. Anthropic lansează actualizări la Computer Use care adaugă variație de scroll. Browserbase adaugă tremur al mouse-ului. OpenAI Operator introduce simularea greșelilor de scriere. Fiecare generație de framework închide o parte din suprafața de detectare descrisă mai sus.
Tehnicile care funcționează în 2026 vor avea nevoie de actualizare până în 2027. Dar realitatea de fond nu se va schimba: agenții AI execută sarcini. Oamenii experimentează site-urile web. Această asimetrie produce semnal, indiferent de tehnicile specifice pe care le folosesc agenții pentru a încerca să se integreze.
Stivele de detectare care tratează agenții AI ca pe o categorie persistentă și în evoluție — nu ca pe o problemă rezolvată o singură dată — își vor menține vizibilitatea. Cele care lansează un singur detector și trec mai departe își vor vedea acoperirea degradându-se în tăcere.