Nodes/ComfyUI_LiteLLM/HTMLServerLink
ComfyUI Node

HTMLServerLink

Serve the HTML an LLM made, and hand you a link to open it

By Hopping-Mad-Games·Created 2 years ago·Updated 11 months ago· 7
HTMLServerLink
    • STRING
    html_content<h1>Hello, ComfyUI!</h1>

    HTMLRenderer shows you the HTML an LLM wrote, but it shows it to you, inside ComfyUI. HTMLServerLink is the sibling with a bigger audience: it takes that HTML, stores it on your ComfyUI server, and hands back a URL anyone with access to your instance can open in a normal browser tab.

    This is the node you want when the end result of an LLM writing HTML is something other people (or another tool) will actually visit. Think: the model drafts a landing page, a report, a dashboard - and instead of eyeballing it in a canvas iframe, you get a live link served by your own ComfyUI.

    How it works

    When the node runs, it stores the html_content as a file on disk (in the pack's HTML storage under your ComfyUI data directory) and returns a relative URL like /lite-html/<page_id>. The pack's JS adds a route to the ComfyUI server so that URL actually serves your page. The node's UI, courtesy of the pack's frontend, turns that into a clickable button and shows the absolute URL - point it at your ComfyUI host and the page opens.

    The storage is pruned, so old pages don't accumulate forever - it's meant for live previews, not archival.

    The inputs and output

    • html_content (multiline) - the HTML to serve.
    • Output: STRING - the relative URL (/lite-html/<id>). It's an output node, so it renders in the UI too, but the string is real and usable.

    Installing

    Part of ComfyUI_LiteLLM. ComfyUI Manager, search "ComfyUI_LiteLLM", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Hopping-Mad-Games/ComfyUI_LiteLLM
    cd ComfyUI_LiteLLM
    pip install -r requirements.txt
    

    Restart. The server route is registered by the pack's code when it loads inside ComfyUI - the node explicitly checks for that and returns a "server endpoint unavailable" message if it's running somewhere the route couldn't be installed. Under ETK/LLM/LiteLLM. No API keys.

    Where people get burned

    The big one is security, and it's worth saying plainly: this node makes ComfyUI a web server for whatever HTML you feed it. If your ComfyUI is exposed to the internet (which it shouldn't be - the community has been through this with the LLMVISION incident), those URLs are public and so is the content. Keep this for local or trusted-network use. Second, the URL is relative - you get /lite-html/abc, and the JS display resolves it against your ComfyUI origin. If you copy the raw string into a chat message or another machine, it won't work unless you prepend the right host. Third, the served page is static HTML; scripts in it will run in the browser of whoever opens it, so same untrusted-content caution as HTMLRenderer. And don't treat it as permanent hosting - the storage is pruned, so a link you shared last month may 404 today.

    CategoryETK/LLM/LiteLLM

    Inputs (1)

    NameTypeDefaultDescription
    html_contentSTRING<h1>Hello, ComfyUI!</h1>

    Outputs (1)

    NameTypeDescription
    STRINGSTRING