Introduction
Introduction
Browser automation framework for AI agents.
Introduction
OpenSteer is a browser automation framework for AI agents with deterministic replay.
Install
# npm
npm install opensteer
# pnpm
pnpm add opensteer
# bun
bun add opensteer
Requirements
- Node.js >= 20
- Playwright-supported browser (Chromium, Firefox, WebKit)
- API key for LLM features (CUA agent, structured extraction)
What it does
- Unified local/cloud execution — same API surface, swap with a flag.
- Descriptor-aware actions with replay — interact by description, cache selectors for deterministic re-runs.
- Structured data extraction — pull typed data from pages using schemas.
- CUA agent support — delegate multi-step browser tasks to an LLM agent.
Core workflow
import { Opensteer } from 'opensteer'
const opensteer = new Opensteer({ name: 'demo' })
try {
// Launch a browser session
await opensteer.launch()
// Navigate
await opensteer.goto('https://example.com')
// Snapshot for action context
await opensteer.snapshot({ mode: 'action' })
// Interact by description
await opensteer.click({ description: 'more-info-link' })
// Snapshot for extraction context
await opensteer.snapshot({ mode: 'extraction' })
// Extract structured data
const data = await opensteer.extract({
description: 'page-heading',
schema: { title: 'string', href: 'string' },
})
console.log(data)
} finally {
await opensteer.close()
}
Runs locally by default. Pass cloud: true (or set OPENSTEER_MODE=cloud) for cloud execution.
