Birta
← Back to Birta

Deploy from a ZIP archive

ZIP to Website: Publish a Site from an Archive with an AI Agent

Turn a .zip of a website into a live address. What has to be inside the archive, the three things that usually break, and the prompt that checks the structure before publishing.

The short answer

Upload the zip to Birta's chat, or give it to an agent that can read your files, and ask it to unzip, check where index.html sits, and publish. If the archive is wrong you hear about it before the link exists, which is the whole difference: nearly every broken attempt is the same mistake, an archive that wraps the site in a folder.

Check the archive without unzipping it

One command lists the contents, and the first lines tell you whether you have a problem:

unzip -l site.zip | head -20

If the first entry is index.html, you are fine. If every line starts with the same folder name, like my-site/index.html, the site is one level down and a plain upload publishes a directory listing or nothing at all.

The prompt

In Birta's chat, attach the zip and send the prompt with the path line dropped. For an agent with access to your files (Claude Code, Claude Cowork, Cursor, Codex), send it as is:

I have an archive at [path/to/site.zip]. Unzip it into a temporary folder and
look at the structure.

Tell me before publishing:
- whether index.html is at the top level or nested inside a folder;
- whether any file references an absolute path like /style.css that would break;
- whether anything in there needs a server rather than being static.

If it is publishable, create a Birta project, write the files into a draft with
the same relative structure, publish it, and give me the address. If it is not,
tell me exactly which of the three checks failed.

That last instruction is the point of the page. An agent asked to publish will publish; an agent asked to check first tells you the entry page is nested, and you fix a one-line problem instead of debugging a live link.

The other prompts around this one, including the one that collects a client's remarks, are in AI website prompts.

The three things that usually break

A wrapping folder. You zipped the folder instead of its contents. Everything is one level too deep. The agent moves the files up; by hand you re-zip from inside the folder.

Absolute paths. The HTML asks for /style.css with a leading slash, which means "the root of the domain". That works when the site sits at the root and breaks the moment it does not. Relative paths (style.css, ./assets/logo.svg) survive being moved.

Something that is not static. A theme from a marketplace often ships PHP templates, a build config, or a package.json expecting npm run build. None of that runs on a static host. The build output is publishable; the source archive usually is not.

After it is live

Publishing through the agent leaves you two things a drag-and-drop upload does not:

  • Versions and rollback. Every publish stays addressable, so replacing a bad archive is choosing the previous version rather than re-uploading and hoping.
  • A review link that needs no account. Send the version's address and whoever gets it marks remarks straight onto the page, pinned to the element. Your agent reads those numbered threads and fixes them in the same draft, then replies in each thread and resolves it.

Publishing again from a corrected archive is the same three steps, and the address does not change.

What this path does not cover

  • Publishing the archive without any agent. The zip goes to Birta's chat or to your own agent; either one unzips and checks it. A third-party chat assistant that can neither read your disk nor take the file through Birta cannot do this one.
  • Archives that are not a website. A zip of PDFs or images is a file-sharing job, not a publishing one.
  • Anything needing a server, a database or authentication.
  • Payments on your own site. Not something Birta does yet.

Your own domain works on the free plan, which keeps the Birta mark on the page; removing the mark is the Team plan.

Publish the site and keep the versions

Upload the zip to Birta's chat and its agent checks and publishes it. Or connect the agent you already use.

Start in Birta

Frequently asked questions