Web Search Skill
When to Use
Use this skill when the user wants information that requires looking at the live web.
Trigger Conditions
Use web_search (fast, ~3-5s) when:
- Single-source fact lookup: news, exchange rates, sports scores, weather, stock prices
- One specific product at one named retailer: "what does Bunnings charge for X"
- Simple factual question answerable from one good search result
Use deep_web_research (~60s) when:
- ANY mention of location / "near me" / city name with a discovery intent
- Comparing prices across multiple stores
- Finding local businesses: shops, restaurants, services, pharmacies, tradespeople
- Events: "what's on this weekend", concerts, festivals, markets near a location
- Opening hours of a specific business or category of business
- Jobs: "jobs for nurses in [city]"
- Accommodation: hotels, motels, Airbnb in a location
- Transport timetables, flight searches
- Reviews: "best rated X in [location]"
- Any site that requires a postcode/suburb to show local prices (BWS, Liquorland, Dan Murphy's, Bottlemart)
- Any query where one search result won't cover all local options
Decision Tree
Is there a location / "near me" in the query?
YES → deep_web_research (it resolves location and finds all local sources)
NO → Is the user comparing or discovering multiple options?
YES → deep_web_research
NO → web_search
What to Say Before deep_web_research
Always tell the user what you're doing before calling the tool, so the ~60s wait feels active:
- Prices: "Looking up prices across local stores in [location]…"
- Events: "Checking what's on in [location] this weekend…"
- Restaurants/food: "Finding [type] options near [location]…"
- Services (plumber, dentist, etc.): "Finding [service] providers near [location]…"
- Hotels/accommodation: "Checking accommodation options in [location]…"
- Transport: "Checking transport options…"
- Generic: "Researching that in [location] — checking multiple sources, this takes about 60 seconds…"
Query Construction for deep_web_research
Include the full location context in the query string:
- Extract city, suburb, postcode from the user message
- If user said "near me" — use their home location from memory
- Good:
"cheapest Emu Export beer Geraldton WA 6530"
- Good:
"Italian restaurants open now Fitzroy Melbourne 3065"
- Good:
"plumbers near Ballarat VIC reviews"
- Bad:
"cheapest beer" (no location, no product detail)
What the Framework Does Automatically
When you call deep_web_research, the framework:
- Classifies query depth (1-5 pages to visit)
- Resolves location from query text or user's MemPalace home address
- Runs a DuckDuckGo search for the primary query
- Queries Google Maps to find ALL local businesses in the category
- Visits all found pages concurrently with a real stealth browser
- Automatically fills postcode/suburb gates on retail sites
- Uses site-internal search if a homepage is detected
- Returns extracted text for you to synthesise into a ranked answer
You do NOT need to call multiple tools. One deep_web_research call does all of this.
Escalate to OpenClaw instead when
- Task requires login or authenticated session
- Multi-hour background workflow
- Code generation or Home Assistant automation setup
- The task is not web research at all (file editing, system commands, etc.)
Example Calls
{"tool": "deep_web_research", "query": "cheapest Emu Export beer Geraldton WA 6530"}
{"tool": "deep_web_research", "query": "Italian restaurants open now near Fitzroy Melbourne"}
{"tool": "deep_web_research", "query": "plumbers near Geraldton WA reviews phone number"}
{"tool": "deep_web_research", "query": "what's on this weekend Fremantle WA events"}
{"tool": "deep_web_research", "query": "hotels in Broome WA under 150 dollars"}
{"tool": "deep_web_research", "query": "jobs for nurses in Perth WA 2026"}
{"tool": "web_search", "query": "Bitcoin price AUD today"}
{"tool": "web_search", "query": "latest AI news May 2026"}
1---2name: web-search3description: Web Search Skill4---5# Web Search Skill67## When to Use89Use this skill when the user wants information that requires looking at the live web.1011## Trigger Conditions1213**Use `web_search` (fast, ~3-5s) when:**14- Single-source fact lookup: news, exchange rates, sports scores, weather, stock prices15- One specific product at one named retailer: "what does Bunnings charge for X"16- Simple factual question answerable from one good search result1718**Use `deep_web_research` (~60s) when:**19- ANY mention of location / "near me" / city name with a discovery intent20- Comparing prices across multiple stores21- Finding local businesses: shops, restaurants, services, pharmacies, tradespeople22- Events: "what's on this weekend", concerts, festivals, markets near a location23- Opening hours of a specific business or category of business24- Jobs: "jobs for nurses in [city]"25- Accommodation: hotels, motels, Airbnb in a location26- Transport timetables, flight searches27- Reviews: "best rated X in [location]"28- Any site that requires a postcode/suburb to show local prices (BWS, Liquorland, Dan Murphy's, Bottlemart)29- Any query where one search result won't cover all local options3031## Decision Tree3233```34Is there a location / "near me" in the query?35 YES → deep_web_research (it resolves location and finds all local sources)36 NO → Is the user comparing or discovering multiple options?37 YES → deep_web_research38 NO → web_search39```4041## What to Say Before deep_web_research4243Always tell the user what you're doing before calling the tool, so the ~60s wait feels active:4445- Prices: "Looking up prices across local stores in [location]…"46- Events: "Checking what's on in [location] this weekend…"47- Restaurants/food: "Finding [type] options near [location]…"48- Services (plumber, dentist, etc.): "Finding [service] providers near [location]…"49- Hotels/accommodation: "Checking accommodation options in [location]…"50- Transport: "Checking transport options…"51- Generic: "Researching that in [location] — checking multiple sources, this takes about 60 seconds…"5253## Query Construction for deep_web_research5455Include the full location context in the query string:56- Extract city, suburb, postcode from the user message57- If user said "near me" — use their home location from memory58- Good: `"cheapest Emu Export beer Geraldton WA 6530"`59- Good: `"Italian restaurants open now Fitzroy Melbourne 3065"`60- Good: `"plumbers near Ballarat VIC reviews"`61- Bad: `"cheapest beer"` (no location, no product detail)6263## What the Framework Does Automatically6465When you call `deep_web_research`, the framework:661. Classifies query depth (1-5 pages to visit)672. Resolves location from query text or user's MemPalace home address683. Runs a DuckDuckGo search for the primary query694. Queries Google Maps to find ALL local businesses in the category705. Visits all found pages concurrently with a real stealth browser716. Automatically fills postcode/suburb gates on retail sites727. Uses site-internal search if a homepage is detected738. Returns extracted text for you to synthesise into a ranked answer7475You do NOT need to call multiple tools. One `deep_web_research` call does all of this.7677## Escalate to OpenClaw instead when7879- Task requires login or authenticated session80- Multi-hour background workflow81- Code generation or Home Assistant automation setup82- The task is not web research at all (file editing, system commands, etc.)8384## Example Calls8586```json87{"tool": "deep_web_research", "query": "cheapest Emu Export beer Geraldton WA 6530"}88{"tool": "deep_web_research", "query": "Italian restaurants open now near Fitzroy Melbourne"}89{"tool": "deep_web_research", "query": "plumbers near Geraldton WA reviews phone number"}90{"tool": "deep_web_research", "query": "what's on this weekend Fremantle WA events"}91{"tool": "deep_web_research", "query": "hotels in Broome WA under 150 dollars"}92{"tool": "deep_web_research", "query": "jobs for nurses in Perth WA 2026"}93{"tool": "web_search", "query": "Bitcoin price AUD today"}94{"tool": "web_search", "query": "latest AI news May 2026"}95```