[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3688":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":33,"readmeContent":34,"aiSummary":35,"trendingCount":16,"starSnapshotCount":16,"syncStatus":36,"lastSyncTime":37,"discoverSource":38},3688,"stagehand","browserbase\u002Fstagehand","browserbase","The SDK For Browser Agents","https:\u002F\u002Fstagehand.dev",null,"TypeScript",23074,1570,96,95,0,13,127,465,82,44.59,"MIT License",false,"main",true,[27,28,29,30,31,32],"agents","ai","llms","playwright","puppeteer","selenium","2026-06-12 02:00:52","\u003Cdiv id=\"toc\" align=\"center\" style=\"margin-bottom: 0;\">\n  \u003Cul style=\"list-style: none; margin: 0; padding: 0;\">\n    \u003Ca href=\"https:\u002F\u002Fstagehand.dev\">\n      \u003Cpicture>\n        \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"media\u002Fdark_logo.png\" \u002F>\n        \u003Cimg alt=\"Stagehand\" src=\"media\u002Flight_logo.png\" width=\"200\" style=\"margin-right: 30px;\" \u002F>\n      \u003C\u002Fpicture>\n    \u003C\u002Fa>\n  \u003C\u002Ful>\n\u003C\u002Fdiv>\n\u003Cp align=\"center\">\n  \u003Cstrong>The AI Browser Automation Framework\u003C\u002Fstrong>\u003Cbr>\n  \u003Ca href=\"https:\u002F\u002Fdocs.stagehand.dev\">Read the Docs\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbrowserbase\u002Fstagehand\u002Ftree\u002Fmain?tab=MIT-1-ov-file#MIT-1-ov-file\">\n    \u003Cpicture>\n      \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"media\u002Fdark_license.svg\" \u002F>\n      \u003Cimg alt=\"MIT License\" src=\"media\u002Flight_license.svg\" \u002F>\n    \u003C\u002Fpicture>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fstagehand.dev\u002Fdiscord\">\n    \u003Cpicture>\n      \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"media\u002Fdark_discord.svg\" \u002F>\n      \u003Cimg alt=\"Discord Community\" src=\"media\u002Flight_discord.svg\" \u002F>\n    \u003C\u002Fpicture>\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n\t\u003Ca href=\"https:\u002F\u002Ftrendshift.io\u002Frepositories\u002F12122\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Ftrendshift.io\u002Fapi\u002Fbadge\u002Frepositories\u002F12122\" alt=\"browserbase%2Fstagehand | Trendshift\" style=\"width: 250px; height: 55px;\" width=\"250\" height=\"55\"\u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fdeepwiki.com\u002Fbrowserbase\u002Fstagehand\">\n    \u003Cimg alt=\"Ask DeepWiki\" src=\"https:\u002F\u002Fdeepwiki.com\u002Fbadge.svg\" \u002F>\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\nIf you're looking for the Python implementation, you can find it \n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbrowserbase\u002Fstagehand-python\"> here\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cdiv align=\"center\" style=\"display: flex; align-items: center; justify-content: center; gap: 4px; margin-bottom: 0;\">\n  \u003Cb>Vibe code\u003C\u002Fb>\n  \u003Cspan style=\"font-size: 1.05em;\"> Stagehand with \u003C\u002Fspan>\n  \u003Ca href=\"https:\u002F\u002Fdirector.ai\" style=\"display: flex; align-items: center;\">\n    \u003Cspan>Director\u003C\u002Fspan>\n  \u003C\u002Fa>\n  \u003Cspan> \u003C\u002Fspan>\n  \u003Cpicture>\n    \u003Cimg alt=\"Director\" src=\"media\u002Fdirector_icon.svg\" width=\"25\" \u002F>\n  \u003C\u002Fpicture>\n\u003C\u002Fdiv>\n\n## What is Stagehand?\n\nStagehand is a browser automation framework used to control web browsers with natural language and code. By combining the power of AI with the precision of code, Stagehand makes web automation flexible, maintainable, and actually reliable.\n\n## Why Stagehand?\n\nMost existing browser automation tools either require you to write low-level code in a framework like Selenium, Playwright, or Puppeteer, or use high-level agents that can be unpredictable in production. By letting developers choose what to write in code vs. natural language (and bridging the gap between the two) Stagehand is the natural choice for browser automations in production.\n\n1. **Choose when to write code vs. natural language**: use AI when you want to navigate unfamiliar pages, and use code when you know exactly what you want to do.\n\n2. **Go from AI-driven to repeatable workflows**: Stagehand lets you preview AI actions before running them, and also helps you easily cache repeatable actions to save time and tokens.\n\n3. **Write once, run forever**: Stagehand's auto-caching combined with self-healing remembers previous actions, runs without LLM inference, and knows when to involve AI whenever the website changes and your automation breaks. \n\n## Getting Started\n\nStart with Stagehand with one line of code, or check out our [Quickstart Guide](https:\u002F\u002Fdocs.stagehand.dev\u002Fv3\u002Ffirst-steps\u002Fquickstart) for more information:\n\n```bash\nnpx create-browser-app\n```\n\n## Example\n\nHere's how to build a sample browser automation with Stagehand:\n\n```typescript\n\u002F\u002F Stagehand's CDP engine provides an optimized, low level interface to the browser built for automation\nconst page = stagehand.context.pages()[0];\nawait page.goto(\"https:\u002F\u002Fgithub.com\u002Fbrowserbase\");\n\n\u002F\u002F Use act() to execute individual actions\nawait stagehand.act(\"click on the stagehand repo\");\n\n\u002F\u002F Use agent() for multi-step tasks\nconst agent = stagehand.agent();\nawait agent.execute(\"Get to the latest PR\");\n\n\u002F\u002F Use extract() to get structured data from the page\nconst { author, title } = await stagehand.extract(\n  \"extract the author and title of the PR\",\n  z.object({\n    author: z.string().describe(\"The username of the PR author\"),\n    title: z.string().describe(\"The title of the PR\"),\n  }),\n);\n```\n\n## Documentation\n\nVisit [docs.stagehand.dev](https:\u002F\u002Fdocs.stagehand.dev) to view the full documentation.\n\n\n### Build and Run from Source\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fbrowserbase\u002Fstagehand.git\ncd stagehand\npnpm install\npnpm run build\npnpm run example # run the blank script at .\u002Fexamples\u002Fexample.ts\n```\n\nStagehand is best when you have an API key for an LLM provider and Browserbase credentials. To add these to your project, run:\n\n```bash\ncp .env.example .env\nnano .env # Edit the .env file to add API keys\n```\n\n### Installing from a branch\n\nYou can install and build Stagehand directly from a github branch using [gitpkg](https:\u002F\u002Fgithub.com\u002FEqualMa\u002Fgitpkg)\n\nIn your project's `package.json` set:\n```json\n\"@browserbasehq\u002Fstagehand\": \"https:\u002F\u002Fgitpkg.now.sh\u002Fbrowserbase\u002Fstagehand\u002Fpackages\u002Fcore?\u003CbranchName>\",\n```\n\n\n## Contributing\n\n> [!NOTE]\n> We highly value contributions to Stagehand! For questions or support, please join our [Discord community](https:\u002F\u002Fstagehand.dev\u002Fdiscord).\n\nAt a high level, we're focused on improving reliability, extensibility, speed, and cost in that order of priority. If you're interested in contributing, **bug fixes and small improvements are the best way to get started**. For more involved features, we strongly recommend reaching out to [Miguel Gonzalez](https:\u002F\u002Fx.com\u002Fmiguel_gonzf) or [Paul Klein](https:\u002F\u002Fx.com\u002Fpk_iv) in our [Discord community](https:\u002F\u002Fstagehand.dev\u002Fdiscord) before starting to ensure that your contribution aligns with our goals.\n\n\n\u003C!-- For more information, please see our [Contributing Guide](https:\u002F\u002Fdocs.stagehand.dev\u002Fexamples\u002Fcontributing). -->\n\n## Acknowledgements\n\nWe'd like to thank the following people for their major contributions to Stagehand:\n- [Paul Klein](https:\u002F\u002Fgithub.com\u002Fpkiv)\n- [Sean McGuire](https:\u002F\u002Fgithub.com\u002Fseanmcguire12)\n- [Miguel Gonzalez](https:\u002F\u002Fgithub.com\u002Fmiguelg719)\n- [Sameel Arif](https:\u002F\u002Fgithub.com\u002Fsameelarif)\n- [Thomas Katwan](https:\u002F\u002Fgithub.com\u002Ftkattkat)\n- [Filip Michalsky](https:\u002F\u002Fgithub.com\u002Ffilip-michalsky)\n- [Anirudh Kamath](https:\u002F\u002Fgithub.com\u002Fkamath)\n- [Jeremy Press](https:\u002F\u002Fx.com\u002Fjeremypress)\n- [Navid Pour](https:\u002F\u002Fgithub.com\u002Fnavidpour)\n\n## License\n\nLicensed under the MIT License.\n\nCopyright 2025 Browserbase, Inc.\n","Stagehand 是一个用于浏览器自动化的框架，它结合了自然语言处理和编程代码来控制网页浏览器。该项目的核心功能包括通过AI技术理解并执行基于自然语言的指令，同时也支持传统的编程方式以实现更精确的操作，兼容Selenium、Playwright和Puppeteer等主流自动化工具。这种灵活性使得开发者可以根据需求选择最合适的自动化方法，无论是探索未知页面还是执行特定任务。适用于需要高效且可维护地进行Web应用测试、数据抓取或任何涉及复杂用户交互场景的项目中。",2,"2026-06-06 02:56:20","top_language"]