bb-browser

v2026.09.24

AI agent browser automation via CDP. Use when you need to access websites that require login, scrape data from platforms (Twitter/X, Reddit, GitHub, Xueqiu, Bilibili, etc.), bypass IP blocks, or fetch structured data from any site the user is logged into. Triggers: bb-browser, browser fetch, login required, scrape, site data, twitter search, xueqiu, weibo, zhihu, bilibili, github data, cookie fetch, CDP, site adapter.

GitHub
Install command
npx skhub add aaaaqwq/bb-browser
Markdown
SKILL.md

bb-browser Skill

Overview

bb-browser connects to your running Chrome via CDP (Chrome DevTools Protocol) and executes fetch() / JS in your logged-in tabs. No scraping, no API keys — your browser is the API.

v0.11.6 | 143 community adapters | 36 platforms

Prerequisites

  1. Chrome must be running with remote debugging enabled:
    # macOS
    /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
    
    # Linux
    google-chrome --remote-debugging-port=9222
    
    # Or restart if already running:
    pkill chrome && sleep 1 && google-chrome --remote-debugging-port=9222 &
    
  2. Verify: bb-browser status should show connected browsers.

OpenClaw Integration

bb-browser supports --openclaw flag to use OpenClaw's built-in browser (no Chrome needed):

bb-browser site reddit/hot --openclaw
bb-browser site xueqiu/hot-stock 5 --openclaw --json

重要: bb-browser daemon连接的是OpenClaw的隔离Chrome(/tmp/agent-browser-chrome-...), 与OpenClaw browser tool的Chrome(~/.openclaw/browser/openclaw/user-data)是不同进程。

Twitter/X特别说明: Twitter的ct0 cookie是HTTP-only,bb-browser的JavaScript无法读取。 但OpenClaw browser tool(CDP协议)可以。Twitter数据抓取应使用专用脚本: scripts/twitter-scraper.py(Playwright连接OpenClaw browser CDP)。

架构: bb-browser daemon → 端口9222 → 找到的第一个Chrome(含OpenClaw的) Playwright: 直接连接 http://127.0.0.1:18800 → OpenClaw browser

Command Reference

Data Fetching (Preferred — use site commands first)

# List all adapters
bb-browser site list

# Adapter info (params, returns, examples)
bb-browser site info <adapter>

# Run adapter
bb-browser site <platform>/<command> [args] [--json] [--jq '<filter>']

Key Adapters for Quant Work

AdapterCommandUse Case
Xueqiu hot stockssite xueqiu/hot-stock 5A-share sentiment
Xueqiu stock quotesite xueqiu/stock <code>Real-time quotes
Eastmoney stocksite eastmoney/stock <code>A-share data
Eastmoney newssite eastmoney/newsCN finance news
Yahoo Financesite yahoo-finance/quote <ticker>US/Crypto quotes
Twitter searchsite twitter/search "BTC"Crypto sentiment
Twitter user tweetssite twitter/tweets <user>Whale watching
Redditsite reddit/subreddit <name> <limit>Community sentiment
Hacker News topsite hackernews/topTech trends
GitHub reposite github/repo <owner>/<name>Repo intel
Google searchsite google/search "query"Web search
Baidu searchsite baidu/search "query"CN web search
Zhihu hotsite zhihu/hotCN knowledge trending
Weibo hotsite weibo/hotCN social trending
36kr newsflashsite 36kr/newsflashCN tech news

Browser Control (for sites without adapters)

bb-browser open <url>              # Open URL
bb-browser snapshot -i             # Accessibility tree snapshot
bb-browser click @<ref>            # Click element
bb-browser fill @<ref> "text"      # Fill input
bb-browser eval "document.title"   # Execute JS
bb-browser fetch <url> --json      # Authenticated HTTP fetch
bb-browser screenshot [path]       # Take screenshot

Utility

bb-browser tab list                # List open tabs
bb-browser status                  # Browser connection status
bb-browser network requests        # View network requests
bb-browser console                 # View console output
bb-browser site update             # Update community adapters
bb-browser site recommend          # Suggest adapters based on history

Output Formats

All site commands support:

  • --json — structured JSON output
  • --jq '<filter>' — jq filtering (e.g., --jq '.items[] | {name, price}')

Example:

bb-browser site xueqiu/hot-stock 5 --jq '.items[] | {name, changePercent}'
# {"name":"云天化","changePercent":"2.08%"}
# {"name":"东芯股份","changePercent":"-7.60%"}

Adapter Tiers

TierMethodSpeedExamples
1Cookie fetch~1sReddit, GitHub, V2EX
2Bearer + CSRF token~3sTwitter, Zhihu
3Webpack/Pinia injection~10sTwitter search, Xiaohongshu

Use from OpenClaw Agent

Quick data fetch (exec)

# In agent exec calls:
bb-browser site twitter/search "BTC price" --json 2>&1
bb-browser site xueqiu/stock SH000001 --json 2>&1

For login-gated sites

If web_fetch returns 403/blocked, try bb-browser:

bb-browser fetch "https://api.binance.me/api/v3/ticker/price?symbol=BTCUSDT" --json 2>&1

Limitations

  • Not for bulk scraping — designed for single/few queries, not millions of records
  • Rate limits apply — you're operating as your real account; excessive use = ban risk
  • Chrome must stay open — daemon connects to running Chrome instance
  • No headless — the whole point is using your real browser session

Troubleshooting

IssueFix
No browsers connectedStart Chrome with --remote-debugging-port=9222
Tab not foundCheck bb-browser tab list, site may need to open first
Login requiredManually log into the site in Chrome first
--openclaw failsEnsure OpenClaw browser is available (browser doctor)
Adapter missingbb-browser site update to pull latest

Writing Custom Adapters

bb-browser guide                    # Read the adapter writing guide
bb-browser site info <name>         # Check existing adapter

Each adapter is a single JS file. Submit to bb-sites repo for community use.


Created: 2026-05-18 | bb-browser v0.11.6 | 143 adapters

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

skills/bb-browser

Default branch

main

Latest commit

b996aac

Tree SHA

07e787b