Nous
Hermes
Hermes
Marketplace
Community
Portal
Install Hermes
Install Hermes
Nous
Hermes
Community
Portal
Install Hermes
Install Hermes
All plugins
ElSerda
GitHub profile
1 plugin in the catalog
Plugins by ElSerda
1 plugins by ElSerda in the catalog, most-starred first.
ElSerda
webgraft
Local web_extract backend (trafilatura for pages, Hermes's own anydoc converter for PDF and Office documents, optional Crawl4AI browser view of pages the site served) that reports HTTP errors and bot walls as errors and never tries to get past them; lists the pages an answer really used, from tool results, as clickable links; nudges the model to open pages rather than answer from snippets; reads a page's Markdown version when the site's llms.txt lists one, and returns pages that opt out of AI use (noai, TDM reservation) as errors; keeps several pages within a small model's context (one URL per web_extract call: a multi-URL call reads the first URL and its result lists the others); long pages are left to Hermes's own window, handed the whole text. Bundles a research skill, a setup wizard and an uninstall command. Disclosure — downloads the URLs web_extract is asked to read, from this machine with Hermes's own User-Agent (HermesAgent; the browser sends the same), and each site's /llms.txt once per hour (on by default, setting llms_txt), through Hermes's SSRF-safe client (private, loopback, link-local and metadata addresses refused on every redirect hop; with an HTTP(S) proxy configured, where Hermes's guard leaves hops to the proxy, webgraft checks each redirect target itself; results report the final URL so Hermes re-checks it; a browser view that ends on a non-public address or on another site is dropped; requests made by the page's own scripts and assets in the browser are not checked); `setup` also checks the SearXNG URL it is given and reads two test pages on iana.org; `setup` optionally creates an isolated `hermes pm` environment with Crawl4AI, which drives Hermes's own Chromium (`hermes pm install chromium` if missing; the plugin downloads no browser); each Crawl4AI read is a child process (at most 3 at once per Hermes process, 60 s cap, stopped with its Chromium on timeout or when Hermes cancels the call) that starts that Chromium headless with a DevTools port on 127.0.0.1 and a temporary profile, runs the page's scripts and loads its assets, keeps the browser profile and Crawl4AI's log and cache in a temporary folder that webgraft creates and removes (its own folders left by an earlier, interrupted run are removed after an hour); each document is converted by anydoc in a child process (60 s cap, stopped if Hermes cancels the call); `setup` installs Hermes's `doc-extract` extra if missing, and its `ddgs` extra when DuckDuckGo search is chosen; `setup` optionally creates an OCR environment (RapidOCR, onnxruntime, pypdfium2) whose first run downloads about 32 MB of OCR models from RapidOCR's official modelscope.cn repository, checked by SHA-256, and each scanned PDF is then read in a child process (100 s cap, stopped if Hermes cancels the call); appends a short note (about 110 tokens) to each user message (setting `remind`); `setup` writes web.search_backend, web.extract_backend, skills.auto_load and SEARXNG_URL, recording replaced values and the Chromium path under plugin-data/webgraft; page-reading child processes get a minimal environment, never Hermes's API keys; `setup` optionally raises web.extract_char_limit (only on a yes; the replaced value is restored by `uninstall`); page text stays in memory only; no telemetry.
Community
web