How to share an HTML prototype your coding agent built
Claude Code and Codex mock up ideas as single-file HTML. The fastest way to get team feedback is a link that renders the file safely, next to the issue it belongs to. The options, their trade-offs, and the one-command version.
The best way to share an HTML prototype that Claude Code or Codex built is a link that renders it, sits next to the issue it belongs to, and keeps feedback on the file. Dropping the .html in Slack makes every reviewer download and open untrusted code locally; deploying it to Vercel or Netlify works but costs a repo, a pipeline and a public URL for a throwaway file. In Radial, one command does it: radial attach RAD-42 prototype.html uploads the file to the issue and prints a workspace-only Preview URL, rendered in a sandbox, with comments on the file and the decision recorded on the issue the agent reads next.
#Why agents make HTML prototypes at all
Ask an agent to explore a UI change and it can either write the real component (in your framework, against your data, with your tests) or write one self-contained HTML file that shows every screen and state with fake data. The second is minutes, throwaway by design, and answers the question that matters before any real code: is this the right screen?
The hard part is not making it. It is getting three people to look at it and say something useful before the agent moves on.
#The options, honestly
| How | What reviewers do | Trade-off |
|---|---|---|
| Send the file in chat | Download, double-click, open locally | Untrusted code on every laptop; feedback scattered in a thread |
| Screenshot it | Look at a picture | Nothing is clickable; states and flows are lost |
| Deploy to Vercel, Netlify or GitHub Pages | Click a URL | Needs a repo and a pipeline; the URL is public unless you add auth; feedback lives elsewhere |
| Attach to the issue in Radial | Click a Preview URL | Workspace members only; feedback lands on the issue |
Deploying is the right call for the thing you ship. A prototype is a question, not a release.
#The one-command version
npm i -g radial.build && radial auth
radial attach RAD-42 billing-v2.html
# ✓ Attached billing-v2.html to RAD-42
# Preview: https://app.radial.build/p/acme/RAD-42/f3a9c1An agent can do the same without a terminal: the MCP server exposes attach_file, and the REST API has the same endpoint, so the agent attaches mid-plan and posts the link without a person touching a browser. radial attachments RAD-42 lists every file on the issue with its Preview URL.
If you use the rd-* agent skills, rd-prototype builds the file from a plan or an issue, copies your repo's visual language, opens it locally, and attaches it for you.
#What the reviewer sees
The Preview URL opens inside Radial, not as a bare file:
- Every prototype on the issue in one menu, so v1, v2 and the alternate layout are one click apart.
- Comments scoped to the file, so "the empty state is wrong" is attached to the version it is about.
- The decision on the issue timeline, where the agent reads it before it builds the real thing.
Access is workspace membership. There is no public link to leak and no hosting account to manage.
#Why it is safe to click
A prototype is code someone, or some agent, uploaded. Radial treats it as hostile. Each file is served under a content-security sandbox on an opaque origin: it cannot read your cookies, reach your Radial session, touch the page around it, or navigate your tab elsewhere. That holds even if you open the raw file URL directly. HTML and raster images render; other file types download. This is safer than the default most teams use today, which is opening the file locally with no isolation at all. More on the Previews page.
#Where prototypes should live
Next to the issue. A prototype in a chat thread is gone in a week; a prototype in a deploy nobody remembers is gone in a month. On the issue, it sits with the plan, the comments, the agent's session and the build record, and anyone who opens the issue later sees what was proposed and what was decided. That is also why the tracker should be in the cloud: the agent on your machine attaches, and the designer on theirs comments, on the same issue.
For how prototypes fit into a full plan, build and verify loop, see what a software factory is and how to build one.
#FAQ
#What is the best way to share an HTML prototype Claude Code made?
Upload it somewhere that renders it safely for your team, next to the work it belongs to. In Radial that is radial attach <ISSUE> prototype.html, which prints a workspace-only Preview URL with comments on the file. Sending the raw file means every reviewer opens untrusted code locally.
#How do I host an AI-generated prototype for stakeholder feedback?
If stakeholders are in your Radial workspace, attach the file to the issue and send the Preview URL. If they are outside it, a static host such as Vercel, Netlify or GitHub Pages works, but the URL is public unless you add authentication, and the feedback will not land on the issue.
#Can my coding agent attach the prototype itself?
Yes. The agent can run radial attach from a terminal, call the attach_file MCP tool, or use the REST API. The rd-prototype skill builds and attaches the file in one step.
#Is it safe to open an HTML file an agent generated?
Opening it locally runs it with no isolation. Radial renders every attached HTML file in a sandbox on an opaque origin, with no access to your cookies, session or data, so reviewers can click through without thinking about it.
#Can reviewers comment on a specific prototype?
Yes. Comments in the Preview are scoped to the file, and every HTML file on the issue is in the Preview menu, so feedback on v1 and v2 stays separate.
#Who can see a Radial Preview URL?
Members of your workspace. The URL is not public.
The team behind Radial, the fast, CLI-first issue tracker that lets your own agents work for free. We write about plain software, speed as respect, and bringing your own agent.
Track issues like it’s 2019. Ship like it’s 2026.
An issue tracker. That’s it. Your agents ride free.
Keep reading
How to save Claude Code and Codex session logs before they disappear
Claude Code deletes local transcripts after 30 days by default, and Codex rollouts live in one folder on one laptop. Where both store sessions, how to keep and search them, and how to attach each session to the issue it worked on.
What is a software factory? And how to build one with coding agents
A software factory is a repeatable pipeline that turns intent into shipped code through fixed stations, a work queue and quality checks. With Claude Code and Codex, agents work the stations and people own the gates. What it is, what it needs, and how to build one.
Give Claude Code access to your issue tracker in 5 minutes (MCP)
Wire Claude Code to your issue tracker over MCP so your agent files, searches, and closes issues itself. A 5-minute setup, the OAuth flow, and why the durable record belongs where the agent already writes.