Web Search
Web Search exposes web_search for current public information. Without an enabled custom backend, it uses keyless DuckDuckGo HTML search. You can choose a custom backend, test the pending settings, and enable it for conversations.
Configure in Dashboard
Open Dashboard → Tools → Web Search.
- Choose a provider.
- Enter the API key when required.
- Review or enter the endpoint.
- Select Test.
- Save only after the test result matches the backend you intend to use.
The test performs a real search request. It may consume provider quota and can incur cost.
CLI setup is also available:
anyy tools websearch
Supported Backends
The setup catalog offers:
| Option | web_search.provider |
|---|---|
| Firecrawl Cloud / Self-hosted Firecrawl | firecrawl (distinguished by endpoint) |
| Exa / Parallel / Tavily / SearXNG | exa / parallel / tavily / searxng |
| Brave Search Free Tier / Brave Search | brave-free / brave |
| Perplexity / Gemini Search / xAI Grok Search | perplexity / gemini / grok |
This is the implemented adapter scope, not qualification of every external account, plan, or network condition. Gemini/Grok search backends are separate from conversational model protocols; using them adds no native conversation API.
Cloud services normally require a key. Self-hosted Firecrawl and SearXNG require an absolute HTTP or HTTPS endpoint. Anyy stores supported keys as Profile secret references rather than putting the value in config.yaml.
Tavily Options
Tavily exposes four additional controls:
| Option | Values |
|---|---|
| Search depth | basic or advanced |
| Maximum results | 1 to 20; default 10 |
| Include images | Boolean; default false |
| Include raw content | Boolean; default false |
Advanced search can use more provider resources. The Profile keys are search_depth, max_results, include_images, and include_raw_content under web_search.options; other backends reject these Tavily-only options. max_results controls the request sent to Tavily, while the model tool’s limit is 1–10 and still caps the returned results. Including images does not guarantee inline image display in chat.
Use Search
Ask for a current fact and say whether you want links:
Find the latest stable release of this library, summarize the changes, and include links to primary sources.
Anyy decides when the search tool is needed and returns only what the configured backend provides. Search finds candidate sources; it does not make an untrusted page authoritative.
For technical, legal, medical, or financial questions, explicitly request primary or official sources and verify important conclusions yourself.
Disable or Change Provider
Use the switch on Dashboard → Tools → Web Search to enable or disable the custom backend. With web_search.enabled: false, or no configured provider, web_search uses default DuckDuckGo; this does not disable networking. To remove search from a conversation, exclude web_search through its tool selection. web_fetch and web_extract are separate tools.
When switching providers, enter the new credential and test again; previous verification is not reused for a different endpoint or option set. An enabled custom backend that fails does not silently switch to default search. Default DuckDuckGo can return an anti-automation challenge; Anyy reports search unavailable instead of treating that page as results.
Troubleshooting
| Symptom | Check |
|---|---|
| Test reports authentication failure | Replace the provider key and confirm its product/plan access |
| Self-hosted backend is unreachable | Use an absolute URL reachable from the Gateway host |
| Search works in test but not chat | Confirm the custom backend is enabled and the conversation exposes web_search |
| Search still reaches DuckDuckGo after disabling | The switch disabled the custom backend; exclude web_search from conversation tools |
| Tavily settings are rejected | Use basic/advanced and a result count from 1 to 20 |
| Results are weak or stale | Refine the query, request primary sources, or choose a better-suited backend |