Train, build, and deploy
browser agents—fast
The easiest way to build reliable AI agents that actually understand the web.
Most browser agents wipe out before they catch a wave
Agents wipe out on real sites—DOM changes break everything like a rogue wave.
Training is slow and brittle—you're paddling against the current with no good datasets.
Debugging is a nightmare—black box failures leave you lost at sea with zero visibility.
Everything you need to ride the web
SDK + datasets + eval harness + monitoring. The complete lineup for browser agents.
🏄 SDK
Your surfboard—one SDK to ride any browser framework. Works with Playwright, Puppeteer, or bring your own board.
🌊 Training Data
Pre-charted surf spots—clean datasets of real tasks, ready to train your agents on the perfect waves.
📊 Eval Harness
Know your lineup—benchmark agent performance and compare different approaches to find your sweet spot.
⚡ Monitoring
Live surf report—real-time dashboards for success rates, costs, and failures. Catch issues before they wipe you out.
Drop in with one line
No complex setup. No brittle selectors. Just agents that flow.
import { SurfsAgent } from '@surfs/agent'
// Grab your board and hit the water 🏄
const agent = new SurfsAgent({
model: "gpt-4",
trackMetrics: true
})
// Catch the wave—automatic instrumentation built in
await agent.ride({
task: "Find and add the cheapest red t-shirt to cart",
url: "https://shop.example.com"
})
// Full visibility—traces, replays, metrics all logged 🌊Full observability built-in. Ride smoothly, no manual logging required.
Built for the big waves
Real-time surf reports, auto-recovery from wipeouts, and instant replay debugging.
run_a3f9e2b8 · 47.3s · 12 steps
goto("https://shop.example.com")click("text=Search")fill("input[name=q]")click("text=Add to cart")