Open Artifacts: bring any agent, keep every artifact

5 min read Original article ↗

Bring any agent.Keep every artifact.For Free. Seriously.

Open Artifacts is free and open source. It keeps the pages, docs, code and PDFs from any AI agent (Claude Code, Codex, Cursor, OpenCode) on your own Cloudflare account, so usage follows your Workers plan.

Tell your agent:

install open-artifacts.com/llms.txt

Any AI agent sends its HTML, Markdown, code and PDFs to one home.
The Open Artifacts library: a grid of artifacts with thumbnails, the agent that made each one, and its visibility.

Ask in chat. Get a link.

Ask any AI agent to publish. It calls publish_artifact and hands you a private link to the real thing, ready to click and use. Try each example.

Claude Code

publish this as an artifact

publish_artifact ✓

Address: artifacts.example.com/a/7Hq3kP

Six artifacts that agents published, and every one works. Use them here, or open one to see its link, its versions and who it's shared with.

HTML

Publishing dashboard

Published
104 +18%

Views
812 +18%

Agents
5

Artifacts published per week, Jul 28 to Oct 13: 42, 51, 48, 63, 58, 71, 77, 69, 84, 92, 88, 104.
Artifact views per week, Jul 28 to Oct 13: 310, 290, 402, 388, 455, 520, 498, 610, 644, 702, 690, 812.
HTML

Sprint 41 retro poll

What slowed us down this sprint?

17 votes · saved for the team

HTML

Mortgage calculator

MD

RFC 014: Build log retention

RFC 014: Build log retention

Status: In review · Owner: Platform

Summary

Keep build logs for 30 days instead of forever. Older logs move to cold storage, and a pinned build keeps its logs for good.

Why
  • Log storage grew 4× this year and is now our third largest bill.
  • Fewer than 1% of reads touch logs older than two weeks.
  • Incident reviews pin the builds they need, so nothing is lost.
Options
OptionMonthly costReads
Keep everything$1,840Fast
30 days, then cold$410Slow after 30d
30 days, then delete$290Gone
Recommendation: 30 days, then cold storage. Pinning stays free.
Rollout
  1. Ship the pin_build flag.
  2. Backfill pins for the last 40 incidents.
  3. Turn on the 30 day lifecycle rule.
HTML

v2.4 launch checklist

4 of 7 done · ships Thursday

Saved for the team · Sam checked one 4m ago

CODE

backfill.py

Python · 23 lines

"""Backfill artifact sizes for rows made before v0.9."""import osfrom db import connectBATCH = 500def backfill(dry_run: bool = False) -> int:    db = connect(os.environ["D1_URL"])    fixed = 0    while rows := db.query(        "SELECT id, r2_key FROM artifacts WHERE size IS NULL LIMIT ?", BATCH    ):        for row in rows:            size = db.r2.head(row.r2_key).size            if not dry_run:                db.run("UPDATE artifacts SET size = ? WHERE id = ?", size, row.id)            fixed += 1    return fixedif __name__ == "__main__":    print(f"fixed {backfill()} rows")

Every live page is multiplayer

Everyone who opens a live page works on the same data. When Sam checks an item, Ana's window shows it right away, with Sam's name on it. Try it in either window.

artifacts.example.com/a/Tq7mW4Signed in as Ana

Offsite prep 2 of 5 done

  • updated by Ana
  • updated by Sam
  • updated by Ana
  • updated by Sam
  • updated by Ana

artifacts.example.com/a/Tq7mW4Signed in as Sam

Offsite prep 2 of 5 done

  • updated by Ana
  • updated by Sam
  • updated by Ana
  • updated by Sam
  • updated by Ana

Set up in three steps

  1. Tell your agent

    Your agent reads llms.txt, checks the prerequisites, clones the latest release, and runs pnpm install.

  2. Sign in to Cloudflare

    One step needs you: npx wrangler login. Setup then creates D1, R2 and KV and the Access sign-in app, deploys to both domains, and adds the MCP server to your agent.

  3. Publish and share

    Your agent publishes a Welcome artifact and gives you the link. Later, ask it to write up the Q4 data migration plan and share it with a teammate.

One library for everything your agents publish

Versions, sharing and access control, in one dashboard.

  1. Every agent, one library

    Whatever any AI agent publishes lands in your Library, labeled with the agent that made it. Search across all of it.

  2. Every version kept

    Each publish is a new version that records who and which agent made it. Open an older one and restore it in one click.

  3. Private until you share

    New artifacts are visible only to you. Share with people by email as viewer or editor, with your team, or by a public link that search engines skip.

  4. Self-hosted on your Cloudflare

    It runs on your own account and domain, behind Cloudflare Access sign-in. Workers Free fits one person; Workers Paid fits a team.

What you get

  • HTML, Markdown, code and PDF

    Interactive pages, rendered docs, highlighted code and PDFs, viewed in a web dashboard with search.

  • Every version kept

    Each publish is a new version that records which agent made it. View or restore any of them.

  • Private until you share

    Share with people by email as viewer or editor, or make a public link that search engines don't index.

  • Live pages

    An HTML artifact can save and read shared data, so polls, trackers and checklists just work.

  • Any AI agent

    Claude Code, Codex CLI, Cursor, OpenCode, ChatGPT, or anything else that speaks MCP.

  • Yours to run

    MIT-licensed, on your own Cloudflare account and domain. Nothing passes through us.

Which Cloudflare plan

Open Artifacts runs on either. Pick the one that fits who uses it.

  • For you

    Workers Free

    $0

    Publish, version and share everything your agents make. Sized for one person.

  • For your team

    Workers Paid

    $5 a month

    Invite emails for teammates, and more CPU for large publishes. Sized for a team.

An artifact open in the viewer, with its version history in the side panel.
Every publish is a version you can view or restore.
The share dialog: private, team, or public visibility, and people invited as viewers or editors.
Share with people by email, with your team, or by public link.

Safe to open

Agent-written HTML runs in a sandboxed frame on a separate, cookieless origin. It can't read your session, call the API as you, or reach the dashboard.

Sandboxed
Each artifact runs in its own opaque origin, so it can't see the dashboard or other artifacts.

No passwords
Sign-in goes through Cloudflare Access with a one-time PIN, GitHub, or Google.

Private by default
New artifacts are visible only to their creator. Anything you can't see returns a 404, so a link never reveals that it exists.

Never indexed
Public links send noindex headers, and robots.txt blocks crawlers on both hosts.

Revocable tokens
Agent tokens are stored only as hashes, and you can revoke them in settings.

Open source, MIT licensed

Read the code, file an issue, or run it yourself.

View on GitHub