Our review
Ghost Chrome is a high-stealth, headful browser automation service running in Docker, designed to bypass anti-bot protections like Cloudflare by simulating human interaction with a real Chrome instance.
Strengths
- Effectively bypasses advanced anti-bot protections
- Simulates realistic human interactions (Bezier curves, variable delays)
- Uses a real Chrome instance, unlike headless approaches
- Easy to use via simple terminal commands
Limitations
- Requires Docker and prior system setup
- Can be slower than standard headless browsers
- Service updates may require manual intervention
Use Ghost Chrome when you need to automate tasks on websites that block headless browsers or employ strong anti-bot detection (Cloudflare, Google, etc.).
Do not use it for simple scraping or standard automation tasks where a regular headless browser (Playwright, Puppeteer) is sufficient.
Security analysis
SafeThe skill exposes a controlled set of bash commands (all prefixed 'ghost-browser') that run a Docker-based browser automation tool. No destructive commands (e.g., rm -rf, curl | sh), exfiltration, or disabling of safety features are present. While the tool could be used for unauthorized scraping or bypassing protections, the skill itself does not instruct or directly enable those actions beyond declaring the tool's capability.
No concerns found
Examples
Log into example.com/login using Ghost Chrome. Start the browser, open the page, find the email input and submit button using interactive snapshot, fill the email field with 'user@test.com', click submit, and wait for the dashboard to load.I need to scrape content from a website that blocks headless browsers with Cloudflare. Use Ghost Chrome to start a stealth browser session, navigate to the target URL, take a snapshot of the page text, and save a screenshot to verify.Do a Google search for 'best AI tools 2025' using Ghost Chrome to avoid bot detection. Open google.com, type the query into the search box, press Enter, wait for results, and then take a screenshot of the search results page.name: Ghost Chrome description: A high-stealth, headful browser automation service running in Docker. Use this SPECIFICALLY when standard headless browsers (agent-browser/Playwright) are blocked by anti-bot protections (Cloudflare, Google, etc.). It runs a real Chrome instance and simulates human input. read_when:
- Bypassing strong bot detection
- Automating sites that block headless browsers
- Performing Google searches or interactions requiring high trust metadata: {"clawdbot":{"emoji":"👻","requires":{"bins":["docker","curl","jq"]}}} allowed-tools: Bash(ghost-browser:*)
Stealth Browser Automation with Ghost Chrome
Core Workflow
- Always Start First: Run
ghost-browser startat the beginning of your task. It is fast and safe to run even if already running. - Navigate & Act: Use standard commands.
- Finish: You can explicitly run
ghost-browser stopor let it auto-shutdown after 5 minutes of inactivity.
Commands
Lifecycle
ghost-browser start # Boot the Docker container (Safe to run repeatedly)
ghost-browser stop # Stop and remove the container
ghost-browser restart # Restart the service (get a fresh browser session)
ghost-browser update # Update from git and rebuild the environment
ghost-browser status # Check service health
Updating to Latest
If you need to update to the latest version of the toolkit:
ghost-browser update # Automatically pull code, install dependencies, and rebuild the browser container
Navigation & Inspection
ghost-browser open <url> # Navigate to URL (waits for network idle) (alias: navigate)
ghost-browser snapshot # Get page text content
ghost-browser snapshot -i # Get interactive elements with refs (@e1, @e2)
ghost-browser screenshot # Save screenshot to screenshot.png
ghost-browser highlight <sel> # Draw outline around element (visual check)
ghost-browser tabs # List open tabs/windows
ghost-browser switch <index> # Switch focus to a specific tab
ghost-browser frame <sel> # Focus an iframe ('main' to return to top)
ghost-browser cookies # View or set (ghost-browser cookies set name val)
Interaction (Stealth)
All interactions use human simulation algorithms (Bezier curves, variable delays). You can use CSS selectors OR references from snapshot -i (e.g., @e1).
ghost-browser click <selector> # Click an element
ghost-browser dblclick <selector> # Double-click an element
ghost-browser drag <src> <dest> # Drag one element to another
ghost-browser hover <selector> # Move mouse to element
ghost-browser type <selector> <text> # Focus and type text with jitter
ghost-browser fill <selector> <text> # Clear field and type text
ghost-browser scroll <y_offset> # Humanized scroll (positive = down)
ghost-browser press <key> # Press key (Enter, Escape, Tab, etc.)
ghost-browser upload <sel> <path> # Upload a file
ghost-browser wait <selector> # Wait for element to appear
Example: Form Submission with Refs
# 1. Open and find elements
ghost-browser start
ghost-browser open "https://example.com/login"
ghost-browser snapshot -i
# Output: [{"id": "@e1", "tagName": "input", "text": "Email"}, {"id": "@e2", "tagName": "button", "text": "Submit"}]
# 2. Interact using refs
ghost-browser fill @e1 "user@test.com"
ghost-browser click @e2
ghost-browser wait ".dashboard"
Troubleshooting
- "Element not found": The selector might be wrong, or the page hasn't loaded. Use
ghost-browser screenshotorghost-browser viewto check. - Service failed to start: Check
docker logs ghost-browser.
TDD Red-Green-Refactor
Testing
Skill that guides Claude through the complete TDD cycle.
Web Accessibility Audit
Testing
Performs a comprehensive web accessibility audit following WCAG standards.
UAT Test Case Generator
Testing
Generates structured and comprehensive user acceptance test cases.