Asked your AI for it in HTML? Here is how to open, keep and share it.
Asking ChatGPT, Claude or Codex to answer in HTML turns a wall of text into a page you can scan: a summary up top, a table, a chart. On 2 October Andrej Karpathy put it simply: ask for output "in HTML" to get a beautiful, interactive webpage. Getting the page is the easy part now. This guide covers what comes after it: opening it, keeping it, and sending it to someone privately so you know it was read.
No card · 3 pages free · about a minute
How do I share an HTML file my AI made?
Open it yourself by saving it as a .html file and double-clicking it, or in the preview your AI shows. To send it, put it on a private link instead of attaching the file: publish it to Stacktree, or ask your agent to, add a passcode, and send a link with the person's name on it. They open it in any browser with no account, and on a paid plan you see when they did.
Why ask for HTML at all
A long answer in a chat is a wall you read top to bottom. The same answer as a page has structure: the conclusion on the first screen, the figures in a table, a chart where a chart helps, sections you can skip. Nothing about the content changes. It is just easier to take in.
That is the point Karpathy was making. As models do more of the work, more of our time goes on understanding what they made, and the format decides how hard that is. He ranks the options roughly in order: tightly written text, then diagrams, then web pages, then made-to-order explainer videos. Web pages are the step most people can use today, with nothing but a sentence added to the prompt.
Step 1: ask for it well
"In HTML" alone works. A few more words make the page hold up when you move it, open it on a phone, or send it on:
Answer in HTML. One self-contained file: inline CSS and JavaScript,
no external fonts or images. Put the answer on the first screen,
then the detail. It must read well on a phone. Write in plain
English: short sentences, one point each. It is for Dana, our client. - Self-contained means it still works after you move it or send it. A page that pulls fonts or scripts from elsewhere can break when it leaves your machine.
- The answer first stops the page burying the one number the reader came for.
- Phone-friendly, because a link you send is often opened on a phone.
- Plain English is Karpathy's other tip. He asks for writing close to ASD-STE100, the controlled language written for aircraft maintenance manuals, and finds it easier to read. When the full spec is too strict he asks for "80% of the way to ASD-STE100".
- Who it is for changes the tone: a page for a client reads differently from a page for you.
Step 2: open it
Where the page appears depends on the tool, but opening it never needs anything special:
- ChatGPT can preview the page in the chat or give you a file to download.
- Claude shows it as an artifact beside the chat.
- Codex and Claude Code write the file into your project folder.
In every case you can save it as something.html and double-click it. Any browser opens it, offline, with no server and no account. For reading it yourself, that is all you need.
Step 3: keep it
The trouble starts the day after. The file sits somewhere in Downloads with a name like index (3).html. The artifact lives inside one chat, in one account. If the page mattered, you want it at an address you can find again, in the state you left it.
Publishing it gives it that address. On Stacktree each update keeps the earlier version, so you can go back, and the address does not change when the page does.
Step 4: send it privately
Most pages people ask their AI for are meant for someone else: a client, a manager, a team. Sending the file as an attachment works until someone opens it on a phone, forwards it, or asks for the latest version. A link is better, and a private one should mean four things:
- Nobody can guess it. The link itself is the key, so it cannot be found by searching or by trying addresses.
- A passcode when it matters. Stacktree includes passcodes on every plan, Free included.
- A link per person. Choose who it is for when you publish, and the link you copy carries their name. On Solo and up you see when that person opened it, and you get an email the first time they do.
- No account to open it. The reader taps the link and the page opens.
The tools that made the page mostly do not do all four. ChatGPT Sites asks viewers to sign in with a ChatGPT account. Claude's artifacts are shared publicly or inside your organisation, without a passcode or a per-person link. A file posted in Slack stays inside the workspace.
Step 5: change it at the same link
Pages go stale: the figures move, the client asks for a change. Ask your AI for the new version and update the page in place. The link the reader already has keeps working, and they see the new page the next time they open it. If you publish something that looks like a new version of a page you have already sent, Stacktree names that page and offers to update it instead, so you do not end up sending a second link.
If you need a decision rather than a read, turn on sign-off for the page. Each person you send it to can approve it, or go section by section, and every answer is recorded against the version they saw.
Do it from your agent in one line
If your AI is connected to Stacktree you never touch the file. In ChatGPT, Claude, Cursor, Codex or Claude Code, ask in the same breath as the page:
Make it a page, publish it privately with a passcode,
and give me a link for Dana. Connecting takes a minute: see publishing over MCP, or the guides for Claude Code and Codex. From a terminal, one request does it, and works without an account:
curl -X POST https://api.stacktr.ee/sites -F file=@q3-summary.html A page published without an account stays up for 24 hours and comes with a link to keep it.
Throwaway or keep?
Karpathy calls these discardable artifacts, and most of them are: you read the page once, it did its job, and nobody needs it next week. Stacktree's Free plan is built for that: 3 pages, each up for 7 days, passcodes included. The pages worth keeping are usually the ones someone else reads. Solo keeps 25 pages with no expiry, on your own branding, and shows you who opened what.
Full disclosure: we build Stacktree, so read the last few sections as us describing where we fit. The first three steps work whatever you use to share the page.
Fix it now
You've read why the public link is a problem. Paste the artifact here and get a private one, no account, and a passcode if you want it.
Frequent questions
How do I get ChatGPT or Claude to answer in HTML? +
How do I open an HTML file my AI made? +
How do I share an HTML file privately? +
Can someone open the page without an account? +
Will I know when they open it? +
How do I change the page without sending a new link? +
Related guides
- Share agent-made HTML Put a page an assistant built on a private link the viewer opens without an account.
- Password-protect an HTML page How passcodes work on a published page, and when to use one.
- Share a ChatGPT site with a client What ChatGPT Sites asks of a viewer, and the alternatives.
- Publish HTML from Claude Code From a file in your project to a private link, in one step.
- Publish HTML over MCP The cross-agent publish flow behind a private, unguessable URL.
- Private HTML hosting The access model: unguessable URLs, plus passcode, email and expiry gates.
Sources and further reading
- Andrej Karpathy on X, understanding the outputs of language models ↗ The 2 October 2026 post ranking output formats for understanding: controlled writing, diagrams, HTML pages and explainer videos.
- ASD-STE100 Simplified Technical English ↗ The controlled language specification from aerospace maintenance writing that Karpathy suggests asking for.
- Model Context Protocol ↗ The open protocol agents use to publish a page to Stacktree directly.
Your AI made the page. Send it on a link that tells you it was read.
A private, unguessable link with a passcode, opened without an account. Free tier, no card.
Sign up free →