AI agent user-agent directory: ChatGPT, Operator/Atlas, Perplexity, Claude, Gemini
Every major assistant now has at least one way of acting on a user's behalf. Some of them tell your server who they are. Several deliberately, or just incidentally, do not.
In short
ChatGPT-User, Perplexity-User, and Claude-User are distinct, self-identifying tokens each vendor uses for real-time, user-triggered fetches. ChatGPT Atlas's agent mode and Anthropic's Computer Use agent instead drive a genuine browser and present an ordinary browser user-agent string - no distinguishing token at all. Google's Project Mariner did the same before later adding a token, then was folded into a newer Gemini Agent surface. Every string below is spoofable; treat this as a reference for what to look for, not proof of who sent it.
Landscape as of September 2026
Self-identifying acting agents
| Vendor / product | Token / string | What triggers it |
| OpenAI - ChatGPT-User | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot | ChatGPT's browsing tool fetching a page live to answer a user's question. Distinct from GPTBot (training crawl) and OAI-SearchBot (search index crawl) - both out of scope here, see the crawler directory. |
| Perplexity - Perplexity-User | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user) | Real-time fetch triggered by a live user query. Per Perplexity's own documentation this agent can disregard robots.txt when the user supplies a specific URL as context - unlike PerplexityBot, its indexing counterpart, which is expected to obey it. |
| Anthropic - Claude-User | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Claude-User/1.0; +Claude-User@anthropic.com) | Fetches a web page when a Claude user asks a question that needs current information. Distinct from ClaudeBot (training crawl) and Claude-SearchBot (Claude's own search index) - out of scope here. |
Agents that present as an ordinary browser
| Vendor / product | What the traffic looks like | Notes |
| OpenAI - ChatGPT Atlas (agent mode) | An ordinary Chrome-on-macOS user-agent string, reportedly indistinguishable at the header level from the current desktop Chrome release | Atlas is OpenAI's own Chromium-based browser with an agent mode that clicks, fills forms, and navigates. [hypothesis: current as of the sources checked in September 2026 - OpenAI has not published a distinct Atlas agent-mode token; this could change without notice] |
| Anthropic - Claude (Computer Use) | A full, unmodified browser session - executes JavaScript, accepts cookies, honors CSP | Designed to control a real computer the way a person would; its network fingerprint is reported to be effectively indistinguishable from a human session, which is the point of the capability, not a bug to patch. |
| Google - Project Mariner / Gemini Agent | Originally a bare Chrome UA controlling an extension-driven browser; later versions added the token GoogleAgent-Mariner | Google reportedly wound down the standalone Project Mariner product in 2026 and folded its capability into a newer Gemini Agent surface - the fastest-moving row in this table and the clearest case for re-checking rather than hard-coding. |
Why this list will go stale
Three of these six rows changed meaningfully within the last year: Operator was absorbed into ChatGPT agent and then Atlas, Mariner was folded into Gemini Agent, and Perplexity added its second, User-triggered token alongside its original crawler. Build detection logic that degrades gracefully when a token is unrecognized (fall back to the composite signals in how to detect AI agent traffic) rather than a hard-coded allowlist that silently drops new agents into "unknown."
Common questions
What's the difference between ChatGPT-User and ChatGPT Atlas?
ChatGPT-User is a distinct, self-identifying token OpenAI's browsing tool uses when it fetches a page live for a ChatGPT user. ChatGPT Atlas, OpenAI's own browser with agent mode, presents an ordinary Chrome-on-macOS user-agent string with no distinguishing token at all - two very different levels of visibility from the same company.
Is PerplexityBot the same as Perplexity-User?
No. PerplexityBot is the indexing crawler that builds Perplexity's own search index - it belongs with the crawler-directory content, not this one. Perplexity-User is the real-time fetch triggered when a live user asks Perplexity a question, and per Perplexity's own documentation it can disregard robots.txt when the user supplies a specific URL as context.
Can I trust a user-agent string that claims to be one of these agents?
Not on its own. Any of these strings can be set by a script with no relationship to the named vendor. Treat the token as a claim to check, not a fact - see spoofed agent user-agents for the verification methods.
Why does this directory not include GPTBot or ClaudeBot?
GPTBot, ClaudeBot, and CCBot are training/indexing crawlers, not acting agents - a visitor never stands behind them in the moment. That population already has its own directory on this site; this page covers the user-agents that fire when an agent is acting for someone right now.