Skip to content

Releases: browserbase/stagehand

v1.14.0

05 Mar 17:22
5c2e887

Choose a tag to compare

Minor Changes

  • #518 516725f Thanks @sameelarif! - act() can now use observe() under the hood, resulting in significant performance improvements. To opt-in to this change, set slowDomBasedAct: false in ActOptions.

  • #483 8c9445f Thanks @seanmcguire12! - When using textExtract, you can now do targetted extraction by passing an xpath string into extract via the selector parameter. This limits the dom processing step to a target element, reducing tokens and increasing speed. For example:

    const weatherData = await stagehand.page.extract({
      instruction: "extract the weather data for Sun, Feb 23 at 11PM",
      schema: z.object({
        temperature: z.string(),
        weather_description: z.string(),
        wind: z.string(),
        humidity: z.string(),
        barometer: z.string(),
        visibility: z.string(),
      }),
      modelName,
      useTextExtract,
      selector: xpath, // xpath of the element to extract from
    });
  • #556 499a72d Thanks @kamath! - You can now set a timeout for dom-based stagehand act! Do this in act with timeoutMs as a parameter, or set a global param to actTimeoutMs in Stagehand config.

  • #544 55c9673 Thanks @seanmcguire12! - you can now deterministically get the full text representation of a webpage by calling extract() (with no arguments)

  • #538 d898d5b Thanks @sameelarif! - Added gpt-4.5-preview and claude-3-7-sonnet-latest as supported models.

  • #523 44cf7cc Thanks @kwt00! You can now natively run Cerebras LLMs! cerebras-llama-3.3-70b and cerebras-llama-3.1-8b are now supported models as long as CEREBRAS_API_KEY is set in your environment.

  • #542 cf7fe66 Thanks @sankalpgunturi! You can now natively run Groq LLMs! groq-llama-3.3-70b-versatile and groq-llama-3.3-70b-specdec are now supported models as long as GROQ_API_KEY is set in your environment.

Patch Changes

v1.13.1

24 Feb 21:48
6aebe3d

Choose a tag to compare

Patch Changes

v1.13.0

20 Feb 05:37
d5a89f6

Choose a tag to compare

Minor Changes

  • #486 33f2b3f Thanks @sameelarif! - [Unreleased] Parameterized offloading Stagehand method calls to the Stagehand API. In the future, this will allow for better observability and debugging experience.

  • #494 9ba4b0b Thanks @pkiv! - Added LocalBrowserLaunchOptions to provide comprehensive configuration options for local browser instances. Deprecated the top-level headless option in favor of using localBrowserLaunchOptions.headless

  • #500 a683fab Thanks @miguelg719! - Including Iframes in ObserveResults. This appends any iframe(s) found in the page to the end of observe results on any observe call.

  • #504 577662e Thanks @sameelarif! - Enabled support for Browserbase captcha solving after page navigations. This can be enabled with the new constructor parameter: waitForCaptchaSolves.

  • #496 28ca9fb Thanks @sameelarif! - Fixed browserbaseSessionCreateParams not being passed in to the API initialization payload.

Patch Changes

v1.12.0

06 Feb 16:33
c4bc0bb

Choose a tag to compare

Minor Changes

  • #426 bbbcee7 Thanks @miguelg719! - Observe got a major upgrade. Now it will return a suggested playwright method with any necessary arguments for the generated candidate elements. It also includes a major speedup when using a11y tree processing for context.

  • #452 16837ec Thanks @kamath! - add o3-mini to availablemodel

  • #441 1032d7d Thanks @seanmcguire12! - allow act to accept observe output

Patch Changes

  • #458 da2e5d1 Thanks @miguelg719! - Updated getAccessibilityTree() to make sure it doesn't skip useful nodes. Improved getXPathByResolvedObjectId() to account for text nodes and not skip generation

  • #448 b216072 Thanks @seanmcguire12! - improve handling of radio button clicks

  • #445 5bc514f Thanks @miguelg719! - Adding back useAccessibilityTree param to observe with a deprecation warning/error indicating to use onlyVisible instead

v1.10.1

21 Jan 19:29
df20a3e

Choose a tag to compare

Patch Changes

  • #422 a2878d0 Thanks @miguelg719! - Fixing a build type error for async functions being called inside evaulate for observeHandler.

v1.10.0

21 Jan 06:09
3d107ba

Choose a tag to compare

Minor Changes

  • #412 4aa4813 Thanks @miguelg719! - Includes a new format to get website context using accessibility (a11y) trees. The new context is provided optionally with the flag useAccessibilityTree for observe tasks.

  • #417 1f2b2c5 Thanks @sameelarif! - Simplify Stagehand method calls by allowing a simple string input instead of an options object.

  • #405 0df1e23 Thanks @seanmcguire12! - in ProcessAllOfDom, scroll on large scrollable elements instead of just the root DOM

  • #373 ff00965 Thanks @sameelarif! - Allow the input of custom instructions into the constructor so that users can guide, or provide guardrails to, the LLM in making decisions.

Patch Changes

v1.9.0

08 Jan 10:26
92b0ca0

Choose a tag to compare

Minor Changes

  • #374 207244e Thanks @sameelarif! - Pass in a Stagehand Page object into the on("popup") listener to allow for multi-page handling.

  • #367 75c0e20 Thanks @kamath! - Logger in LLMClient is inherited by default from Stagehand. Named rather than positional arguments are used in implemented LLMClients.

  • #381 db2ef59 Thanks @kamath! - make logs only sync

  • #385 5899ec2 Thanks @sameelarif! - Moved the LLMClient logger paremeter to the createChatCompletion method options.

  • #364 08907eb Thanks @kamath! - exposed llmClient in stagehand constructor

Patch Changes

v1.8.0

24 Dec 05:12
f38e82c

Choose a tag to compare

Minor Changes

  • #324 cd23fa3 Thanks @kamath! - Move stagehand.act() -> stagehand.page.act() and deprecate stagehand.act()

  • #319 bacbe60 Thanks @kamath! - We now wrap playwright page/context within StagehandPage and StagehandContext objects. This helps us augment the Stagehand experience by being able to augment the underlying Playwright

  • #324 cd23fa3 Thanks @kamath! - moves extract and act -> page and deprecates stagehand.extract and stagehand.observe

Patch Changes

v1.7.0

17 Dec 07:38
8b40f2b

Choose a tag to compare

Minor Changes

  • #316 902e633 Thanks @kamath! - rename browserbaseResumeSessionID -> browserbaseSessionID

  • #296 f11da27 Thanks @kamath! - - Deprecate fields in init in favor of constructor options

    • Deprecate initFromPage in favor of browserbaseResumeSessionID in constructor
    • Rename browserBaseSessionCreateParams -> browserbaseSessionCreateParams
  • #304 0b72f75 Thanks @seanmcguire12! - add textExtract: an optional, text based approach to the existing extract method. textExtract often performs better on long form extraction tasks. By default extract uses the existing approach domExtract.

  • #298 55f0cd2 Thanks @kamath! - Add sessionId to public params

Patch Changes

v1.6.0

10 Dec 05:29
0af378c

Choose a tag to compare

Minor Changes

#279 d6d7057 Thanks @navidkpr, @sameelarif, @kamath! - Add support for o1-mini and o1-preview in OpenAIClient

#282 5291797 Thanks @sameelarif! - Added eslint for stricter type checking. Streamlined most of the internal types throughout the cache, llm, and handlers. This should make it easier to add new LLMs down the line, maintain and update the existing code, and make it easier to add new features in the future. Types can be checked by running npx eslint . from the project directory.

Patch Changes

#286 9605836 Thanks @navidkpr! - minor improvement in action + new eval case

#270 6b10b3b Thanks @sameelarif! - add close link to readme

#288 5afa0b9 Thanks @tan-z-tan! - add multi-region support for browserbase

#284 474217c Thanks @kamath! - Build wasn't working, this addresses tsc failure.

#236 85483fe Thanks @seanmcguire12! - reduce chunk size