Kernel: a cloud browser an agent can create, drive, and replay
Measured 2026-10-08 from this machine (Chromium vs Kernel us-east). Real API run, not a mock.
1. Agent creates a browser and drives it
const kb = await kernel.browsers.create(); // ~0.6s round trip
// kb.session_id, kb.cdp_ws_url, kb.browser_live_view_url
await kernel.browsers.replays.start(kb.session_id);
await kernel.browsers.playwright.execute(kb.session_id, { code: `
await page.goto('https://en.wikipedia.org/wiki/Main_Page');
await page.fill('input[name=search]', 'headless browser');
await page.keyboard.press('Enter');
await page.goto('https://news.ycombinator.com');
return await page.title();` });
await kernel.browsers.replays.stop(replayId, { id_or_name: kb.session_id });
await kernel.browsers.deleteByID(kb.session_id);2. What you get back: the recorded session (real MP4 from that run)
3. Faster than local Chrome? Depends on where the commands run
| Median ms | Local Chrome | Kernel via CDP | Kernel execute (in VM) |
|---|---|---|---|
| Wikipedia load | 190 | 262 | 114 |
| Hacker News load | 279 | 256 | 110 |
| example.com load | 37 | 166 | 18 |
| 20 small commands | 69 | 3133 | 228 |
| Start browser | 402 | 600–671 | — |
Takeaway: the Kernel VM loads real sites faster (datacenter network), but every command sent from your machine costs ~157 ms. Send the whole script to playwright.execute instead. Single run, 3 samples per page, one region.