1<!DOCTYPE html><!--gzsRcrJCIF2EkW_gxMCe8--><html lang="en" class="geistsans_d5a4f12f-module__WW247W__variable geistmono_157ca88a-module__e5BvEq__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/GeistMono_Variable.p.73882635.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/Geist_Variable-s.p.f19e4721.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/chunks/28e60ad4f7f52bf8.css?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/cefdb4d271b6bf28.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc"/>
1<script src="/_next/static/chunks/280f8afe7b74364b.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/2a321d99672c3f63.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/ca34c6288dbea414.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/turbopack-fa567c95e60e16e7.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/3dc33abe801985b6.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/25c256ec7268237d.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/c55ff7a7b6ebb1ba.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/96f7ee578f6a79b2.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<script src="/_next/static/chunks/1164f6a78c0089a7.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" async=""></script>
1<meta name="next-size-adjust" content=""/><title>IsAgent - AI Agent Detection SDK</title><meta name="description" content="A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch."/><meta name="author" content="Stytch"/><meta name="keywords" content="AI agent detection,React SDK,bot detection,agent-aware UI,Stytch,JavaScript,TypeScript"/><meta name="creator" content="Stytch"/><meta name="publisher" content="Stytch"/><meta name="robots" content="index, follow"/><meta name="googlebot" content="index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1"/><link rel="canonical" href="https://isagent.dev"/><meta property="og:title" content="IsAgent - AI Agent Detection SDK"/><meta property="og:description" content="A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch."/><meta property="og:url" content="https://isagent.dev"/><meta property="og:site_name" content="IsAgent"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://www.isagent.dev/opengraph-image.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="IsAgent - A lightweight SDK for building agent specific experiences"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:creator" content="@stytch"/><meta name="twitter:title" content="IsAgent - AI Agent Detection SDK"/><meta name="twitter:description" content="A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch."/><meta name="twitter:image" content="https://www.isagent.dev/opengraph-image.png"/><link rel="shortcut icon" href="/favicon.svg"/><link rel="icon" href="/favicon.svg"/><link rel="apple-touch-icon" href="/favicon.svg"/>
1<script src="/_next/static/chunks/a6dad97d9634a72d.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" noModule=""></script>
1</head><body class="font-mono"><div hidden=""><!--$--><!--/$--></div><div class="min-h-screen bg-white text-black overflow-x-hidden"><header class="border-b border-gray-200 px-4 py-4 z-50 relative bg-white"><div class="max-w-4xl mx-auto flex items-center justify-between"><div class="flex items-center space-x-2"><a class="hover:opacity-80" href="/"><span class="text-xl font-bold">IsAgent</span></a></div><nav class="flex items-center space-x-2 md:space-x-6"><a class="text-sm hover:underline" href="/docs">docs</a><a class="text-sm hover:underline" href="/examples">examples</a><a class="text-sm hover:underline" href="/faq">faq</a><a class="text-sm hover:underline flex items-center space-x-0.5 md:space-x-1" target="_blank" href="https://github.com/stytchauth/is-agent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-4 h-4"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg><span>github</span></a></nav></div></header><main class="max-w-4xl mx-auto px-4 py-16 overflow-x-hidden"><div class="relative"><div class="absolute -top-12 right-0 transform -translate-y-1/2 z-30"><button class="gap-2 whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:text-accent-foreground h-9 rounded-md rounded-b-lg rounded-t-none border-t-0 bg-white shadow-lg hover:bg-gray-50 flex flex-col items-center justify-center px-4 py-2 min-w-[120px]"><div class="flex items-center justify-center space-x-2"><span class="text-xs font-medium ">Human experience</span><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down w-4 h-4"><path d="m6 9 6 6 6-6"></path></svg></div></button></div><div class="fixed bg-white border border-gray-200 transition-transform duration-300 ease-in-out z-20 translate-y-full w-full sm:w-[calc(100%-1rem)] max-w-4xl left-1/2 -translate-x-1/2" style="transform:translateX(-50%) translateY(calc(-100% - 60px));height:auto;max-height:calc(100vh - 60px - 1rem);top:60px"><div class="p-4 sm:p-6 overflow-y-auto"><div class="mb-4 sm:mb-6"><h3 class="text-base sm:text-lg font-semibold">View Controls</h3></div><div class="space-y-6"><div class="p-4 bg-gray-50 rounded-lg border"><div class="text-sm text-gray-600">Detecting agent status...</div></div><div class="space-y-3"><h4 class="text-sm font-medium text-gray-700">Manual Override</h4><div class="space-y-2"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 bg-primary text-primary-foreground hover:bg-primary/90 h-9 rounded-md px-3 w-full font-mono" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user w-4 h-4 mr-2"><path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>Human View</button><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input bg-background hover:bg-accent hover:text-accent-foreground h-9 rounded-md px-3 w-full font-mono" disabled=""><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-bot w-4 h-4 mr-2"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg>Agent View</button></div></div><div class="pt-2"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input bg-background hover:bg-accent hover:text-accent-foreground h-9 rounded-md px-3 w-full font-mono text-xs" disabled="">Return to Auto Detect</button></div></div></div></div></div><div class="space-y-8"><div class="space-y-8"><div class="space-y-4"><div class="flex items-center space-x-2"><div class="mt-8"><a target="_blank" rel="noopener noreferrer" href="https://stytch.com?utm_source=isagent.dev">
1<div class="bg-[rgb(178,214,222)] w-[158px] cursor-pointer p-2 hover:bg-[rgb(158,194,202)] rounded-md"><div class="flex items-center gap-2"><div class="h-4 w-[13px] flex-shrink-0 flex items-center justify-center"><svg fill="none" viewBox="0 0 15 18" class="block w-[13px] h-4 flex-shrink-0"><path d="M6.90909 8.38462V0.846155H4.15599V3.98521C4.15599 4.81364 3.48442 5.48521 2.65599 5.48521H0.852273V8.38462H4.25348H6.90909Z" fill="#1F2221"></path><path d="M8.09091 8.38462V0.846155H10.844V3.98521C10.844 4.81364 11.5156 5.48521 12.344 5.48521H14.1477V8.38462H10.7465H8.09091Z" fill="#1F2221"></path><path d="M6.90909 9.61538V17.1538H4.15599V14.0148C4.15599 13.1864 3.48442 12.5148 2.65599 12.5148H0.852273V9.61538H4.25348H6.90909Z" fill="#1F2221"></path><path d="M8.09091 9.61538V17.1538H10.844V14.0148C10.844 13.1864 11.5156 12.5148 12.344 12.5148H14.1477V9.61538H10.7465H8.09091Z" fill="#1F2221"></path></svg></div><div class="flex"><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">B</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">u</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">i</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">l</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">t</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center"> </span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">b</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">y</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center"> </span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">S</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">t</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">y</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">t</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">c</span><span class="font-mono text-[13px] font-normal leading-[100%] inline-block text-[#1F2221]" style="transform-origin:center">h</span></div></div></div></a></div></div><h1 class="text-4xl font-bold text-black">IsAgent SDK</h1><p class="text-xl text-black max-w-2xl">A lightweight SDK for building agent-specific experiences in your app.</p><div class="flex items-center space-x-4"><a href="/docs#quick-start"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2 font-mono"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download w-4 h-4 mr-2"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" x2="12" y1="15" y2="3"></line></svg>Get Started</button></a><a href="/docs"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 font-mono bg-transparent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open w-4 h-4 mr-2"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg>Read Docs</button></a></div></div><div class="space-y-4"><h2 class="text-2xl font-bold"># Installation</h2><div class="rounded-lg text-card-foreground shadow-sm bg-gray-50 border border-gray-200"><div class="p-4"><div class="bg-gray-50 p-4 rounded-md overflow-x-auto"></div></div></div></div><div class="space-y-4"><h2 class="text-2xl font-bold"># Quick Start</h2><div class="rounded-lg text-card-foreground shadow-sm bg-gray-50 border border-gray-200"><div class="p-4"><div class="bg-gray-50 p-4 rounded-md overflow-x-auto"></div></div></div></div><div class="space-y-6"><h2 class="text-2xl font-bold"># Features</h2><div class="grid md:grid-cols-3 gap-6"><div class="rounded-lg bg-card text-card-foreground shadow-sm border border-gray-200"><div class="p-6 space-y-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code w-6 h-6"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg><h3 class="font-bold">Agent aware</h3><p class="text-sm text-gray-600">Built to recognize good agents and bad faith bots.</p></div></div><div class="rounded-lg bg-card text-card-foreground shadow-sm border border-gray-200"><div class="p-6 space-y-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-zap w-6 h-6"><path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"></path></svg><h3 class="font-bold">Lightweight</h3><p class="text-sm text-gray-600">Minimal dependencies. Zero-config setup. Just install and go.</p></div></div><div class="rounded-lg bg-card text-card-foreground shadow-sm border border-gray-200"><div class="p-6 space-y-3"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield w-6 h-6"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><h3 class="font-bold">Extensible</h3><p class="text-sm text-gray-600">Build on top of high-level React components or low-level Javascript utilities.</p></div></div></div></div><div class="space-y-4"><h2 class="text-2xl font-bold"># Helpful Links</h2><div class="space-y-2"><div class="flex items-center space-x-2"><span class="text-gray-400">â</span><a class="hover:underline" href="/docs">SDK Reference</a></div><div class="flex items-center space-x-2"><span class="text-gray-400">â</span><a class="hover:underline" href="/examples">Examples</a></div><div class="flex items-center space-x-2"><span class="text-gray-400">â</span><a class="hover:underline" href="/faq">Frequently Asked Questions (FAQ)</a></div><div class="flex items-center space-x-2"><span class="text-gray-400">â</span><a target="_blank" class="hover:underline" href="https://github.com/stytchauth/is-agent/CONTRIBUTING.md">Contributing</a></div><div class="flex items-center space-x-2"><span class="text-gray-400">â</span><a target="_blank" class="hover:underline" href="/docs#get-help">Get help</a></div></div></div><div class="space-y-4 pt-8"><div class="flex flex-wrap items-center gap-4"><a href="/docs#quick-start"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 bg-primary text-primary-foreground hover:bg-primary/90 h-10 px-4 py-2 font-mono"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-download w-4 h-4 mr-2"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" x2="12" y1="15" y2="3"></line></svg>Get Started</button></a><a href="/docs"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 font-mono bg-transparent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-book-open w-4 h-4 mr-2"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z"></path></svg>Read Docs</button></a><a href="/examples"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 font-mono bg-transparent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-code w-4 h-4 mr-2"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>View Examples</button></a><a href="/faq"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 font-mono bg-transparent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-help w-4 h-4 mr-2"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><path d="M12 17h.01"></path></svg>View FAQ</button></a><a target="_blank" href="https://github.com/stytchauth/is-agent"><button class="inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 border border-input hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 font-mono bg-transparent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-github w-4 h-4 mr-2"><path d="M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"></path><path d="M9 18c-4.51 2-5-2-7-2"></path></svg>View Source</button></a></div></div></div></div></main></div><!--$--><!--/$--><footer class="border-t border-gray-200 mt-16"><div class="max-w-4xl mx-auto px-4 py-8"><div class="flex items-center justify-between text-sm text-gray-500"><div class="flex flex-col space-y-1"><a href="https://stytch.com?utm_source=isagent.dev" target="_blank" class="hover:underline"><span>Built by Stytch</span></a><span>©2025 Stytch. All rights reserved.</span></div><div class="flex items-center space-x-4"><span class="text-sm text-gray-500">made with â¤ï¸ in sf</span></div></div></div></footer>
1<script src="/_next/static/chunks/cefdb4d271b6bf28.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[19948,[\"/_next/static/chunks/3dc33abe801985b6.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"ConsoleAsciiArt\"]\n3:I[51674,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"default\"]\n4:I[21110,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"default\"]\n5:I[25878,[\"/_next/static/chunks/3dc33abe801985b6.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"Analytics\"]\n6:I[87014,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"ClientPageRoot\"]\n7:I[31713,[\"/_next/static/chunks/3dc33abe801985b6.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/25c256ec7268237d.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/c55ff7a7b6ebb1ba.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/96f7ee578f6a79b2.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/1164f6a78c0089a7.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"default\",1]\na:I[61879,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"OutletBoundary\"]\nb:\"$Sreact.suspense\"\nd:I[61879,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"ViewportBoundary\"]\nf:I[61879,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"MetadataBoundary\"]\n11:I[21044,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"default\"]\n:HL[\"/_next/static/chunks/28e60ad4f7f52bf8.css?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"style\"]\n:HL[\"/_next/static/media/GeistMono_Variable.p.73882635.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/Geist_Variable-s.p.f19e4721.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"gzsRcrJCIF2EkW_gxMCe8\",\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/28e60ad4f7f52bf8.css?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/3dc33abe801985b6.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"geistsans_d5a4f12f-module__WW247W__variable geistmono_157ca88a-module__e5BvEq__variable\",\"children\":[\"$\",\"body\",null,{\"className\":\"font-mono\",\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"footer\",null,{\"className\":\"border-t border-gray-200 mt-16\",\"children\":[\"$\",\"div\",null,{\"className\":\"max-w-4xl mx-auto px-4 py-8\",\"children\":[\"$\",\"div\",null,{\"className\":\"flex items-center justify-between text-sm text-gray-500\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-col space-y-1\",\"children\":[[\"$\",\"a\",null,{\"href\":\"https://stytch.com?utm_source=isagent.dev\",\"target\":\"_blank\",\"className\":\"hover:underline\",\"children\":[\"$\",\"span\",null,{\"children\":\"Built by Stytch\"}]}],[\"$\",\"span\",null,{\"children\":\"©2025 Stytch. All rights reserved.\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-center space-x-4\",\"children\":[\"$\",\"span\",null,{\"className\":\"text-sm text-gray-500\",\"children\":\"made with â¤ï¸ in sf\"}]}]]}]}]}],[\"$\",\"$L5\",null,{}]]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"$L6\",null,{\"Component\":\"$7\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@8\",\"$@9\"]}}],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/25c256ec7268237d.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/c55ff7a7b6ebb1ba.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/96f7ee578f6a79b2.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/1164f6a78c0089a7.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$La\",null,{\"children\":[\"$\",\"$b\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@c\"}]}]]}],{}
1,null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lf\",null,{\"children\":[\"$\",\"$b\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L10\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$11\",[]],\"S\":true}\n"])</script>
1<script>self.__next_f.push([1,"8:{}\n9:\"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params\"\n"])</script>
1<script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script>
1<script>self.__next_f.push([1,"12:I[79400,[\"/_next/static/chunks/7c4f85df3640cb60.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\",\"/_next/static/chunks/fdad6def31627d4a.js?dpl=dpl_D6F95rC4AZh8oaCQhkeRVNyNHRrc\"],\"IconMark\"]\nc:null\n"])</script>
1<script>self.__next_f.push([1,"10:[[\"$\",\"title\",\"0\",{\"children\":\"IsAgent - AI Agent Detection SDK\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"Stytch\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"AI agent detection,React SDK,bot detection,agent-aware UI,Stytch,JavaScript,TypeScript\"}],[\"$\",\"meta\",\"4\",{\"name\":\"creator\",\"content\":\"Stytch\"}],[\"$\",\"meta\",\"5\",{\"name\":\"publisher\",\"content\":\"Stytch\"}],[\"$\",\"meta\",\"6\",{\"name\":\"robots\",\"content\":\"index, follow\"}],[\"$\",\"meta\",\"7\",{\"name\":\"googlebot\",\"content\":\"index, follow, max-video-preview:-1, max-image-preview:large, max-snippet:-1\"}],[\"$\",\"link\",\"8\",{\"rel\":\"canonical\",\"href\":\"https://isagent.dev\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:title\",\"content\":\"IsAgent - AI Agent Detection SDK\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:description\",\"content\":\"A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch.\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:url\",\"content\":\"https://isagent.dev\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:site_name\",\"content\":\"IsAgent\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:image\",\"content\":\"https://www.isagent.dev/opengraph-image.png\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"16\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"17\",{\"property\":\"og:image:alt\",\"content\":\"IsAgent - A lightweight SDK for building agent specific experiences\"}],[\"$\",\"meta\",\"18\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:creator\",\"content\":\"@stytch\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:title\",\"content\":\"IsAgent - AI Agent Detection SDK\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:description\",\"content\":\"A lightweight React SDK for detecting AI agents and building agent-specific experiences. Built by Stytch.\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:image\",\"content\":\"https://www.isagent.dev/opengraph-image.png\"}],[\"$\",\"link\",\"24\",{\"rel\":\"shortcut icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"link\",\"25\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"link\",\"26\",{\"rel\":\"apple-touch-icon\",\"href\":\"/favicon.svg\"}],[\"$\",\"$L12\",\"27\",{}]]\n"])</script>
1</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.