Atrium plan · v0.2
Product brief

One open home for everything your agents make.

Every model now ships HTML and Markdown: specs, dashboards, reports, prototypes. They die in a chat window or get locked to one vendor's URL. Atrium gives any artifact a permanent link, comments, and version history, works from every LLM tool, and runs as well on your own servers as on ours.

Read the brief $ See the architecture
0
internal sites on Shopify's "Quick" in months, half the company publishing. The demand is proven.
$0/mo
runs all of Quick on one small VM. The architecture is cheap because compute is client-side.
0 tools
Claude Code, Codex, Cursor, ChatGPT: all generate artifacts, none share a common home.

The shift

The artifact is the new unit of work

People stopped asking models for answers in prose. They ask for a thing: a Q1 review page, a live chart, a migration plan, an interactive prototype. What is missing is a neutral, durable place to put the output.

What people do today

1
Copy-paste the file aroundLoses interactivity, no source of truth, no history.
2
Use the model's native publishVendor-branded, search-indexed, no auth, no comments, locked to one LLM.
3
Deploy to Vercel / Netlify / PagesBuilt for apps, not throwaway artifacts. No comment loop, no agent read-back.
4
Pay for a closed SaaSWorks, but data leaves the building. Enterprise IT says no, and there is no self-host.

What a good home needs

Permanent, clean URLA stable link that outlives the chat and the model that made it.
Comments that agents can readHumans annotate; the agent pulls the thread back and ships a new version.
Version historyEvery publish is a version. Diff, restore, link to a specific one.
It runs where the data livesHosted for ease, or self-hosted behind the firewall when it matters.

The core idea

The publish → comment → revise loop

Atrium is not a static host. The product is a closed loop between human and agent: the artifact becomes a living spec both can edit through their natural interface.

01 · AGENT Publish file → stable URL + short_id 02 · HUMAN Review & comment inline notes anchored to an element or line 03 · AGENT Read back pulls artifact + threads as Markdown over MCP 04 · AGENT Republish v2 new version, same short_id. Loop closes. ↻ same URL, every iteration

This is the mechanic display.dev pioneered. Our bet: the loop belongs in an open standard, not a single closed vendor. See Competitive.

Surface area

What ships in the product

Publish from anywherecli · mcp · skill · api · drag-drop

A one-line CLI (atrium publish ./review.html), an MCP server so agents publish as a tool call, a Claude Code / Codex skill, a drag-and-drop uploader, and a plain HTTP API. Accepts HTML, Markdown, and images.

Any static contentfile · folder · build output

The unit is a bundle, not a file. atrium publish ./dist works for anything static: a lone HTML page, a Markdown doc, an Astro or Vite build, a Next.js export, an Observable notebook, an mdBook. Entry point, MIME types, and SPA fallback routing are handled; if it serves from a folder, it serves from Atrium.

Faithful renderinghtml + md fidelity

HTML renders exactly as built: live charts, inline scripts, CSS. Markdown renders to clean styled HTML and is also served raw for machines. Each artifact runs sandboxed on its own origin.

Commentsinline · threaded · agent-readable

Threaded comments anchored to a DOM element or Markdown line. Resolve and reopen. Every comment is exposed to agents as structured data so the revise loop closes automatically.

Revision historyimmutable versions

Every publish is an immutable version with author, timestamp, and message. Diff two versions, restore an old one, or deep-link to …@v3. Comments carry their base_version.

Access controlpublic · link · org-sso · password

Per-artifact: public, unlisted-link, gated to your org via SSO, or password. Private by default, noindex by default so internal work never shows up in search.

Agent read-backmcp · content + comments

Any agent pulls an artifact's current content, version list, and comment threads as Markdown/JSON. This is what makes Atrium a workspace rather than a pastebin.

The one-line differentiator

display.dev and the LLM vendors will host your artifact. Atrium is the only one you can run yourself, read the source of, and extend, with the same code powering our hosted tier. The home is a commons, not a vendor's silo.

Stolen playbook

What Quick's 50,000 sites teach us

Shopify published the closest thing this category has to a longitudinal study. Beyond the architecture, six product lessons — each mapped to a concrete plan change.

01 · identity

The viewer is an API

Quick sites automatically know who's looking (name, team, Slack handle) — personalization with zero auth code. Ours: gated artifacts get atrium.viewer, so an agent-built dashboard greets you by name and filters to your team. Static hosts can't do this.

02 · platform

Zero-config APIs make artifacts apps

Quick's quick.db (realtime), quick.ai (keys server-side), uploads, and websockets turned pages into tools — lunch-vote sites in a minute. Ours: atrium.kv · atrium.ai · atrium.realtime as the M6 platform layer, same zero-config shape.

03 · remix

Cross-artifact imports breed an ecosystem

Quick sites import code from other sites; shared libraries for comments, voice, analytics, achievements emerged unprompted. Ours: view-source + Remix on every artifact, stable per-version asset URLs so artifacts can import from artifacts.

04 · restraint

Say no until it hurts

Quick refuses custom backends, cron, permissions tiers — "a small, fixed set of capabilities… makes people more creative, not less." Ours: the anti-roadmap is written down: no folders-of-folders, no approval workflows, no WYSIWYG editor. Show people it's already possible.

05 · delight

Low stakes drive adoption

Quick's growth came from personal homepages, webrings, then a 140-game jam — fun first, dashboards second. Ours: the hosted free tier ships with playful templates and a public gallery; launch content leads with joy, not governance.

06 · agent-native

Skills that build, not just publish

"Quick ships with all the skills your agent needs" — quick init + any agent = a working site in under a minute. Ours: the Claude Code / Codex skill teaches the platform APIs and templates, so agents build richer artifacts, not just upload them.

Also instructive: Quick later rewrote its server Node → Go for memory and parallelism — exactly why our storage seams stay clean (Technical). And their one regret-shaped lesson: rate limits came only after people ran batch jobs through it. Ours ship in v1.

Packaging

Open core, simple hosted tiers

The full publish/comment/version engine is open source. We monetize hosted convenience and enterprise controls, never by crippling the core.

OSS
Self-host
Free / forever
Run the whole thing on your own box. Apache-2.0.
  • Full engine, no feature gates
  • Postgres + object store + 1 container
  • Unlimited artifacts & versions
  • Community support
Hosted
Free
$0
For individuals trying it from their agent.
  • Public & link-gated artifacts
  • Comments
  • Last 5 versions
  • Atrium subdomain
Most teams
Team
$ flat / mo
One price, unlimited viewers. Pricing TBD.
  • Org SSO gating
  • Full version history
  • Workspaces & search
  • Audit log, custom subdomain
Enterprise
Self-host+
Custom
Self-hosted with a support contract.
  • SAML / SCIM, custom domain
  • SLA + managed upgrades
  • Data never leaves your VPC
  • Priority on the open roadmap

Flat per-org pricing, unlimited viewers, matching the category norm display.dev set. Numbers to be set after a pricing pass.

Scope

First version (v1)

Ship the loop end to end for one agent and one storage backend, then widen. Milestones live on the Technical page.

v1
Publish + permanent URL + sandboxed render — single HTML/MD files and full static bundles (any dist/ folder). CLI + MCP, drag-drop upload.
v1
Immutable versions with restore and @vN deep links.
v1
Inline comments + agent read-back of content & threads over MCP.
v1
Auth: magic-link for hosted, OIDC for self-host; per-artifact public/link/org/password.
v1
Self-host path: one docker compose up (app + Postgres + MinIO).
next
Workspaces, full-text search, version diff view, SAML/SCIM, Helm chart, the published Artifact Publish Protocol spec.
later
The platform layer, à la Quick: atrium.viewer (who's looking), atrium.kv (realtime data), atrium.ai (LLM proxy, keys server-side), atrium.realtime. Plus remix/fork, cross-artifact imports, analytics, embeds.