The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Artifact Site listing page.
English | 简体中文 | 日本語 | Deutsch | Français | Español
There are now so many AI agents to choose from, but their output is scattered across your computer, chat histories and different platforms’ clouds, making it hard to organize, share and revisit.
artifact-site is a self-hosted workspace for individuals and teams, similar to Claude Artifacts or OpenAI Sites. Your various agents create the work; artifact-site brings it together, turning pages and documents into links for sharing, comments and feedback, access control and version history. The agents you already use can keep editing, publishing, searching and updating that work through the CLI or MCP.
You can self-host artifact-site or use the cloud version hosted by Lexmount.
Use the cloud version — hosted by Lexmount, with no deployment required. Drag and drop a file to publish it and get a shareable link. Upload without signing in, or sign in with Google or GitHub to keep your sites, organize them in folders and control who can open each link.
Anonymous uploads expire after a few days.

Drop a file, get a link, share it. View your published work online and choose who can open it in the sharing settings.
| For your team | Claude Artifacts / Claude Code Artifacts | ChatGPT Sites (OpenAI) | artifact-site |
|---|---|---|---|
| Hosting | Anthropic-managed | OpenAI-managed | Your server, with local or S3-compatible file storage |
| Publishing workflow | Within Claude / Claude Code | Within ChatGPT Sites | Any tool via file upload, CLI or remote MCP |
| Content focus | Interactive artifacts | Hosted websites and apps | Static HTML, build folders, ZIPs, PDF and Office documents¹ |
| Identity | Claude accounts | ChatGPT accounts | Your OIDC provider, such as Google, Keycloak or Okta |
¹ Office online preview requires Gotenberg. artifact-site hosts finished files; it does not run application backends or build jobs.
Claude Artifacts and ChatGPT Sites combine creation and hosted sharing. artifact-site complements those workflows with a shared home on your own infrastructure for pages and documents produced by different tools.
Product scope and sharing vary by plan and evolve; see the official Claude Artifacts and ChatGPT Sites guides.
| Content | What you can do |
|---|---|
| HTML, static site folders, ZIPs | Upload and preview single-page or multi-page sites, including build output such as dist/. HTML pages support visual text editing and source editing. |
| Read online, search and extract text. | |
| Office documents, such as PPTX and DOCX | Store and download originals; enable Gotenberg for online preview. |
Build web projects into static files before uploading; the platform does not run application backends or build jobs. PDF and Office documents do not support visual HTML editing, and scanned images are not automatically OCRed.
Hosted pages run in a sandbox and cannot use the platform's login session. External API connections require an origin allowlist. See the runtime limits and security design.
You can use the cloud version without installing anything. To deploy locally, run the three commands below. You need Git, Make, Bash, Docker 24+ and the Compose plugin 2.24+. On macOS, use Docker Desktop; on Windows, run the commands inside WSL2 with Docker Desktop’s WSL integration enabled. No Node installation, domain or identity provider is needed.
Once started, open http://127.0.0.1:4300 and drop in HTML, a static site folder or a PDF to view your work. New sites are private by default; create a link with the desired access in Sharing before sending it to someone else.
The first run downloads dependencies and builds the image, then starts the app and Postgres. Use these commands in a fresh clone. The service is local-only by default; make down stops it and retains data. To make it reachable by your team, follow Deploy for your team.
Drop hello.html onto the home page (or choose Upload). You should see “Hello, artifact-site!”. Copy a link from the sharing settings; local-deployment links only open on the same machine.
Choose the entry point that fits your agent:
npx skills add lexmount/artifact-site — install the agent skill and give your agent your server URL.npm install -g @artifact-site/cli — requires Node 24+; use the commands below.https://your-server/mcp — connect ChatGPT, Claude or another MCP client through the server’s OAuth sign-in; no CLI installation required. A client that only starts local MCP servers can run the CLI’s artifact-site mcp instead.CLI and MCP publishing create a public share by default. Use --share none (CLI) or share: false (MCP) to publish without sharing.

Or let your coding agent do it. With the agent guide (/for-agents.md), the CLI or the MCP server, "publish this and give me a link" is one instruction — and the site can be updated, searched and read the same way.
Give this instruction to Claude Code, Cursor, Codex or another coding agent that can read URLs, using a server address it can reach. The home page also provides a copy button with your server address filled in:
CLI examples (login requires OIDC):
Open Agent guide on your deployment to choose the prompt, CLI or MCP path. /for-agents#cli and /for-agents#mcp provide server-specific commands, authentication steps and client configuration. Remote MCP authenticates every request: ChatGPT, Claude and other OAuth-capable clients sign in through the server's own consent page, other clients carry a personal token. CLI publishing, updating, sharing and deleting require a token; publishing creates a public share by default. Use --share none (CLI) or share: false (MCP) to skip sharing.
Team deployments with OIDC support device sign-in approval; the anonymous local setup above does not require it. The agent follows the guide and the server's publishing policy to choose authentication. A cloud agent cannot directly reach 127.0.0.1 on your computer.
The login example requires OIDC. Remote MCP is a separate, complete entry point at
https://your-server/mcp: no CLI installation is required. ChatGPT, Claude and any client that
implements MCP authorization connect with the address alone and sign in through the server's
OAuth consent page; for other clients, the deployment's /for-agents#mcp page creates a
personal token and copies the authenticated configuration. It supports publishing, updating,
search, read, sharing, versions, export and deletion, including binary files and directory
uploads through MCP tools.
See CLI commands and remote MCP setup and tools.
Start from .env.example and follow SELFHOST.md for a production deployment. Use a stable public address for ARTIFACT_PUBLIC_URL: sign-in callbacks, request-origin checks and the address given to agents derive from it:
ARTIFACT_PUBLIC_URL and configure a reverse proxy, or set ARTIFACT_WITH_CADDY=on with ARTIFACT_DOMAIN to enable Caddy and automatic certificates.login requires OIDC; token serves scripts or agents with a Bearer token; open lets anyone who can reach the service publish and suits trusted internal networks. Anonymous publishing supports separate quotas and expiry.ARTIFACT_ENFORCE_OWNERSHIP=on enables account-based access control once OIDC is configured. Add administrators' verified sign-in emails to ARTIFACT_ADMIN_EMAILS to enable the admin console.ARTIFACT_WITH_GOTENBERG=on. The admin console manages take-downs, quotas, anonymous-site expiry and policy switches. Choose default visibility and schedule backups.The app ships as one Docker image with bundled Postgres in the single-host setup. To use an available prebuilt image, set ARTIFACT_IMAGE and run make pull. make doctor checks configuration; make backup and make restore handle backups and recovery. For multiple replicas, external Postgres and S3-compatible storage, see DEPLOY.md.
expected_version) detects concurrent update conflicts.allow-same-origin and a restrictive CSP to isolate uploaded content from the platform. Path checks and decompression limits defend against path traversal and ZIP bombs.See ARCHITECTURE.md for the architecture, data model and request flows.
| Document | What it covers |
|---|---|
| SELFHOST.md | Single-machine deployment with make up, backups, upgrades, FAQ |
| DEPLOY.md | Multi-replica deployment: external Postgres, object storage, OIDC |
| .env.example | Every setting, grouped and explained |
| ARCHITECTURE.md | System shape, data model, request paths, the sandbox |
| SECURITY.md | Threat model and how to report a vulnerability |
| cli/README.md | The CLI |
| src/content/publish-skill.md | The API contract and hosting limits, as served to agents |
| ROADMAP.md | What comes next: semantic search, comments on sites, and more |
| CHANGELOG.md | What changed, release by release |
Local development requires Node 24+ and Docker:
See CONTRIBUTING.md for the contribution process, DCO sign-off and CI requirements. Report bugs and ideas in issues; ask questions in discussions.
If artifact-site is useful to you, a ⭐ helps others find it. Using it with your team? Say hi in Discussions — we’d love to list you.
Licensed under either of
at your option. Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you shall be dual-licensed as above, without any additional terms or conditions.
© 2025–2026 LexMount. Third-party components are listed in NOTICE.