Skip to content

The web

The web_search and web_fetch tools work with any model. You do not need a separate web-service account to use them.

For example, ask:

Find the current documentation for this library, read the migration guide and cite the page you use.

The model searches for titles, URLs and snippets, then fetches relevant pages as Markdown. Pages up to 24 KiB return in full. Larger pages are saved to a file, with their opening text, heading outline and path returned so the model can read only the parts it needs.

web_fetch can also ask a small model a question about a page instead of adding the whole page to your conversation. That extra model call uses tokens and counts toward session cost.

Tatu tries services in order and falls back when one is unavailable or rate-limited. Search uses Firecrawl, Parallel and Exa before the llm fallback. Fetch first tries reading from your computer, then Jina and the other services.

Optional FIRECRAWL_API_KEY, PARALLEL_API_KEY, EXA_API_KEY and JINA_API_KEY keys raise the services’ limits. Without keys, access remains subject to their unauthenticated limits.

The llm backend is a last resort that uses a provider’s own web access through a small model. By default it uses only your session’s provider, if that provider supports it. web.otherProviders is off by default; enabling it lets Tatu also try other providers you are signed in to, spending their quota or money. The llm backend itself is included in the default service lists.

You can change service order through the web.search and web.fetch settings. See the settings reference for the available backends.

A model-written web answer is not the page’s exact text. Ask for the original page when exact quotes, numbers or code matter.