@browserbasehq/ai-sdk
v0.1.0
Published
AI SDK tools for Browserbase powered by Stagehand
Readme
@browserbasehq/ai-sdk
AI SDK tools for Browserbase, powered by @browserbasehq/stagehand.
Install
npm install @browserbasehq/ai-sdk ai @ai-sdk/googleQuickstart
import { generateText } from "ai";
import { google } from "@ai-sdk/google";
import { createBrowserbaseTools } from "@browserbasehq/ai-sdk";
const browserbase = createBrowserbaseTools({
stagehand: {
model: "google/gemini-3-flash-preview"
}
});
const result = await generateText({
model: google("gemini-2.5-flash"),
tools: browserbase.tools,
maxSteps: 10,
prompt: "Open https://example.com and summarize what is on the page."
});
console.log(result.text);
await browserbase.closeSession();API
export type BrowserbaseToolNames = {
sessionStart: string;
sessionClose: string;
navigate: string;
getUrl: string;
screenshot: string;
act: string;
extract: string;
observe: string;
agentExecute: string;
};
export type CreateBrowserbaseToolsOptions = {
stagehand?: Partial<V3Options>;
session?: {
strategy?: "shared" | "per-call";
closeOnExit?: boolean;
};
names?: Partial<BrowserbaseToolNames>;
};
export type BrowserbaseToolset = {
tools: Record<string, Tool>;
startSession(): Promise<{ sessionId?: string; debugUrl?: string }>;
closeSession(): Promise<void>;
getSessionInfo(): { sessionId?: string; debugUrl?: string } | null;
};Default tool names
browserbase_stagehand_session_startbrowserbase_stagehand_session_closebrowserbase_stagehand_navigatebrowserbase_stagehand_get_urlbrowserbase_screenshotbrowserbase_stagehand_actbrowserbase_stagehand_extractbrowserbase_stagehand_observebrowserbase_stagehand_agent_execute
Environment variables
| Variable | Required | Description |
|---|---|---|
| BROWSERBASE_API_KEY | Yes (Browserbase env) | Browserbase API key |
| BROWSERBASE_PROJECT_ID | Yes (Browserbase env) | Browserbase project id |
| GEMINI_API_KEY | Needed for act/extract/observe/agent with Gemini models | LLM provider key |
You can pass explicit Stagehand config via stagehand options if you do not want to rely on environment defaults.
Session strategy
shared(default): one browser session reused across tool calls.per-call: creates and closes a fresh session for each tool execution.
Act and extract behavior
actsupports two input styles:action(recommended) for natural-language actions.instructionas a backward-compatible alias for natural-language actions.deterministicActionfor selector/method execution when you already have a concrete target (for example fromobserve).
extractsupports optionalschema(JSON Schema). When present, it is converted with Stagehand's built-injsonSchemaToZodand passed tostagehand.extract(instruction, schema, options).- This package intentionally relies on Stagehand core self-heal and inference behavior, rather than re-implementing custom retry loops in this wrapper.
Registry metadata target
- slug:
browserbase - package:
@browserbasehq/ai-sdk - tags:
browser,browser-automation,web,extraction
License
MIT
