Security at Stacktree.
Stacktree hosts the HTML your agents emit, which often carries real data. So privacy is the default, not a setting, and the controls below are designed for that risk surface. This page states only what is actually true today, and is plain about what we do not claim.
Is it safe to host agent-generated HTML on Stacktree?
Stacktree is private by default: every site gets an unguessable URL that is itself the credential, is never listed, and is served with crawler-blocking headers. On top of that you can add a password, restrict viewers to a company email domain, encrypt the page end-to-end so even Stacktree cannot read it, or set it to expire or burn after one view. It runs on Cloudflare (Workers, R2, D1), and the whole stack is source-available so you can self-host it under your own perimeter.
The default: the URL is the credential
A new site is unlisted: it lives at an unguessable token URL (roughly 128 bits of entropy), it is never enumerated or listed anywhere, and it is served with X-Robots-Tag: noai and no sitemap so search engines and AI crawlers leave it alone. There is no public directory of sites. If you do not share the link, no one finds the page.
Gates you can add
- Password. Require a shared password before the page renders. Stored as a hash, never in plaintext.
- Email-domain gate. Require viewers to verify an address on a domain you choose (for example
@yourco.com) by magic link before the page loads. The gate sits on top of the unguessable URL.
End-to-end encryption
For the most sensitive artifacts, encrypt the page in your browser before it is uploaded (AES-GCM). The decryption key lives only in the URL fragment (the part after #), which browsers never send to the server. Stacktree stores ciphertext and cannot read the content; only someone with the full link, fragment included, can decrypt it.
Content security
Hosted pages are served under a strict Content-Security-Policy by default (default-src 'self'). So your own page's inline scripts still run, Stacktree computes a per-site hash allowlist at upload time, which permits exactly your scripts while still blocking injected ones, rather than opening the policy up with 'unsafe-inline'. Markdown is sanitized on render. The result is that a hosted artifact cannot be turned into a vector against other sites on the domain.
Control over lifetime
Every site can carry an expiry (from minutes to never), be set to burn after a single read, or be removed immediately with delete_site. Expired and deleted sites are purged from both object storage and the database within the hour by a scheduled job.
Infrastructure and data control
Stacktree runs on Cloudflare Workers, R2, and D1. Cloudflare maintains SOC 2 / ISO 27001 compliance for that underlying infrastructure, which your own compliance team can review directly. For teams that need data residency, their own perimeter, or zero third-party dependencies, Stacktree is source-available and self-hostable: run the entire stack on your own Cloudflare account, where Stacktree itself has no access.
What we do not claim
We would rather be precise than impressive. Stacktree itself has not completed a third-party SOC 2 audit or a published external penetration test; the SOC 2 / ISO 27001 coverage above is Cloudflare's, for the infrastructure Stacktree runs on. We do run internal security reviews and ship the fixes (the changelog records security-tagged releases), and the codebase is source-available so you can review it yourself. If third-party attestation is a hard requirement for you, self-hosting puts the data inside your own audited environment.
Reporting a vulnerability
If you find a security issue, email security@stacktr.ee. We read it, we will acknowledge it, and we will not pursue researchers acting in good faith. Machine-readable contact details are at /.well-known/security.txt.
Frequent questions
Are Stacktree sites public? +
Can Stacktree read my hosted pages? +
Has Stacktree been SOC 2 audited? +
How do I report a security issue? +
Related guides
Sources and further reading
Private by default. Yours to verify.
Source-available, self-hostable, and honest about what it does. Start free.
Sign up free →