๐ค
Browser Ladder
Climb the browser ladder โ start free, escalate only when needed. L1 (fetch) โ L2 (local Playwright) โ L3 (BrowserCat) โ L4 (Browserless.io for CAPTCHA/bot bypass).
ๅฎๅ
จ้่ฟ
โ๏ธ่ๆฌ
ๆ่ฝ่ฏดๆ
name: browser-ladder version: 1.0.0 description: Climb the browser ladder โ start free, escalate only when needed. L1 (fetch) โ L2 (local Playwright) โ L3 (BrowserCat) โ L4 (Browserless.io for CAPTCHA/bot bypass). metadata: clawdbot: emoji: "๐ช" requires: bins: - node - docker env: - name: BROWSERCAT_API_KEY description: BrowserCat API key (free tier) - get at https://browsercat.com required: false - name: BROWSERLESS_TOKEN description: Browserless.io token ($10/mo) - get at https://browserless.io required: false
Browser Ladder ๐ช
Climb from free to paid only when you need to.
Quick Setup
Run the setup script after installation:
./skills/browser-ladder/scripts/setup.sh
Or manually add to your .env:
# Optional - only needed for Rungs 3-4
BROWSERCAT_API_KEY=your-key # Free: https://browsercat.com
BROWSERLESS_TOKEN=your-token # Paid: https://browserless.io
The Ladder
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ช Rung 4: Browserless.io (Cloud Paid) โ
โ โข CAPTCHA solving, bot detection bypass โ
โ โข Cost: $10+/mo โ
โ โข Requires: BROWSERLESS_TOKEN โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๐ช Rung 3: BrowserCat (Cloud Free) โ
โ โข When local Docker fails โ
โ โข Cost: FREE (limited) โ
โ โข Requires: BROWSERCAT_API_KEY โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๐ช Rung 2: Playwright Docker (Local) โ
โ โข JavaScript rendering, screenshots โ
โ โข Cost: FREE (CPU only) โ
โ โข Requires: Docker installed โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๐ช Rung 1: web_fetch (No browser) โ
โ โข Static pages, APIs, simple HTML โ
โ โข Cost: FREE โ
โ โข Requires: Nothing โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Start at the bottom. Climb only when needed.
When to Climb
| Situation | Rung | Why |
|---|---|---|
| Static HTML, APIs | 1 | No JS needed |
| React/Vue/SPA apps | 2 | JS rendering |
| Docker unavailable | 3 | Cloud fallback |
| CAPTCHA/Cloudflare | 4 | Bot bypass needed |
| OAuth/MFA flows | 4 | Complex auth |
Decision Flow
Need to access a URL
โ
โผ
Static content? โโYESโโโถ Rung 1 (web_fetch)
โ NO
โผ
JS rendering only? โโYESโโโถ Rung 2 (Playwright Docker)
โ NO โ
โ Success? โโNOโโโถ Rung 3
โผ โ YES
CAPTCHA/bot detection? โโโโโโโโโโโโโโโโโโโโโถ DONE
โ YES
โผ
Rung 4 (Browserless.io) โโโถ DONE
Usage Examples
Rung 1: Static content
// Built into Clawdbot
const content = await web_fetch("https://example.com");
Rung 2: JS-rendered page
docker run --rm -v /tmp:/output mcr.microsoft.com/playwright:v1.58.0-jammy \
npx playwright screenshot https://spa-app.com /output/shot.png
Rung 3: Cloud browser (BrowserCat)
const { chromium } = require('playwright');
const browser = await chromium.connect('wss://api.browsercat.com/connect', {
headers: { 'Api-Key': process.env.BROWSERCAT_API_KEY }
});
Rung 4: CAPTCHA bypass (Browserless)
const { chromium } = require('playwright');
const browser = await chromium.connectOverCDP(
`wss://production-sfo.browserless.io?token=${process.env.BROWSERLESS_TOKEN}`
);
// CAPTCHA handled automatically
Cost Optimization
- Start low โ Always try Rung 1 first
- Cache results โ Don't re-fetch unnecessarily
- Batch requests โ One browser session for multiple pages
- Check success โ Only climb if lower rung fails
Get Your Keys
| Service | Cost | Sign Up |
|---|---|---|
| BrowserCat | Free tier | https://browsercat.com |
| Browserless.io | $10+/mo | https://browserless.io |
Both are optional โ Rungs 1-2 work without any API keys.
ๅฆไฝไฝฟ็จใBrowser Ladderใ๏ผ
- ๆๅผๅฐ้พ่พAI๏ผWeb ๆ iOS App๏ผ
- ็นๅปไธๆนใ็ซๅณไฝฟ็จใๆ้ฎ๏ผๆๅจๅฏน่ฏๆกไธญ่พๅ ฅไปปๅกๆ่ฟฐ
- ๅฐ้พ่พAI ไผ่ชๅจๅน้ ๅนถ่ฐ็จใBrowser Ladderใๆ่ฝๅฎๆไปปๅก
- ็ปๆๅณๆถๅ็ฐ๏ผๆฏๆ็ปง็ปญๅฏน่ฏไผๅ