Open source · self-hosted · MIT

Claude-style artifacts,
on your own server.

Your AI agents publish HTML, Markdown, diagrams and PDFs. You review them in a private, passkey-protected gallery and share expiring links when you want to.

One ~10 MB Go binary · ~10 MB RAM · no database · or free on Cloudflare Workers

How it works

  1. 1

    Connect your agent

    Claude Code, Codex, Cursor or any MCP client. claude.ai and ChatGPT connect as remote connectors over OAuth.

    claude mcp add --transport http 9artifacts https://art.you.dev/mcp
  2. 2

    Ask it to publish

    “Make a dashboard of this CSV and publish it to 9artifacts.” It reads your design.md first, so the result looks like yours.

    → https://art.you.dev/a/k3x7…
  3. 3

    Review, comment, share

    Select text and leave a comment. Your agent reads it, publishes v2 and resolves it; your open tab reloads by itself. Share an expiring link when it’s ready.

Everything an artifact needs, nothing it doesn’t

Private by default

Everything sits behind your passkey. Public links always expire (1 hour to 30 days), can be revoked, and can have a password and a view limit.

Made for agents

A built-in MCP server, a CLI and an installable skill. Agents get back a private URL to hand you, and only share when you ask.

A review loop

Comments go back to the agent over MCP. Every version is kept, and any old one can be restored.

Feels like Claude’s viewer

Full-bleed sandboxed viewer, version history and live reload, on a separate content origin for isolation.

Your style, everywhere

Agents read your design.md before writing. The app itself is themeable, and your AI can restyle it.

Tiny and free to run

Happy on a 1 vCPU / 512 MB box or a Raspberry Pi, with automatic HTTPS. No server? The Workers edition runs on the free plan.

The 9artifacts gallery with dashboards, reports and diagrams
The gallery: search, tags, pins.
Viewer with the expiring share link panel
Expiring, password-protected links.
A Markdown artifact rendered in dark mode
Markdown, rendered.
The gallery in the terminal theme
Themes: default, terminal, paper.

Install

Paste this into Claude Code, Codex, Cursor or any agent that has a shell. It follows install.md: checks your DNS, installs the server, hands you the first-run link for your passkey, then connects itself and publishes a test page.

Install 9artifacts for me by following https://9artifacts.com/install.md. Put it on my server my-vps with the domains art.example.com and art-content.example.com, then connect yourself to it.

Change the server and domains to yours. The agent never sees your password or passkey, and pipes its API token straight into its own config.

Connect your agent

Create a token in Settings → Connect an AI agent (or sudo 9artifacts token --name my-agent on the server), then:

claude mcp add --transport http 9artifacts https://art.example.com/mcp --header "Authorization: Bearer vt_..."

Then just ask

Built for documents you wouldn’t paste into a pastebin

See it before you install it

The demo is a real 9artifacts on Cloudflare Workers, read-only for visitors.