{"data":{"slug":"stagehand","name":"Stagehand","tagline":"AI-native browser automation that mixes code and natural language","category":"agents","categoryName":"AI Agents","url":"https://stagehand.dev","github":"https://github.com/browserbase/stagehand","pricing":"open-source","hook":"Stagehand lets you write Playwright scripts, then swap in natural language when the selectors break.","whatsGood":"Stagehand solves the hardest problem in browser automation: what happens when the UI changes. Built on Playwright, it adds AI primitives—act, extract, observe—that interpret pages like a human would. You can mix deterministic code for the stable parts and natural-language instructions for the parts that shift.","theCatch":"AI calls add latency and cost. The natural-language parts are only as reliable as the underlying model. Debugging AI-driven steps is harder than debugging selectors.","verdict":"The right abstraction for browser automation that needs to survive UI changes.","addedAt":"2026-08-19","featured":false,"domain":"AI Agents","subSpecialty":"Browser Automation","capabilities":["browser","playwright"],"surfaces":["Self-host"],"ecosystem":["Node.js","Browser"],"licenseModel":"OSS/MIT","githubStars":24134},"related":[{"slug":"claude-code","name":"Claude Code","tagline":"Terminal-first coding agent with deep repository context"},{"slug":"cursor","name":"Cursor","tagline":"The AI-first code editor that understands your codebase"},{"slug":"devin","name":"Devin","tagline":"Autonomous AI engineer for defined engineering tasks"},{"slug":"browser-use","name":"Browser Use","tagline":"Open-source framework for LLM-driven browser agents"},{"slug":"browserbase","name":"Browserbase","tagline":"Managed browser infrastructure for AI agents at scale"}],"links":{"self":"/api/gems/stagehand","html":"/gems/stagehand","markdown":"/gems/stagehand.md","category":"/api/gems?category=agents","categoryPage":"/stacks/agents"}}