Folo 桌面版 v1.2(v1.2.2)深度解读:BYOK 自带密钥、AI Memory 与 AI 时间线排序实战指南
本文基于 apps/desktop/changelog/1.2.2.md 展开。作为一款 AI RSS 阅读器,Folo(Folo)在 v1.2 版本中围绕"把 AI 主动权交还给读者"做了集中升级:新增BYOK(自带密钥)让你自由选择 AI 服务商、开放AI Memory 修订与更自然的AI Summary、带来按阅读偏好自排序的AI Timeline Sort(Beta),并同步优化了划词分享、订阅方案、免登录浏览与新人引导。读完本文,你将掌握 v1.2 每一个核心特性的使用场景、配置入口与底层设置结构,可直接对照自己的阅读习惯逐项启用。
版本总览:v1.2 改了什么
v1.2 的更新日志将变更分为三大板块,本文后续各节将逐一展开:
| 板块 | 内容 | 对应章节 |
|---|---|---|
| Shiny new things(新亮点) | AI 相关(BYOK / Memory / Summary / Timeline Sort)、UI 设计系统、Basic Plan 订阅、划词分享与 Ask AI | 第 2~7 节 |
| Improvements(体验改进) | RSSHub 订阅标识、免登录浏览推荐、引导流程重设计、条目 AI 标签 | 第 8 节 |
| No longer broken(问题修复) | 多项稳定性与可靠性 Bug 修复 | 第 9 节 |
整体来看,v1.2 是"AI 阅读工作流"的一次成型:读者既能通过 BYOK 摆脱对单一服务商的依赖,又能借助 Memory 与 Timeline Sort 让时间线"越读越懂你"。
BYOK:自由选择 AI 服务商并自带密钥
更新日志:AddedBYOK (Bring Your Own Key)support — choose your own AI provider freely.
BYOK 是 v1.2 中 AI 能力最重要的一项开放:你不必局限于 Folo 内置的 AI 服务,而是可以把自己的 API Key 与偏好服务商接入进来,让总结、翻译、AI 对话等请求发往你指定的提供方。
设置结构:一个开关 + 一份提供方清单
在桌面版渲染层的设置数据模型中,BYOK 是 AI 设置对象AISettings的一个字段。类型定义见 packages/internal/shared/src/settings/interface.ts:
export type ByokProviderName = "openai" | "google" | "vercel-ai-gateway" | "openrouter" export type UserByokProviderConfig = { provider: ByokProviderName baseURL?: string | null // 兼容网关/代理时可自定义 apiKey?: string | null // 你的 API Key headers?: Record<string, string> // 附加请求头 } export type UserByokSettings = { enabled: boolean providers: UserByokProviderConfig[] }而对应的默认值位于 packages/internal/shared/src/settings/defaults.ts:enabled默认为false、providers为空数组——即该功能默认关闭,需要你在设置中主动开启。
桌面端设置面板实际支持的可选服务商定义在 apps/desktop/layer/renderer/src/modules/settings/tabs/ai/byok/constants.ts:
内部值value | 界面显示名 |
|---|---|
openai | OpenAI |
google | |
vercel-ai-gateway | Vercel AI Gateway |
openrouter | OpenRouter |
配置入口与操作流程
桌面端入口为设置 → AI → BYOK(Bring Your Own Key)区块,对应组件 ByokSection.tsx:
- 打开 BYOK 总开关(
Switch组件,写回setAISetting("byok", { ...byok, enabled })),界面随即展开"Providers(提供方)"管理区。 - 点击Add新增提供方,会弹出配置弹窗 ByokProviderModalContent.tsx。
- 在弹窗中依次填写:
- Provider:从尚未配置过的服务商中选择(同一服务商不会重复出现在候选列表中);
- Base URL:可留空使用官方默认端点,也可填网关/代理地址(如 Vercel AI Gateway 转发地址);
- API Key:该服务商的密钥,输入框以密码形式展示。
- 保存后提供方以卡片形式展示在列表中(
ByokProviderItem),支持再次编辑与删除(删除需二次确认)。 - 已配置且总开关开启后,该配置即随 AI 设置持久化(经由 atoms/settings/ai.ts 的
createSettingAtom("ai", ...)机制统一读写与初始化)。
实现提示:从类型结构看,
headers字段的存在意味着 BYOK 同样面向自定义网关或需要鉴权头的自建端点,是"自由选择提供方"之外的又一层开放能力。
AI Memory 升级:过往记忆可随时修订
更新日志:ImprovedAI Memory: you can now update or refine past memories whenever you need.
AI Memory 是 Folo 让 AI 在对话与总结中"记住你"的机制。v1.2 之前记忆主要以一次性沉淀为主,升级后你可以在任何需要的时候回看、更新甚至精修历史记忆,例如修正过时的偏好、补充新的信息或删除不再准确的记录,从而让 AI 后续回答与摘要更贴合真实处境。这一能力的价值在于:记忆不是静态存档,而是一份可以持续维护的"个人上下文"。
AI Summary 语气调整:更自然、更个人化
更新日志:Reduced the "guiding tone" inAI Summaryso summaries feel more natural and personal.
Folo 的长文自动摘要此前偏向"引导式"口吻(类似"本文介绍了……,通过……帮助你……"),v1.2 系统性地降低了这种腔调,让摘要更接近自然叙述、更贴近个人口吻。也就是说,摘要输出从"官方导语"转向"替你总结"的体验——适合在大量未读中快速找回重点。若你对摘要风格有更细的要求,还可以结合设置中的Personalize Prompt(个性化提示词,对应 PersonalizePromptSection.tsx)进一步定制 AI 的表达偏好。
AI Timeline Sort(Beta):时间线按阅读偏好自动重排
更新日志:IntroducedAI Timeline Sort (Beta): your timeline can now rearrange itself based on your reading preferences.
"时间线排序"是 v1.2 AI 能力的又一个 Beta 亮点:默认情况下时间线按时间先后排列,而启用 AI 排序后,它可以根据你的阅读偏好动态调整条目先后,让更可能感兴趣的内容优先呈现。从设置实现看,这一功能与"时间线提示词"(aiTimelinePrompt)强相关——在 AISettings 中可以看到与personalizePrompt并列的aiTimelinePrompt字段,它正是喂给 AI 排序逻辑的偏好指令。
如何配置排序偏好
设置入口为设置 → AI → Timeline Prompt,对应组件 TimelinePromptSection.tsx:
- 在文本框中用自然语言描述你想优先看到的内容(例如"优先推送 AI、开源相关的深度文章,少展示纯教程重复内容");
- 提示词上限为500 个字符,输入框右下角实时显示字数,超过后保存按钮会被禁用并出现红色错误提示;
- 修改后底部会出现浮动的 "Unsaved changes(未保存修改)" 胶囊按钮,点击Save才会把新提示词写回
aiTimelinePrompt,体验上避免了逐字触发的频繁保存。
划词增强:下划线分享与 Ask AI
更新日志:Addedunderline sharingandAsk AIdirectly from selected text to make reading actions smoother.
在阅读正文时选中任意文字,Folo 会弹出划词工具条,提供两项新增动作,对应源码位于 TextSelectionToolbar.tsx:
- 分享(share):点击后基于当前选中的文本生成分享内容。从源码可见它调用
handleShare并打开SharePosterModal(SharePosterModal.tsx),以selectedText与entryId为入参渲染可分享的海报卡片——即"下划线分享"所指向的段落级引用分享,方便把一篇长文里最精彩的一句独立分享出去; - Ask AI(询问 AI):通过
onAskAI回调把当前选区交给 AI 面板,直接针对这段文字提问(如追问背景、翻译或要求解释),无需再手动复制粘贴到 AI 对话框。
这两项能力把"读到哪里问到哪里"落到实操:圈选即操作,阅读动作的摩擦被进一步降低。
订阅方案:新增 Basic Plan(非 AI 版)
更新日志:Added a newBasic Plan (non-AI version)for users who prefer a lighter subscription option.
v1.2 在既有订阅体系上新增了Basic Plan(非 AI 版本)。它面向更看重轻量订阅、不需要全套 AI 能力的用户,把"订阅"与"AI 能力包"解耦:基础需求(订阅源管理、时间线阅读等)用更轻的方案满足,而 AI 相关权益按需升级。对只需要一款纯粹 RSS 阅读器的人来说,这是一条更经济的路径;对重度 AI 用户,原有高阶方案仍覆盖完整 AI 特性。订阅相关界面位于设置内的 Plan 标签页(apps/desktop/layer/renderer/src/modules/settings/tabs/plan.tsx)。
体验改进:RSSHub、免登录浏览与 AI 标签
RSSHub 订阅带明确标识
Feed 管理方面,v1.2 让RSSHub 订阅拥有清晰标识,方便在订阅列表中一眼区分来源类型。桌面端对 RSSHub 有专门的错误提示组件 RSSHubError.tsx 与独立的增删改弹窗(apps/desktop/layer/renderer/src/modules/rsshub/),订阅管理在设置 → Feeds(feeds.tsx)与数据控制(data-control.tsx)中集中处理。
免登录浏览推荐内容
Web 端(桌面 Web 层 / landing)现在不登录也能浏览推荐内容,先逛再决定是否注册,显著降低新用户的尝试门槛。这意味着发现页的推荐源(对应apps/desktop/layer/renderer/src/modules/discover/下的 Discover 系列模块)向访客开放了只读浏览能力。
引导流程重设计
Onboarding(首次引导)流程被整体重做,目标更平滑、更直观——包括初始兴趣选择、订阅源导入与 AI 能力说明等步骤的衔接优化,让新用户从注册到看到第一条时间线之间没有断层。
条目自动生成 AI 标签
Entries(条目)现在会附带AI 生成的标签,用于分类与回溯。这意味着你的未读流会自动出现语义分类标记,配合分组/检索能力,可以按主题快速筛出想回看的内容,而不是在瀑布流里逐条翻找。
UI 设计系统刷新与稳定性修复
- UI:更新日志提到多个 UI 组件基于改进后的设计系统做了打磨,观感更清爽、一致性更强——属于整个界面层"隐形升级",不影响操作路径但会直接改变日常使用的观感。
- No longer broken:本次同时修复了一批 Bug,目的是让整体更稳定、可靠。对 Bug 清单的具体条目,更新日志未逐条列出;可结合桌面端发布说明目录继续关注后续版本的逐项记录(apps/desktop/changelog/)。
小结与升级建议
v1.2 把 Folo 的 AI 能力从"内置黑盒"推向"可配置、可记忆、可排序"的开放形态:
- 想摆脱服务商锁定、或已有其他 AI Key?优先开启BYOK(设置 → AI),从 OpenAI / Google / Vercel AI Gateway / OpenRouter 中挑选并填入密钥;
- 想让时间线按口味排布?在Timeline Prompt用 500 字以内描述偏好,体验 AI Timeline Sort(Beta);
- 高频精读场景下,善用划词 Ask AI与下划线分享;
- 不需要 AI 的轻量用户,可评估新增的Basic Plan。
以上全部特性均以 v1.2.2 更新日志(1.2.2.md)为准,设置结构与组件路径已在本仓库源码中验证。更新到最新桌面版后,即可在设置面板中逐项体验。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考