Vibium: Zero‑Config Browser Automation for AI Agents

VIBIUM: Zero‑Config Browser Automation for AI Agents

In the age of large language models and autonomous agents, driving a real browser is more useful than ever. Yet most tooling forces you to juggle separate binaries, download drivers, and write boilerplate code. Vibium eliminates this friction: a single ~10 MB Go binary that manages the entire Chrome lifecycle, speaks WebDriver –BiDi, and exposes an MCP server so agents like Claude Code can talk to a browser out of the box.

TL;DR – If you want quick, reliable browser automation for AI or code, install Vibium and launch it with one line. No Chrome setup, no environment variables – just the API you’re comfortable with.

What Problems Does Vibium Solve?

  1. Zero‑Setup Overhead – Chrome and Chromium drivers download automatically during the npm or pip install.
  2. Single Binary – One Go binary that handles the browser, a BiDi proxy, an MCP server, and an auto‑wait engine.
  3. Standards‑Based – Relies on the open WebDriver –BiDi protocol instead of proprietary extensions.
  4. Cross‑Platform – Works on Linux, macOS (Intel & Apple Silicon), and Windows.
  5. Dual APIs – Both async and sync client libraries in JS/TS and Python.
  6. Agent Ready – Built‑in MCP server allows Claude Code, Codex, Gemini, and more to drive the browser with simple text prompts.

Get Started in Minutes

Below is a quick‑start tutorial that demonstrates how to:

  1. Install Vibium.
  2. Launch the browser.
  3. Navigate to a page.
  4. Find and click an element.
  5. Take a screenshot.
  6. Quit the browser.

JavaScript / TypeScript

npm install vibium
# or
yarn add vibium
// sync client
const { browserSync } = require('vibium');
const vibe = browserSync.launch();
await vibe.go('https://example.com');
const link = vibe.find('a');
await link.click();
const png = vibe.screenshot();
await require('fs/promises').writeFile('screenshot.png', png);
vibe.quit();
// async client (ES modules)
import { browser } from 'vibium';

async function main() {
  const vibe = await browser.launch();
  await vibe.go('https://example.com');
  const link = await vibe.find('a');
  await link.click();
  const png = await vibe.screenshot();
  await Deno.writeFile('screenshot.png', png);
  await vibe.quit();
}
main();

Python

pip install vibium
# sync client
from vibium import browser_sync as browser

vibe = browser.launch()
vibe.go('https://example.com')
link = vibe.find('a')
link.click()
png = vibe.screenshot()
with open('screenshot.png', 'wb') as f:
    f.write(png)
vibe.quit()
# async client
import asyncio
from vibium import browser

async def main():
    vibe = await browser.launch()
    await vibe.go('https://example.com')
    link = await vibe.find('a')
    await link.click()
    png = await vibe.screenshot()
    with open('screenshot.png', 'wb') as f:
        f.write(png)
    await vibe.quit()

asyncio.run(main())

Running Vibium in an Agent‑First Workflow

With the MCP server exposed via standard I/O, you can plug Vibium into Claude Code with a single CLI call:

claude mcp add vibium -- npx -y vibium

Now the model can issue commands like:

"Go to example.com and click the first link."

Vibium interprets that and interacts with the browser for you.

Advanced Features

Feature Description
Auto‑Wait Implicit waiting for elements before interactions, reducing flaky tests.
Visible By Default The Chrome instance starts in a visible window, ideal for debugging.
Binary Size ~10 MB Go binary; no external runtimes.
BiDi Proxy Acts as a WebSocket server at :9515, forwarding all BiDi calls.
Extensible Client Libraries npm and pip packages expose a clean API; future languages can clone this pattern.
Future Roadmap Java client, memory/navigation layer (Cortex), video recording, AI‑powered locators.

Contribution & Community

Vibium welcomes contributions. Fork the repo, run the tests, and submit PRs. The project follows an open‑source license (Apache‑2.0) and maintains a code of conduct for respectful collaboration.

Why Vibium Stands Out

  • One‑click setup – No Chrome driver installation or environment configuration.
  • Agent‑centric design – MCP server built‑in eliminates the need for custom bridges.
  • Standards‑first – WebDriver –BiDi ensures compatibility as browsers evolve.
  • Developer‑friendly libraries – Async and sync APIs in the languages most used by web developers.
  • Extensible and lightweight – Simple binary that can grow into a full automation framework.

Bottom Line

If you’re building AI agents that need to browse the web, or you want a reliable, zero‑config automation tool for everyday tasks, Vibium offers the perfect balance of simplicity, power, and standards compliance. Give it a try today, integrate it into your agent workflows, and watch your automation stack become leaner and more maintainable.

Original Article: View Original

Share this article