web-agent-bridge-sdk
v2.4.0
Published
SDK for building AI agents that interact with Web Agent Bridge (WAB)
Maintainers
Readme
WAB Agent SDK
SDK for building AI agents that interact with Web Agent Bridge.
Quick Start
const puppeteer = require('puppeteer');
const { WABAgent } = require('web-agent-bridge/sdk');
const browser = await puppeteer.launch();
const page = await browser.newPage();
const agent = new WABAgent(page);
await agent.navigateAndWait('https://example.com');
// Discover available actions
const actions = await agent.getActions();
console.log(actions);
// Execute an action
const result = await agent.execute('signup', { email: '[email protected]' });
// Read page content
const content = await agent.readContent('h1');
await browser.close();BiDi Mode
const agent = new WABAgent(page, { useBiDi: true });
await agent.waitForBridge();
const context = await agent.getBiDiContext();
const actions = await agent.getActions();
await agent.execute('click-login');API
| Method | Description |
|---|---|
| waitForBridge() | Wait for WAB to load on the page |
| hasBridge() | Check if WAB is available |
| getActions(category?) | List available actions |
| getAction(name) | Get a specific action |
| execute(name, params?) | Execute an action |
| readContent(selector) | Read element text content |
| getPageInfo() | Get page metadata |
| authenticate(apiKey, meta?) | Authenticate the agent |
| navigateAndWait(url) | Navigate and wait for bridge |
| executeSteps(steps) | Execute multiple actions in sequence |
| executeParallel(actions) | Execute multiple actions in parallel |
| getBiDiContext() | Get BiDi context (BiDi mode only) |
Cross-Site Agent Orchestration
Manage multiple WAB-enabled sites simultaneously with WABMultiAgent:
const { WABMultiAgent } = require('web-agent-bridge-sdk');
const multiAgent = new WABMultiAgent([
'https://site1.com',
'https://site2.com',
'https://site3.com'
]);
await multiAgent.launch();
// Compare prices across all sites
const comparison = await multiAgent.comparePrices('product-sku');
console.log(comparison.cheapest); // { site, price, currency }
console.log(`You save: $${comparison.savings}`);
// Execute any action on all sites in parallel
const infos = await multiAgent.executeAll('getPageInfo');
// Discover capabilities across all sites
const discoveries = await multiAgent.discoverAll();
await multiAgent.close();WABMultiAgent API
| Method | Description |
|---|---|
| launch() | Connect to all sites |
| discoverAll() | Discover actions on all sites |
| executeAll(action, params?) | Run action on all sites in parallel |
| comparePrices(sku) | Compare prices and find cheapest deal |
| compareAction(action, params?, rankFn?) | Compare action results with custom ranking |
| navigateAll(path) | Navigate all sessions to a path |
| screenshotAll(opts?) | Screenshot all sites |
| status() | Get connection summary |
| close() | Close all browser sessions |
