# Private HTML hosting: share agent output on a private link · Stacktree

Source: https://stacktr.ee/private-html-hosting

[Skip to content](#main)   [stacktr.ee](/)  [Examples](/#proof) [How it works](/#how) [Pricing](/pricing) [Security](/security) [Log in](https://app.stacktr.ee) [Publish one](https://app.stacktr.ee/?join=1)     By [Steve Smith](/about) · Founder, Stacktree Last updated August 29, 2026          category

#  Private HTML hosting: the 2026 reference.

   A private HTML host serves a static page from an unguessable URL by default. Stacktree extends the category with password and email-domain gates, end-to-end encryption, replace-in-place URLs for agent loops, and an MCP tool call that lets AI agents publish directly.

  [ Get started free ](https://app.stacktr.ee/?join=1&from=seo_private_html_hosting)   install npx stacktree-install
Copy
     No card. 3 free pages, each live for 7 days. Client work that must outlive the week is Solo, $19

    What your client sees

  [  Brand & marketing audit open example  Findings, perception map, score dial — one navigable page.
Live page &rarr;
 ](https://example-brand-audit.stacktr.ee/)[  Performance report open example  The monthly numbers, sent as a link that updates in place.
Live page &rarr;
 ](https://example-performance-report.stacktr.ee/)[  Passcode-gated review passcode: demo  Type what your client would type and see the styled gate.
Live page &rarr;
 ](https://example-locked-review.stacktr.ee/)

##  What is private HTML hosting in 2026?

Private HTML hosting is a category of static-site hosts where the URL is not publicly discoverable by default. The simplest form is an unguessable URL, where the link itself is the credential. Stronger forms layer a shared password, an email-domain gate, IP allow-lists, or end-to-end encryption. The category has become central in 2026 because AI agents emit a lot of one-off HTML containing real data, and public-by-default hosting is no longer a safe baseline for that output.

## The four layers of "private"

  - Unguessable URL. The link contains enough entropy that nobody finds it by guessing. Sufficient for low-sensitivity sharing where the link can be passed in Slack or email.
 - Shared password. A second factor on top of the unguessable URL. Useful when the link might be forwarded.
 - Email-domain gate. Viewers prove they own an email at @yourco.com via a magic link before the page renders. Stronger because the gate survives forwarding.
 - End-to-end encryption. The content is encrypted in the browser; the server only sees ciphertext. The key lives in the URL fragment, which never leaves the client. Anyone with the URL can decrypt; nobody without it can.

## Why agent output is the catalyst

"Reading text is now running code." Agent-emitted HTML often embeds API responses, prompt context, customer rows, internal IDs. The category of work doesn't fit a public-by-default model. It fits the same shape as a Notion page or a Linear ticket, but as renderable HTML the agent generates on demand.

## The common case: sharing an artifact an agent produced

The query that brings most people here is concrete. An agent (Claude Code, Cursor, Codex, Claude.ai) just produced something you want to send to one person: a research report, a status dashboard, a code-review summary, a generated landing page, a one-off internal tool. You do not want it on a public URL that anyone can find, and you do not want to add the recipient to a company workspace or pay for an extra seat just so they can open a file.

Private HTML hosting solves exactly that gap. The agent publishes the HTML to an unguessable URL, and you send the link. The recipient opens it with no account. If the contents are more sensitive, you add a shared password or an email-domain gate so only people at `@theirco.com` can render the page. The artifact lives on a private link instead of a public site or a walled team tool. When the recipient is a client rather than a teammate, the same flow is how you [share finished work with a client](/share-html-file-with-client): one private link, a gate on top if the contents warrant it.

## What to look for in a private HTML host

  - Unguessable URL on every plan, free included. If "private" is a paid bolt-on, the default contract is wrong.
 - Programmable. An API or MCP server so agents can publish without driving a browser.
 - Replace-in-place. Agents iterate; the URL has to survive revisions.
 - Custom domain. So the link feels like part of your stack, not an external service.
 - CSP defaults. Agent-generated HTML is executable; the host should ship a sensible Content-Security-Policy out of the box.
 - Opt-out of AI training. X-Robots-Tag: noai, noimageai on every response.

## Where Stacktree sits in the category

Stacktree is the MCP-native option. Other private-hosting services exist (Tiiny Host on paid plans, GitHub Pages with Enterprise Cloud, display.dev with workspace SSO), but they're shaped for human upload flows or org-wide team deploys. Stacktree is shaped for the agent loop: one tool call to publish, one to replace, three layers of gating, and a first publish that doesn't require an account at all. For a tool-by-tool roundup of the whole category, see the [best private HTML hosting](/best-private-html-hosting) comparison.

##  How to host private HTML: the options compared

     Criterion Codex Sites / Artifacts / Pages / public hosts Stacktree     Private by default  GitHub Pages and Netlify/Vercel serve a public URL by default. Codex Sites and Claude Artifacts are private, but only inside one org.   Yes, the unguessable URL is private by default, no org needed.   View with no account or seat  Codex Sites needs an OpenAI workspace seat; Claude Artifacts publishing needs a Claude org seat.   Yes, the link is the credential, the viewer needs no account.   Share with anyone via a link  Public hosts share with anyone, but the page is fully public and indexable. Walled options block external viewers entirely.   Yes, anyone with the unguessable link, and it stays out of search.   Shared password gate  Not offered by GitHub Pages or generic public hosts.   Yes, an optional shared password per link.   Email-domain gate  GitHub Pages only on Enterprise. Codex Sites and Artifacts only gate to their own org.   Yes, a magic-link email-domain gate on any link.   Your own custom domain  Public hosts support it. Codex Sites and Artifacts do not document one.   Yes, from Solo at $19/mo via Cloudflare for SaaS.   Publish from any AI agent  Codex Sites is Codex-only; Artifacts is Claude-only; public hosts need a Git push or CLI.   Yes, MCP-native from Claude Code, Cursor, Codex, and Claude.ai.   Free tier  Codex Sites is Business/Enterprise only; Artifacts publishing needs Team/Enterprise; Pages is free but public.   A 3-page trial plus an anonymous first publish for 24 hours.   Self-host / own the stack  All are vendor-hosted. Export is not documented for Codex Sites or Artifacts.   Yes, source-available on your own Cloudflare (Workers, R2, D1).   Built for one-off agent artifacts  Public hosts are project-shaped; walled options are org-tool-shaped.   Yes, one MCP call publishes or replaces a single HTML file.

##  Which plan does this handoff need?

Filing work under a client is free on every plan. What a paid plan buys is time on
    the clock and an address of your own.

  -   Free $0

###  One handoff this week

 3 pages, each live for 7 days, passcodes included. If one comes down before you meant it to, it is restorable from the dashboard for 48 hours. [ Start free ](https://app.stacktr.ee/?join=1&from=seo_private_html_hosting)
-   Solo $19 a month

###  A link the client keeps (paid-media dashboard, monthly report, proposal)

 25 pages that never expire, your own domain, one client space, passcodes and company-email gates, and no Stacktree footer. [ Start with Solo ](https://app.stacktr.ee/billing?plan=solo&from=seo_private_html_hosting&join=1)
-   Studio $79 a month

###  Several clients, each with their own address

 Unlimited pages, 10 client spaces and 10 domains, so every client gets a permanent address, one passcode, and engagement detail on what they read. [ Start with Studio ](https://app.stacktr.ee/billing?plan=studio&from=seo_private_html_hosting&join=1)

FAQ

## Frequent questions

     What is private HTML hosting? +  A static-HTML hosting service where the URL is not publicly discoverable by default. The simplest form is an unguessable URL (the link itself is the credential). Stronger forms layer on shared passwords, email-domain verification, IP allow-lists, or end-to-end encryption.   Why does it matter in 2026? +  AI agents now emit enormous quantities of one-off HTML: specs, reports, status pages, internal tools, code-review summaries. Most of it contains real data: API responses, customer rows, prompt context. Public-by-default hosting (GitHub Pages, Netlify free tiers, Pastebin) leaks that data; per-link private hosting is the correct default for agent output.   What is the difference between unlisted and private? +  Unlisted = unguessable URL, no auth check on view (the link IS the credential). Private = unlisted + an additional check (password, email domain, IP, SSO). Stacktree supports both; "private by default" on Stacktree means unlisted is the floor, and you can add auth gates per link.   How does private HTML hosting interact with AI search crawlers? +  Unguessable URLs aren't discoverable, so crawlers don't find them. Stacktree additionally serves `X-Robots-Tag: noai, noimageai` on every site so that even if a URL leaks, AI training crawlers know to skip it. The marketing site itself is intentionally indexable.   Is end-to-end encryption available? +  Yes. With `e2e: true` on upload, the browser encrypts with AES-GCM before sending. The decryption key lives in the URL fragment (which the server never sees), so Stacktree only stores ciphertext.   How does private HTML hosting compare to GitHub Pages, Vercel, or Netlify? +  Those products are excellent at deploying public web apps. They treat private access as a paid bolt-on, gated through Git accounts or org membership. Stacktree starts from "the URL is private" and works backwards from there, which is useful when the unit of work is one HTML file, not a project.   How do I privately share an HTML report or dashboard my AI agent generated? +  Have the agent publish the HTML to a private host instead of writing a local file or pushing to a public site. On Stacktree the agent calls one MCP tool, gets back an unguessable URL, and you send that link. The recipient opens it with no account. For sensitive contents, add a shared password or an email-domain gate so only verified viewers can render the page.   Can someone view a private HTML page without signing in or having a seat? +  With an unguessable-URL host, yes: the link itself is the credential, so anyone you send it to can open the page with no account. This is the difference from Codex Sites (needs an OpenAI workspace seat) and Claude Artifacts (needs a Claude org seat), where the viewer must already be inside your organisation. Add a password or email-domain gate when you want a second check on top of the link.   Is private HTML hosting free? +  Partly. The unguessable URL, the part that makes a link private in the first place, is on every Stacktree plan, including the anonymous first publish that lasts 24 hours with no account and the free 3-page trial. A passcode gate works on every plan, the free trial included. Company-email gates, permanent pages and a custom domain are paid: flat plans at $19, $79 and $249 a month, never per-seat. By contrast, private hosting on GitHub Pages needs Enterprise, and Codex Sites and Artifacts publishing sit behind Business/Team/Enterprise plans.
Keep reading

## Related guides

   -  [ Claude Code wants to publish an artifact The permission prompt says the tool uploads the file to claude.ai. ](/blog/claude-code-publish-artifact-private)
-  [ Best private HTML hosting 7 tools compared, with an honest take on where each wins. ](/best-private-html-hosting)
-  [ Private GitHub Pages What it costs on Enterprise Cloud, and the alternative. ](/github-pages-private-alternative)
-  [ Share finished work with a client A private link a client opens in any browser, no login. ](/share-html-file-with-client)
-  [ Tiiny Host alternative Compared head-to-head. ](/tiiny-host-alternative)
-  [ Display.dev alternative Workspace SSO vs per-link gates. ](/display-dev-alternative)
-  [ Agent-loop hosting Replace-in-place as a first-class verb. ](/agent-loop-hosting)
-  [ The design pass One click brings a plain page to Stacktree’s design standard before anyone opens it. ](/design-pass)
-  [ ShareDuo alternative ShareDuo hosts a Claude artifact on a noindex public link with password, expiry, and versioning. ](/shareduo-alternative)
-  [ Host an HTML dashboard your agent built Save the dashboard as one self-contained HTML file and publish it to a private, unguessable URL: drag and drop. ](/workflows/agent-built-dashboard)

References

## Sources and further reading

   -  [ MDN: Content-Security-Policy ↗ Why CSP defaults matter for executable agent-emitted HTML. ](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Security-Policy)
-  [ X-Robots-Tag (Google Search Central) ↗ The header Stacktree applies to opt every site out of AI training corpora. ](https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag)
-  [ AES-GCM (NIST SP 800-38D) ↗ The cipher mode used for Stacktree's end-to-end encryption option. ](https://csrc.nist.gov/publications/detail/sp/800-38d/final)
-  [ OWASP: HTML upload guidance ↗ Defensive baseline for hosting user-generated HTML. ](https://cheatsheetseries.owasp.org/cheatsheets/File_Upload_Cheat_Sheet.html)

##  Try private-by-default HTML hosting.

 Unguessable URL on every plan, MCP-native. No card to publish your first page.

 [ Sign up free → ](https://app.stacktr.ee/?join=1&from=cta_private_html_hosting)   install npx stacktree-install
Copy
         stacktr.ee  [Page video](/page-video) [Ask this page](/ask-this-page) [Client feedback](/client-feedback-loop) [Client spaces](/client-spaces) [Templates](/templates) [Use cases](/use-cases) [Integrations](/agents) [Alternatives](/alternatives) [About](/about) [Blog](/blog) [Changelog](/changelog) [Pricing](/pricing) [Security](/security) [FAQ](/faq) [Made with Stacktree](/made-with)  Building with AI agents? See the [developer docs &rarr;](/developers)

---
Full markdown summary of the Stacktree marketing surface: https://stacktr.ee/llms-full.txt
