skills/fast-browser-use/SKILL.md
Use when the user wants extremely fast browser automation via fast-browser-use / fbu, especially for DOM-heavy pages, fast extraction, or browser tasks on macOS/Linux with Chrome installed.
npx skillsauth add aaaaqwq/agi-super-skills fast-browser-useInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A Rust-based browser automation engine that provides a lightweight binary driving Chrome directly via CDP. It is optimized for token-efficient DOM extraction, robust session management, and speed.
navigate is a one-shot command — it opens the page, completes, then immediately kills Chrome. Do NOT use it if the user wants to see/interact with the browser.login keeps Chrome open and waits for user input (Enter) before saving session and closing. Use this when the user needs to interact manually.所有涉及浏览器的 cron 任务完成后,必须自动关闭 Chrome 进程!
# fbu 的 navigate 命令会自动关闭 Chrome
# 但如果使用其他命令或异常中断,必须手动清理:
# 任务结束后强制清理残留进程
pkill -f chrome
pkill -f chromium
# 或在脚本中使用 timeout 确保清理
timeout --kill-after=5 300 fbu navigate "https://example.com" && pkill -f chrome
原因: 避免内存泄漏和资源占用,防止 Gateway CPU 100% 过载
--headless false shows the Chrome window on the user's desktop (requires X11/Wayland display). Use this when the user wants to watch operations.--user-data-dir reuses an existing Chrome profile (login state, cookies, extensions). However, it may conflict if Chrome is already running with that profile. Prefer --load-session for saved sessions instead.所有 fbu 命令必须用 timeout 包裹,防止 Chrome 进程残留:
# 标准用法:60秒超时,超时后先 SIGTERM,5秒后 SIGKILL
timeout --kill-after=5 60 fast-browser-use snapshot --url "https://example.com"
# 长任务(如 harvest):120秒超时
timeout --kill-after=5 120 fast-browser-use harvest --url "https://example.com" --selector "a"
超时后清理残留 Chrome 进程(在 cron/自动化任务中建议加):
# 命令结束后确保无残留
timeout --kill-after=5 60 fast-browser-use snapshot --url "..." || true
# 清理可能残留的 Chrome 进程(仅清理 fbu 启动的)
pkill -f "chrome.*--remote-debugging" 2>/dev/null || true
推荐超时时间:
snapshot: 30-60snavigate: 30-60sscreenshot: 30-60sharvest: 60-120slogin: 300s(需要人工交互)--headless false): 翻倍When you need to access a platform that requires the user's login (e.g. Polymarket, GitHub, Twitter), follow this complete workflow:
--user-data-dir vs --load-session--load-session only restores cookies. Many modern platforms (OAuth, wallet-based, SPA) store auth state in localStorage/IndexedDB, so cookies alone are insufficient.--user-data-dir persists the entire Chrome profile (cookies + localStorage + IndexedDB + service workers). This is the recommended approach for most platforms.~/.openclaw/chrome-profiles/polymarket/) to avoid lock conflicts with the user's running Chrome.Step 1: Create dedicated profile directory
mkdir -p ~/.openclaw/chrome-profiles/<platform-name>
Step 2: Open visible browser with login command
export CHROME_PATH=/usr/bin/google-chrome # adjust per system
fast-browser-use login \
--url "https://platform.com" \
--headless false \
--user-data-dir ~/.openclaw/chrome-profiles/<platform-name> \
--save-session ./<platform-name>-session.json
--headless false so the user can see and interact with Chrome--user-data-dir for full state persistence--save-session as a backup (cookies-only fallback)Step 3: Ask user to log in
Step 4: User confirms → Save session
Step 5: Verify login state
--user-data-dir and run snapshot:fast-browser-use snapshot \
--url "https://platform.com" \
--user-data-dir ~/.openclaw/chrome-profiles/<platform-name>
Step 6: Confirm to user
# All future commands for this platform just add --user-data-dir
fast-browser-use navigate \
--url "https://platform.com/dashboard" \
--user-data-dir ~/.openclaw/chrome-profiles/<platform-name>
fast-browser-use snapshot \
--url "https://platform.com/portfolio" \
--user-data-dir ~/.openclaw/chrome-profiles/<platform-name>
Simulate mouse jitter and random delays to scrape protected sites.
fast-browser-use navigate --url "https://protected-site.com" \
--human-emulation \
--wait-for-selector "#content"
Capture the entire DOM state and computed styles for perfect reconstruction later.
fast-browser-use snapshot --include-styles --output state.json
Log in manually once, then steal the session for headless automation.
Step 1: Open non-headless for manual login
fast-browser-use login --url "https://github.com/login" --save-session ./auth.json
Step 2: Reuse session later
fast-browser-use navigate --url "https://github.com/dashboard" --load-session ./auth.json
Extract fresh data from infinite-scroll pages — perfect for harvesting the latest posts, news, or social feeds.
# Harvest headlines from Hacker News (scrolls 3x, waits 800ms between)
fast-browser-use harvest \
--url "https://news.ycombinator.com" \
--selector ".titleline a" \
--scrolls 3 \
--delay 800 \
--output headlines.json
Real output (59 unique items in ~6 seconds):
[
"Genode OS is a tool kit for building highly secure special-purpose OS",
"Mobile carriers can get your GPS location",
"Students using \"humanizer\" programs to beat accusations of cheating with AI",
"Finland to end \"uncontrolled human experiment\" with ban on youth social media",
...
]
Works on any infinite scroll page: Reddit, Twitter, LinkedIn feeds, search results, etc.
Capture any page as PNG:
fast-browser-use screenshot \
--url "https://example.com" \
--output page.png \
--full-page # Optional: capture entire scrollable page
Discover how a site is organized by parsing sitemaps and analyzing page structure.
# Basic sitemap discovery (checks robots.txt + common sitemap URLs)
fast-browser-use sitemap --url "https://example.com"
# Full analysis with page structure (headings, nav, sections)
fast-browser-use sitemap \
--url "https://example.com" \
--analyze-structure \
--max-pages 10 \
--max-sitemaps 5 \
--output site-structure.json
Options:
--analyze-structure: Also extract page structure (headings, nav, sections, meta)--max-pages N: Limit structure analysis to N pages (default: 5)--max-sitemaps N: Limit sitemap parsing to N sitemaps (default: 10, useful for large sites)Example output:
{
"base_url": "https://example.com",
"robots_txt": "User-agent: *\nSitemap: https://example.com/sitemap.xml",
"sitemaps": ["https://example.com/sitemap.xml"],
"pages": [
"https://example.com/about",
"https://example.com/products",
"https://example.com/contact"
],
"page_structures": [
{
"url": "https://example.com",
"title": "Example - Home",
"headings": [
{"level": 1, "text": "Welcome to Example"},
{"level": 2, "text": "Our Services"}
],
"nav_links": [
{"text": "About", "href": "/about"},
{"text": "Products", "href": "/products"}
],
"sections": [
{"tag": "main", "id": "content", "role": "main"},
{"tag": "footer", "id": "footer", "role": null}
],
"main_content": {"tag": "main", "id": "content", "word_count": 450},
"meta": {
"description": "Example company homepage",
"canonical": "https://example.com/"
}
}
]
}
Use this to understand site architecture before scraping, map navigation flows, or audit SEO structure.
| Feature | Fast Browser Use (Rust) | Puppeteer (Node) | Selenium (Java) | | :--- | :--- | :--- | :--- | | Startup Time | < 50ms | ~800ms | ~2500ms | | Memory Footprint | 15 MB | 100 MB+ | 200 MB+ | | DOM Extract | Zero-Copy | JSON Serialize | Slow Bridge |
This skill is specialized for complex web interactions that require maintaining state (like being logged in), handling dynamic JavaScript content, or managing multiple pages simultaneously. It offers higher performance and control compared to standard fetch-based tools.
testing
AI驱动的智能浏览器自动化工具。使用LLM理解页面并自动执行任务,比传统Playwright更智能、更省token。适用于复杂交互、动态页面、需要智能决策的浏览器操作。Chrome浏览器优先。
tools
网页登录态管理。使用 fast-browser-use (fbu) 管理各平台登录状态,定期检查可用性,新平台授权时自动保存 profile。
development
Monitor and report on API provider quotas, balances, and usage. Query official providers (Moonshot, DeepSeek, xAI, Google AI Studio) and relay/proxy providers (Xingjiabiapi, Aixn, WoW) via their billing APIs. Also checks subscription services (Brave Search, OpenRouter). Generates quota reports. Triggers on "查额度", "API余额", "quota check", "billing report", "api balance", "供应商额度", "中转站余额", "费用报告", "check balance", "how much credit".
development
# A股基金监控 Skill A股基金净值监控,支持实时估值和盘后净值,自动判断交易日/节假日。 ## 用法 ### 快速监控(命令行) ```bash # 默认配置,输出到控制台 bash ~/clawd/skills/a-fund-monitor/scripts/monitor.sh # 推送到群(使用--push参数) bash ~/clawd/skills/a-fund-monitor/scripts/monitor.sh --push # 监控指定基金 bash ~/clawd/skills/a-fund-monitor/scripts/monitor.sh --codes "000979 002943" ``` ### Agent调用 ``` 执行A股基金监控任务。 1. 读取配置文件: ~/clawd/skills/a-fund-monitor/config.json 2. 获取实时净值数据 3. 非交易日自动切换为简短报告 配置文件格式: { "funds": [ {"code": "000979", "name": "景顺长城沪港深精选股票