Web fetch
Drop an http:// or https:// URL into a prompt and Loach downloads the page, strips the markup to readable text and appends it to your message as a fenced block. The model sees the contents of the page alongside your question, no separate browser extension needed.
Off by default
Loach is offline-first. Web fetch is the only built-in tool that reaches out to the network on your behalf, so it ships off. Turn it on in Settings → Tools when you want it — or leave it off if you would rather everything stay strictly local.
How it works
When you send a message, Loach scans it for URLs. For each one it finds:
- Downloads the page with a sensible timeout, deduping repeated links.
- Sanitises the HTML into readable plain text, dropping scripts, styles and noise.
- Inlines the extracted text into the request as a fenced block tagged with the source URL, so the model knows where the content came from.
Per-message and per-URL limits keep the prompt manageable. If a single page is huge, only the leading portion of its text is sent; if a fetch fails or times out, a short stub is rendered in its place so the model knows you intended to share it.
Limits
- Up to 5 URLs per message — duplicates are collapsed, anything beyond the cap is skipped.
- 30 s overall timeout per URL, with a 10 s connect timeout.
- 5 MB download cap per URL — larger responses are truncated.
- ~12,000 characters of extracted text per URL — the leading portion of long pages.
Safety guards
- Schemes — only
httpandhttps. - Private-IP guard — resolved addresses on loopback, private network ranges, link-local and other reserved blocks are refused, so a malicious URL cannot pivot into your local network (this defends against SSRF — a class of attack where a crafted URL tricks an app into reaching into networks the attacker can’t).
- Redirects — walked manually and re-screened at every hop with the same rules.
- Failures are silent per URL — a dead link does not block your message; you just get a short stub for that one URL.