Back to Blog

Vibe Engineering: Accelerating Agentic Browsing: Implementing Parallel Execution and Fast Web…

In our quest to build the most capable and efficient browser agent — vibebrowser.app, we’ve recently introduced two powerful architectural…

DV

Dzianis Vashchuk

2 min read

Originally on Medium

Author: Dzianis Vashchuk | Site: Medium | Published: 2025-12-16T05:49:36Z

Vibe Engineering: Accelerating Agentic Browsing: Implementing Parallel Execution and Fast Web Fetching In our quest to build the most capable and efficient browser agent — vibebrowser.app, we’ve …

In our quest to build the most capable and efficient browser agent — vibebrowser.app, we’ve recently introduced two powerful architectural improvements: Parallel Tool Execution and a Fast Web Fetch Tool. These additions significantly reduce task completion time and improve the agent’s ability to handle multi-step research tasks.The Bottleneck: Sequential Execution & Heavy RenderingPreviously, our agent operated strictly sequentially. If a user asked to “check the price of the iPhone 15 on Amazon, Best Buy, and Walmart,” the agent would:Navigate to Amazon -> Wait for load -> Extract price.Navigate to Best Buy -> Wait for load -> Extract price.Navigate to Walmart -> Wait for load -> Extract price.This “stop-and-go” approach is inherently slow. Furthermore, loading a full browser page (HTML, CSS, JS, images, ads) just to extract a single piece of text is inefficient.Solution 1: Parallel Execution (ParallelTool)We introduced a “meta-tool” called parallel. Instead of executing a single action, the LLM can now schedule multiple independent actions to run simultaneously.How It WorksThe ParallelTool doesn't execute anything itself. Instead, it acts as a container for other tool calls. When the agent runtime (ReactAgent) detects a parallel tool call, it:Expands the request into individual tool calls.Executes all of them concurrently using Promise.all().Aggregates the results and returns them to the LLM.This is particularly powerful for Subagents. We can now spin up multiple subagents to explore different websites at the same time, drastically cutting down total execution time for research tasks.{ "name": "parallel", "args": { "tool_uses": [ { "name": "subagent", "args": { "systemPrompt": "Check price on Amazon..." } }, { "name": "subagent", "args": { "systemPrompt": "Check price on Best Buy..." } } ] }}Solution 2: Fast Web Fetching (WebFetchTool)For tasks that don’t require user interaction (like clicking or logging in), full browser automation is overkill. We implemented WebFetchTool, a lightweight HTTP client that fetches raw HTML and extracts text content.Key FeaturesSpeed: 10–20x faster than navigate_to_url (1-2s vs 10s+).Efficiency: Skips resource-heavy rendering (CSS, JS, Images).Smart Extraction: Automatically cleans up HTML, removing scripts, styles, and boilerplate to return clean, readable text.This tool is perfect for reading documentation, Wikipedia articles, or checking static pricing pages. The agent is instructed to prefer web_fetch for information gathering and reserve full browser navigation for complex interactions.ConclusionBy combining Parallel Execution with Fast Web Fetching, we’ve transformed our agent from a linear, single-threaded browser user into a high-performance, multi-threaded research engine. These primitives form the foundation for even more advanced capabilities, such as “Map-Reduce” style research workflows and real-time multi-site monitoring.