<div align="center">
# bb-browser
### BadBoy Browser
**Your browser is the API. No keys. No bots. No scrapers.**
[](https://www.npmjs.com/package/bb-browser)
[](https://nodejs.org)
[](LICENSE)
[English](README.md) · [中文](README.zh-CN.md)
</div>
---
You're already logged into Twitter, Reddit, YouTube, Zhihu, Bilibili, LinkedIn, GitHub — bb-browser lets AI agents **use that directly**.
```bash
bb-browser site twitter/search "AI agent" # search tweets
bb-browser site zhihu/hot # trending on Zhihu
bb-browser site arxiv/search "transformer" # search papers
bb-browser site eastmoney/stock "茅台" # real-time stock quote
bb-browser site boss/search "AI engineer" # search jobs
bb-browser site wikipedia/summary "Python" # Wikipedia summary
bb-browser site youtube/transcript VIDEO_ID # full transcript
bb-browser site stackoverflow/search "async" # search SO questions
```
**97 commands across 35 platforms.** All using your real browser's login state. [Full list →](https://github.com/epiral/bb-sites)
## The idea
The internet was built for browsers. AI agents have been trying to access it through APIs — but 99% of websites don't offer one.
bb-browser flips this: **instead of forcing websites to provide machine interfaces, let machines use the human interface directly.** The adapter runs `eval` inside your browser tab, calls `fetch()` with your cookies, or invokes the page's own webpack modules. The website thinks it's you. Because it **is** you.
| | Playwright / Selenium | Scraping libs | bb-browser |
|---|---|---|---|
| Browser | Headless, isolated | No browser | Your real Chrome |
| Login state | None, must re-login | Cookie extraction | Already there |
| Anti-bot | Detected easily | Cat-and-mouse | Invisible — it IS the user |
| Complex auth | Can't replicate | Reverse engineer | Page handles it itself |
## Quick Start
### Install
```bash
npm install -g bb-browser
```
### Chrome Extension
1. Download from [Releases](https://github.com/epiral/bb-browser/releases/latest)
2. Unzip → `chrome://extensions/` → Developer Mode → Load unpacked
### Use
```bash
bb-browser site update # pull 97 community adapters
bb-browser site list # see what's available
bb-browser site zhihu/hot # go
```
### MCP (Claude Code / Cursor)
```json
{
"mcpServers": {
"bb-browser": {
"command": "npx",
"args": ["-y", "bb-browser", "--mcp"]
}
}
}
```
## 35 platforms, 97 commands
Community-driven via [bb-sites](https://github.com/epiral/bb-sites). One JS file per command.
| Category | Platforms | Commands |
|----------|-----------|----------|
| **Search** | Google, Baidu, Bing, DuckDuckGo, Sogou WeChat | search |
| **Social** | Twitter/X, Reddit, Weibo, Xiaohongshu, Jike, LinkedIn, Hupu | search, feed, thread, user, notifications, hot |
| **News** | BBC, Reuters, 36kr, Toutiao, Eastmoney | headlines, search, newsflash, hot |
| **Dev** | GitHub, StackOverflow, HackerNews, CSDN, cnblogs, V2EX, Dev.to, npm, PyPI, arXiv | search, issues, repo, top, thread, package |
| **Video** | YouTube, Bilibili | search, video, transcript, popular, comments, feed |
| **Entertainment** | Douban, IMDb, Genius, Qidian | movie, search, top250 |
| **Finance** | Eastmoney, Yahoo Finance | stock quote, news |
| **Jobs** | BOSS Zhipin, LinkedIn | search, detail, profile |
| **Knowledge** | Wikipedia, Zhihu, Open Library | search, summary, hot, question |
| **Shopping** | SMZDM | search deals |
| **Tools** | Youdao, GSMArena, Product Hunt, Ctrip | translate, phone specs, trending products |
## 10 minutes to add any website
```bash
bb-browser guide # full tutorial
```
Tell your AI agent: *"turn XX website into a CLI"*. It reads the guide, reverse-engineers the API with `network --with-body`, writes the adapter, tests it, and submits a PR. All autonomously.
Three tiers of adapter complexity:
| Tier | Auth method | Example | Time |
|------|-------------|---------|------|
| **1** | Cookie (fetch directly) | Reddit, GitHub, V2EX | ~1 min |
| **2** | Bearer + CSRF token | Twitter, Zhihu | ~3 min |
| **3** | Webpack injection / Pinia store | Twitter search, Xiaohongshu | ~10 min |
We tested this: **20 AI agents ran in parallel, each independently reverse-engineered a website and produced a working adapter.** The marginal cost of adding a new website to the agent-accessible internet is approaching zero.
## What this means for AI agents
Without bb-browser, an AI agent's world is: **files + terminal + a few APIs with keys.**
With bb-browser: **files + terminal + the entire internet.**
An agent can now, in under a minute:
```bash
# Cross-platform research on any topic
bb-browser site arxiv/search "retrieval augmented generation"
bb-browser site twitter/search "RAG"
bb-browser site github search rag-framework
bb-browser site stackoverflow/search "RAG implementation"
bb-browser site zhihu/search "RAG"
bb-browser site 36kr/newsflash
```
Six platforms, six dimensions, structured JSON. Faster and broader than any human researcher.
## Also a full browser automation tool
```bash
bb-browser open https://example.com
bb-browser snapshot -i # accessibility tree
bb-browser click @3 # click element
bb-browser fill @5 "hello" # fill input
bb-browser eval "document.title" # run JS
bb-browser fetch URL --json # authenticated fetch
bb-browser network requests --with-body --json # capture traffic
bb-browser screenshot # take screenshot
```
All commands support `--json` output and `--tab <id>` for concurrent multi-tab operations.
## Architecture
```
AI Agent (Claude Code, Codex, Cursor, etc.)
│ CLI or MCP (stdio)
▼
bb-browser CLI ──HTTP──▶ Daemon ──SSE──▶ Chrome Extension
│
▼ chrome.debugger (CDP)
Your Real Browser
```
## License
[MIT](LICENSE)