Schedule a call
Nebula Labs · source release coming· self-hosted web automation

The websites your team uses, as tools an agent can call.

HyperCrawl is a Nebula Labs research project. It turns approved website actions into callable tools, and the browser session and control layer stay on infrastructure we run.

Self-hosted · no third-party scraping service in the data path · MCP and REST

hypercrawl_acquire · one run
hypercrawl_acquire permits.county.example/search · needle="permit number"maxUsd 0.05
  1. 1API replay / hydration· no embedded data$0.000
  2. 2Learned tool· none saved for this site$0.000
  3. 3DOM agent· needle found · 42 rows$0.011
  4. 4Set-of-marks· not needed
  5. 5Vision· not needed
  6. 6Specialist· not needed
budget used$0.011 of $0.05
One acquire run climbing the capability ladder. Illustration, demo data.
6
Rungs on the acquire ladder
Per run
Spend ceiling, set by the caller
8
Named failure codes
MCP + REST
Ways an agent can call it

The job

Useful work lives behind logins and changing pages.

Brittle scripts break when a page changes, and third-party scraping services add another place for sensitive browsing data to travel.

Scripts and scraping services
  • One script per site, broken by the next redesign
  • Browsing data passes through someone else's service
  • A blocked page comes back looking like an empty one
  • Cost shows up after the run, not before
With HyperCrawl
  • The cheapest method first, escalating only on failure
  • Runs on infrastructure we operate
  • A block is reported as a block, with its code
  • Every run stops at the budget it was given

No silent failures

A blocked page never comes back as an empty answer.

When every method a run is allowed fails, HyperCrawl returns a machine-readable code with the reason, so the agent and the person behind it know the data was not found rather than not there.

acquire · blocked
hypercrawl_acquire vendor-portal.example/invoices
 
x api replay no embedded data
x dom agent challenge page
x vision challenge page
 
blocked: true
code: CHALLENGE
spent: $0.032 of $0.05
 
markdown: (none returned)
A run that could not get through. Illustration, demo data.

The ladder, rung by rung

Model inference only when cheaper methods fail.

Rungs 1, 2 and 6 use no model. Rungs 3 to 5 call one, and only after the cheaper rungs below them have failed. The caller's spend ceiling covers that metered inference. Flat-rate transports report no token usage, so a run on one of those is bounded by its time limit instead.

  1. Rung 1no model

    API replay and hydration

    Reads the data a page already ships as JSON. No browser, no model.

  2. Rung 2no model

    Learned tool

    A saved extractor for this site runs its stored selectors.

  3. Rung 3model inference

    DOM agent

    A language model reads the rendered page and acts on it step by step.

  4. Rung 4model inference

    Set-of-marks

    A vision model picks from numbered elements drawn over a screenshot.

  5. Rung 5model inference

    Vision

    A computer-use loop that sees the page the way a person does.

  6. Rung 6no model

    Specialist

    A configured provider for a platform that blocks everything else.

Measured on our own VM

Numbers from production, with the date we took them.

These come from running HyperCrawl on hypercrawl-vm. Your hardware and the sites you point it at will differ.

~460 MB

and 6 processes per browser, so the pool caps at 2 to 6 at once

hypercrawl-vm, e2-medium, 2 vCPU, 3.9 GB

~10 s

per vision step when the model runs through a CLI transport

DOM tier sibling adapter

1.3 s

for a search answer from self-hosted SearXNG (Bing: 2.3 s)

2026-10-10, 4-exit pool

0 → 10/10

results for one query, direct versus a 12-exit residential pool

live engine, captcha direct

Search has a 20 second budget and at most 6 seconds per engine, so a slow engine is skipped instead of stalling the run. Each browser is retired after 20 uses.

Self-healing extraction

When a site changes, the tool repairs itself.

A saved extractor first tries a structural heal of its selectors. When at least 30% of its fields still miss, HyperCrawl regenerates the tool and keeps the new version only if it repairs a field on the captured page and on a fresh refetch.

One regeneration runs per tenant and tool at a time, with a one-minute cooldown, and the stored field contract never changes underneath the agent that calls it.

POST /v1/analyze
{ "prompt": "current list price of each plan",
"format": "table" }
 
search 10 unique sources selected
fetch 3 at a time, DNS-pinned, private IPs refused
extract learned tool for 4 of them
 
9 sources answered · 1 reported a failure
result capped at 5 MB
One prompt to structured data. Illustration, demo data.

For agents

The tools an agent gets.

Each capability is an MCP tool, and crawl, search, acquire and analyze are REST routes too, so Claude, Codex or your own agent can call them.

hypercrawl_crawlOne page to clean markdown, single-page apps included
hypercrawl_acquireThe ladder, with a needle to aim it and a spend ceiling
hypercrawl_crawl_siteA whole site, with change tracking between crawls
hypercrawl_mapEvery URL a site exposes
hypercrawl_searchWeb search, self-hosted, optionally scraping the results
hypercrawl_generateTurn a page into a saved, reusable extractor

How it runs

From a site to a saved tool.

  1. 01

    Name the target

    A URL and the thing you need from it.

  2. 02

    Set the budget

    Each run gets a spend and time ceiling.

  3. 03

    Climb the ladder

    Cheap methods first, heavier ones only on failure.

  4. 04

    Save the tool

    A site that repeats becomes a reusable extractor.

Head to head

How it compares.

Pick a tool to see where HyperCrawl differs. Each row is drawn from that product's own public positioning.

CompareHyperCrawlFirecrawlCrawl and scrape API
Where it runsInfrastructure we operateTheir cloud, or self-hosted
Escalates only on failureSix-rung ladder, models only at rungs 3 to 5Single strategy per call
Blocked pages reported as blockedMachine-readable code and reasonHTTP status
Spend ceiling per runSet by the callerCredits per page
Saves a reusable extractorVia your own code
Self-healing when a site changes30% miss threshold, verified before promotion
SourceNebula Labs, being open-sourcedOpen source core

When Firecrawl is the better pick: You want a simple page-to-markdown API and will handle retries yourself.

Competitor rows describe each product's own public positioning as of November 2026. Check their sites for current details.

The honest limit

Some sites cannot be read without an account, a session or a configured provider, and some will block every method a run is allowed. HyperCrawl cannot change that. What it guarantees is that you are told, with a code, instead of handed an empty result that looks like an answer.

Start here

HyperCrawl is a Nebula Labs project, being released as open source. If your team still copies data out of websites by hand, bring that to a call.