跳到主内容
Autional 徽标
Vercel4 分钟#AI 改造#SSO#多用户#Novel

Novel:单用户笔记应用改造为多用户产品

部署平台
Vercel
框架
Next.js
技术栈
Next.js 15 · React 18 · Tiptap · Vercel Blob(私有存储)

2026-10-13,我们把开源笔记应用 Novel 从「打开即用、所有人共享同一池文档」的单用户工具,改造成带 SSO 登录、按用户隔离文档、接入平台 AI 中转的多用户产品——主改造在一个 AI 协作会话内完成,当天部署上线 Vercel。演示环境开放,可以打开亲手验证。

速览

项 值
上游应用 Novel —— 开源 AI 笔记应用(Notion 风格编辑器)
原项目仓库 github.com/steven-tey/novel
原项目官网 novel.sh
改造结果 SSO 登录 · 文档按用户隔离并持久化 · AI 能力接平台中转 · 生产部署
技术栈 Next.js 15 · React 18 · Tiptap · Vercel Blob(私有存储)
部署平台 Vercel
用时 主改造一个 AI 协作会话内完成,当天上线
参考仓库 github.com/autional-demo/novel
演示环境 novel-demo-nine.vercel.app

关于原项目 Novel

Novel 是 Steven Tey 开发的开源「Notion 风格」所见即所得编辑器,基于 Next.js + Tiptap + Vercel AI SDK 构建。核心特性是 AI 自动补全:正文输入 ++ 触发续写建议,斜杠命令插入内容块,选中文本唤起气泡菜单;支持拖拽 / 粘贴上传图片、LaTeX 公式与推文嵌入。编辑器也以 npm 包(novel)形式提供给其他应用集成。项目采用 Apache-2.0 许可,截至 2026-10 在 GitHub 上获 1.6 万+ star。

改造前 → 改造后

维度 改造前(原版 Novel) 改造后
账号 无 —— 打开即用 邮箱密码,或一键「使用 Autional 登录」(OAuth 2.0 + PKCE)
数据 所有人共享同一池文档 多用户隔离 —— 文档按用户私有
会话 无会话概念 自动刷新、跨标签同步,设备会话可见可撤销
登出 — 标准 OIDC 登出:会话真正结束,可切换账号
AI 能力 自备模型 key,成本不可控 平台 AI 中转,统一计量
部署 仅本地 生产(Vercel + 平台存储)
运维 没有账号体系可运维 用户、审计、安全策略在平台门户管理,无需自建后台

这不是效果图:改造后的代码在 github.com/autional-demo/novel 公开可查;演示环境开放,登录、数据隔离、换号切换均可亲手验证。

改造做了什么

  • SSO 接入:同源 /bff 代理 + 会话桥 + OAuth 回调;
  • 多用户改造:文档按用户隔离,持久化到平台存储(Vercel Blob 私有);
  • AI 中转:应用的 AI 能力接入平台中转,统一计量;
  • 部署上线:Vercel 生产部署,注册生产回调地址。

结果与验证

  • 本地三闸全绿:lint / typecheck / build;单元测试 8/8;
  • 生产环境真机 E2E 5/5:登录、文档增删改查、跨用户隔离对照、AI 生成、图片上传;
  • 安全专项:跨用户越权探针 19/19 全部拦截(跨用户读取双向 404、未登录 401);文档存储为私有(private Blob);
  • 演示环境开放:novel-demo-nine.vercel.app。

改造中发现的问题全部记录归档,反哺平台与 skill 的迭代——下一位改造者的起点因此更靠前。

发起 prompt(逐字存档)

2026-10-13(CST)发起改造时交给 AI 编码助手的 prompt 原文:

请读取 https://www.autional.cn/ai/skill.md,并据此为 https://github.com/steven-tey/novel 完成改造:接入 Autional 登录,把它从单用户应用改造成多用户产品(用户数据隔离并持久化到平台存储);改造完成后部署上线到 Vercel。
若打不开,改用国内镜像:https://cdn.autional.cn/ai/latest/SKILL.md

把仓库地址换成你自己的项目,这句话就是你的 prompt。

自己试一遍

复制上面的 prompt,把仓库地址换成你的项目,交给 AI 编码助手(Claude Code、Cursor 等)即可。想直接开始,看 AI 接入指南。

想给自己的项目做同样的改造?

把你的项目交给 AI 编程助手:一句 prompt 接入 Autional 登录与多用户能力,每个阶段先与你确认。