An LM Studio plugin that provides LLMs with the capacity to "visit" websites by providing them with the links, image URLs and text content of any web page.
An LM Studio plugin that provides LLMs with the capacity to "visit" websites by providing them with the links, image URLs and text content of any web page.
Refactor — Few refactors to existing codebase for a more reliability.
DNS — Overrides the system resolver with Cloudflare (1.1.1.1, 1.0.0.1) and Google (8.8.8.8, 8.8.4.4) at startup, eliminating flaky ISP/router-caused ENOTFOUND errors.
Retry logic — fetchHTML retries up to 3 times with a 500ms delay on transient network failures.
Timeouts — Page fetches timeout after 15s, individual image downloads after 10s, both using AbortSignal.any so user cancellation still works.
TLS fallback — When fetch rejects a misconfigured certificate, automatically retries via raw node:https with rejectUnauthorized: false. Forces Accept-Encoding: identity on that path (raw Node doesn't decompress automatically) and manually follows redirects up to 5 deep.
Image fallback — Image download failures no longer crash the tool; page content and links are still returned.
Readability — Replaced naive tag-stripping with Mozilla Readability + JSDOM, the same engine as Firefox Reader Mode. Discards navbars, footers, and boilerplate; returns only the main content. Falls back to tag-stripping if Readability finds nothing.
DOM-based extraction — Links and images are now extracted via querySelectorAll on the already-parsed JSDOM tree instead of regex on raw HTML. Handles single-quoted attributes, relative URLs, and lazy-load image attributes (data-src, data-lazy-src, etc.).
User agents — Replaced entries from 2020–2022 with current Chrome 133/134, Firefox 134/135, Safari 18.3, and modern mobile strings.