web-agent-bridge 3.0.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +72 -21
- package/README.ar.md +1286 -1073
- package/README.md +1764 -1535
- package/bin/agent-runner.js +474 -474
- package/bin/cli.js +237 -138
- package/bin/wab.js +80 -80
- package/examples/bidi-agent.js +119 -119
- package/examples/cross-site-agent.js +91 -91
- package/examples/mcp-agent.js +94 -94
- package/examples/next-app-router/README.md +44 -44
- package/examples/puppeteer-agent.js +108 -108
- package/examples/saas-dashboard/README.md +55 -55
- package/examples/shopify-hydrogen/README.md +74 -74
- package/examples/vision-agent.js +171 -171
- package/examples/wordpress-elementor/README.md +77 -77
- package/package.json +17 -3
- package/public/.well-known/agent-tools.json +180 -180
- package/public/.well-known/ai-assets.json +59 -59
- package/public/.well-known/ai-plugin.json +28 -0
- package/public/.well-known/security.txt +8 -0
- package/public/agent-workspace.html +349 -347
- package/public/ai.html +198 -196
- package/public/api.html +413 -0
- package/public/browser.html +486 -484
- package/public/commander-dashboard.html +243 -243
- package/public/cookies.html +210 -208
- package/public/css/agent-workspace.css +1713 -1713
- package/public/css/premium.css +317 -317
- package/public/css/styles.css +1235 -1235
- package/public/dashboard.html +706 -704
- package/public/demo.html +1770 -1
- package/public/dns.html +507 -0
- package/public/docs.html +587 -585
- package/public/feed.xml +89 -89
- package/public/growth.html +463 -0
- package/public/index.html +341 -9
- package/public/integrations.html +556 -0
- package/public/js/agent-workspace.js +1740 -1740
- package/public/js/auth-nav.js +31 -31
- package/public/js/auth-redirect.js +12 -12
- package/public/js/cookie-consent.js +56 -56
- package/public/js/wab-demo-page.js +721 -721
- package/public/js/ws-client.js +74 -74
- package/public/llms-full.txt +360 -309
- package/public/llms.txt +125 -86
- package/public/login.html +85 -83
- package/public/mesh-dashboard.html +328 -328
- package/public/openapi.json +580 -580
- package/public/phone-shield.html +281 -0
- package/public/premium-dashboard.html +2489 -2487
- package/public/premium.html +793 -791
- package/public/privacy.html +297 -295
- package/public/register.html +105 -103
- package/public/robots.txt +87 -87
- package/public/script/wab-consent.d.ts +36 -36
- package/public/script/wab-consent.js +104 -104
- package/public/script/wab-schema.js +131 -131
- package/public/script/wab.d.ts +108 -108
- package/public/script/wab.min.js +580 -580
- package/public/security.txt +8 -0
- package/public/terms.html +256 -254
- package/script/ai-agent-bridge.js +1754 -1754
- package/sdk/README.md +99 -99
- package/sdk/agent-mesh.js +449 -449
- package/sdk/commander.js +262 -262
- package/sdk/index.d.ts +464 -464
- package/sdk/index.js +18 -1
- package/sdk/multi-agent.js +318 -318
- package/sdk/package.json +12 -1
- package/sdk/safety-shield.js +219 -0
- package/sdk/schema-discovery.js +83 -83
- package/server/adapters/index.js +520 -520
- package/server/config/plans.js +367 -367
- package/server/config/secrets.js +102 -102
- package/server/control-plane/index.js +301 -301
- package/server/data-plane/index.js +354 -354
- package/server/index.js +175 -19
- package/server/llm/index.js +404 -404
- package/server/middleware/adminAuth.js +35 -35
- package/server/middleware/auth.js +50 -50
- package/server/middleware/featureGate.js +88 -88
- package/server/middleware/rateLimits.js +100 -100
- package/server/middleware/sensitiveAction.js +157 -0
- package/server/migrations/001_add_analytics_indexes.sql +7 -7
- package/server/migrations/002_premium_features.sql +418 -418
- package/server/migrations/003_ads_integer_cents.sql +33 -33
- package/server/migrations/004_agent_os.sql +158 -158
- package/server/migrations/005_marketplace_metering.sql +126 -126
- package/server/models/adapters/index.js +33 -33
- package/server/models/adapters/mysql.js +183 -183
- package/server/models/adapters/postgresql.js +172 -172
- package/server/models/adapters/sqlite.js +7 -7
- package/server/models/db.js +681 -681
- package/server/observability/failure-analysis.js +337 -337
- package/server/observability/index.js +394 -394
- package/server/protocol/capabilities.js +223 -223
- package/server/protocol/index.js +243 -243
- package/server/protocol/schema.js +584 -584
- package/server/registry/certification.js +271 -271
- package/server/registry/index.js +326 -326
- package/server/routes/admin-premium.js +671 -671
- package/server/routes/admin.js +261 -261
- package/server/routes/ads.js +130 -130
- package/server/routes/agent-workspace.js +540 -378
- package/server/routes/api.js +150 -150
- package/server/routes/auth.js +71 -71
- package/server/routes/billing.js +45 -45
- package/server/routes/commander.js +316 -316
- package/server/routes/demo-showcase.js +332 -0
- package/server/routes/demo-store.js +154 -0
- package/server/routes/discovery.js +417 -406
- package/server/routes/gateway.js +173 -0
- package/server/routes/license.js +251 -240
- package/server/routes/mesh.js +469 -469
- package/server/routes/noscript.js +543 -543
- package/server/routes/premium-v2.js +686 -686
- package/server/routes/premium.js +724 -724
- package/server/routes/runtime.js +2148 -2147
- package/server/routes/sovereign.js +465 -385
- package/server/routes/universal.js +200 -177
- package/server/routes/wab-api.js +850 -491
- package/server/runtime/container-worker.js +111 -111
- package/server/runtime/container.js +448 -448
- package/server/runtime/distributed-worker.js +362 -362
- package/server/runtime/event-bus.js +210 -210
- package/server/runtime/index.js +253 -253
- package/server/runtime/queue.js +599 -599
- package/server/runtime/replay.js +666 -666
- package/server/runtime/sandbox.js +266 -266
- package/server/runtime/scheduler.js +534 -534
- package/server/runtime/session-engine.js +293 -293
- package/server/runtime/state-manager.js +188 -188
- package/server/security/cross-site-redactor.js +196 -0
- package/server/security/dry-run.js +180 -0
- package/server/security/human-gate-rate-limit.js +147 -0
- package/server/security/human-gate-transports.js +178 -0
- package/server/security/human-gate.js +281 -0
- package/server/security/index.js +368 -368
- package/server/security/intent-engine.js +245 -0
- package/server/security/reward-guard.js +171 -0
- package/server/security/rollback-store.js +239 -0
- package/server/security/token-scope.js +404 -0
- package/server/security/url-policy.js +139 -0
- package/server/services/agent-chat.js +506 -506
- package/server/services/agent-learning.js +601 -575
- package/server/services/agent-memory.js +625 -625
- package/server/services/agent-mesh.js +555 -539
- package/server/services/agent-symphony.js +717 -717
- package/server/services/agent-tasks.js +1807 -1807
- package/server/services/api-key-engine.js +292 -0
- package/server/services/cluster.js +894 -894
- package/server/services/commander.js +738 -738
- package/server/services/edge-compute.js +440 -440
- package/server/services/email.js +204 -204
- package/server/services/hosted-runtime.js +205 -205
- package/server/services/lfd.js +635 -616
- package/server/services/local-ai.js +389 -389
- package/server/services/marketplace.js +270 -270
- package/server/services/metering.js +182 -182
- package/server/services/modules/affiliate-intelligence.js +93 -0
- package/server/services/modules/agent-firewall.js +90 -0
- package/server/services/modules/bounty.js +89 -0
- package/server/services/modules/collective-bargaining.js +92 -0
- package/server/services/modules/dark-pattern.js +66 -0
- package/server/services/modules/gov-intelligence.js +45 -0
- package/server/services/modules/neural.js +55 -0
- package/server/services/modules/notary.js +49 -0
- package/server/services/modules/price-time-machine.js +86 -0
- package/server/services/modules/protocol.js +104 -0
- package/server/services/negotiation.js +439 -439
- package/server/services/plugins.js +771 -771
- package/server/services/premium.js +1 -1
- package/server/services/price-intelligence.js +566 -565
- package/server/services/price-shield.js +1137 -1137
- package/server/services/reputation.js +465 -465
- package/server/services/search-engine.js +357 -357
- package/server/services/security.js +513 -513
- package/server/services/self-healing.js +843 -843
- package/server/services/sovereign-shield.js +542 -0
- package/server/services/stripe.js +192 -192
- package/server/services/swarm.js +788 -788
- package/server/services/universal-scraper.js +662 -661
- package/server/services/verification.js +481 -481
- package/server/services/vision.js +1163 -1163
- package/server/utils/cache.js +125 -125
- package/server/utils/migrate.js +81 -81
- package/server/utils/safe-fetch.js +228 -0
- package/server/utils/secureFields.js +50 -50
- package/server/ws.js +161 -161
- package/templates/artisan-marketplace.yaml +104 -104
- package/templates/book-price-scout.yaml +98 -98
- package/templates/electronics-price-tracker.yaml +108 -108
- package/templates/flight-deal-hunter.yaml +113 -113
- package/templates/freelancer-direct.yaml +116 -116
- package/templates/grocery-price-compare.yaml +93 -93
- package/templates/hotel-direct-booking.yaml +113 -113
- package/templates/local-services.yaml +98 -98
- package/templates/olive-oil-tunisia.yaml +88 -88
- package/templates/organic-farm-fresh.yaml +101 -101
- package/templates/restaurant-direct.yaml +97 -97
- package/server/services/fairness-engine.js +0 -409
- package/server/services/fairness.js +0 -420
package/sdk/README.md
CHANGED
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
# WAB Agent SDK
|
|
2
|
-
|
|
3
|
-
SDK for building AI agents that interact with [Web Agent Bridge](https://github.com/abokenan444/web-agent-bridge).
|
|
4
|
-
|
|
5
|
-
## Quick Start
|
|
6
|
-
|
|
7
|
-
```javascript
|
|
8
|
-
const puppeteer = require('puppeteer');
|
|
9
|
-
const { WABAgent } = require('web-agent-bridge/sdk');
|
|
10
|
-
|
|
11
|
-
const browser = await puppeteer.launch();
|
|
12
|
-
const page = await browser.newPage();
|
|
13
|
-
|
|
14
|
-
const agent = new WABAgent(page);
|
|
15
|
-
await agent.navigateAndWait('https://example.com');
|
|
16
|
-
|
|
17
|
-
// Discover available actions
|
|
18
|
-
const actions = await agent.getActions();
|
|
19
|
-
console.log(actions);
|
|
20
|
-
|
|
21
|
-
// Execute an action
|
|
22
|
-
const result = await agent.execute('signup', { email: 'user@example.com' });
|
|
23
|
-
|
|
24
|
-
// Read page content
|
|
25
|
-
const content = await agent.readContent('h1');
|
|
26
|
-
|
|
27
|
-
await browser.close();
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## BiDi Mode
|
|
31
|
-
|
|
32
|
-
```javascript
|
|
33
|
-
const agent = new WABAgent(page, { useBiDi: true });
|
|
34
|
-
await agent.waitForBridge();
|
|
35
|
-
|
|
36
|
-
const context = await agent.getBiDiContext();
|
|
37
|
-
const actions = await agent.getActions();
|
|
38
|
-
await agent.execute('click-login');
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
## API
|
|
42
|
-
|
|
43
|
-
| Method | Description |
|
|
44
|
-
|---|---|
|
|
45
|
-
| `waitForBridge()` | Wait for WAB to load on the page |
|
|
46
|
-
| `hasBridge()` | Check if WAB is available |
|
|
47
|
-
| `getActions(category?)` | List available actions |
|
|
48
|
-
| `getAction(name)` | Get a specific action |
|
|
49
|
-
| `execute(name, params?)` | Execute an action |
|
|
50
|
-
| `readContent(selector)` | Read element text content |
|
|
51
|
-
| `getPageInfo()` | Get page metadata |
|
|
52
|
-
| `authenticate(apiKey, meta?)` | Authenticate the agent |
|
|
53
|
-
| `navigateAndWait(url)` | Navigate and wait for bridge |
|
|
54
|
-
| `executeSteps(steps)` | Execute multiple actions in sequence |
|
|
55
|
-
| `executeParallel(actions)` | Execute multiple actions in parallel |
|
|
56
|
-
| `getBiDiContext()` | Get BiDi context (BiDi mode only) |
|
|
57
|
-
|
|
58
|
-
## Cross-Site Agent Orchestration
|
|
59
|
-
|
|
60
|
-
Manage multiple WAB-enabled sites simultaneously with `WABMultiAgent`:
|
|
61
|
-
|
|
62
|
-
```javascript
|
|
63
|
-
const { WABMultiAgent } = require('web-agent-bridge-sdk');
|
|
64
|
-
|
|
65
|
-
const multiAgent = new WABMultiAgent([
|
|
66
|
-
'https://site1.com',
|
|
67
|
-
'https://site2.com',
|
|
68
|
-
'https://site3.com'
|
|
69
|
-
]);
|
|
70
|
-
|
|
71
|
-
await multiAgent.launch();
|
|
72
|
-
|
|
73
|
-
// Compare prices across all sites
|
|
74
|
-
const comparison = await multiAgent.comparePrices('product-sku');
|
|
75
|
-
console.log(comparison.cheapest); // { site, price, currency }
|
|
76
|
-
console.log(`You save: $${comparison.savings}`);
|
|
77
|
-
|
|
78
|
-
// Execute any action on all sites in parallel
|
|
79
|
-
const infos = await multiAgent.executeAll('getPageInfo');
|
|
80
|
-
|
|
81
|
-
// Discover capabilities across all sites
|
|
82
|
-
const discoveries = await multiAgent.discoverAll();
|
|
83
|
-
|
|
84
|
-
await multiAgent.close();
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### WABMultiAgent API
|
|
88
|
-
|
|
89
|
-
| Method | Description |
|
|
90
|
-
|---|---|
|
|
91
|
-
| `launch()` | Connect to all sites |
|
|
92
|
-
| `discoverAll()` | Discover actions on all sites |
|
|
93
|
-
| `executeAll(action, params?)` | Run action on all sites in parallel |
|
|
94
|
-
| `comparePrices(sku)` | Compare prices and find cheapest deal |
|
|
95
|
-
| `compareAction(action, params?, rankFn?)` | Compare action results with custom ranking |
|
|
96
|
-
| `navigateAll(path)` | Navigate all sessions to a path |
|
|
97
|
-
| `screenshotAll(opts?)` | Screenshot all sites |
|
|
98
|
-
| `status()` | Get connection summary |
|
|
99
|
-
| `close()` | Close all browser sessions |
|
|
1
|
+
# WAB Agent SDK
|
|
2
|
+
|
|
3
|
+
SDK for building AI agents that interact with [Web Agent Bridge](https://github.com/abokenan444/web-agent-bridge).
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```javascript
|
|
8
|
+
const puppeteer = require('puppeteer');
|
|
9
|
+
const { WABAgent } = require('web-agent-bridge/sdk');
|
|
10
|
+
|
|
11
|
+
const browser = await puppeteer.launch();
|
|
12
|
+
const page = await browser.newPage();
|
|
13
|
+
|
|
14
|
+
const agent = new WABAgent(page);
|
|
15
|
+
await agent.navigateAndWait('https://example.com');
|
|
16
|
+
|
|
17
|
+
// Discover available actions
|
|
18
|
+
const actions = await agent.getActions();
|
|
19
|
+
console.log(actions);
|
|
20
|
+
|
|
21
|
+
// Execute an action
|
|
22
|
+
const result = await agent.execute('signup', { email: 'user@example.com' });
|
|
23
|
+
|
|
24
|
+
// Read page content
|
|
25
|
+
const content = await agent.readContent('h1');
|
|
26
|
+
|
|
27
|
+
await browser.close();
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## BiDi Mode
|
|
31
|
+
|
|
32
|
+
```javascript
|
|
33
|
+
const agent = new WABAgent(page, { useBiDi: true });
|
|
34
|
+
await agent.waitForBridge();
|
|
35
|
+
|
|
36
|
+
const context = await agent.getBiDiContext();
|
|
37
|
+
const actions = await agent.getActions();
|
|
38
|
+
await agent.execute('click-login');
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## API
|
|
42
|
+
|
|
43
|
+
| Method | Description |
|
|
44
|
+
|---|---|
|
|
45
|
+
| `waitForBridge()` | Wait for WAB to load on the page |
|
|
46
|
+
| `hasBridge()` | Check if WAB is available |
|
|
47
|
+
| `getActions(category?)` | List available actions |
|
|
48
|
+
| `getAction(name)` | Get a specific action |
|
|
49
|
+
| `execute(name, params?)` | Execute an action |
|
|
50
|
+
| `readContent(selector)` | Read element text content |
|
|
51
|
+
| `getPageInfo()` | Get page metadata |
|
|
52
|
+
| `authenticate(apiKey, meta?)` | Authenticate the agent |
|
|
53
|
+
| `navigateAndWait(url)` | Navigate and wait for bridge |
|
|
54
|
+
| `executeSteps(steps)` | Execute multiple actions in sequence |
|
|
55
|
+
| `executeParallel(actions)` | Execute multiple actions in parallel |
|
|
56
|
+
| `getBiDiContext()` | Get BiDi context (BiDi mode only) |
|
|
57
|
+
|
|
58
|
+
## Cross-Site Agent Orchestration
|
|
59
|
+
|
|
60
|
+
Manage multiple WAB-enabled sites simultaneously with `WABMultiAgent`:
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
const { WABMultiAgent } = require('web-agent-bridge-sdk');
|
|
64
|
+
|
|
65
|
+
const multiAgent = new WABMultiAgent([
|
|
66
|
+
'https://site1.com',
|
|
67
|
+
'https://site2.com',
|
|
68
|
+
'https://site3.com'
|
|
69
|
+
]);
|
|
70
|
+
|
|
71
|
+
await multiAgent.launch();
|
|
72
|
+
|
|
73
|
+
// Compare prices across all sites
|
|
74
|
+
const comparison = await multiAgent.comparePrices('product-sku');
|
|
75
|
+
console.log(comparison.cheapest); // { site, price, currency }
|
|
76
|
+
console.log(`You save: $${comparison.savings}`);
|
|
77
|
+
|
|
78
|
+
// Execute any action on all sites in parallel
|
|
79
|
+
const infos = await multiAgent.executeAll('getPageInfo');
|
|
80
|
+
|
|
81
|
+
// Discover capabilities across all sites
|
|
82
|
+
const discoveries = await multiAgent.discoverAll();
|
|
83
|
+
|
|
84
|
+
await multiAgent.close();
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### WABMultiAgent API
|
|
88
|
+
|
|
89
|
+
| Method | Description |
|
|
90
|
+
|---|---|
|
|
91
|
+
| `launch()` | Connect to all sites |
|
|
92
|
+
| `discoverAll()` | Discover actions on all sites |
|
|
93
|
+
| `executeAll(action, params?)` | Run action on all sites in parallel |
|
|
94
|
+
| `comparePrices(sku)` | Compare prices and find cheapest deal |
|
|
95
|
+
| `compareAction(action, params?, rankFn?)` | Compare action results with custom ranking |
|
|
96
|
+
| `navigateAll(path)` | Navigate all sessions to a path |
|
|
97
|
+
| `screenshotAll(opts?)` | Screenshot all sites |
|
|
98
|
+
| `status()` | Get connection summary |
|
|
99
|
+
| `close()` | Close all browser sessions |
|