sdk/src/all.ts
Export Index
| Export | Kind | Source | Notes |
|---|---|---|---|
_RpcMessage | type | packages/schemas/src/messages/rpc.ts | Re-exported from non-SDK source |
AuthenticationError | class | sdk/src/errors.ts | Authentication/authorization errors — check API key |
AutomationError | class | sdk/src/errors.ts | Automation/driver/script errors — your code or selectors need fixing |
Bctrl | class | sdk/src/bctrl.ts | - |
BctrlEnvironment | type | sdk/src/config.ts | - |
BctrlError | class | sdk/src/errors.ts | Base error class for all bctrl SDK errors. Carries a fine-grained .code and optional .context metadata. |
BctrlOptions | interface | sdk/src/bctrl.ts | Options for Bctrl client. |
BrowserConfigInfo | interface | sdk/src/bctrl.ts | Result of updating a named browser’s default settings. |
BrowserConnectApi | interface | sdk/src/bctrl.ts | Callable profile connect API scoped to a specific browser name. Strict attach only: the browser must already be running. Usage: - await bctrl.browser('my-bot').connect() (defaults to Playwright) - await bctrl.browser('my-bot').connect.playwright() - await bctrl.browser('my-bot').connect.puppeteer() - await bctrl.browser('my-bot').connect.stagehand() - await bctrl.browser('my-bot').connect.selenium() |
BrowserCreateResult | interface | sdk/src/bctrl.ts | Result returned when a named browser is created. |
BrowserHandle | interface | sdk/src/bctrl.ts | Browser-scoped helper API for named profiles. |
BrowserInfo | interface | sdk/src/bctrl.ts | Browser status information. |
BrowserLaunchResult | type | packages/schemas/src/results/desktop.ts | Re-exported from non-SDK source |
BrowserUpgradeInfo | interface | sdk/src/bctrl.ts | Result of upgrading a provisioned profile’s fingerprint/kernel. Returns null when the profile is already up to date. |
By | variable | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
ConnectOptions | interface | sdk/src/base/types.ts | Connection options for connecting to bctrl |
connectSessionDriver | function | sdk/src/client/rpc.ts | Connect a driver to an existing started session on the control-plane. |
CreateOptions | interface | sdk/src/bctrl.ts | Options for creating a named browser. |
CreateSessionOptions | interface | sdk/src/bctrl.ts | Options for creating a one-time ephemeral browser session (no driver attached yet). |
defineScript | function | sdk/src/scripts/definition.ts | - |
desktop | variable | sdk/src/drivers/desktop/index.ts | - |
DesktopConnectOptions | interface | sdk/src/drivers/desktop/index.ts | - |
DesktopSession | class | sdk/src/drivers/desktop/session.ts | - |
DriverType | type | packages/schemas/src/messages/base.ts | Re-exported from non-SDK source |
EvaluateOptions | interface | sdk/src/base/types.ts | Evaluate options |
ExecuteOptions | interface | sdk/src/bctrl.ts | Options for one-shot script execution via bctrl.execute(). |
ExtensionsClient | class | sdk/src/extensions/client.ts | - |
fromErrorResponse | function | sdk/src/errors.ts | Reconstruct a typed error from the wire format (errorCode + errorContext) |
getAutomationDiagnostic | function | sdk/src/errors.ts | Get a typed automation diagnostic payload from an SDK error when available. |
getAutomationHint | function | sdk/src/errors.ts | Get a typed automation hint from an SDK error when available. |
isAuthenticationError | function | sdk/src/errors.ts | - |
isAutomationError | function | sdk/src/errors.ts | - |
isBctrlError | function | sdk/src/errors.ts | - |
isSessionError | function | sdk/src/errors.ts | - |
isTimeoutError | function | sdk/src/errors.ts | - |
ListObjectsOptions | interface | sdk/src/storage/client.ts | - |
ListObjectsResult | interface | sdk/src/storage/client.ts | - |
LocatorStep | interface | sdk/src/base/types.ts | Locator step for remote locator chains |
LocatorStrategy | type | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
MouseClickOptions | interface | sdk/src/base/types.ts | Mouse click options |
PlaywrightSession | class | sdk/src/drivers/playwright/session.ts | - |
PresignedUrlResult | interface | sdk/src/storage/client.ts | - |
PressOptions | interface | sdk/src/base/types.ts | Keyboard press options |
ProfileApi | interface | sdk/src/bctrl.ts | - |
ProfileConnectResult | interface | sdk/src/bctrl.ts | - |
ProfileOptions | interface | sdk/src/base/types.ts | Profile selection options |
ProfileStartResult | interface | sdk/src/bctrl.ts | - |
ProxyConfig | interface | sdk/src/bctrl.ts | Proxy configuration for browser profiles. |
PuppeteerSession | class | sdk/src/drivers/puppeteer/session.ts | - |
rpc | function | sdk/src/client/rpc.ts | RPC call to control-plane |
RpcMessageSdk | interface | sdk/src/base/types.ts | SDK RPC message for sending commands to control-plane |
schemas | namespace | packages/schemas/src/index.ts | Re-exported from non-SDK source |
SdkAutomationError | class | sdk/src/errors.ts | Automation/driver/script errors — your code or selectors need fixing |
SelectOption | interface | sdk/src/base/types.ts | Select options |
SeleniumSession | class | sdk/src/drivers/selenium/session.ts | Selenium session with WebDriver API and Stagehand AI methods. |
sendCommand | function | sdk/src/client/rpc.ts | - |
SessionApi | interface | sdk/src/bctrl.ts | Callable session creation API. Usage: - await bctrl.session() (defaults to Playwright) - await bctrl.session.playwright() - await bctrl.session.puppeteer() - await bctrl.session.stagehand() - await bctrl.session.selenium() |
SessionError | class | sdk/src/errors.ts | Session/browser lifecycle errors — reconnect or recreate |
SessionInfo | interface | sdk/src/base/types.ts | Session information returned from control-plane |
SessionsApi | interface | sdk/src/bctrl.ts | - |
SessionStoragePolicy | type | packages/schemas/src/storage/types.ts | Re-exported from non-SDK source |
StagehandSession | class | sdk/src/drivers/stagehand/session.ts | - |
StartedSessionData | interface | sdk/src/bctrl.ts | Raw data returned from ephemeral session start (no driver attached yet). |
StartOptions | interface | sdk/src/bctrl.ts | Options for starting a browser. |
startSession | function | sdk/src/client/rpc.ts | Start an ephemeral browser session on the control-plane (no driver connected). |
stopSession | function | sdk/src/client/rpc.ts | Stop a session on the control-plane |
StorageBrowseFile | type | sdk/src/storage/client.ts | - |
StorageBrowseOptions | interface | sdk/src/storage/client.ts | - |
StorageBrowseResult | type | sdk/src/storage/client.ts | - |
StorageClient | class | sdk/src/storage/client.ts | Client for interacting with workspace storage. |
StorageObject | interface | sdk/src/storage/client.ts | - |
StorageReadResult | type | sdk/src/storage/client.ts | - |
TimeoutError | class | sdk/src/errors.ts | Timeout errors — increase timeout or retry |
UploadObjectOptions | interface | sdk/src/storage/client.ts | - |
UploadObjectResult | interface | sdk/src/storage/client.ts | - |
UploadResult | interface | sdk/src/storage/client.ts | - |
VaultClient | class | sdk/src/vault/client.ts | - |
WebDriver | interface | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
WebElement | interface | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
z | namespace | node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/external.d.cts | Re-exported from non-SDK source |
ZodType | interface | node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.d.cts | Re-exported from non-SDK source |
Classes
AuthenticationError
Source:sdk/src/errors.ts
Constructor
AutomationError
Source:sdk/src/errors.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
diagnostic | AutomationDiagnostic | undefined | getter • Structured diagnostic payload with machine-readable fix metadata. |
hint | string | undefined | getter • Human-readable suggestion from control-plane validation. |
Bctrl
Source:sdk/src/bctrl.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
execute | ExecuteApi | readonly • One-shot execution API. Usage: - bctrl.execute({ fn, params }) - bctrl.execute.playwright({ fn, params }) - bctrl.execute.puppeteer({ fn, params }) - bctrl.execute.stagehand({ fn, params }) - bctrl.execute.selenium({ fn, params }) |
extensions | ExtensionsClient | getter • Extensions client for account-scoped extension management. |
profiles | ProfileApi | readonly |
session | SessionApi | readonly |
sessions | SessionsApi | readonly |
vault | VaultClient | getter • Vault client for managing account-scoped credentials. |
Methods
browser
Browser-scoped helper for named profile workflows.defineScript
Define a reusable typed script for one-shot execution.getHosts
health
storage
Get a storage client for a named workspace (no browser session required).BctrlError
Source:sdk/src/errors.ts
.code and optional .context metadata.
Constructor
Methods
toJSON
Serialize for structured loggers (pino, winston) and JSON.stringify()DesktopSession
Source:sdk/src/drivers/desktop/session.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
baseUrl | string | readonly |
clipboard | DesktopClipboard | getter • Clipboard read/write |
cua | DesktopCua | getter • CUA (Computer Use Agent) - AI-powered desktop automation. Similar to Stagehand for browser automation. |
hostId | string | readonly |
id | string | readonly |
keyboard | DesktopKeyboard | getter • Keyboard control (type, press, hotkey) |
mouse | DesktopMouse | getter • Mouse control (move, click, drag, scroll) |
screen | DesktopScreen | getter • Screen capture and display info |
window | DesktopWindow | getter • Window management (list, focus, resize) |
Methods
close
Close the desktop session and clean up resources.closeBrowser
Close a launched browser.isBrowserRunning
Check if a browser is running.launchBrowser
Launch a browser that can be controlled via Playwright-style API. The browser runs on the desktop agent’s machine.rpc
Send an RPC call to the desktop agent.ExtensionsClient
Source:sdk/src/extensions/client.ts
Constructor
Methods
delete
Delete an extension.get
Get extension metadata by ID.install
Install extension(s) on a browser profile.installed
List extensions installed on a browser profile.list
List all uploaded extensions.uninstall
Uninstall an extension from a browser profile.update
Update an existing extension with a new file.upload
Upload an extension from a file buffer or Chrome Web Store URL.PlaywrightSession
Source:sdk/src/drivers/playwright/session.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
browser | RemotePlaywrightBrowser | getter • Get browser instance (Playwright API). |
browserContext | RemotePlaywrightBrowserContext | getter • Get default browser context (Playwright API). This is a synchronous getter that creates a context from the known context ID. |
context | PlaywrightContext | getter • Context for multi-page management (like stagehand.context). |
page | RemotePlaywrightPage | getter • Get default page (Playwright API). |
Methods
getDefaultContext
Get default context (Playwright API) - async version. Note: contexts() returns a Promise in this SDK.getPages
Get all pages (convenience method). Note: Returns a Promise since pages() is async.PuppeteerSession
Source:sdk/src/drivers/puppeteer/session.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
browser | RemotePuppeteerBrowser | getter • Get the Puppeteer-style browser instance. |
context | PuppeteerContext | getter • Context for multi-page management (like stagehand.context). |
page | RemotePuppeteerPage | getter • Get the default page (Puppeteer-style). |
SdkAutomationError
Alias ofAutomationError.
Source: sdk/src/errors.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
diagnostic | AutomationDiagnostic | undefined | getter • Structured diagnostic payload with machine-readable fix metadata. |
hint | string | undefined | getter • Human-readable suggestion from control-plane validation. |
SeleniumSession
Source:sdk/src/drivers/selenium/session.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
context | SeleniumContext | getter • Context for page management (like stagehand.context). |
driver | WebDriver | getter • Alias for webDriver (for backward compatibility). |
webDriver | WebDriver | getter • Get the WebDriver instance (Selenium API). |
SessionError
Source:sdk/src/errors.ts
Constructor
StagehandSession
Source:sdk/src/drivers/stagehand/session.ts
Constructor
Properties
| Name | Type | Notes |
|---|---|---|
page | RemoteStagehandPage | getter • Get the default/active page. |
StorageClient
Source:sdk/src/storage/client.ts
Constructor
Methods
browse
Browse files/folders by logical prefix (hierarchical listing with cursor pagination).delete
Delete a file by logical path.deleteAll
Delete all files for this workspace.deleteObject
Delete an object by catalog ID.downloadObject
Download an object by catalog ID.forWorkspace
Clone this client for another workspace while preserving auth/session binding.get
Get a file by logical path as raw bytes.getDownloadsZip
Get all downloads as a ZIP file.getDownloadUrl
Get a presigned URL for direct download by logical path.getObjectDownloadUrl
Get a presigned URL for direct download by object ID.listObjects
List object metadata from the storage catalog.read
Read a UTF-8 text preview by logical path.upload
Upload a file to workspace storage.uploadObject
Upload a file and register it in the storage object catalog.TimeoutError
Source:sdk/src/errors.ts
Constructor
VaultClient
Source:sdk/src/vault/client.ts
Constructor
Methods
delete
Delete a credential from the vault.get
Get a credential from the vault. Returns null if not found.list
set
Set (create/update) a credential in the vault.totp
Get current TOTP code for a credential.Functions
connectSessionDriver
Source:sdk/src/client/rpc.ts
Connect a driver to an existing started session on the control-plane.
defineScript
Source:sdk/src/scripts/definition.ts
fromErrorResponse
Source:sdk/src/errors.ts
Reconstruct a typed error from the wire format (errorCode + errorContext)
getAutomationDiagnostic
Source:sdk/src/errors.ts
Get a typed automation diagnostic payload from an SDK error when available.
getAutomationHint
Source:sdk/src/errors.ts
Get a typed automation hint from an SDK error when available.
isAuthenticationError
Source:sdk/src/errors.ts
isAutomationError
Source:sdk/src/errors.ts
isBctrlError
Source:sdk/src/errors.ts
isSessionError
Source:sdk/src/errors.ts
isTimeoutError
Source:sdk/src/errors.ts
rpc
Source:sdk/src/client/rpc.ts
RPC call to control-plane
sendCommand
Source:sdk/src/client/rpc.ts
startSession
Source:sdk/src/client/rpc.ts
Start an ephemeral browser session on the control-plane (no driver connected).
stopSession
Source:sdk/src/client/rpc.ts
Stop a session on the control-plane
Variables
desktop
Source:sdk/src/drivers/desktop/index.ts
Interfaces
BctrlOptions
Source:sdk/src/bctrl.ts
Options for Bctrl client.
BrowserConfigInfo
Source:sdk/src/bctrl.ts
Result of updating a named browser’s default settings.
BrowserConnectApi
Source:sdk/src/bctrl.ts
Callable profile connect API scoped to a specific browser name.
Strict attach only: the browser must already be running.
Usage:
await bctrl.browser('my-bot').connect()(defaults to Playwright)await bctrl.browser('my-bot').connect.playwright()await bctrl.browser('my-bot').connect.puppeteer()await bctrl.browser('my-bot').connect.stagehand()await bctrl.browser('my-bot').connect.selenium()
BrowserCreateResult
Source:sdk/src/bctrl.ts
Result returned when a named browser is created.
BrowserHandle
Source:sdk/src/bctrl.ts
Browser-scoped helper API for named profiles.
BrowserInfo
Source:sdk/src/bctrl.ts
Browser status information.
BrowserUpgradeInfo
Source:sdk/src/bctrl.ts
Result of upgrading a provisioned profile’s fingerprint/kernel.
Returns null when the profile is already up to date.
ConnectOptions
Source:sdk/src/base/types.ts
Connection options for connecting to bctrl
CreateOptions
Source:sdk/src/bctrl.ts
Options for creating a named browser.
CreateSessionOptions
Source:sdk/src/bctrl.ts
Options for creating a one-time ephemeral browser session (no driver attached yet).
DesktopConnectOptions
Source:sdk/src/drivers/desktop/index.ts
EvaluateOptions
Source:sdk/src/base/types.ts
Evaluate options
ExecuteOptions
Source:sdk/src/bctrl.ts
Options for one-shot script execution via bctrl.execute().
ListObjectsOptions
Source:sdk/src/storage/client.ts
ListObjectsResult
Source:sdk/src/storage/client.ts
LocatorStep
Source:sdk/src/base/types.ts
Locator step for remote locator chains
MouseClickOptions
Source:sdk/src/base/types.ts
Mouse click options
PresignedUrlResult
Source:sdk/src/storage/client.ts
PressOptions
Source:sdk/src/base/types.ts
Keyboard press options
ProfileApi
Source:sdk/src/bctrl.ts
ProfileConnectResult
Source:sdk/src/bctrl.ts
ProfileOptions
Source:sdk/src/base/types.ts
Profile selection options
ProfileStartResult
Source:sdk/src/bctrl.ts
ProxyConfig
Source:sdk/src/bctrl.ts
Proxy configuration for browser profiles.
RpcMessageSdk
Source:sdk/src/base/types.ts
SDK RPC message for sending commands to control-plane
SelectOption
Source:sdk/src/base/types.ts
Select options
SessionApi
Source:sdk/src/bctrl.ts
Callable session creation API.
Usage:
await bctrl.session()(defaults to Playwright)await bctrl.session.playwright()await bctrl.session.puppeteer()await bctrl.session.stagehand()await bctrl.session.selenium()
SessionInfo
Source:sdk/src/base/types.ts
Session information returned from control-plane
SessionsApi
Source:sdk/src/bctrl.ts
StartedSessionData
Source:sdk/src/bctrl.ts
Raw data returned from ephemeral session start (no driver attached yet).
StartOptions
Source:sdk/src/bctrl.ts
Options for starting a browser.
StorageBrowseOptions
Source:sdk/src/storage/client.ts
StorageObject
Source:sdk/src/storage/client.ts
UploadObjectOptions
Source:sdk/src/storage/client.ts
UploadObjectResult
Source:sdk/src/storage/client.ts
UploadResult
Source:sdk/src/storage/client.ts
Type Aliases
BctrlEnvironment
Source:sdk/src/config.ts
StorageBrowseFile
Source:sdk/src/storage/client.ts
StorageBrowseResult
Source:sdk/src/storage/client.ts
StorageReadResult
Source:sdk/src/storage/client.ts
External Re-exports
| Export | Kind | Source | Notes |
|---|---|---|---|
_RpcMessage | type | packages/schemas/src/messages/rpc.ts | Re-exported from non-SDK source |
BrowserLaunchResult | type | packages/schemas/src/results/desktop.ts | Re-exported from non-SDK source |
By | variable | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
DriverType | type | packages/schemas/src/messages/base.ts | Re-exported from non-SDK source |
LocatorStrategy | type | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
schemas | namespace | packages/schemas/src/index.ts | Re-exported from non-SDK source |
SessionStoragePolicy | type | packages/schemas/src/storage/types.ts | Re-exported from non-SDK source |
WebDriver | interface | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
WebElement | interface | packages/schemas/src/options/selenium.ts | Re-exported from non-SDK source |
z | namespace | node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/external.d.cts | Re-exported from non-SDK source |
ZodType | interface | node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.d.cts | Re-exported from non-SDK source |

