Site cover image

astro-notion-blog

Description is here. The icon, the title, the description can be modified in Notion.

小白一键部署 Talorys:在自己的 Cloudflare 账号里搭一个私人 AI 助手(实测踩坑版)

💡
亲测 2026-10-27:本文全程实测——create-talorys 0.1.7、Node 22.23.4、内置 Wrangler 4.149.0,用 API Token 真实部署到 Cloudflare 免费账号,部署耗时约 28 秒;部署后登录、中文/英文聊天(真实 Workers AI 回复)、创建提醒均验证通过。文中报错和输出都是真实运行结果(网址、邮箱、密钥已打码)。

一、Talorys 是什么?适合谁?

Talorys 是一个免费、开源(MIT 协议)的私人 AI 助手。它最大的特点是:整个应用部署在你自己的 Cloudflare 账号里,不需要买服务器,也没有任何第三方替你保管数据。

它能做的事:

  • AI 聊天:流式输出、支持 Markdown,聊天时能直接帮你建任务、记笔记、设提醒。
  • 记忆:记住你的偏好和个人信息,可以随时查看、修改、删除。
  • 任务、笔记、项目:在界面里增删改查,也可以在聊天里一句话搞定,比如“明天提醒我复盘项目”。
  • 定时提醒和例行任务:一次性提醒、循环提醒、每日任务汇总,到点会推送到 App 内通知中心,也可以开启手机/电脑的系统推送。
  • 没 AI 也能用:就算 AI 免费额度用完了,任务、笔记、记忆、提醒照常工作。

适合这些人:

  • 想要一个“只属于自己”的 AI 助手,不想把聊天记录交给第三方平台;
  • 不想买服务器、不想维护数据库;
  • 能照着教程复制粘贴几条命令的新手(不需要会写代码)。
⚠️
先说清楚两个限制:① 目前界面只有英文(npm 上的 0.1.7 版本是纯英文界面;GitHub 主分支刚加了韩语,暂时没有中文),但聊天可以直接打中文;② 它是单用户设计,没有注册、没有多账号,一个安装只给你自己用。
🖼️
【截图:Talorys 聊天界面】

二、它是怎么工作的(30 秒看懂)

安装器会在你的 Cloudflare 账号里创建这几样东西:

  • Cloudflare Pages:放网页界面,你访问的就是这个 xxx.pages.dev 网址;
  • 一个私有 Worker:后端 API,没有公开网址,只能通过 Pages 内部调用;
  • Durable Object(SQLite):存你所有的数据(聊天、记忆、任务、笔记、提醒);
  • Workers AI:默认模型 @cf/zai-org/glm-4.7-flash,负责聊天。

Talorys 不会开通 R2、D1、KV 等其他服务,也不会自动开启任何付费功能。

三、准备工作

1. 安装 Node.js 22 或更高版本(必须)

这是新手最容易卡住的第一步。实测用 Node 20 运行安装器,会直接报错退出:

■  Node.js 22.0 or newer is required (found 20.19.2).
│
●  Install the current LTS from https://nodejs.org and try again.
│
└  Setup did not finish. No data was deleted.

先检查你的版本:

node -v

如果显示的不是 v22 或更高,按下面的方法装。

macOS / Linux(推荐用 nvm):

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
# 关掉终端再重新打开,然后:
nvm install 22
nvm use 22
node -v

Windows: 打开 https://nodejs.org ,下载 LTS 版本(22 或更高)的安装包,一路“下一步”装完,重新打开 PowerShell,再运行 node -v 确认。

⚠️
如果用 nvm 时看到 “nvm is not compatible with the NPM_CONFIG_PREFIX environment variable”,先执行 unset NPM_CONFIG_PREFIX 再运行 nvm 命令(这是本次实测真实遇到的)。
2. 注册一个 Cloudflare 账号

打开 https://dash.cloudflare.com/sign-up ,用邮箱注册并完成邮箱验证。免费计划就够用,不需要绑卡。

3. 选择登录方式:浏览器授权 或 API Token

安装器支持两种方式连上你的 Cloudflare 账号:

  • 方式 A:浏览器授权(最简单)——在你自己的电脑上运行安装器,它会自动打开 Cloudflare 授权页,点“允许”就行,不用建 Token。
  • 方式 B:API Token——如果你是在云服务器、SSH 远程终端、Docker 容器里运行,必须用这种方式。
⚠️
为什么远程服务器不能用方式 A?实测安装器会打开一个授权链接,授权完成后 Cloudflare 要跳回 http://localhost:8976/oauth/callback。这个 localhost 指的是“运行安装器的那台机器”,你在自己电脑浏览器里点授权,是跳不回远程服务器的。所以远程环境请直接用 API Token。
4. 创建 API Token(方式 B 才需要)

按 Cloudflare 官方文档的步骤操作:

  1. 登录 Cloudflare 控制台 https://dash.cloudflare.com 。
  2. 点右上角头像 → My Profile(我的个人资料) → 左侧 API Tokens。
  3. 点 Create Token(创建令牌)。
  4. 拉到最下面,在 Custom token(自定义令牌) 那一行点 Get started(开始使用)。
  5. Token name 随便起,比如 talorys-install。
  6. 在 Permissions(权限) 里逐行添加下面这些权限(点 “+ Add more” 加新行):
    • Account → Workers Scripts → Edit
    • Account → Cloudflare Pages → Edit
    • Account → Workers AI → Read
    • Account → Account Settings → Read
    • User → User Details → Read(可选,安装时会显示你的邮箱)
  7. Account Resources(账户资源) 选 Include → 你的账号(只授权给这一个账号更安全)。
  8. 其他选项(IP 限制、有效期)可以不填,点 Continue to summary(继续以显示摘要)。
  9. 核对权限无误后,点 Create Token(创建令牌)。
  10. 立刻复制 Token 并保存好——它只显示这一次,关掉页面就看不到了。
Image in a image block
自定义 Token 的权限配置:5 行权限 + Account Resources 选中自己的账号
Image in a image block
点 Continue to summary 后的摘要页:核对 4 个账号级权限 + User Details:Read,再点 Create Token
🖼️
【截图:Token 创建成功页(打码后)】

可以用官方提供的命令验证 Token 是否有效(把 你的Token 换成刚复制的值):

curl "https://api.cloudflare.com/client/v4/user/tokens/verify" \
  --header "Authorization: Bearer 你的Token"

看到 "This API Token is valid and active" 就说明 Token 可用。

⚠️
Token 等同于你账号的钥匙:不要发到群里、不要截图不打码、不要提交到 GitHub。用完可以在 API Tokens 页面删除或设置过期时间。Talorys 从来不需要 Global API Key,请不要用它。
5. 想好一个“主人密码”

Talorys 没有注册功能,安装时设置的密码就是你以后登录的唯一密码。要求:至少 10 位并混合大小写/数字/符号,或者 16 位以上;不能包含常见单词。密码只会在本机做哈希后存到 Cloudflare,明文不会上传。

四、一键安装

方式 A:在自己电脑上,用浏览器授权

打开终端(Windows 用 PowerShell),进到一个你想存放安装文件的目录,运行:

mkdir my-ai && cd my-ai
npx create-talorys@latest
方式 B:用 API Token(云服务器 / SSH / 容器)

macOS / Linux:

mkdir my-ai && cd my-ai
export CLOUDFLARE_API_TOKEN="你的Token"
npx create-talorys@latest

Windows PowerShell:

mkdir my-ai; cd my-ai
$env:CLOUDFLARE_API_TOKEN="你的Token"
npx create-talorys@latest

如果你的 Cloudflare 下有多个账号,可以加 --account-id 你的账号ID 直接指定(账号 ID 在控制台首页右侧或 Workers & Pages 页面能看到)。

方式 C:全自动(不弹任何提问,本文实测用的就是这种)

把 Token 和主人密码都放进环境变量,加 --yes 跳过所有提问:

mkdir my-ai && cd my-ai
export CLOUDFLARE_API_TOKEN="你的Token"
export TALORYS_OWNER_PASSWORD="你的主人密码"
npx create-talorys@latest --yes --account-id 你的账号ID
⚠️
用 export 设密码会留在当前终端里,装完建议关掉这个终端窗口;也不要把这几行连同真实密码存进脚本或发给别人。
实测:一次成功部署的完整输出

下面是本文实测(方式 C)成功部署时终端的真实输出,从敲回车到完成约 28 秒(邮箱、资源 ID 已打码):

┌  ◆ Welcome to Talorys
│
│  Your personal AI agent, powered by your Cloudflare account.
✓ System requirements OK (Node 22.23.4, Talorys 0.1.7)
✓ Cloudflare CLI detected (bundled Wrangler 4.149.0; also found wrangler 4.149.0)
✓ Cloudflare authentication verified (你的邮箱)
│
◆  Using Cloudflare account 你的邮箱's Account
✓ Resource names reserved (xxxxxxxx)
✓ Creating personal agent
✓ Workers AI configured (@cf/zai-org/glm-4.7-flash)
✓ Agent backend deployed (private Worker + SQLite Durable Object)
✓ Authentication configured (password hashed locally; secrets stored as Cloudflare secrets)
✓ Cloudflare Pages deployed (https://talorys-xxxxxxxx-web.pages.dev)
  Waiting for Cloudflare to propagate the deployment (attempt 1)…
✓ Frontend and backend connected; deployment healthy
│
◇  Talorys is ready ──────────────────────────────
│  Talorys is ready!
│  URL:
│  https://talorys-xxxxxxxx-web.pages.dev
│  Owner: Single-user mode
│  AI Provider: Cloudflare Workers AI
│  Storage: Cloudflare Durable Objects
│  Default mode: Free
│  Project directory: /你的目录/my-ai/talorys
└  Open your agent and start chatting.
安装器会依次做什么

安装器自带 Wrangler(Cloudflare 的命令行工具),你不需要另外安装。之后它会按官方文档的流程:

  1. 检查登录:没登录就打开浏览器授权(方式 A),或使用你设置的 Token(方式 B);
  2. 选择账号、给助手起个名字;
  3. 让你输入主人密码(输入时不显示,属正常现象);
  4. 自动生成会话密钥、推送密钥和资源名(形如 talorys-<id>-agent、talorys-<id>-web);
  5. 部署私有 Worker → 写入密钥 → 创建并部署 Pages;
  6. 自动检查线上部署是否正常(不会调用 AI,不消耗额度;实测第 1 次等待传播后就通过了);
  7. 最后打印你的专属网址 https://xxxx.pages.dev。
🖼️
【截图:安装完成,终端打印 pages.dev 网址】

安装完成后,当前目录会多一个 talorys/ 文件夹,里面的 talorys.json 记录了安装信息(不含任何密码/密钥)。请保留这个文件夹,以后升级、重置密码都要用。

💡
安装中途断了(网络掉线、关了终端)?在同一个目录再运行一次 npx create-talorys@latest 就行。它会接着上次的进度继续,不会重复创建资源,也不会删除任何数据。

五、常见坑 & FAQ

坑 1:Node 版本太低

报错 Node.js 22.0 or newer is required (found 20.x)。按第三节装 Node 22,并确认 node -v 输出 v22 以上。用 nvm 的同学注意:新开的终端可能又回到旧版本,执行 nvm alias default 22 设为默认。

坑 2:换了个终端,Node 又变回旧版本

实测踩到:在一个终端里 nvm use 22 装好了,换到新终端再运行,安装器又报 found 20.19.2。nvm 切换版本只对当前终端有效。解决:运行 nvm alias default 22,或者每次开新终端先 nvm use 22,并用 node -v 确认。

坑 3:提示 “Not authenticated with Cloudflare”

实测在非交互环境(比如脚本、CI、没有终端的远程执行)且没设置 Token 时,会直接报:

✓ Not signed in to Cloudflare yet
│
■  Not authenticated with Cloudflare.
│
●  Run interactively to sign in through the browser, or set CLOUDFLARE_API_TOKEN.
│
└  Setup did not finish. No data was deleted.

解决:在自己电脑的终端里直接运行(会弹浏览器授权),或者按第三节创建 Token 并 export CLOUDFLARE_API_TOKEN=... 后再运行。

坑 4:浏览器授权页打不开 / 授权后卡住

官方说明:把终端里打印的授权链接复制到浏览器打开即可。但如果你是在远程服务器上运行,授权后要跳回服务器的 localhost:8976,基本不会成功——请改用 API Token。

坑 5:提示 “…lacks a required permission”

Token 权限不全。回到 API Tokens 页面编辑 Token,对照第三节的 5 行权限补齐(Workers Scripts:Edit、Cloudflare Pages:Edit、Workers AI:Read、Account Settings:Read),并确认 Account Resources 包含了你要部署的那个账号。

坑 6:权限明明配齐了,还是报 “lacks a required permission”(实测踩到)

本文第一次真实部署时,Token 权限完全正确,安装器却在 “Reserving resource names” 这一步失败(运行 4 秒就退出了):

… Reserving resource names
✗ Reserving resource names
│
■  Listing Pages projects failed: your Cloudflare login lacks a required permission.
│
◇  Details
│  ✘ [ERROR] A permission error occurred while accessing the file system.
│    Affected path: /node_modules/.cache/wrangler
│    This is typically caused by:
│      - Insufficient file or directory permissions
│      - Files or directories being locked by another process
│      - Antivirus or security software blocking access
│    Please check the file permissions and try again.
│
●  Talorys needs Workers Scripts:Edit, Pages:Edit, Workers AI:Read and Account Settings:Read. Ask an account admin, or choose another account.
│
└  Setup did not finish. No data was deleted.

看 Details 里的真正原因:不是 Cloudflare 权限问题,而是本机“文件夹权限”问题。Wrangler 会往离当前目录最近的 node_modules 文件夹里写缓存;如果上层目录(比如根目录 / 或用户目录)里恰好有一个你没写权限的 node_modules,就会报这个错,而安装器把它误报成了 Token 权限不足。

解决方法(二选一):

  1. 给 Wrangler 指定一个自己能写的缓存目录,再重新运行(实测这样就成功了):
export WRANGLER_CACHE_DIR="$PWD/.wrangler-cache"
npx create-talorys@latest
  1. 或者换一个上层目录里没有 node_modules 的位置(比如新建的 ~/my-ai)来安装。
💡
经验:安装器报错时,先看 Details 方框里的原文,它往往比最后那句提示更准确。失败不会留下半成品,修好后在同一目录重跑即可。
坑 7:提示 “Multiple Cloudflare accounts are available”

你的登录下有多个账号。加参数指定:npx create-talorys@latest --account-id 你的账号ID。

坑 8:提示 “The deployment did not pass its health checks yet”

新建的 pages.dev 网站需要几分钟配置 DNS 和证书。等 3~5 分钟,在同一目录再运行一次安装命令即可,不会重复创建。

坑 9:提示 “…already exists and is not a Talorys installation”

当前目录下已经有一个不相关的 talorys 文件夹,安装器为了安全拒绝覆盖。换个空目录运行,或用 --dir 新目录名 指定。

坑 10:提醒时间不对

时区默认取“运行安装器那台机器”的时区(实测在东八区机器上安装,Settings 里的时区自动就是 Asia/Shanghai)。如果你在海外服务器(通常是 UTC)上安装,提醒会差好几个小时。登录后到 Settings → General → Timezone 改成 Asia/Shanghai 即可,已有的提醒会自动按新时区重新排期。

坑 11:密码输错太多次被锁

提示 “Too many failed attempts” 时,等 15 分钟;或者在安装目录运行 npx create-talorys@latest reset-password 重设密码(会让所有设备退出登录)。

坑 12:不知道哪里出了问题

运行自检命令,它会自动检查常见问题:

npx create-talorys@latest doctor

六、免费额度说明(重要)

Talorys 本身免费,用的是 Cloudflare 免费计划,但不是无限免费:

  • Workers AI 每天免费 10,000 Neurons(Cloudflare 的 AI 计量单位),每天 00:00 UTC(北京时间早上 8 点)重置。免费计划用完就停,不会扣钱。
  • 默认模型 GLM-4.7-Flash 的官方计价是:每百万输入 token 约 5,500 Neurons、每百万输出 token 约 36,400 Neurons。
  • 实测数据:3 轮短对话(中文自我介绍、英文问答、设一个提醒)一共触发 4 次 AI 调用,约 16,200 个输入 token、269 个输出 token,Talorys 的 Usage 面板估算约 99 Neurons。每次调用光系统提示和工具说明就有约 4,000 个输入 token,所以按这个水平粗算,每天免费额度大约够 300 轮左右的短对话;对话越长、工具调用越多,能用的轮数越少(这是 Talorys 的本地估算,以 Cloudflare 控制台的 Workers AI 用量为准)。
  • 额度用完时,聊天会提示 “Your Cloudflare account has used its Workers AI allocation for today”,第二天自动恢复;任务、笔记、提醒不受影响。
  • Pages、Workers、Durable Objects 的免费计划也有请求数等账号级配额,个人自用一般够。
⚠️
如果你的 Cloudflare 账号已经升级到 Workers 付费计划(Workers Paid),超出免费额度的 AI 用量会按 $0.011 / 1,000 Neurons 计费。想完全不花钱,就保持免费计划。

Talorys 自带“刹车”,在 Settings → AI 里可以调:最大输出长度、上下文长度、每次最多工具调用次数、每天最多 AI 请求次数等。Usage 面板能看到今天和最近 7 天的估算用量(这是 Talorys 的本地估算,不是 Cloudflare 账单)。

七、国内访问:建议绑定自己的域名

*.pages.dev 在中国大陆的访问不太稳定,可能时好时坏或打不开。建议给它绑定一个自己的域名(子域名就行,比如 ai.你的域名.com)。按 Cloudflare 官方文档操作:

  1. 打开 Cloudflare 控制台 → Workers & Pages。
  2. 点进 Talorys 的 Pages 项目(名字形如 talorys-xxxx-web)→ Custom domains(自定义域)。
  3. 点 Set up a domain(设置域),输入你的域名,例如 ai.example.com,点 Continue。
  4. 如果你的域名已经托管在 Cloudflare:确认后 DNS 记录会自动添加。
  5. 如果域名在别的服务商(如阿里云、腾讯云 DNSPod):去那边添加一条 CNAME 记录——名称填 ai,值填你的 xxxx.pages.dev。
  6. 等待状态变为 Active(一般几分钟到几十分钟),证书会自动签发。
🖼️
【截图:Pages 项目 Custom domains 设置页】
⚠️
一定要先在 Pages 的 Custom domains 里添加域名,再去配 CNAME。只配 CNAME 不在 Pages 里添加,会出现 522 错误。另外,如果域名设置了 CAA 记录,要允许 Cloudflare 使用的证书机构签发证书。
💡
绑定自定义域名能改善访问,但不保证在所有地区、所有网络下都稳定。只想尽快用起来的话,也可以先用 pages.dev 试试。

八、装好之后怎么用

1. 登录

打开安装器打印的网址(或你的自定义域名),输入主人密码。手机、电脑都能登录同一个账号,在 Settings → Security 里可以管理已登录的设备。实测:密码输错会提示 “Incorrect password.”,输对后直接进入聊天界面;没登录时所有数据接口都拒绝访问。

🖼️
【截图:Talorys 登录页】
2. 先做这三个设置
  • Settings → General → Timezone:改成 Asia/Shanghai(或你所在时区),保证提醒准时。
  • Settings → General:打开推送通知。iPhone/iPad 需要先在 Safari 里“添加到主屏幕”,再从主屏幕打开才能开推送。
  • Settings → AI:按需调整每日 AI 请求上限,避免把免费额度一次用光。
3. 试试这些对话

界面是英文,但聊天可以直接用中文。实测(真实 Workers AI,部署在免费账号上):

  • 中文提问“请用中文简单介绍一下你能帮我做什么?”:0.7 秒开始出字,约 3.9 秒答完,用中文分点列出任务、笔记、记忆、提醒、项目等功能,格式清楚。
  • 英文提问“what's a good way to plan a productive week?”:0.4 秒出字,1.4 秒答完,两句话回答切题。
  • 中文说“明天早上9点提醒我给妈妈打电话”:约 1.8 秒,AI 自动调用了“创建提醒”工具,Automations 里多了一条明天 09:00 的提醒“给妈妈打电话”。回复里的中文有点小别扭(“明天早上9点给你打电话给妈妈”),但提醒本身时间、内容都正确。

可以试试这些说法:

  • “帮我加一个任务:明天下午整理报销单”
  • “5 分钟后提醒我喝水”
  • “记住:我对花生过敏”
  • “帮我规划下个月上线 App 的任务”——它会生成一张任务计划卡片,你确认后才会真正创建。
4. 主要页面
  • Chat:聊天,能看到 AI 调用了哪些工具;
  • Tasks / Notes / Projects:任务、笔记、项目管理;
  • Memory:AI 记住的关于你的信息,可编辑、可删除;
  • Automations:所有提醒和定时任务;
  • Settings:时区、AI 限额、安全、隐私备份等。
5. 备份、升级和维护
  • 备份:Settings → Privacy → Download backup,会下载 talorys-backup.json。
  • 升级到新版本(数据不会丢):
cd my-ai
npx create-talorys@latest update
  • 查看状态:npx create-talorys@latest status
  • 忘记密码:npx create-talorys@latest reset-password

以上命令都要在安装时的目录(有 talorys/ 文件夹的地方)里运行。

九、不想上云,先在本地体验?

如果你只是想先看看界面长什么样,可以在本地跑开发模式,不需要 Cloudflare 账号(AI 是模拟的,只认几种英文指令):

git clone https://github.com/rociiu/talorys.git
cd talorys
npm install
npm run dev

启动后浏览器打开 http://localhost:5173 ,默认密码是 talorys-dev-password。本次实测:npm install 约 8 秒完成,npm run dev 约半分钟内三个服务全部就绪,健康检查返回正常,登录、建任务、设提醒都能跑通。

十、总结

Talorys 适合想要一个“数据完全在自己手里”的轻量 AI 助手的人:一条命令部署、零服务器成本、AI 额度用完也不影响记事和提醒。新手只要记住四件事:Node 必须 22+、远程服务器用 API Token 并配齐权限、报错先看 Details 里的原文、国内访问建议绑定自定义域名。

项目地址:https://github.com/rociiu/talorys