← 回到报告集合Infrastructure Report · 2026-05-11
Report 从网页变成系统
今天真正搭起来的是一条完整生产线:写报告、归档、托管、媒体存储、边缘反代、独立域名和可复用 Skill。以后 V 做任何网页 / H5 / 汇报,都有固定轨道可走。
1固定 report 站点
2自有域名
∞后续 report 可追加
一句话结论
我们不只是做了一个网页,而是把“总结汇报 H5”产品化成了 Tianyi 的个人报告发布系统:内容页在 Vercel,媒体在 Supabase,访问经 Cloudflare,自有域名统一出口,流程由 report-web skill 固化。
Report 项目独立出来
把总结汇报 H5 从临时页面变成独立 Next.js 项目 report,并部署到 Vercel report 项目,避免误发到 ai-image-editor。
Next.jsVercelproject baseline
从单页变成报告站
建立 /report 集合页和 /report/<date-slug> 子页面规则。以后每份 report 独立存在,不再互相顶替。
archivesubpagesrouting
媒体迁到 Supabase Storage
创建 report-media bucket,把 9 个图片/视频文件上传到 Supabase Storage,页面改用 public URL,Vercel 上传包从约 41MB 降到 KB 级。
Supabase Storagemedia pipelinebundle shrink
Report 流程沉淀成 Skill
创建 report-web Agent Skill,固化:收集材料、上传媒体、建子页面、更新集合页、build、deploy、verify、写 memory。
Agent Skillworkflowmemory
自有域名上线
把 report 站点迁到 report.tianyi.live,Vercel fallback 保留为备用入口。
custom domainGoDaddyVercel DNS
Cloudflare 媒体反代上线
tianyi.live DNS 接入 Cloudflare,部署 report-media-proxy Worker,media.tianyi.live 反代 Supabase Storage 并加缓存。
Cloudflare Workermedia.tianyi.livecache
Architecture现在的系统结构
Report Sitehttps://report.tianyi.live/reportVercel 托管 Next.js 页面,/report 是集合页,子页面保存每次汇报。
Media URLhttps://media.tianyi.live/report-media/...页面使用统一媒体域名,不直接暴露 Supabase 长 URL。
Edge ProxyCloudflare Worker: report-media-proxy缓存并转发图片/视频请求,未来可替换源站而不改页面。
Origin StorageSupabase Storage: report-media保存 report 媒体文件,路径按 report slug 分目录。
Workflow Skill/root/.agents/skills/report-web以后做网页/H5/汇报默认走这个流程。
Operating Rules之后所有 report 都按这个来
- 新 report 永远建独立子页面:/report/<date-slug>。
- /report 是集合页,每次新增都追加卡片和时间。
- 图片/视频先上传 Supabase Storage,再通过 media.tianyi.live 引用。
- Vercel 只部署代码和轻资产,不打包大视频。
- Cloudflare / Supabase / Vercel token 只放本地 .env.local,绝不进前端和仓库。
- 每次部署后必须验证:集合页、子页面、至少一个媒体 URL 都 HTTP 200。
为什么这件事重要
这条链路把一次性的“帮我做个 H5”变成了可重复服务。以后 V 可以从飞书聊天、Makaron 项目、图片视频产物、工程日志里提炼内容,直接发布成带时间、媒体、复盘和链接的网页报告。这就是 Tianyi 的 One Man Studio 操作层:工作发生一次,资产沉淀一份。