lexmount/artifact-site
lexmount/artifact-site has 30 GitHub stars and 5 forks. GitHot measured +1 stars in 24 hours. Last checked 2026-11-15 06:18 UTC. Last push 2026-11-03.
可以做什么
- 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.
- PDF - Read online, search and extract text.
- Office documents, such as PPTX and DOCX - Store and download originals; enable Gotenberg for online preview.
实测星标增长
- 24小时
- +1
- 7天
- 正在收集历史
- 15天
- 正在收集历史
- 1个月
- 正在收集历史
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
关于
A self-hosted home for your team’s AI-generated pages and documents. Publish HTML, build folders, ZIPs and PDFs as sandboxed, versioned links. CLI + remote MCP for AI agents.
自托管docs/README.zh-CN.md
原文
artifact-site
English | 简体中文 | 日本語 | Deutsch | Français | Español
本文档与 英文版 同步维护;如有出入,以英文版为准。
现在有太多 AI Agent 可以选择,产物却散落在电脑、聊天记录和各个平台的云端,难以统一管理、分享和回顾。
artifact-site 是个人/团队自托管的作品空间,类似 Claude Artifacts 或 OpenAI Sites。 你的各种 Agent 负责创作,artifact-site 负责集中管理:把网页和文档变成链接,方便分享、评论反馈、控制访问和保留版本;你原有的Agent 也能通过 CLI 或 MCP 继续编辑、发布、检索和更新作品。
你可以自行部署 artifact-site,也可以直接使用由 Lexmount 托管的云端版。
使用云端版 — 由 Lexmount 托管,无需自行部署。拖入文件即可发布并获取分享链接。你可以免登录上传,也可以使用 Google 或 GitHub 登录,长期保留作品、用文件夹整理,并控制谁能打开每个链接。
匿名发布的内容会在几天后过期。

拖进来,拿链接,分享出去。在线查看刚发布的作品,通过分享设置决定谁能打开。
为什么使用 artifact-site
- 把作品集中起来。 用文件夹整理网页和文档,通过全文搜索找回内容,中文也能搜。团队成员和 agent 都能找到自己有权访问的作品。
- 拖进来,就能分享。 上传 HTML、构建目录、ZIP 或文档,获得一个链接;大站点支持分块上传。可以分享给任何人、登录用户、指定的人,或持有访问码的人。
- 发布之后还能继续改。 在浏览器里编辑 HTML 页面的文字或源码,也可以让 agent 更新整个站点。每次修改保留版本,支持回滚和另存为新作品。
- 让 agent 接着用。 通过发布指南、CLI 或 MCP 发布和更新,也能按内容搜索、读取可提取的正文。例如,找到上次发布的报告,在同一个地址更新,团队就能查看新版本。
与托管产品的比较
| 团队关注点 | Claude Artifacts / Claude Code Artifacts | ChatGPT Sites(OpenAI) | artifact-site |
|---|---|---|---|
| 托管位置 | Anthropic 托管 | OpenAI 托管 | 自己的服务器,文件存于本地或 S3 兼容存储 |
| 发布方式 | 通过 Claude / Claude Code | 通过 ChatGPT Sites | 任意工具,通过文件上传、CLI 或远程 MCP 接入 |
| 主要内容 | 交互式作品 | 托管网站和应用 | 静态 HTML、构建目录、ZIP、PDF 和 Office 文档¹ |
| 身份体系 | Claude 账号 | ChatGPT 账号 | 自己的 OIDC 身份源,如 Google、Keycloak 或 Okta |
¹ Office 在线预览需要 Gotenberg。artifact-site 托管已经生成的文件,不运行应用后端或构建任务。
Claude Artifacts 和 ChatGPT Sites 将创作与托管分享结合起来。artifact-site 为这些流程提供补充:把不同工具生成的网页和文档集中在自己的基础设施上,供团队共享。
产品能力和分享方式因套餐而异,也会持续变化;请参阅官方 Claude Artifacts 和 ChatGPT Sites 指南。
目录
支持的内容
| 内容 | 你可以做什么 |
|---|---|
| HTML、静态网站目录、ZIP | 上传并预览单页或多页网站;支持 dist/ 等构建输出目录。HTML 页面支持可视化文字编辑和源码编辑。 |
| 在线阅读、搜索和提取正文。 | |
| Office 文档(如 PPTX、DOCX) | 保存和下载原文件;启用 Gotenberg 转换服务后可在线预览。 |
网页项目需要先构建为静态文件,平台不运行应用的后端服务或构建任务。PDF 和 Office 文档不支持网页式可视化编辑,扫描件不自动进行 OCR。
托管页面在沙箱中运行,不能使用平台的登录状态;连接外部 API 需要配置允许的来源。详见运行限制和安全设计。
快速开始(本地部署)
也可以直接使用云端版,无需安装。本地部署执行下面三条命令,需要 Git、Make、Bash、Docker 24+ 和 Compose 插件 2.24+。macOS 可使用 Docker Desktop;Windows 请在 WSL2 中执行,并启用 Docker Desktop 的 WSL 集成。无需安装 Node,也无需配置域名或登录服务。
git clone https://github.com/lexmount/artifact-site.git && cd artifact-site
cp .env.example .env
make build up
启动后打开 http://127.0.0.1:4300,拖入 HTML、静态网站目录或 PDF,即可查看作品。新作品默认私有;在分享设置中创建允许访问的链接,再复制给别人。
首次运行需要下载依赖和构建镜像,应用与 Postgres 会一起启动。以上命令用于新克隆的目录;服务默认仅本机可访问,停止用 make down,数据会保留。要让团队访问,请按团队部署配置。
手边没有文件?生成一个示例页面
printf '<!doctype html><meta charset="utf-8"><title>Hello</title><h1>Hello, artifact-site!</h1>' > hello.html
将 hello.html 拖入首页(或点上传作品),应看到“Hello, artifact-site!”。在分享设置中复制链接;本地部署的链接只能在同一台机器上打开。
接入 coding agent
选择适合你的 agent 的入口:
- Skill:
npx skills add lexmount/artifact-site— 安装 agent skill,并告诉 agent 你的服务器地址。 - CLI:
npm install -g @artifact-site/cli— 需要 Node 24+,示例命令见下方。 - MCP:
https://your-server/mcp— ChatGPT、Claude 等 MCP 客户端通过服务器的 OAuth 登录连接,无需安装 CLI。只能启动本地 MCP 服务的客户端,可改用 CLI 的artifact-site mcp。
CLI 和 MCP 默认创建私有作品,不自动生成独立分享链接。 用户要求分享时,使用 artifact-site visibility <slug> unlisted 或 MCP artifact_site_set_visibility 开放主链接。

或者交给你的 coding agent。有了 agent 指南(/for-agents.md)、CLI 或 MCP 服务,"把这个发布了给我个链接"就是一句话的事——之后的更新、搜索、读取也一样。
把下面这句交给 Claude Code、Cursor、Codex 或其他能读取 URL 的 coding agent,替换成它可以访问的服务器地址。首页也提供填好地址的复制按钮:
请把当前项目的产物发布到 artifact-site,发布手册:https://你的服务器/for-agents.md
CLI 示例(login 需要 OIDC):
artifact-site login --base https://your-server # 一次性设备登录
artifact-site publish dist/ --title "Q3 dashboard" # 发布并返回链接
artifact-site find "quota" # 按内容搜索
artifact-site read YOUR_SITE_SLUG # 替换为作品标识,读取正文
认证详情
打开部署后的 Agent 指南,选择交给 Agent、CLI 或 MCP。/for-agents#cli 和 /for-agents#mcp 提供当前服务器的命令、认证步骤与客户端配置。远程 MCP 的每次请求都要认证:ChatGPT、Claude 等支持 OAuth 的客户端通过本服务自己的授权页登录,其他客户端携带个人 Token; 发布默认私有;按需修改访问范围开放主链接,高级独立分享需主动创建。
配置了 OIDC 的团队部署支持设备登录授权;本地匿名体验不需要这个步骤。agent 根据指南和服务器的发布策略选择认证方式。云端 agent 无法直接访问你电脑上的 127.0.0.1。
以上登录示例需要 OIDC。远程 MCP 是另一套完整入口,地址为 https://your-server/mcp,无需安装 CLI。
ChatGPT、Claude 等实现了 MCP 授权规范的客户端只需填入这个地址,然后在本服务的 OAuth 授权页登录即可;其他客户端打开部署后的 /for-agents#mcp,创建个人 Token 并复制认证配置。之后即可发布、更新、搜索、读取、分享、管理版本、导出和删除。
二进制文件和文件夹也可通过 MCP 工具上传,无需调用 CLI。
完整说明见 CLI 命令和远程 MCP 接入及工具。
团队部署
从 .env.example 开始,按 SELFHOST.md 配置正式部署。ARTIFACT_PUBLIC_URL 会用于登录回调、请求来源校验和 agent 获取的地址,应使用稳定的对外地址:
- 设置团队可访问的
ARTIFACT_PUBLIC_URL,并配置反向代理;也可设置ARTIFACT_WITH_CADDY=on和ARTIFACT_DOMAIN,启用 Caddy 自动管理证书。 - 选择发布策略。
login需要 OIDC;token用于持有 Bearer 令牌的脚本或 agent;open允许任何能访问服务的人发布,适用于可信内网;匿名发布可设置独立配额和过期时间。 - 接入 Google 或 Keycloak、Logto、Authentik、Okta、Auth0 等 OIDC 身份源。站点和文件夹归属到账号,agent 可通过设备登录获取长期令牌。默认的
ARTIFACT_ENFORCE_OWNERSHIP=on会在配置 OIDC 后启用账号权限控制,将管理员经过身份源验证的邮箱加入ARTIFACT_ADMIN_EMAILS,启用管理后台。 - 用
ARTIFACT_WITH_GOTENBERG=on启用 Office 在线预览。管理后台支持下架作品、调整配额、匿名作品过期和发布策略。设置默认可见性并安排备份。
应用打包为一个 Docker 镜像,单机部署配套启动 Postgres。使用已有镜像时,可设置 ARTIFACT_IMAGE 后运行 make pull。make doctor 检查配置,make backup 和 make restore 用于备份恢复。多副本、外部 Postgres 和 S3 兼容存储见 DEPLOY.md。
工作原理
- 应用与存储。 Next.js 提供界面和 API,Postgres 存储元数据,文件存储在本机磁盘或 S3 兼容存储中。使用外部数据库与对象存储时,可运行多个应用副本。
- 不可变版本。 每次上传或编辑写入新的文件版本,保留历史内容。乐观锁(
expected_version)用于检测并发更新冲突。 - 内容隔离。 预览使用不带
allow-same-origin的沙箱 iframe 和严格的 CSP,隔离上传内容与平台。路径检查和解压限制用于防御路径穿越与 ZIP 炸弹。
架构、数据模型和请求流程见 ARCHITECTURE.md。
文档
| 文档 | 内容 |
|---|---|
| SELFHOST.md | 单机部署:make up、备份、升级、常见问题 |
| DEPLOY.md | 多副本部署:外部 Postgres、对象存储、OIDC |
| .env.example | 全部配置项,分组带说明 |
| ARCHITECTURE.md | 系统架构、数据模型、请求路径、沙箱 |
| SECURITY.md | 威胁模型与漏洞报告方式 |
| cli/README.md | CLI 命令 |
| src/content/publish-skill.md | 下发给 agent 的 API 契约与托管限制 |
| ROADMAP.md | 接下来做什么:语义检索、站点评论等 |
| CHANGELOG.md | 每个版本改了什么 |
参与贡献
本地开发需要 Node 24+ 和 Docker:
npm install
make dev # 启动临时 Postgres 和开发服务器
npm test # 单元测试,不依赖外部服务
提交流程、DCO 签名和 CI 要求见 CONTRIBUTING.md。Bug 和建议提交到 issues,使用问题到 discussions。
如果 artifact-site 对你有用,一颗 ⭐ 可以帮助更多人发现它。团队正在使用?欢迎到 Discussions 打个招呼,我们很乐意将你们列为使用者。
协议
以下两种协议任选其一:
- Apache License 2.0(LICENSE-APACHE)
- MIT License(LICENSE-MIT)
除非你另有声明,你有意提交给本项目的任何贡献都按上述双协议授权,不附加其他条款。
© 2025–2026 LexMount。第三方组件见 NOTICE。
文件包
文件夹与 ZIP/RAR/7z/TAR/TAR.GZ/TGZ 上传默认打开文件目录,点击 HTML/HTM 后在沙箱中渲染。压缩包默认上限为 50 MiB,保留原始字节,只有具备源码导出权限的用户可以下载,普通读者不能下载。文件夹下载为 ZIP;上传客户端能枚举空目录时会保留它们。已有站点版本和旧 API 模式保持原行为。