Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

The AI Browser Automation Framework

License

NotificationsYou must be signed in to change notification settings

browserbase/stagehand

Repository files navigation

    Stagehand

The AI Browser Automation Framework
Read the Docs

MIT LicenseSlack Community

browserbase%2Fstagehand | Trendshift

If you're looking for the Python implementation, you can find it here

Vibe code Stagehand withDirectorDirector

Why Stagehand?

Most 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, Stagehand is the natural choice for browser automations in production.

  1. Choose when to write code vs. natural language: use AI when you want to navigate unfamiliar pages, and use code (Playwright) when you know exactly what you want to do.

  2. Preview and cache actions: Stagehand lets you preview AI actions before running them, and also helps you easily cache repeatable actions to save time and tokens.

  3. Computer use models with one line of code: Stagehand lets you integrate SOTA computer use models from OpenAI and Anthropic into the browser with one line of code.

Example

Here's how to build a sample browser automation with Stagehand:

See Stagehand in Action
// Use Playwright functions on the page objectconstpage=stagehand.page;awaitpage.goto("https://github.com/browserbase");// Use act() to execute individual actionsawaitpage.act("click on the stagehand repo");// Use Computer Use agents for larger actionsconstagent=stagehand.agent({provider:"openai",model:"computer-use-preview",});awaitagent.execute("Get to the latest PR");// Use extract() to read data from the pageconst{ author, title}=awaitpage.extract({instruction:"extract the author and title of the PR",schema:z.object({author:z.string().describe("The username of the PR author"),title:z.string().describe("The title of the PR"),}),});

Documentation

Visitdocs.stagehand.dev to view the full documentation.

Getting Started

Start with Stagehand with one line of code, or check out ourQuickstart Guide for more information:

npx create-browser-app

Build and Run from Source

git clone https://github.com/browserbase/stagehand.gitcd stagehandpnpm installpnpm playwright installpnpm run buildpnpm run example# run the blank script at ./examples/example.tspnpm run example 2048# run the 2048 example at ./examples/2048.ts

Stagehand is best when you have an API key for an LLM provider and Browserbase credentials. To add these to your project, run:

cp .env.example .envnano .env# Edit the .env file to add API keys

Contributing

Note

We highly value contributions to Stagehand! For questions or support, please join ourSlack community.

At a high level, we're focused on improving reliability, speed, and cost in that order of priority. If you're interested in contributing, we strongly recommend reaching out toMiguel Gonzalez orPaul Klein in ourSlack community before starting to ensure that your contribution aligns with our goals.

For more information, please see ourContributing Guide.

Acknowledgements

This project heavily relies onPlaywright as a resilient backbone to automate the web. It also would not be possible without the awesome techniques and discoveries made bytarsier,gemini-zod, andfuji-web.

We'd like to thank the following people for their major contributions to Stagehand:

License

Licensed under the MIT License.

Copyright 2025 Browserbase, Inc.


[8]ページ先頭

©2009-2025 Movatter.jp