About this project

acrawl is a browser automation agent that acts and observes. It ships as a single Rust binary with no Python, Node, or Docker runtime required, and uses a Chromium download for browser automation. Users describe goals in plain English, and the agent plans navigation, interaction, and extraction, returning structured data. Key capabilities include 42 tools across navigation, interaction, content extraction, DevTools observability, agent control, and script management. The agent can inspect network requests with timing, analyze and deduplicate console logs, stream WebSocket messages, measure page performance (TTFB and resource breakdown), audit cookies and storage, measure JS/CSS coverage, run axe-core WCAG accessibility audits, and intercept or mock network calls. acrawl supports deterministic JSON scripts with loops, conditionals, and parallel branches that execute without LLM calls, plus sub-agent parallelism on separate browser tabs with a URL-claiming registry. It offers smart fetching that escalates from HTTP to a headless browser when JavaScript frameworks, auth redirects, or short noscript bodies are detected. The project includes a built-in MCP client and server. The server exposes browser and DevTools tools plus run_goal to clients such as Claude Code, Cursor, VS Code, and Zed. It supports 25 LLM providers including Anthropic, OpenAI, Google Gemini, DeepSeek, AWS Bedrock, Azure OpenAI, Vertex AI, GitHub Copilot, Groq, Mistral, xAI, Cohere, Alibaba DashScope, and OpenRouter, as well as any OpenAI-compatible endpoint. Installation is available via shell scripts for Linux, macOS, and Windows, or by building from source with Cargo. An optional browser extension lets acrawl control a real browser with existing sessions and cookies. The README includes comparisons with browser-use, Stagehand, Skyvern, Firecrawl, Playwright MCP, Scrapy, and native LLM provider browsing.