Browser control — the headline feature
If you only read one page in these docs, make it this one. The browser capability is what makes this platform different from every other “AI assistant” on the market.
Most AI tools hit the wall the moment they have to do something on the open web that isn’t wrapped in a polite public API. Your agent doesn’t. It has two full browsers available at the same time, and it uses whichever one fits the job.
The two browsers
Section titled “The two browsers”1. The sandbox browser (Camoufox)
Section titled “1. The sandbox browser (Camoufox)”Built into every agent pod. A stealth-hardened Firefox fork with randomized fingerprints, realistic timing, and no detectable “I am a bot” signals. Runs inside the agent’s private container — you don’t install anything.
Good for:
- Research on public websites
- Competitor monitoring (pricing, hiring, changelogs)
- Scraping publicly accessible data
- Reading news articles, blog posts, documentation
- Any site that doesn’t require you to be logged in
Not good for:
- Anything behind a login wall that needs to be logged in as you
- Sites that remember specific session cookies or 2FA
- Personal SaaS dashboards
2. The Browser Control extension (your real Chrome)
Section titled “2. The Browser Control extension (your real Chrome)”A one-click Chrome extension that connects your personal Chrome browser to your agent via an encrypted WebSocket relay. Your agent can click, type, navigate, and screenshot inside your actual browser, using your real sessions — your GitHub login, your Stripe account, your Slack web UI, your bank, your HubSpot, everything you’re already signed into.
Good for:
- Anything inside a gated dashboard you’re already logged into
- SaaS tools that don’t have a public API
- Sites that trip bot checks on the sandbox browser
- Workflows that require your personal session (read your inbox, triage notifications, update a form)
- Anything where logging in from a random cloud IP would flag a security alert
What’s protected:
- The extension only runs when you open the browser. Your agent cannot force a launch.
- You can pause, disable, or revoke the pairing from the extension icon at any time — it’s instant.
- Every action your agent takes is visible in the extension’s activity log.
- The agent talks to a specific browser tab the extension designates — it can’t wander off into tabs you didn’t authorize.
How your agent picks a browser
Section titled “How your agent picks a browser”Your agent has more than one way to touch the web — the sandbox browser, the Browser Control extension that drives your real Chrome, direct HTTP fetches, and web search. By default it picks the cheapest, fastest option for the job — which is often the sandbox browser or a direct fetch, not your real Chrome.
That works fine for research and public-web tasks. But if you specifically want your agent to drive your real Chrome — because the site needs your login, or you want to watch it happen in your own browser, or the sandbox won’t do — you need to say so out loud.
How to force your agent to use YOUR Chrome (read this)
Section titled “How to force your agent to use YOUR Chrome (read this)”In your testing you will almost certainly notice that when you say “go to Wikipedia and search for X” or “open a tab to GitHub”, your agent sometimes uses the extension and sometimes quietly does it another way. That’s not a bug — it’s the agent picking the cheapest route for what it thinks you want. If you want the extension every time, use one of these phrases in your request:
- “in my browser” — “Open GitHub notifications in my browser and mark the spam as read”
- “in my real Chrome” — “Pull up this month’s Stripe revenue in my real Chrome”
- “using the Browser Control extension” — “Using the Browser Control extension, log into HubSpot and…”
- “use my Chrome” or “using my Chrome” — “Use my Chrome to check my Linear backlog”
- “open a tab in my browser” — “Open a tab in my browser and go to producthunt.com”
The magic word is “my”. Whenever your agent sees “my browser,” “my Chrome,” or “my real Chrome” in a request, it routes the task through the extension instead of picking on its own.
When “in my browser” is required
Section titled “When “in my browser” is required”- Anything behind a login wall (your Stripe, HubSpot, GitHub, CRM, email provider web UI, internal tools). The sandbox can’t log in as you.
- Anything that needs to be seen in your actual browser — say, adding something to your real Chrome bookmarks, or setting up a session you’ll continue manually.
- Pages where you’ve noticed the sandbox gets blocked (some anti-bot systems flag the sandbox even though it’s stealth-hardened).
When you DON’T need to say it
Section titled “When you DON’T need to say it”- Public research (“Find the top 3 posts on Hacker News right now”) — sandbox is faster and costs you nothing.
- Simple lookups (“What’s the capital of Mongolia?”) — direct web search is fastest.
- Monitoring on a schedule (“Check competitor A’s pricing every morning”) — sandbox runs without needing your browser to be open.
Worked examples
Section titled “Worked examples”❌ “Go to my GitHub notifications and tell me which ones mention me” → Ambiguous. Your agent might use the extension, or might try the sandbox first. If it uses the sandbox, it won’t be logged in as you and will fail or return empty.
✅ “In my browser, open my GitHub notifications and tell me which ones mention me” → Unambiguous. Extension every time.
❌ “Pull up this week’s Stripe revenue chart and screenshot it” → Stripe requires your session, so the sandbox can’t load it. The agent will probably pick the extension, but probably isn’t good enough if you’re counting on it.
✅ “Pull up this week’s Stripe revenue chart in my real Chrome and screenshot it” → Unambiguous. Extension every time.
✅ “Check competitor A, B, and C’s pricing pages and tell me what changed” → Doesn’t need your Chrome. Sandbox is the right choice here, and the agent will pick it on its own — no magic phrase needed.
If your agent tries the sandbox first and the page turns out to be gated, it will ask you: “This page needs to be logged in — should I use your Chrome via the Browser Control extension instead?” Say yes and it’ll retry.
Installing the Browser Control extension
Section titled “Installing the Browser Control extension”Step 1 — Add to Chrome
Section titled “Step 1 — Add to Chrome”Add MyAgentPlatform — Browser Control from the Chrome Web Store →
Click the link, then click Add to Chrome on the listing page. Chrome will ask you to confirm the permissions — accept and the extension installs in a couple of seconds.
After install, pin the extension to your toolbar so the icon stays visible: click the puzzle-piece icon in Chrome’s toolbar, find MyAgentPlatform, and click the pin icon next to it.
The icon will be grey at this point — that’s “installed but not yet paired.” Continue to Step 2.
Step 2 — Pair the extension with your account
Section titled “Step 2 — Pair the extension with your account”- Open the MyAgentPlatform dashboard and go to Settings → Agent tab → Browser Control.
- Click Pair extension. A dialog opens with a plain-English summary of what your agent can and cannot do. Read it, tick the checkbox at the bottom, then click Accept and pair.
- A one-time pairing token appears in the dialog. Click Copy to clipboard.
- Click the MyAgentPlatform extension icon in your Chrome toolbar. The extension popup opens. Paste the token into the input field and submit.
- Within a second or two the dashboard dialog turns green and says “Extension connected”. The extension icon in your toolbar also turns from grey to green. You’re paired.
- Close the dashboard dialog. You’re ready to use Browser Control.
Round-trip latency on authenticated pages averages 10–13 seconds, which is fast enough for your agent to feel like it’s “just there” with you.
Migrating from the manual / dev version
Section titled “Migrating from the manual / dev version”If you installed the extension manually (the unpacked dev version, before the Web Store listing was live), switch to the Web Store build now — Chrome will keep nagging you about the “Disable developer mode extensions” warning until you do.
- Click the Add to Chrome link in Step 1 above.
- Open
chrome://extensionsand remove the unpacked v0.1.x version (the one you loaded manually with Load unpacked). - Re-pair: dashboard → Settings → Agent → Browser Control → Pair extension, and repeat the copy-token-into-popup step from Step 2.
You won’t lose any scheduled tasks, audit history, agent memories, or settings during the migration — all of that lives on our servers, not inside the extension.
What browsing costs
Section titled “What browsing costs”Nothing. Both the sandbox and the extension are free on every tier — including trial. Load as many pages as you want. Scrape. Monitor. Drive SaaS tools all day.
The only thing that costs you AI credits is the LLM thinking about the page content — same as any other conversation. The browser itself is free.
Security model
Section titled “Security model”This section matters. Read it.
- The extension never exposes your cookies, passwords, or stored credentials to our servers. It only relays the high-level commands your agent issues (click here, type this, navigate there) and the page snapshots the agent needs to see.
- The WebSocket relay is TLS-encrypted end-to-end, JWT-authenticated per session, and revocable from your extension icon.
- Your agent cannot install the extension, enable it, or reopen it — all of that requires your physical action in Chrome.
- Every command is logged in the extension’s activity log. If your agent does something you didn’t expect, there’s a record.
- Sensitive pages can be marked “do not drive” in the extension preferences — your agent is blocked from operating on any URL that matches a pattern you specify (e.g., your banking site, a health portal).
- The agent’s view of the page is truncated to what it needs to act. We don’t send the full DOM of every page you visit.
If you ever feel uncertain, click Pause in the extension icon — all commands stop instantly and nothing queues up.
Things to try
Section titled “Things to try”Real tasks that really work:
“Open github.com/notifications in my real browser and tell me which notifications mention me specifically, then mark the rest as read.”
“Log into my Stripe dashboard, pull up this month’s revenue chart, and screenshot it. Then compare the number to last month.”
“Open my Linear backlog and find any issue tagged
blockerthat’s been open for more than 5 days.”
“Go to producthunt.com and find the top 3 launches today in the AI category. For each one, open the page and pull the tagline and the maker’s name.”
“Check competitor A, B, and C’s pricing pages. Tell me if anything changed since last Tuesday.”
The first four use your personal Chrome. The fifth uses the sandbox.
Troubleshooting
Section titled “Troubleshooting”“The extension says ‘disconnected’ or ‘unpaired’” — Re-pair from Settings → Agent → Browser Control. The JWT used for pairing is short-lived on purpose.
“My agent says it can’t reach a page that I can see fine” — The page may be blocking the sandbox browser’s IP range. Ask your agent to try it with the extension instead: “Use my real Chrome for this one.”
“I want to watch what my agent is doing in real time” — Click the extension icon in Chrome’s toolbar. You’ll see a live activity log of the most recent commands.
“A page I marked ‘do not drive’ still shows up in the agent’s context” — The block is on driving (clicking, typing, navigating), not on reading a URL the agent already has in its conversation. If you need to fully scrub a URL from the agent’s view, tell it directly: “Forget that URL — don’t visit it again.”