Your agent just got its browser driver's license.

Give your AI agent real hands on the web. No selectors. No scripts. Just tell it what to do.

Duet Browser turns the browser into a reliable agent skill.

Duet Browser is for contact with reality — when your agent must hud an unknown page, decide what to do, act, recover from blockers, and pause for a human when the web needs one.

Driving in 15 seconds.

Install, open a page, see the numbered actions, act on one. That's the whole loop — no SDK, no selectors.

$curl -fsSL duetbrowser.com/install.sh | bash
$dub go https://news.ycombinator.com
$dub hud
$dub do 3

Windows: irm duetbrowser.com/install.ps1 | iex · Free trial, then keep driving.

What if the browser was just another Unix command?

Open a page. Observe state. Pipe JSON through jq. Act on numbered refs. Leave a transcript.

The web, finally pipeable.No screenshot soup. No selector archaeology. Just commands, JSON, and a real browser.
$dub go https://example.com --json
{ "ok": true, "url": "https://example.com", "state": "complete" }
$dub observe --json | jq '.actions'
["1: Sign in", "2: Create account", "3: email", "4: password"]
$dub do 3 --json
{ "ok": true, "message": "clicked Sign in" }
$dub status --json
{ "state": "blocked", "reason": "passkey confirmation required" }
$dub pause "Need human approval for passkey"
Paused. Waiting for human to join.
$dub transcript --last 20 --json
{ "events": ["redacted transcript with blocker, pause, and resume recorded"] }

Agents code. They even search. But the second they try to do something on the web, they go blind.

Real work still happens on websites: dashboards, portals, auth flows, admin pages, and changing UIs. Duet Browser is for contact with reality — when an agent must hud, decide, act, recover, and sometimes pause for human help.

Agent testimonials

Agents tried it on real web work.

Still true

  • Refs are intentionally epoch-scoped; hud after actions that change page state.
  • Frames, layers, and complex SPA forms still require orientation instead of blind command chains.
  • Human login, MFA, CAPTCHA, and payment gates remain handoff moments, not bypass targets.

Three clouds. One browser loop.

Agents drove Azure, AWS, and GCP through the browser.

No cloud SDK script. No prewritten Playwright flow. Just real cloud consoles, operated through Duet Browser.

Full Self Browsing has been achieved.
Split-screen demo: agent terminal on left driving Azure, AWS, and GCP portals through Duet Browser.
▶ Play on YouTube
Azure, AWS, and GCP

Three clouds. One browser loop.

Codex creates and deletes VMs across Azure, AWS, and GCP. No SDK scripts. No prewritten Playwright flows. Real cloud consoles, operated through Duet Browser.

  • Azure Portal (Fluent UI, dynamic blades, VM creation)
  • AWS EC2 (regions, tables, modals, status)
  • GCP Compute Engine (projects, async ops, IAM)
Race attempt: Claude driving GCP, AWS, and Azure VM creation simultaneously through Duet Browser.
▶ Play on YouTube
Login does not count. The race starts inside the console.

Three clouds. One race.

Claude drives GCP, AWS, and Azure VM creation in a race. Human auth is handoff. The race starts inside the console.

  • Human auth is handoff — race starts post-login
  • Same Duet Browser loop on all three consoles
  • Verify creation, stop before high-risk choices
Claude Sonnet using Duet Browser to delete VMs across Azure, AWS, and GCP.
▶ Play on YouTube
Full cleanup run

Claude Sonnet deletes VMs across cloud providers.

Claude Sonnet deletes VMs across cloud providers through the browser loop — no cloud SDK, no hardcoded scripts, just Duet Browser.

  • Works across different cloud UI systems
  • Same observe → choose → act loop throughout
  • Transcript records every step

Web jobs. Zero scripts.

Ship a site. Wire up DNS.

Agents deploy Cloudflare Pages sites and configure DNS — through the browser portal, no CLI tools, no prewritten scripts.

Claude Haiku 4.5 deploying a Cloudflare Pages site through the portal and configuring DNS via Namecheap.
▶ Play on YouTube
Deploy · DNS · Live

Claude Haiku 4.5 deploys a site and wires up DNS.

Haiku 4.5 deploys a Cloudflare Pages site through the dashboard, then configures DNS through Namecheap — all through Duet Browser. No wrangler. Portal only.

  • Cloudflare Pages deployment via portal
  • DNS configuration through Namecheap
  • Full session from zero to live
Agent using Duet Browser to build and deploy the duetbrowser.com landing page through the Cloudflare Pages dashboard.
▶ Play on YouTube
Duet Browser builds and deploys duetbrowser.com

Agent ships its own landing page.

A full session: Claude reads the spec gists, rewrites all site copy, builds the HTML, and deploys to Cloudflare Pages — then uploads this recording to YouTube. No wrangler. Portal only.

  • Reads spec from GitHub Gists
  • Rewrites copy, builds HTML, deploys via Cloudflare dash
  • Uploads session recording to YouTube mid-session

Category: Interface Architecture

Humans get GUIs. Programs get APIs. Agents need TAIs.

Duet Browser is a Textual Agent Interface for the browser: structured state, numbered actions, tabs, profiles, blockers, handoff, and transcripts.

The web has human interfaces. Now it has an agent interface. Duet Browser translates messy live websites into the language agents already understand: observable state, numbered actions, browser context, blockers, and transcripts.

The browser was built for viewing. Duet Browser is built for doing.

  • Pages become observable state.
  • Buttons and fields become numbered actions.
  • Tabs, frames, dialogs, popovers become inspectable browser surfaces.
  • Passkeys, MFA, file choosers, ambiguity become blockers and handoff.
  • Agent/browser history becomes redacted transcript.
The human webAgentish
Visible page and browser contextstructured state
Buttons, links, inputs, menusnumbered actions
Tabs, frames, dialogs, popoversinspectable browser surfaces
Passkeys, MFA, file choosers, ambiguityblockers and handoff
Agent/browser historyredacted transcript

Automation veterans

XPath was character-building. You can stop now.

Stop writing selectors for websites your agent can figure out.

Use Playwright when you know the script. Use Duet Browser when the agent has to figure out the website.

Scripts replay. Agents adapt.

Your automation script worked perfectly. Until the div moved.

The DOM is not the user interface.

Not scripted. Driven.

Use scripts for known paths. Use Duet Browser when the path changes.

Not test automation. Web operation.

The agent loop

Not scripted. Driven.

Duet Browser works best as a live browser loop. Observe the page. Choose one next action. Act. Observe again. Recover when the page changes. Pause when the web needs a human. Keep the transcript.

Do not chain the whole browser workflow into one brittle command. Use Duet Browser interactively, step by step.

01

Observe

Read current page state as structured data — visible text, forms, tabs, blockers, and stable numbered refs that survive DOM churn. No screenshots, no selectors.

02

Choose

Pick from numbered actions instead of inventing selectors or coordinates.

03

Act

Click, type, submit, choose, press, scroll, or navigate from the terminal.

04

Recover

Detect weird states, auth prompts, dialogs, file choosers, and degraded sessions.

05

Handoff

Pause cleanly when human judgment is required. Join the session, fix it, then resume.

06

Transcript

Auditable by default: every action prints one legible line (ok clicked tab=5 Settings), recorded as redacted history. Diagnose with --json. Audit exactly what happened.

Not just a CLI. An agent skill.

One command. Every agent knows the loop.

Duet Browser ships as a structured SKILL.md — the full browser loop in a form coding agents can read and immediately use.

Run dub teach and Claude Code, Grok, Gemini CLI, Copilot, and Codex all get a SKILL.md installed into their skill directories. No configuration. No framework adoption. The skill gives agents the right patterns: hud first, use numbered refs, pause on blockers, report with transcripts.

dub teach

Installs SKILL.md into .claude/, .grok/, .gemini/, .copilot/, and .codex/ skill directories.

Claude CodeGrokGemini CLIGitHub CopilotOpenAI Codex

The skill file covers the complete browser loop: core loop, perceiving page state, acting on numbered refs, handling obstacles, managing frames and tabs, and shell composition patterns. Agents that have the skill use Duet Browser correctly without hallucinating commands.

Optics, not magic

The agent is the brain. Duet Browser is the precision optics.

Not magic. Better instruments.

A screenshot gives your agent a picture. Duet Browser gives it state, actions, blockers, handoff, and transcripts. Your agent can reason. Duet Browser gives it something to reason over.

  • The browser is moving. The page is changing. Duet Browser gives your agent the dashboard.
  • Your agent wasn't broken. It just needed better instruments.
  • Give your agent a heads-up display for the modern web.

Trust boundary

Give the agent a browser, not your whole computer.

Duet Browser controls your browser. Nothing else.

Run it locally on your device or remotely on a server. Choose ephemeral profiles for clean tasks, or named persistent profiles when you want cookies, signed-in sessions, and workflow state to survive.

Browser-only control

Duet Browser operates pages, tabs, forms, clicks, keys, browser state, profiles, blockers, and transcripts. It is not a general-purpose remote-control tool for your machine.

Local by default

Start with a local browser on your device. Move to a remote server or BrowserBox-backed session only when your workflow needs it.

Default profile stays clean

Duet Browser never mutates your default browser profile directly. If you choose to use your default browser context, Duet Browser copies it cleanly and operates on the copy.

Ephemeral or persistent profiles

Use ephemeral browser profiles for throwaway work, or named persistent profiles when you want cookies, signed-in sessions, and state preserved across runs.

Local-first. No browser telemetry.

Your browser state stays where you run it.

Duet Browser is downloadable software. It does not send DOSAYGO your browser contents, visited URLs, cookies, credentials, screenshots, transcripts, prompts, outputs, or workflow data.

Duet Browser contacts DOSAYGO only for license activation and validation, billing, support, and abuse prevention. Nothing else leaves your machine.

Read the Privacy Policy

Blockers and human handoff

When the web needs a human, Duet Browser knows how to stop.

Duet Browser does not promise to bypass auth, MFA, CAPTCHA, bot gates, or website protections.

It detects blockers, lets the agent explain what happened, and supports clean handoff when a human needs to unblock the workflow.

Experimental BrowserBox human takeover. For remote browser workflows, BrowserBox can let a human join the same live browser session, unblock the workflow, and hand control back without losing browser state.

DOSAYGO Corporation

Technology for agency.

Duet Browser is built to expand human capability, not erase human judgment. Agents get the browser interface: state, actions, blockers, handoff, and transcripts. Humans keep the command: purpose, authorization, care, and final judgment.

More ways to do. More ways to say. More ways to go.

Do

Let agents operate the web work that blocks progress: forms, dashboards, settings, deployment, cleanup, and research.

Say

Keep transcripts, explanations, and handoff notes so humans know what happened and why.

Go

Move through the living web with better instruments: local-first, browser-bounded, human-supervised when it matters.

For AI labs and agent platforms.

Duet Browser is local-first browser infrastructure for agents that need to operate the web.

It does not send DOSAYGO browser contents, URLs, cookies, credentials, screenshots, transcripts, prompts, outputs, or workflow data. Routine server communication is limited to license activation, validation, billing, and support.

  • Platform licensing
  • Private deployment
  • Custom procurement
  • Security review
  • DPA
  • Enterprise terms

Enterprise or platform use requires a written agreement signed by DOSAYGO.

Talk to founders

Why not just...

What is Full Self Browsing?

Full Self Browsing is the Duet Browser product metaphor for agent-operable browsing: live browser state translated into structured observations, numbered actions, recoverable blockers, human handoff, and transcripts. It does not mean agents should bypass human judgment or run sensitive workflows unsupervised.

What do you mean by AIcessability?

AIcessability means making the web operable for agents. Humans get visual layout, affordances, cursor feedback, memory, and judgment. Duet Browser gives agents a structured browser loop: readable state, actions, forms, blockers, tabs, transcripts, and handoff.

Why thumbnail demos instead of raw YouTube embeds?

The landing page should stay fast and conversion-focused. Demo cards use strong thumbnails first, then open a local demo page or lightweight YouTube facade on click. That keeps the story, transcript, trial CTA, and proof context on Duet Browser while still using YouTube for distribution.

Why not just Playwright or Cypress?

Use Playwright or Cypress when you know the app and the script. Use Duet Browser when an agent must hud an unknown or changing website, decide what to do, act, observe again, and recover without writing a full test suite first.

Why not just screenshots?

Screenshots are useful for human verification. But weak as the primary control loop for your agent friends — shots are token-heavy, easy to misread, and disconnected from actionable page state. Duet Browser gives agents enhanced web perception: structured state, stable numbered actions, and blocker awareness.

Why not just MCP?

MCP is useful when you want a tool server. Duet Browser is a local binary optimized for shell-based agents, terminals, scripts, and CI. They complement each other.

Why not Stagehand, Browser Use, or other browser-agent SDKs?

Those are frameworks for building agents inside specific stacks. Duet Browser is the shell-native layer: one binary any coding agent or human can use to drive web actions without adopting a framework.

Does it bypass CAPTCHAs or auth?

No. Duet Browser detects blockers and creates a clean human handoff. Duet Browser does not promise to bypass CAPTCHA, MFA, passkeys, authentication, bot detection, website protections, payment confirmations, or anti-abuse systems.

Is this safe for secrets?

Duet Browser is built around redacted transcripts and explicit human handoff. For sensitive workflows, pause for human approval instead of letting the agent run unsupervised.

What is Agentish?

Agentish is the language agents can actually reason over: structured state, numbered actions, tabs, forms, blockers, and transcripts. Duet Browser translates messy live websites into Agentish.

Is BrowserBox required?

No. Duet Browser is local-first. BrowserBox integration is experimental and useful when browser workflows run remotely and a human needs to join the live session to unblock the agent.

What is the Agent Interface Device?

Human Interface Devices gave people control of computers. Duet Browser is an Agent Interface Device for the web: a TAI (Textual Agent Interface) that translates the living web into a form agents can observe, act on, and reason about from the shell.

Try the full browser loop free for 5 days.

No crippled mode. No toy demo. Try the real thing: observe, hud, do, recover, pause, resume, transcript.

Trial

$05 days

Most people qualify for the free 5-day full trial, including Gmail, Outlook, Yahoo, iCloud, higher-ed, and work addresses. A $5 trial pass applies only in limited cases.

  • Observe, read, find, click, type, and do
  • Pause, join, and resume
  • Redacted transcripts
  • Persistent local profiles
  • One free trial per address or organization, depending on email type

Solo Dev

$120/ year

For one developer using Duet Browser commercially with local agents.

  • Commercial local use
  • Unlimited local browser actions
  • Persistent browser profiles
  • Redacted transcripts
  • Personal machines

Pro Runner

$480/ year

For headless, CI, multi-machine, and production agent workflows.

  • CI and headless runner use
  • Multi-machine activation
  • Higher concurrency
  • Production automation workflows
  • Runner-oriented logging and diagnostics

Platform

Starts at $5k/ year

For redistribution, bundling, team platforms, and BrowserBox-backed integrations.

  • Redistribution and bundling rights
  • Platform integration
  • BrowserBox-backed shared sessions
  • Policy and deployment support
  • Custom terms available

When a trial ends or a license is invalid, browser commands stop until a valid trial pass or paid license is activated.

Add the browser loop to your agent.

Drop Duet Browser instructions into your repo so your coding agent knows how to browse safely: observe first, use numbered actions, prefer JSON, pause on blockers, ask for human help when needed, and report with transcripts.

  • curl -fsSL duetbrowser.com/agents/SKILL.md -o SKILL.md
  • dub agents-md > AGENTS.md # optional
  • dub teach

Your agent can code. Now give it the wheel.

Stop running every web task yourself. Tell your agent what you need done.

Install Duet Browser and let your agent operate the web.

Duet Browser. Taking you there faster.