本文档由英文原版机器翻译而成。如果翻译版本与英文原版之间存在任何冲突,请以英文原版为准。 阅读英文原版
版本 0.9.720 (2026年5月1日)
品牌
- 通用:PebbleFlow 现已更名为 Caiioo:产品已重命名为 Caiioo —— 同样的标志性动物,同样的应用程序。您将在侧边栏、设置、网站、macOS 宿主应用菜单和 Safari 宿主应用中看到新名称。现有数据、账户、登录状态和同步保持不变 —— 仅显示名称发生变更。营销网站目前仍位于 pebbleflow.ai 并向前兼容显示新品牌;规范的 caiioo.ai 路由将在后续版本中推出。
新功能
- 通用:新用户默认开启简单模式 (Simple Mode):首次安装运行现在将进入简单模式 —— 这是一个更简洁的编辑器,隐藏了每条消息的 token 和成本详情、无损压缩下拉菜单以及标签页上下文指示器。模型选择器仍然可见,因为选择模型是一项核心操作。现有用户保留其原有的简单模式设置。编辑器中新增的眼睛图标切换开关可一键显示或隐藏完整详情。
- 通用:账户注销:您现在可以从网站的 Account 页面注销您的 Caiioo 账户(根据 Apple 的账户注销要求,iOS 应用中也提供了该链接)。注销将删除您的个人资料、登录凭据、AI 积分余额以及已配置 OpenRouter 密钥的加密副本;根据法律要求,将保留不含账户 ID 的最低限度合规审计日志。新的隐私政策章节详细说明了哪些内容会被删除以及哪些内容会被保留。
- iOS:原生设备端文本转语音 (Kokoro 82M):Kokoro 语音合成现在通过 OnnxRuntime 在 iOS 宿主进程中运行,而非在 WKWebView 内部,这借鉴了 0.9.719 的 e5-embeddings 架构。该模型获得了宿主进程增加的内存配额,而不再与侧边栏 UI 竞争 WebKit 的单进程上限,因此设备端 TTS 在 iPhone 13/14 高负载下不再导致 WebView 崩溃。
改进
- 通用:图像生成器支持慢速流式模型:图像生成工具现在对 OpenRouter 图像模型启用流式传输,修复了在
gpt-5.4-image-2等慢速模型(端到端约 167 秒)上出现的“Network error: Unable to connect to OpenRouter”错误。之前的缓冲路径在实际 JSON 到达前会等待约 1.8 MB 的保活填充字符,导致连接层超时先被触发。 - 通用:免费层级模型选择动态匹配真实模型:之前的
openrouter/free元路由器在 OpenRouter 内部进行路由,无法感知下游模型是否支持工具 (tools) 或视觉 (vision) —— Android 用户发送图片并调用工具时会遇到“No endpoints found that support tool use”。Caiioo 现在自行路由:引导流程、设置和升级弹窗的“使用免费模型”行动点都会选择一个支持工具(及图像输入,如果可用)的真实免费模型,并在达到速率限制或功能错误时自动切换。使用openrouter/free的现有用户将在下次启动时延迟迁移。 - 通用:个人直觉 (Personal Intuition) 在长消息中精准定位上下文:检索查询此前被截取为消息的最后 500 个字符并嵌入为单个向量。在长篇粘贴提问或多话题轮次中,这会导致在实际问题前就被截断,或者将所有内容模糊成一个评分极低的扁平化话题质心。Caiioo 现在会提取核心查询 —— 保留逐字头部,并附加从后续最多 3000 个字符中提取的去重内容 token 包 —— 这样即使您的提示词很长,检索也能保持切题。
- 通用:设置 → “极简设置”切换开关不再翻转自身标题:该开关此前在“极简设置”(开启)和“高级设置”(关闭)之间交替显示标签,导致关闭状态看起来像是勾选后会进入高级模式 —— 与实际效果相反。现在标题保持恒定;描述前缀增加“开启 —— ” / “关闭 —— ”以使当前状态清晰明确。
- 通用:语音模型下载对话框处理不确定进度:下载期间的模型信息卡片在狭窄的侧边栏中可能会溢出;布局现已固定。当服务器未返回 Content-Length 时,进度块将渲染不确定的加载动画,而不是冻结在 0% 的进度条。
- 通用:简单模式显示紧凑统计条而非隐藏所有内容:简单模式此前会隐藏整个会话统计摘要。现在它显示一个精简条 —— 包含上下文窗口环、紧凑的总 token 数(例如“1k”)、成本和剩余积分 —— 且编辑器中的眼睛切换开关可一键展开至完整详情。
- 通用:子代理 (Subagent) 成本正确汇总:每条会话的成本统计此前遗漏了子代理 Perplexity / 网页搜索支出、助手成本、图像/视频/音乐生成成本、PDF OCR 成本以及语音成本。所有类别现在都会汇总到父级的
sub_agent_cost行中。 - 通用:设置 → 工具选择器覆盖隐藏的默认关闭工具:在默认禁用的工具上选择“始终”或“自动”此前会被静默忽略。您的动态工具配置选择现在将覆盖默认设置。
- 通用:本地 Sidecar 在用户界面文案中重命名为“桌面应用”:所有面向用户的“PebbleFlow Relay”(支持本地 stdio MCP 服务器和仅限桌面工具的 Sidecar)引用现在均改为“桌面应用”,这正是用户实际安装的内容。
- 通用:隐私文案精简:删除了法律政策、商店列表、网站隐私页面和应用内指南中冗余的“telemetry”措辞。“无分析 (No analytics)”已涵盖此意;应用收集或不收集的内容没有事实性变化。
- 通用:提供商账户视图标注余额来源:提供商账户面板现在会说明每个余额对应的密钥(您的 BYOK 密钥还是 Caiioo 配置的密钥),因此积分和剩余余额不再会因一眼扫过而被误认。
缺陷修复
- 通用:品牌过渡后的 Apple 登录:由于 OAuth Services ID 仍指向旧的
com.sixcailloux.PebbleFlow.web,新用户的 Apple 登录此前会失败。现已切换至com.sixcailloux.Caiioo.web,使“通过 Apple 登录”在 iOS、macOS 和网页版账户页面恢复正常。 - 通用:需要 OAuth 的 MCP 服务器上的“登录”按钮:安装远程需要 OAuth 的 MCP 服务器(如 Notion)时,即使因需要 OAuth 导致初始连接失败,服务器也会写入存储,但不会注册客户端。随后的“登录”按钮发送的刷新请求会返回原始的“MCP server
not found”错误,而不是打开 OAuth 对话框。现在,当客户端未注册时,刷新操作会回退到全新的 addServer调用,从而显现 OAuth/DCR 形式并实际打开登录对话框。 - 通用:从原生应用提交的错误报告现在记录正确的应用版本:iOS、macOS 和 Android 外壳现在在启动时将安装的应用版本注入 WebView,因此提交的错误报告可以识别其来源版本,而不是留空或显示内置侧边栏的版本。
- Android:更名后的启动崩溃:由于过度急促的 PebbleFlow → Caiioo 重命名,Kotlin 端的 Application 类和 JNI 符号被重命名,但对应的原生导出未重命名,导致应用在启动时因无法解析符号而崩溃。现已撤销重命名;应用可再次正常启动。
- 通用:Google Workspace 重新授权循环:由于存储的 OAuth 连接缺少
refresh_token,用户曾陷入每小时左右需重新授权 Google Workspace 的困境。通过六项关联修复,确保每次授权都能获得刷新令牌并通过云同步保留,使 Google 连接在 1 小时的 access-token TTL 后无需经过授权页面即可存续。 - 通用:从 OpenRouter 的“User not found”错误中恢复:当配置的子密钥对应的底层用户记录已消失但密钥实体仍存在时,OpenRouter 会返回 HTTP 401 “User not found”。Caiioo 此前将其表现为失效的扩展,只能通过注销并重新登录修复。提供商现在通过更换新的配置密钥并重试一次请求来实现自愈。
- 通用:Google Docs
insert_component返回误导性错误:在先前插入的表格后插入组件会显示“Document not found”,因为插入的表格从未绑定到其componentName。现在表格在同一插入阶段会获得一个命名范围,位置解析器支持非默认的tabId,且应用层错误不再被误分类为 404。 - 通用:新发布的 OpenRouter 模型丢失 ZDR 路由:当模型尚未进入 Caiioo 的智能数据库时,合成的回退记录会将其标记为不支持 ZDR,即使仅限 ZDR 的提供商实际上支持它。ZDR 路由现在使用与常规路径相同的提供商列表回退机制。
- 通用:API
/v1/runs在首次调用时忽略附件:当 API 端点针对新会话启动代理时,用户消息上的附件列表会丢失,因为空会话分支仅推送了文本。附件现在可以正确传输。 - 通用:原生应用在模型更改后可能读取旧设置:在内存压力较大的 Android 设备上,切换模型选择器并立即发送消息可能会让代理从磁盘读取到之前的模型,因为 500 毫秒的防抖刷新尚未触发。发送路径现在在启动代理前强制执行状态刷新。
- 通用:测试人员 Bug 分拣 (PF-260429 / PF-260430):五项修复 —— 托管密钥(免费层级)用户现在可以通过 PDF OCR 导入文档而无需输入自己的密钥;macOS 将 Node Sidecar 的时区锁定至宿主,以便在沙盒下正确解析日期;计划任务现在可以在 iOS/macOS/Tauri 外壳上持久化(WebView 存储存根此前会静默丢弃写入);配置工具将一次性和手动计划作为核心选项呈现;工具调用点现在以与代理运行器相同的方式从 OpenRouter 401 自愈中恢复。
- 通用:升级弹窗停止混淆层级订阅与积分/BYOK:“添加积分”此前实际上打开了订阅门户 —— 标签具有误导性。弹窗现在仅专注于层级订阅;此外,根据 Apple §3.1.1 规定,iOS 端隐藏了所有积分购买界面。
- Web:账户注销部分移至账户页面底部:具有破坏性的“注销账户”区块此前渲染在身份卡片与订阅/账单 UI 之间。现在它位于页面最底部,在常见问题解答 (FAQ) 之后。iOS 深度链接至仅限注销视图的行为保持不变。
- iOS:管理方案 (Manage Plan) 现在打开 Apple 的订阅页面:iOS 上的“管理方案”此前对免费、试用、Stripe 和来源不明的用户会回退到网页版账户页面,而 WKWebView 中的 Google OAuth 会在那里失败。现在在 iOS 上点击“管理方案”始终会打开 Apple StoreKit 的
showManageSubscriptions页面。 - iOS:注销账户网页视图折叠为仅限注销页面:当 iOS 的“注销账户”按钮打开网站时,页面现在会隐藏所有账单界面(订阅、方案、积分、Stripe 门户、FAQ),仅显示注销部分,以符合 §3.1.1 规定。
- iOS:ITMS-90208 框架版本验证修复:onnxruntime 框架的 Info.plist 现在在归档时进行修补,以匹配宿主应用的部署目标,从而解决 App Store Connect 因“框架不支持 Info.plist 中指定的最低 OS 版本”而拒绝构建的问题。
- Android:外部链接在 Custom Tab 中打开以支持 Google OAuth:点击如“打开 pebbleflow.ai/account”之类的链接此前会在 Android WebView 内部打开,而 Google 会以
disallowed_useragent(Error 403) 为由拦截 OAuth。外部链接现在通过原生桥接路由至 Google 信任的 Chrome Custom Tab。 - Android:消息下方的复制按钮恢复功能:复制图标此前直接使用
navigator.clipboard.writeText,在 Android WebView 中,当用户激活在异步边界过期时,该操作会静默失效。复制操作现在通过原生剪贴板桥接进行路由。
版本 0.9.719 (2026年4月25日)
安全性
- 通用:protobufjs CVE-2026-41242 已修复 (CVSS 9.8):锁定
protobufjs >= 7.5.5(已解析至 8.0.1),以堵住Root.fromJSON中一个关键的任意代码执行漏洞。Caiioo 并不直接导入protobufjs—— 它是onnxruntime-web的传递依赖 —— 且实际风险较低,因为我们只加载捆绑的模型,而不加载用户提供的架构。尽管如此,由于修复方式简单,我们仍进行了补丁处理。 - 通用:@xmldom/xmldom — 4 个高危 CVE 已修复:锁定
@xmldom/xmldom >= 0.9.10。XML 解析用于 DOCX/XLSX 修订流水线及各种扩展代码路径。 - 服务器:undici — 3 个高危 CVE 已修复:在
cloud/relay中锁定undici >= 7.24.0。仅影响中继服务器的 HTTP 客户端。 - 桌面端:rustls-webpki + quinn-proto — 2 个高危 CVE 已修复:升级了这些 Tauri Rust 依赖项。影响通过 Tauri 外壳运行的 Windows 和 Linux 桌面构建版本。
新功能
- 通用:视频生成 (Pro):通过 OpenRouter 使用 Google Veo 3.1、OpenAI Sora 2 Pro 和 ByteDance Seedance 生成或制作短视频动画。该工具会根据每个模型选择有效的时长和分辨率,轮询直至任务完成,并将结果保存为会话附件。
- 通用:音乐生成 (Pro):通过 OpenRouter 使用 Google 的 Lyria 3 Pro Preview 生成歌曲和乐器片段。输出保存为音频附件,可在线播放。
- 通用:动态视频模型目录:视频生成器在运行时获取当前支持视频的 OpenRouter 模型列表,因此无需更新 Caiioo 即可出现新的供应商和模型。捆绑的快照可确保离线状态下正常工作。
- 通用:动态音乐模型目录:音乐生成功能同上 —— 该工具会在 OpenRouter 发布新音乐模型时自动获取,并具备离线回退机制。
- 通用:Pro 用户的自定义 OAuth:自带身份验证(BYOK)—— 包括 Google Workspace 向导、Microsoft 365 向导以及通用的“添加自定义供应商”流程 —— 现在对设置 → 自定义 OAuth 中的所有 Pro、Platform、Teams 和 Enterprise 用户可见。此前,该选项卡和添加按钮被隐藏在仅限测试者的标志后,导致付费用户无法进行 BYOA 设置。
- 通用:物理 + 结构分析 (Pro):物理模拟工具(抛体运动、碰撞、动能/势能、动量、力、冲量、目标速度)和结构分析(梁载荷、柱失稳、材料特性)现已与其它创意和实用工具一起向 Pro 用户开放。
- 通用:导盲犬 (Seeing-Eye Dog) —— 纯文本 LLM 的视觉回退:DeepSeek V4 Pro、Kimi K2.6、MiMo V2.5 Pro 等纯文本模型以及本地 Ollama 模型现在可以通过配置的廉价视觉模型(默认:Gemini 3.1 Flash Lite)处理图像附件。自动标注在消息构建时触发,并按附件进行缓存,以便后续轮次无需重复付费;专用的
vision({action: "inspect"})工具赋予模型有针对性的后续访问权限。可在设置 → 工具 → 视觉回退模型中选择助手。 - 通用:XLSX 单元格级修订:电子表格 Artifacts 现在支持与 DOCX 相同的修订用户体验。通过
propose_change(editMode: 'xlsx_cell')提出的 AI 建议会生成由cellRef+sheetName锚定的单元格修订;用户在修订模式下的键入编辑会生成单元格级差异;带有待处理更改的单元格会在线渲染<del>旧内容</del><ins>新内容</ins>;现有工具栏的“下一个/上一个/接受/拒绝”功能适用于单元格更改;并发的 AI 和用户编辑将逐单元格合并,若同一单元格冲突则以用户为准。 - 通用:视频和音乐生成器的成本追踪:生成的视频(通过 OpenRouter
/api/v1/videos)和音乐(通过chat-completions)现在像图像生成一样计入会话总额,侧边栏成本下拉菜单中新增了video_gen_cost和music_gen_cost细分行。
改进
- 通用:GPT-5 系列稳定性:OpenAI 的 gpt-5、gpt-5.1、gpt-5.4、gpt-5.4-pro 和 gpt-5.3-codex 在工具密集型智能体对话中不再产生静默的空响应。之前函数工具架构的交互导致 OpenAI 后端在未产生任何输出的情况下终止流;Caiioo 现在按照这些模型要求的格式序列化工具。
- 通用:GPT-5.4+ 长对话行为优化:与 gpt-5.4、gpt-5.4-pro 和 gpt-5.3-codex 的多轮对话不再在长工具调用序列中提前停止 —— OpenAI 用于区分中间评论与最终答案的阶段标记现在可以跨轮次保留。
- 通用:GPT-5.x 推理过程在思考面板中可见:gpt-5、gpt-5.1、gpt-5.4、gpt-5.4-pro 和 gpt-5.3-codex 现在会在思考时将其推理摘要流式传输到聊天内的思考面板中,与 Gemini 的行为一致。此前,尽管 OpenRouter 在流式传输推理文本,这些模型的思考面板仍保持空白。
- 通用:透明恢复瞬时上游故障:当 OpenRouter 将请求路由到在流式传输任何内容前返回瞬时 5xx 错误的上游时,Caiioo 会静默地在不同的上游重试,而不是显示空回复。
- 通用:模型流失败时更清晰的错误提示:供应商端崩溃、内容过滤拒绝以及其他中途流失败现在会显示具体的错误消息,而不是在没有任何解释的情况下对话直接“停止”。
- 通用:生成的视频和音乐在线渲染:生成的视频和音乐现在像生成的图像一样出现在对话中 —— 视频或音频播放器会显示在最终答案上方,并带有一个显示生成模型的小徽章,而不是被收纳在折叠的工具部分内。
- 通用:视频和音乐工具的默认模型选择器:设置 → 工具现在包含视频和音乐生成器的默认模型下拉菜单,与现有的图像生成器选择器一致。智能体默认使用您选择的模型;您仍可以通过在请求中指定不同模型来覆盖此设置。
- 通用:个人直觉 (Personal Intuition) 索引状态显示:个性化设置面板现在显示实时的“已索引:N 个会话 · M 个块 · K 个 Token · 上次索引于 X 分钟前”信息,以便您确认记忆索引器正在工作。上次回填摘要在运行完成后也会保持可见,而不再消失。
- iOS:原生设备端嵌入(更快、内存占用更少):Multilingual-e5-small 推理现在通过 Apple 的
onnxruntime-objc在 iOS 宿主进程中运行,而不是在 WKWebView 内部。这解决了导致 WebView 在模型加载后约 7 秒(登录后崩溃)被杀死的进程内存上限问题。在首次对工具目录进行编码后,后续的工具选择调用将命中每段文本的内存缓存,并在约 10 毫秒内完成,而非约 5 秒。共享流水线重构还防止了个人直觉和设备端工具选择各自加载约 115 MB 的模型副本。 - 通用:个人直觉 + 设备端工具选择共享同一个 e5 流水线:这两个功能此前各自实例化自己的 multilingual-e5-small 加载器(渲染器中每个约 115 MB,总计约 230 MB)。它们现在委托给一个共享流水线,该流水线可对并发加载进行去重,使冷启动成本减半。
错误修复
- 通用:浏览器会话 Cookie 不再泄露到 API 调用中:如果您在浏览器标签页中访问过 openrouter.ai,扩展程序曾无意中将您的 OpenRouter 浏览器会话(Clerk / Stripe / 分析 Cookie)附加到每个 API 调用中。现在 API 调用严格采用 Bearer 身份验证。
- 通用:GPT-5.4 响应不再出现两次:修复了 gpt-5.4、gpt-5.4-pro 和 gpt-5.3-codex 响应连续显示相同文本的错误 —— 最终答案负载曾与已经渲染它的 Token 流一起被累加。
- 通用:模型选择器在重新加载后刷新:模型列表现在会在版本升级时失效,并遵循较短的内存 TTL,因此新发布的 OpenRouter 模型会在重新加载后出现,而不会被隐藏在过时的缓存中。长期运行的 Service Worker 不再保留冻结的目录。
- 通用:生成的媒体短链接可打开播放器:当模型在生成音频/图像/视频后写入类似
[收听](audio-…)的短链接时,点击它现在会打开 slate 播放器,而不会作为损坏的外部 URL 失败。同样的修复也适用于图像和视频链接。 - 通用:以 Markdown 图像嵌入形式生成的媒体渲染损坏:当模型将视频或音频附件写为
而非[视频 1](video-…)时,它会渲染为损坏的<img>而不是打开播放器。现在前导的!会被剥离,以便链接打开 slate 查看器。 - 扩展程序:侧边栏“位置权限被拒绝”死循环:修复了一个回归问题,即无论用户点击什么,每个侧边栏位置请求都返回“位置权限被拒绝。请在浏览器设置中允许位置访问。” 尝试通过离屏文档路由时会立即触发
PERMISSION_DENIED,因为离屏上下文无法显示权限提示,且清单文件中未声明geolocation。侧边栏现在使用之前有效的“内容脚本后接 IP 地理定位”链。 - 通用:个人直觉全量重建后残留过时的索引计数:修复了全量重建回填跳过每轮会话索引更新的问题,导致设置 → 个性化在重建后显示虚高的重建前总数。由全量重建扫描但此前未索引的会话现在对检索也不再不可见。
- iOS:登录后 WKWebView 崩溃循环:针对登录后崩溃进行了三项综合修复。(1) 原生 e5 嵌入现在以 8 个为一组分批运行,并将 ORT 内存池设置为在运行间隙收缩 —— 峰值工作集保持在约 100 MB 以下,而不是飙升至约 3 GB 并触发 iOS 的进程内存清理。(2) 设备端检索器现在在
requestIdleCallback期间预热,而不是在启动时同步预热,因此不再与许可证同步、身份恢复、UI 渲染和云同步初始化竞争。(3) 设备端检索器现在在身份/等级变更时重新配置,因此新安装不再因初始注册时等级未定义而静默回退到云端助手。 - iOS:错误的“路径遍历被拦截” 403 错误:修复了
LocalFileSchemeHandler将每个 404 错误误标为路径遍历尝试的问题,因为NSString.standardizingPath仅对磁盘上存在的文件解析/var→/private/var。指向不存在资源的合法路径(iOS 捆绑包排除*.wasm,以及类似api/active-tab-context的 chrome-extension API 路径)返回了 403 而非 404,破坏了 transformers.js 的 wasm 预取回退。已替换为与 Android 处理程序一致的基于字符串的../ NUL 检查。 - 通用:PDF 嵌入图像导致纯文本模型中断:向纯文本 OpenRouter 模型(DeepSeek V4 Pro、Kimi K2.6 等)发送带有嵌入图像的 PDF 时会触发“未找到支持图像输入的端点” —— 这正是新的“导盲犬”路由旨在消除的警告。PDF 交付路径现在遵循与图像块交付相同的每模型
supportsVision标志,因此纯文本模型接收纯文本 PDF,智能体可以在需要时启动视觉子智能体。 - 通用:广告拦截级别切换未生效:切换广告拦截级别(关闭 / 标准 / 激进)仅更改了持久化值,而实时 DNR 规则 + 静态规则集一直保持生效,直到 Service Worker 恰好重启 —— 因此在切换到“关闭”后,ads.google.com 等网站仍被拦截。存储监听器现在会监视实际写入设置的
globalSharedSettings存储桶,旧有的adBlockerEnabled标志也通过同一存储桶路由。 - 扩展程序:超大图像被静默丢弃:当图像附件超过 API 上限时,扩展程序 Service Worker 没有注册压缩实现(仅服务器端有基于 sharp 的实现)—— 因此
pushImageBlock中的防御机制捕获了异常并完全丢弃了图像。SW 现在通过createImageBitmap探测原始尺寸,并通过现有的离屏文档路由编码,因此扩展程序上下文调用者将获得压缩后的图像,而不是被丢弃的占位符。 - 通用:生成的图像和屏幕截图被供应商拒绝:Anthropic 将 base64 图像限制在 5 MB;其他供应商也有类似限制。来自 FLUX / Gemini / Seedream 的生成图像和大型屏幕截图曾以原始大小传递,产生 4xx 错误并导致整个智能体轮次中止。现在有三层防御:图像生成器在存储前压缩输出;新的
pushImageBlock助手将每个image_url输出通过“压缩或丢弃”路由;屏幕截图重建和实时屏幕截图注入都通过同一个助手。采用保守的 4 MB 上限,适用于每个供应商。
版本 0.9.718 (2026年4月22日)
新功能
- Common: Personal Intuition — 关联性跨线程记忆:Caiioo 会静默记住你之前的谈话内容——涵盖所有对话,而不仅仅是当前这一场。当你聊天时,相关的记忆会浮现;你的智能体可能会直接使用某条记忆,或者仅仅让它为回复增色。就像气味能让你想起某个地方一样。你可以在 Personalization → Personal Intuition 下找到该功能;默认关闭。包含“全量重建(Full-rebuild)”和“增量回填(Incremental backfill)”功能,以便你可以索引现有线程,且私密对话绝不会进入跨线程存储。
- Common: Personal Intuition 备份与恢复:你可以在 Backup & Restore → Personal Intuition 下将完整的记忆语料库快照保存为 JSON 文件,并在以后出现问题或想要将其移动到另一台设备时进行恢复。私密对话绝不包含在内。
- Common: 所有层级默认启用 Instant Tool Chooser:语义化工具选择器现在在每个设备、每个层级(包括免费版)上本地运行。它能在约 10 毫秒内为每次对话轮次挑选出合适的工具,完全在你的设备上完成。Settings → Tools 中的选择器 UI 将选项明确为“Instant Tool Chooser”与“Quick Tasks LLM”(后者使用你在模型选择器中标记了闪电图标的任何模型)。
- iOS / Android: 原生应用中的 Instant Tool Chooser:同样的设备端工具选择器现在已部署在 iOS 和 Android 应用的 WebView 内部,而不仅仅是浏览器扩展和桌面端。
改进
- Common: Slate 沙箱允许 HTTPS 脚本 CDN:HTML slate 伪像现在可以从信誉良好的 HTTPS CDN(jsdelivr, unpkg 等)加载常用的库,如 Chart.js 或 D3。数据获取仍锁定为同源,因此请使用
bind_data将附件数据传输到 slate 中。 - Common: 更清晰的 Personal Intuition 进度显示:回填现在会在设置面板中显示每个线程的进度(例如“47/75 线程 · 2,134 块”),而不是在完成前保持静默。
- Common: 记忆索引后更快的工具选择:索引大型记忆语料库不再会驱逐设备端检索器中的工具目录缓存——下一次工具调用将保持热启动状态,而无需支付重新编码的成本。
错误修复
- Common: 并发子智能体触发错误的层级升级错误:修复了两个并行运行的子智能体可能覆盖彼此活动线程上下文的竞态条件,导致 Pro 限制的操作(update_slate 等)被错误的子智能体拒绝。层级强制执行现在限定在调度调用的特定线程范围内。
- Common: Slate CSV 数据绑定破坏了
forEach:修复了 CSV 绑定数据以不可迭代对象形式进入沙箱的问题——沙箱 JavaScript 内部的data.forEach(...)现在可以按预期工作。
Version 0.9.717 (2026年4月17日)
新功能
- Common: 全应用统一 Pro 层级:Pro 现在是统一的 $9/月订阅,可解锁所有 Caiioo 应用(Chrome、桌面端和移动端),不再按应用类别划分。Platform($14/月)重新定位为“Pro + 基础设施”(本地服务器、API 访问预览、Messaging)。
- Common: 移动端 Pro 层级:提供仅限移动端的 Pro 方案,价格为 $2.99/月,直接在 App Store 和 Play Store 销售。应用内购买本身即为授权凭证——无需单独的许可证。
- Common: 用于人机交互的 Ask-User 工具:智能体现在可以在运行中途暂停,并弹出四向决策对话框(批准、带备注批准、拒绝、带备注拒绝)。您的备注将作为纯英语指导反馈给模型,并覆盖提议的计划——不会触发新的循环,智能体将在原地继续执行。
- Common: 应用内指南搜索:直接从 Document 菜单搜索用户指南。结果将深度链接至 caiioo.ai/guide,并保留现有的重定向流程。
- iOS: 月度/年度付费墙切换:iOS 订阅页面现在允许您在购买前切换月度或年度计费。
- Desktop: Windows 和 Linux 自动更新:Tauri 桌面应用现在启用了更新程序,因此 Windows 和 Linux 版本可以原地接收更新,而无需手动重新安装。
- Web: 指南与博客标签式搜索:营销网站的指南和博客布局现在包含一个带有标签范围切换的搜索栏——标题匹配排名高于正文匹配,且活动标签会自动切换到有结果的分类。
- Web: 专用 Linux 安装页面:安装页面会将 Linux 用户引导至
/install/linux,其中列出了 AppImage、.deb和.rpm选项以及各发行版的安装命令。 - Web: 稳定下载路由:
/download/macos、/download/linux和/download/windows现在是稳定的、由 edge-worker 支持的 URL,始终解析为最新版本——每次发布无需重新构建网站。
改进
- Common: 应用内支持工单:支持请求现在以应用内工单流程作为主要路径,并在出现问题时提供更清晰的额度错误消息,引导您前往正确的位置。
- Common: 更智能的 Google OAuth 重新授权:Google 工具现在会验证 Google 实际授予的范围 (scopes),当 403 错误指示缺少范围时,会触发即时重新授权提示,而不是静默失败。
- Common: Google 写入操作使用 Full Drive 范围:针对 Google Drive 的写入操作现在会请求 full drive 范围,以便对非您创建的文档进行编辑时能够成功,而不会遇到权限错误。
- Common: 图像生成模型描述:图像生成工具会显示每个可用模型的描述,以便更轻松地为任务选择合适的模型。
- Common: 更准确的 Slate Artifact 消息:当工具创建或更新 Slate artifact 时,模型不再声称 artifact “显示在编辑器中”——措辞现在反映了实际发生的情况。
- Common: 更好的标签页动态工具选择:标签页上下文提示现在会发出工具 ID,因此动态工具选择器可以根据哪些工具可用,实际应用基于上下文的选择规则。
- Common: 语音成本归属于会话线程:流式 TTS (ElevenLabs, Resemble) 和 STT (ElevenLabs Scribe) 的使用情况现在作为语音成本汇总到发生该行为的对话中,与现有的单次合成路径保持一致。
- Extension: 登录副标题强调本地智能体:更新了登录界面的简短文案。
错误修复
- Desktop: 恢复 Linux 文件选择器:修复了 Tauri 桌面应用在 Linux 上文件选择器失效的问题。
- Desktop: 版本报告错误:修复了 Tauri 桌面应用在 UI 和遥测中报告错误版本字符串的问题。
- Desktop: 降低 Linux 音频噪音并清晰化错误:抑制了 Linux 上的 PipeWire 日志噪音,显示 OpenRouter 错误而非吞掉错误,恢复了 API 切换读取路径,并修复了错误的平价横幅。
- Common: Gmail 正文提取丢失链接:反转了 Gmail 提取优先级,优先尝试保留链接的 markdown,仅在 markdown 输出为空时回退到纯文本——在通常情况下,电子邮件不再丢失链接。
- Common: 公共 API 设置未持久化:修复了某些设置下公共 API 切换和访问令牌保存失败的问题,并确保这些设置严格保持在本地,而不会同步到云端。
- Common: 归档和重命名感觉迟钝:删除、归档、取消归档和重命名现在会乐观地更新 UI,使列表立即反映更改,而不是等待服务器往返响应。
- Common: 归档删除未同步:修复了归档删除直接应用于存储而绕过协议路径的问题——它们现在像其他线程操作一样在客户端之间传播。
- Common: 议程显示错误的“缺少范围”:修复了提醒/议程组件在您授予 Google Calendar 范围后立即读取过时的工具上下文配置文件的错误,导致在工具正常工作时仍标记缺少范围。UI 现在会读取最新的配置文件,且刷新操作会自动按顺序对任何仍需要的已连接 Google 账户运行增量范围授权流程——无需打开同步对话框查找“授予访问权限”。
- Common: Google 工具调用被拒绝并提示 "Unknown name exclusiveMinimum":修复了 Gemini 拒绝参数架构中使用数值
exclusiveMinimum/exclusiveMaximum边界的工具调用的问题——这些边界现在在发送到 Google 受限的 OpenAPI 子集之前会被移除。 - Common: 无 DCR 的远程 MCP 服务器连接失败:修复了添加不支持动态客户端注册 (DCR) 的远程 MCP 服务器(如 Slack)的问题:客户端现在遵循 RFC 9728 受保护资源元数据,当授权服务器与资源主机不同时遵循
authorization_servers指向 AS 主机,并停止伪造不存在的/register端点。 - Server: 测试层级用户被受限端点拒绝:修复了组织、hub、管理和预配密钥端点拒绝有效层级(来自许可证)高于其身份验证令牌中快照的过时层级的用户的问题。受限端点现在评估有效层级的方式与
/api/auth/me保持一致。 - Extension: 身份同步乒乓循环:修复了扩展程序和中继服务器之间冲突身份在
IDENTITY_SYNC上无限循环的问题。扩展程序现在会对同一个冲突的远程端确认一次,警告必须在一侧退出登录以解决冲突,并在断开连接/匹配/远程采用时重置。 - Common: Gemini Flash TTS 无法选择或配置:修复了 Gemini Flash TTS(语音)端到端不可用的问题——选择它会在关闭设置时还原,且 API 密钥字段似乎不接受输入。该提供商现在是首选 TTS 选项:选择会持久化,API 密钥 + 语音选择器可正确保存,且合成使用 SSE 流式端点,因此音频播放可以在完整话语生成完成前开始。
- iOS: 新线程 UI 未切换:修复了 iOS 应用无法将活动视图切换到新创建线程的问题,并修复了一个可能导致编辑器崩溃的相关
modelName引用错误。 - iOS: 启动时可选存储钩子崩溃:修复了启动期间
storage.primeSettingsCache不可用时导致的 iOS 崩溃——该调用现在已添加保护。 - Common: 定价调整后的层级审计差异:修复了层级审计发现的六处定价和功能不一致问题,使授权门槛、升级提示和功能标志在扩展程序、网站和移动应用中保持一致。
iOS App Store 合规性
- iOS: 引导流程中隐藏外部注册 CTA:引导流程不再显示引导用户离开设备进行账号创建或付费升级的行动号召 (CTA)。
- iOS: 隐藏额度购买 UI:根据 Apple 的 §3.1.1 规则,在 iOS 上隐藏了额度购买界面;订阅将通过 StoreKit 进行。
- iOS: 更新支持和额度错误措辞:/support 页面和额度错误消息在 iOS 上已重新措辞,以符合 Apple 关于外部购买引用的指南。
版本 0.9.716 (2026年4月12日)
新功能
- Common: Gemini 3.1 Flash TTS:由 Google 的 Gemini 3.1 Flash TTS 提供支持的新语音输出选项。包含 30 种预设语音,支持 70 多种语言,并支持
[whispers](耳语)和[sighs](叹息)等内联音频标签,实现更具表现力的合成效果。支持 BYOK(自带 Gemini API 密钥);可在 aistudio.google.com 免费获取。音频带有 SynthID 水印。 - Common: 对话总额包含语音费用:文本转语音和语音转文本的 API 使用费(Gemini, ElevenLabs, Resemble)现在与聊天、图像生成、辅助工具和 OCR 费用一同计入每条线程的成本摘要中 —— 因此您看到的数字即为实际总额。
- Common: SQL 数据库工具:可将 SQLite 数据库附加到对话中并使用 SQL 进行查询。结果可以在 Slate artifact 中渲染为实时仪表盘。
- Common: 日历邀请与 Google Meet:创建日历事件现在会向参与者发送邀请邮件,并可自动添加 Google Meet 视频链接。
- Common: 逐工具提供商路由:通过“设置”将单个工具(图像生成、搜索、PDF OCR 等)路由到特定的提供商,而不再是全部通过默认模型运行。
- Common: 对话分享:支持将对话分享为 Markdown 或纯文本。
- Common: 14 天平台版试用:可从扩展程序 UI 或网站账户页面开启 14 天平台层级(Platform tier)试用。Pro 订阅用户同样适用。
- Common: 模型选择器中的 ZDR 快速过滤:模型选择下拉菜单中新增按钮,可快速过滤出零数据保留(ZDR)模型。
- Common: 简化设置:设置页面现在默认以精简的“简单”视图打开,仅显示核心选项。可随时切换到“高级”模式查看所有内容。
- Common: 免费 Google Gemini 访问:自带 Google AI Studio 密钥即可免费使用 Gemini 2.5 Flash —— Google 的免费层级现已向所有用户开放,无需付费计划。
- Common: Baseten 自托管模型:连接您自己的 Baseten 部署,直接在 Caiioo 中使用自托管模型。
- iOS: WhisperKit 设备端语音转文本:听写功能现在通过 WhisperKit 完全在设备端运行 —— 音频绝不会离开手机。
- Android: 设备端 Whisper STT:通过 whisper.cpp 实现的语音转文本在 Android 上完全在设备端运行,并配有麦克风权限流程。
- Android: GPU 加速的 Moonshine STT:在具备 GPU 能力的 Android 设备上,听写可以运行在 Moonshine 上,实现亚秒级推理。仅限英语;whisper.cpp 仍作为多语言备选方案。
- Web: 账户与 Hub 页面支持 Apple 登录:Apple Sign-In 现已在网站账户和 Hub 页面上线。
改进
- Common: 更好的 PDF 导出:从 Slate 导出 PDF 现在会生成真正的 PDF 文件,而不是打开打印对话框,确保您每次都能获得整洁的文档。
- Common: Google Slides 全文提取:在不指定页码的情况下请求幻灯片文本,现在会返回演示文稿中所有幻灯片的文本。
- Common: 更智能的网络搜索:针对近期 Google 布局的变化,现在能以更好的结构提取 Google 搜索结果,更可靠地捕获标题、摘要和链接。
- Common: 全平台支持 Kokoro 文本转语音:Kokoro 语音选项现在出现在 iOS、macOS 和 Android 上 —— 此前该选项在原生应用中被隐藏。
- Common: 更清晰的额度余额显示:预付费和自带密钥(BYOK)设置的账户余额现在显示您的实际余额,不再使用令人困惑的“额度(Limit)”表述。
- Common: 更高保真度的 PDF 转 Word:PDF→DOCX 导出现在使用 Slate 中专用的文档视图,生成的 Word 文件能更忠实地保留源 PDF 的布局和结构。
- Web: 更简洁的账户和认证页面:在账户和认证页面禁用了 Google Analytics 和 Cookie 同意横幅,以提供更清爽的登录流程。
缺陷修复
- Common: 设置搜索无法跳转:修复了设置搜索下拉菜单和深层链接无法跳转到多个板块(API Access, Private Sync, Backup & Restore, Voice 等)的问题 —— 目标分类曾保持折叠状态导致无法滚动到视图中。
- Common: 子智能体中的 OAuth 提示:修复了由子智能体触发时,OAuth 授权和层级升级提示被静默丢弃的问题,该问题曾导致连接流程在中途断开。
- Common: 引导流程后未保存 Ollama 模型:修复了在引导流程中选择的 Ollama 模型在结束后未持久化保存的问题。
- Common: 频率限制期间 UI 块加载失败:修复了静态 UI 资源与 API 请求一同被频率限制的问题,该问题曾导致刷新前出现白屏或面板缺失。
- Common: Composer 预处理的附件元数据丢失:修复了在发送给模型前,在 Composer 中预处理的文档附件元数据在服务器端丢失的问题。
- Common: 空闲时间计算将参加的活动计为忙碌:修复了议程空闲时间计算将您仅作为参与者的活动标记为忙碌的问题 —— 现在仅计算您自己日历上的活动。
- Common: Google 搜索结果失效:修复了 Google 更改搜索页面布局后,网络搜索返回空结果的问题。
- Desktop: Windows/Linux 登录状态与其他平台不同步:修复了 Tauri 桌面版登录流程与 Chrome/macOS/iOS 存在差异的问题 —— 包括错误的层级检测以及注销后无法重新登录。
- Desktop: 公共 API 阻塞桌面端 UI:修复了启用 Public API 设置时,桌面应用自身的 UI 被 API 认证阻塞的问题。
- Common: Google Docs OAuth 错误被隐藏:修复了 Google Docs 操作在认证过期时静默失败而非显示明确错误的问题。
- Common: 设置面板崩溃:修复了还原已配置的 API 密钥时设置面板崩溃的问题。
- Common: Google Drive 同步导致文档重复:修复了 Google Docs 在每次同步运行时重复创建而非就地更新的问题。
- Common: Google Drive 同步丢失内联代码:修复了将文档同步到 Google Docs 时内联代码格式丢失的问题。
- Common: Gemini 思考过程提取:修复了无法从 Gemini 模型响应中正确捕获思考/推理内容的问题。
- Common: 个人资料切换数据陈旧:修复了在切换个人资料时,有时会显示上一个个人资料的对话直到手动刷新为止的问题。
- Common: 任务调度器“Method Not Found”错误:修复了在某些设置下,计划任务每 60 秒抛出一次错误的问题。
- Common: Google Docs 文本插入换行符问题:修复了文本插入中出现字面量
而非实际换行符的问题。 - Common: 工具上的 Google 账户提示:修复了 Google 工具在 API 调用时有时使用错误 Google 账户的问题。
- Common: 设置与线程导入往返兼容性:修复了设置和线程导出后无法正确重新导入的问题。
- Common: 子智能体 Token 使用量:修复了子智能体的 Token 使用量未计入父对话的问题。
- Common: 重试期间的消息桥接回复:修复了当助手重试响应时消息桥接回复失败的问题。
- Common: Slate 修订线位置:修复了存在 Markdown 时修订线删除位置偏移的问题。
- Common: 浏览器连接在睡眠/唤醒后保持:修复了电脑睡眠或长时间闲置后出现“No browser connected”错误的问题。
- Common: 计划任务在 Service Worker 睡眠后存活:修复了循环任务在长时间闲置后停止的问题。
- macOS: Safari Google 搜索失败:修复了 macOS 上 Safari 扩展程序中 Google 搜索无法工作的问题。
- iOS: 移动端应用访问:修复了 iOS 应用错误地要求付费计划的问题 —— 移动端应用现已向所有用户开放。
Version 0.9.715 (2026年4月3日)
新功能
- Common: Hub 交付系统:第一方工具定义、模式配置和 MCP 目录现在准备从云端 Hub 交付,而非硬编码在安装包中,并具备本地缓存和离线回退功能,为社区发布做准备。
- Common: 浏览器工具单标签页模式:新的针对各模式的浏览器标签页策略,在对话中复用单个标签页进行所有导航,防止在 WhatsApp 等消息密集型工作流中产生标签页堆积。
- Common: API Integration 二进制上传:api_integration 工具现在支持二进制文件上传和通过预签名 URL 直接上传本地文件,不再总是将请求体进行 JSON 字符串化。
- Common: 通过工具管理凭据:通过 api_integration 工具以编程方式保存、列出和删除 API 凭据,此前仅能通过设置 UI 进行操作。
- macOS: 音频输入设备选择:选择用于语音输入的麦克风 —— 列出所有可用音频设备并持久化保存您的选择。
- Android: 低内存下的 OAuth 恢复:Android OAuth 流程现在可以在系统因内存原因杀死应用后,在 Activity 重建时存活,无缝恢复认证会话。
- Common: 三层移动端 CSS 架构:全新的移动端响应式 CSS 系统,包含平台层、布局层和组件层,确保在手机、平板和桌面视口中拥有一致的 UI。
改进
- Extension: 通过标签页进行增量 OAuth:增量权限范围请求现在会打开完整的浏览器标签页而非弹出窗口,解决了需要交互式同意的账户出现的卡死问题。
- Common: MCP 工具 Schema 质量:所有 MCP 工具现在都通过了质量 Lint 测试,验证了完整的 Schema、正确的描述和一致的参数定义。
- Extension: 停止时自动关闭浏览器标签页:由助手打开的浏览器标签页现在会在运行停止时关闭,macOS 上的 OAuth Safari 窗口也会随之关闭。
- Android: 工具链升级:Android 构建升级至 AGP 9.1、Kotlin 2.2.10 和 Gradle 9.3.1。
缺陷修复
- Common: Google Docs 表格定位:修复了当表格位于目标文本之前时,Google Docs 中的更改出现在错误位置的问题。
- Common: 页面内容页脚剥离:修复了页面内容提取时错误地从捕获页面中剥离页脚元素的问题。
- Common: 网页浏览分页:修复了在未指定明确 maxLength 时,第 2 页及以后的分页失效问题。
- Common: 内容脚本回退:修复了当内容脚本不可用时,页面内容提取静默失败的问题,现已改为回退至 executeScript。
- Common: URL 摄入文档的 PDF 渲染:修复了通过 URL 摄入的文档无法进行 PDF 原生渲染的问题。
- Common: Gemini 工具调用解析:修复了 LLM 工具调用参数中的双引号键导致 Gemini 模型解析失败的问题。
- Common: Amazon Nova 兼容性:修复了 tool_call 消息因文本字段为空而被 Amazon Nova 拒绝的问题。
- Common: Agent 运行未终止:修复了 Agent 运行在 Service Worker 上下文中无法可靠调用 endRun,导致浏览器标签页和状态未清理的问题。
- macOS: 语音音频恢复:修复了 macOS 应用休眠或 Dock 栏最小化后语音音频无法恢复的问题。
- macOS: 屏幕截图未显示:修复了由于上下文检测错误导致 macOS 屏幕截图未在助手 UI 中显示的问题。
- macOS: 定位功能失效:通过添加 CoreLocation 桥接并修复 IP 回退方案,修复了 Safari 和原生 macOS 应用中定位失效的问题。
- macOS: 缺少定位权限:修复了缺少的定位权限声明,并增加了原生定位超时时间。
- iOS: 文件选择器失效:通过添加 runOpenPanel 委托,修复了 iOS WKWebView 中文件选择器无法打开的问题。
- Extension: OAuth 权限过度授予:从网页弹出窗口和登录后 OAuth 路径中移除了 include_granted_scopes,以防止意外的权限范围膨胀。
- Extension: 跳过 OAuth 同意屏幕:修复了在增量权限请求期间,OAuth 权限提升跳过同意屏幕的问题。
- Desktop: Windows 上控制台窗口可见:修复了在 Windows 上启动 Tauri sidecar 时出现控制台窗口的问题。
- Desktop: Windows 构建损坏:修复了 Windows Tauri 构建中的 node 二进制路径解析问题并扁平化了 node_modules。
- Server: 重复的 Webhook 处理:修复了当多个客户端连接时 Webhook 被多次处理的问题。
- Server: 购买额度时的促销代码:在 Stripe 结账界面禁用了购买额度时的促销代码功能。
版本 0.9.714 (2026年3月29日)
新功能
- Common: 重新设计的入门引导:新的入门屏幕展示了 6 条清晰的 AI 访问路径,让新用户更容易理解连接 AI 提供商的选项。
- Common: Markdown 转 PDF:从头开始创建的新文档现在可以导出为 PDF,将 markdown 内容转换为格式化的 PDF 输出。
- Common: 统一的 Google OAuth:Google 账户连接现在使用单个经过验证的、包含所有权限范围的 OAuth 应用,取代了之前的多应用设置。连接流程更简单,提示更少。
- Common: 保存至 Slate 元参数:工具现在可以通过
_save_to_slate参数直接输出到 slate 文档,无需复制粘贴即可捕获结构化结果。 - Common: Slate 锚点链接:带有 slate 引用的聊天消息现在包含可点击的锚点链接,可滚动到文档中的相关章节。
- Common: Sandbox 数据桥接:HTML artifact 沙箱现在可以通过 postMessage 桥接动态访问 slate 数据,从而实现实时仪表板和交互式可视化。
- Common: 等级徽章:设置、工具和自动化功能现在会显示等级徽章,标明所需的访问级别,让扩展访问用户能够看到功能限制情况。
- macOS: 原生语音转文本 (WhisperKit):通过 WhisperKit 和 CoreML 实现设备端语音识别,取代基于浏览器的 STT,提供更快速、私密的原生实现。
- macOS: Sparkle 自动更新:通过 Sparkle 为 macOS 应用和 Safari 扩展提供生产级自动更新,支持 appcast 提要和增量更新。
- macOS: 原生标签页上下文:基于 AppleScript 的标签页上下文提取功能,使 macOS 应用能够感知最前端的浏览器标签页。
- macOS: 语音热键流式传输:语音热键现在在录音期间显示实时流式传输叠加层,并自动加载 WhisperKit 模型。
- Safari: 原生消息传递:Safari 扩展现在通过原生消息传递与 macOS 应用通信,而非 HTTP 轮询,提高了响应速度和可靠性。
- iOS/Android: 原生保存对话框:JSON 导出现在使用原生保存对话框(macOS 上的 NSSavePanel,Android 上的 SAF),取代了失效的 blob 下载方式。
- Web: Teams 落地页:新增 /teams 页面,为潜在客户提供团队和企业级消息介绍。
- Web: 博客板块:Caiioo 网站新增博客板块。
- Web: 免费试用激活:账户页面现在支持免费试用激活,并配有统一的入门引导流程。
- Common: 共享云端硬盘支持:Google Picker 和所有 Drive API 调用现在都支持共享云端硬盘,从而允许访问团队共享文档。
改进
- Common: 自适应问候语:自适应问候语现在会基于自定义欢迎消息进行发挥,而不是忽略它们,从而保留用户的个性化语调。
- Common: OAuth 回调清理:OAuth 回调标签页现在会通过倒计时器自动关闭,不再保持打开状态。
- Common: OAuth 指引:当工具需要连接账户时,错误消息现在包含关于应连接哪个账户的操作指引。
- Common: Drive 同步强制重写:Drive Sync 工作流现在支持强制重写选项,用于重新同步所有文件。
- macOS: 统一调试日志查看器:调试日志视图现在将服务器、Swift 和 UI 日志聚合到单个按时间顺序排列的流中。
- macOS: 分桶设置存储:服务器存储适配器重构为分桶架构,具有稳健的迁移机制、持久化标记、多配置文件原子性以及“首位写入者胜出”的冲突解决方法。
- macOS: 经过公证的 Safari 扩展:Safari 扩展现在使用 Developer ID 签名和兼容公证的权限,取消了分发版本对“允许未签名扩展”的要求。
- iOS: 默认为 Apple 提醒事项:iOS 和 macOS 现在默认为 Apple Reminders,并在同步视图中自动获取。
- Common: OAuth 权限范围提升:增量权限请求不再显示全部 22 个范围——仅显示新请求的范围,并提供更简洁的账户选择提示。
- Common: Google 账户自动重试:当文档返回 404 时,在显示错误之前会自动尝试其他已连接的 Google 账户。
- Common: 设置深层链接导航:所有设置板块现在都已正确注册,支持搜索和深层链接导航。
修复
- Common: 工具路由错误:修复了当模型在响应中使用冒号分隔的
tool:action格式时,工具被错误路由的问题。 - Common: 表格单元格格式:保留了表格单元格中的格式和链接,并清除了在单元格之间泄露的继承列表编号。
- Common: Slate 高亮滚动:修复了 TipTap 编辑器在后台标签页、预览模式和原生视图中的高亮滚动问题,使用了可靠的基于 ProseMirror 的定位。
- Common: 代码块文本搜索:修复了当 slate 文档中代码块的结构化块映射失败时,回退到文本搜索的问题。
- macOS: 模式切换时设置丢失:在 macOS/iOS 上切换模式时,全局设置(API 密钥、连接)不再被清除——现在由明确的白名单控制哪些设置会被重置。
- macOS: 存储清理一致性:完整存储清理现在会一致地清除所有状态字段,与 chrome.storage.local.clear() 行为一致。配置文件删除和保留清理也通过分桶正确路由。
- macOS: 设置并发性:applyModeDefaults 中的设置读取现在会先获取锁,防止竞态条件。存储统计数据从分桶读取,而非过时的扁平缓存。
- macOS: 迁移稳健性:存储迁移在失败时会重试,使用持久化完成标记,并自动清理迁移前的陈旧数据。
- macOS: MCP 服务器僵尸进程:当 macOS 应用退出时,MCP 服务器子进程现在会被正确终止。
- macOS: 议程中的日历/提醒事项:修复了 Apple Calendar 事件和 Reminders 不显示在议程弹窗中的问题。
- macOS: Google OAuth 流程:通过中继服务器 Web 流程路由 OAuth,修复了 macOS WKWebView 中 Google 登录失败的问题。
- macOS: 退出登录导航:修复了 macOS 上退出登录后未返回登录屏幕的问题。
- macOS: 远程访问认证:通过移除错误的认证要求,修复了 set-remote-access 端点的 401 错误。
- Server: WhatsApp 回复送达:修复了 WhatsApp 回复未发回 WhatsApp 而仅留在 PF 聊天线程中的问题。
- Server: WhatsApp 中继回传超时:将 WhatsApp 中继回传超时从 120 秒延长至 10 分钟,并修复了生成错误时的处理。
- Server: 私有同步重新认证:修复了私有同步重新认证流程、服务器端 OAuth 守卫以及 macOS 上的退出登录清理。
- Server: 本地文件夹同步认证:修复了本地/网络文件夹同步操作中的 401 认证错误。
- Server: Google 会话重新认证:当 Google 会话过期时,解锁对话框现在会触发重新认证,而不是显示死循环错误。
- Safari: 扩展签名:通过为 Developer ID 签名构建使用不带
get-task-allow的发布权限,修复了 Safari 扩展显示为未签名的问题。 - Common: OAuth 账户不匹配:修复了 OAuth 创建不匹配连接的问题,现在会正确创建新连接,而不是用不同账户覆盖现有连接。
- Common: OAuth 权限范围膨胀:修复了不匹配的连接继承原始账户权限范围,导致意外过度授权的问题。
- Common: 线程列表抹除:修复了 STATE_UPDATE 超时/重试使用错误字段名,可能导致线程列表被抹除的问题。
- Common: 等级徽章准确性:修复了等级徽章在免费层级功能上错误显示为“Tester”的问题。
- Common: 设置面板溢出:修复了设置面板卡片行中的 flex 溢出导致的布局问题。
- Server: 私有同步 API 密钥丢失:修复了在设备间同步时私有同步丢失 API 密钥的问题。
- Server: 消息桥接:修复了消息桥接中的存档聊天、停止按钮和模式选择问题。
- macOS: 自定义模式设置丢失:修复了由于空操作保存路径导致 macOS/iOS 上自定义模式设置被静默丢失的问题。
- macOS: OpenRouter 请求头被拦截:修复了 macOS/iOS 上中继 CORS 拦截 OpenRouter 归属请求头的问题。
- macOS: 标签页上下文切换:修复了在浏览器标签页之间切换时,标签页上下文未更新的问题。
版本 0.9.713 (2026年3月28日)
新功能
- Common: 子智能体 (Sub-Agents):完整的子智能体系统,支持持久化命名智能体、对话历史、并行执行(委员会模式)、顺序和插话模式、中止级联,以及带有按时间顺序状态跟踪的专用 UI 渲染。
- Common: MCP 工具审批:已注册的 MCP 工具现在会出现在工具审批系统中,让用户能够查看并控制智能体可以调用哪些 MCP 工具。
- macOS: 侧边栏推开模式 (Sidepanel Push Mode):侧边栏现在除叠加模式外还支持推开模式,默认宽度为 425px,并支持跨会话的停靠宽度持久化。
- Server: WhatsApp 富媒体消息:WhatsApp 连接现在除文本和媒体外,还支持位置共享、联系人、回应 (reactions) 和贴纸消息。
- Server: API Key 静态加密:存储在 relay D1 存储中的 API keys 现在进行静态加密。服务器端 OAuth 密钥在本地保存后将被删除。
改进
- Common: 模型别名显示:子智能体工具调用参数现在显示带注释的模型别名,以便于识别。
- Common: BYOA 连接优先级:扩大范围的 OAuth 请求现在优先选择 BYOA 备用连接而非基础连接,减少了不必要的重新认证提示。
- Common: 思维签名保留:现在为 OpenAI Responses API 和 Gemini 多轮工具调用流程正确保留思维/推理签名。
- macOS: 调试日志传播:调试日志开关现在会传播到 Node.js 服务器子进程。
- Common: 孟加拉语支持:平台和网站现在支持孟加拉语,并更新了网站上的商标免责声明和媒体帖子。
错误修复
- Common: Safari/WKWebView 流式传输:为 kokoro-js 填充了 ReadableStream 异步迭代,修复了 Safari 和 WKWebView 中的 TTS 流式传输失败问题。
- Common: 自定义模式创建:修复了导致自定义模式在首次尝试创建时失败的过时 React 闭包问题。
- macOS: 智能体存储变更丢失:由于缺少持久化桥接,macOS 上的智能体子进程存储变更(模式创建、设置、技能)会静默丢失。
- macOS: 剪贴板复制:修复了 macOS WKWebView 中剪贴板复制静默失败的问题。
- macOS: WKWebView 中的 WASM/WebGPU:在 macOS 原生应用中强制为 TTS/STT 和本地 ONNX 路径使用 WASM 后端 —— CDN 跨域导入和 WebGPU JSEP 模块导入在 localhost WKWebView 中会失败。
- macOS: 传输请求冲突:修复了破坏 macOS 上工具审批的 requestId 冲突,并改进了 MCP 显示名称。
- macOS: WhatsApp 自动回复:修复了 macOS relay server 上 WhatsApp 自动回复的端到端连接,包括线程可见性。
- iOS: 语音听写卡住:修复了当 stopRecording 清理被跳过时,语音听写卡在录音状态的问题。
- Safari: 浏览器命令超时:修复了由于 Service Worker 挂起后 WebExtension API 停滞导致的 Safari 浏览器命令超时问题。
- Safari: 心跳过期检查:跳过 Safari HTTP 轮询浏览器的心跳过期检查,以防止误判断开连接。
- Server: 私有 Relay 稳定性:修复了 Durable Object 休眠、空闲超时 (1006)、重连延迟、过时套接字处理和僵尸 readyState 问题。消除了 serverState 和 ctx.state 之间的分裂脑 (split-brain) 现象。
- Server: Webhook 广播:Webhook 现在在 DO 休眠唤醒后向所有服务器套接字广播,以解决僵尸 readyState 问题。
- Server: MV3 消息传递竞争:修复了 Webhook 到达时延迟初始化消息桥接的竞争条件,防止 MV3 Service Worker 崩溃。
- Server: Webhook 验证 CORS:通过服务器路由 Webhook 验证测试,以避免浏览器中的 CORS 拒绝。
- Extension: 登出清理:登出现在可以正确清除 macOS 上的本地 relay server 会话,并能检测 localhost 环境。
- Common: 安全性 — 线程隔离:状态广播现在按当前配置文件过滤线程,防止跨配置文件的数据泄露。
版本 0.9.712 (2026年3月26日)
新功能
- 通用:WhatsApp 连接诊断:WhatsApp 的“测试连接”现在除了检查 API token 外,还会检查 webhook 订阅状态和应用密钥(app secret)的有效性,从而捕获来自 Meta 的静默交付失败。
- macOS:原生 OAuth 流程:macOS 应用现在使用 ASWebAuthenticationSession 进行 OAuth 认证,取代了浏览器重定向,并能自动升级缺少刷新令牌(refresh tokens)的陈旧连接。
改进
- 通用:DOCX 查找/替换稳定性:DOCX 文档中的查找和替换现在可以处理双空格、不换行空格、智能引号、数字实体和大小写不匹配。包含精确匹配失败时的不区分大小写回退机制,以及替换多个实例时的警告提示。
- 通用:DOCX 列表编号:DOCX 导出现在生成标准的 Word 列表编号(w:numPr),而非字面上的项目符号字符,以便 Word 正确识别编号列表和项目符号列表。
- 通用:Agent 启动性能:消除了由幽灵 MCP 服务器、HTTP 就绪超时和冗余模型获取导致的 30-50 秒 Agent 启动延迟。模型缓存现在会传递给 Agent 子进程。
- Server:安全加固:修复了 URL 处理程序中的命令注入漏洞,实施了定时安全(timing-safe)令牌比较,在 relay server 上添加了 Content-Security-Policy 标头,对会话端点实施速率限制,将 CORS 限制在已知源,并实现了并行 E2E 广播加密。
- Server:Webhook 签名验证:Webhook 负载现在使用 base64 编码的原始主体,以防止因 JSON 往返转换损坏而导致 HMAC 签名失效。
- Server:OAuth 令牌持久化:修复了服务器状态对象之间的分裂脑(split-brain)问题,该问题曾导致应用重启后 OAuth 连接(Google Drive 等)丢失。
- macOS:性能与稳定性:菜单驱动的托盘轮询(原为无条件的 3 秒定时器)、防抖处理的窗口状态保存、非阻塞日志记录、具有指数退避机制的 WKWebView 崩溃恢复,以及修复了脚本消息处理程序的内存泄漏。
- macOS:集中日志管理:Relay server 输出和应用生命周期事件现在记录到
~/Library/Logs/caiioo/,并具有 10MB 自动轮转功能,取代了会被静默丢弃的输出方式。
错误修复
- 通用:文件选择器指令:
pick_files工具现在向用户返回清晰的指令,而不是返回一个会导致静默失败的无效 UI 操作信号。 - Server:活动标签页轮询垃圾信息:当没有浏览器扩展连接时,relay 模式下的活动标签页轮询不再产生无休止的超时错误。在连续失败时使用指数退避(30 秒至 5 分钟)。
- Server:原生应用的 CORS 问题:修复了 127.0.0.1 源被 CORS 白名单拦截的问题,该问题曾导致 macOS 原生应用的 WKWebView 无法进行 Google OAuth。
- Server:孤儿 Agent 进程:现在在服务器关闭和发生未捕获异常时,会正确清理 Agent 子进程。
- macOS:浏览器编排器日志垃圾信息:修复了扩展连接中浏览器协议消息的“Unhandled message type”警告。
Version 0.9.711 (2026年3月24日)
新功能
- Common: 设置自动保存:设置字段现在会在编辑时自动持久化,文本字段采用 500ms 防抖处理,开关/选择框则立即保存,防止因崩溃或页面导航导致的数据丢失。
改进
- Common: DOCX 编号保留:带编号的 DOCX 章节(例如包含“3.2.3 → 标题”的法律文档)中的制表符(Tab)现在可以在编辑往返中得以保留,而不再被静默删除。
- Common: 更智能的工具选择:动态工具选择器现在可以处理需要联网验证的事实性查询(营业时间、价格、地址),而不再仅仅匹配严格的触发词。
- Common: Agent 语言变更:由 Agent 发起的语言变更现在会立即生效,不再需要手动切换设置。
- Common: 多账号 OAuth 回退机制:当主 Google 账号缺少所需权限范围(scopes)时,系统会在提示重新认证前先检查已连接的备用账号。修复了备用账号令牌过期时未捕获的错误。
- Server: 模式设置验证:Server 现在会在保存设置时验证层级权限,防止免费层级用户持久化专业层级(pro-tier)的设置。
- Common: 安全加固:对推理预览输出进行 DOMPurify 消毒处理,将 CORS 限制在已知源,采用 HTTPS 优先的 IP 地理位置查询,并收紧了 web_accessible_resources。
错误修复
- Common: Google 搜索结果 URL:浏览器 Google 搜索现在返回带有实际 URL 的结构化链接。此前,由于 AgentMarkdown 丢失了来自 Google 复杂嵌套 HTML 的链接 href,Agent 需要 5 次工具调用才能提取 URL —— 现在链接直接从 DOM 中提取并包含在首次搜索结果中。
- Common: Private Sync 无限循环:修复了因 manifest 备份文件写入持续触发重新同步而导致的同步循环。现在空的设置对象可以在设备间正确传播。
- Common: 消息桥接更新:入站消息、Agent 回复和中继回传响应现在会立即广播到 UI,而不再是等到 Agent 完成响应后才显示。
- Extension: Private Relay 重新连接:通过回退到存储的启用状态,修复了 MV3 service worker 重启后中继保持断开连接的问题。同时修复了 enable() 过程中的自我替换竞争以及身份变更时的重新连接问题。
- Extension: Private Relay 竞态条件:强化了启用/禁用时的竞态处理,在消息桥接回调中增加了未处理拒绝(unhandled rejection)防护,并修复了设置面板卸载时的定时器泄漏。
版本 0.9.710 (2026年3月22日)
新功能
- 通用:零日风险 (ZDR) 强制执行:与 OpenRouter 实时同步 ZDR 数据并增加强制执行开关 —— 可查看供应商数量明细,并拦截被标记为具有零日风险的模型。
- 通用:工具调用修复 (Tool Call Healing):现在可自动检测并修复在推理块中输出 XML 工具调用的弱模型,提升了非前沿模型的可靠性。
- 通用:统一令牌生命周期:通过统一的 TokenLifecycleManager 在所有平台(扩展程序、服务器、macOS、iOS)实现对称的 OAuth 令牌刷新,并在过期前主动刷新。
- iOS:Composer 图标缩放:iOS 上的 Composer 操作图标现在缩放 1.18 倍以获得更好的点击目标,并增加了专用的
native-iosbody 类用于平台特定样式。
改进
- 通用:Slate 建议修改:Slate 编辑器中建议修改之间的导航、基于悬停的接受/拒绝以及计数器更新现在可以正常工作。
- 通用:Slate 选择器下拉菜单:Slate 类型选择器现在使用内联下拉菜单而非门户化弹出框 (portaled popover),修复了 z-index 和定位问题。
- 通用:建议修改全量替换:对于小文档(500 字符或更少),
propose_change现在允许全量文档替换,而不再要求局部编辑。 - 通用:语音发送等待转录:录音时按下发送/回车键现在会等待转录完成后再发送,防止出现空消息或残缺消息。
- 通用:Private Sync 设置流程:在 Private Sync 设置期间,密码对话框会在 OAuth 之后自动显示,简化了入门流程。
- 通用:BYOA 注册表刷新:在 Private Sync 下载新凭据后,BYOA 供应商注册表现在会重新初始化,确保导入的连接可以立即使用。
- 通用:术语一致性:用户指南内容中的 "Cloud Sync" 已更名为 "Private Sync",并增加了术语保护测试以防止回归。
- 服务器:Private Relay 稳定性:更新了兼容性日期,改进了 Durable Object 崩溃处理,并强化了 MV3 重新连接逻辑,以实现可靠的长连接。
- 服务器:排除 Private Sync 设置:Private Relay 设置不再包含在云同步负载中,防止跨设备的 Relay 配置冲突。
Bug 修复
- 通用:SVG 图像处理:SVG 文件不再作为
image_url发送给供应商,这曾导致不支持 SVG 格式的模型出现 HTTP 400 错误。 - 通用:Private Sync 竞态条件:修复了在 Private Sync 初始化期间由竞态条件引起的消息转发失败。强化了同步循环和隔离逻辑。
- 通用:Private Sync 数据删除:禁用 Private Sync 后,云端数据删除和审计现在可以正常工作。
- 通用:模型匹配污染:修复了自动调整系统中可能导致跨供应商系列错误映射模型的跨系列模型匹配问题。
- 通用:动态工具选择器:强化了动态工具选择器提示词,以防止可能导致工具选择失败的代理式推理。
- 通用:验证错误消息:必填字段验证现在返回针对性的错误消息,而非通用的失败提示。
- 扩展程序:Private Relay WebSocket 掉线:修复了由于 MV3 service worker 挂起导致 WebSocket 连接在约 60 秒后掉线的问题。改进了保活和重连逻辑。
- 扩展程序:Google OAuth 增量权限范围:修复了在扩展程序上下文中使用
launchWebAuthFlow扩展 OAuth 权限范围时静默失败的问题。 - 扩展程序:Relay 开关设置重载:抑制了切换 Relay 时不必要的设置重载,防止 UI 闪烁和诊断噪音。
- 服务器:Durable Object 休眠:修复了 Durable Object 休眠后的 WebSocket 关闭处理,该问题曾可能导致连接处于陈旧状态。
- 服务器:消息凭据持久化:消息凭据现在在更改时立即持久化,而不再等待下一个保存周期。
- iOS:陈旧的 WebSocket 回调:WebSocket 处理器现在在关闭时会被清除,防止 iOS 重新连接后触发陈旧的回调。
- 桌面端:NSIS 安装程序上传:Windows NSIS 安装程序现在可以通过 API 正确上传到草稿发布版本。
版本 0.9.709 (2026年3月21日)
新功能
- 通用:Slack 消息适配器:为消息桥接新增了 Slack Events API 适配器,支持机器人签名验证、媒体下载以及设置界面的 UI 配置。
- 通用:Slate 文件往返编辑:支持在 Slate 中直接打开和保存本地文件,具备文件系统句柄持久化和基于哈希的脏检查功能。Slate 选择器对话框中新增的“加载文件”按钮可对文档进行预处理,并使用正确的编辑器打开。
- 通用:Slate 文件菜单重构:文件类型菜单重新划分为文档、可渲染(HTML/Vega/Mermaid)以及代码与数据类别,并在重命名时支持自动检测。
- 通用:远程浏览器应用:远程浏览器客户端现在可以通过私有中继(private relay)获取侧边栏资源,从而在未安装扩展程序的情况下实现基于浏览器的访问。
- 通用:私有中继中的设备身份:中继客户端现在显示易于识别的设备名称。当被另一台设备挤掉线时,UI 会显示是哪台设备替换了您。
- 通用:Composer 麦克风按钮重向设计:麦克风按钮重新设计为显眼的胶囊形状,具有清晰的录音状态指示器,针对移动端优化了 44px 的最小触控目标,并在输入区域上方渲染语音覆盖层。
- 通用:用户指南链接:用户指南现已链接至“文档与法律”设置部分。
- iOS:BYOA 设置门控:移动端上的 BYOA 向导现在会显示一条消息,引导用户在桌面端设置 Private Apps,因为浏览器中 8 个步骤的流程在移动端无法操作。
- 服务器:登录挑战:基于电子邮件的 6 位 MFA 验证登录,支持同意追踪和会话撤销。
改进
- 通用:私有同步设置优先:设置现在优先于对话进行同步,确保在后台进行批量线程同步时,Token 和配置可以立即使用。
- 通用:WebSocket 请求关联:WebSocket 和私有中继传输现在会正确等待服务器响应,而不是立即完成,修复了 macOS 侧边栏和中继客户端上的 40 多个 UI 操作(Drive 审计、Ollama 测试、MCP 操作等)。
- 服务器:Webhook 签名验证:Webhook 签名验证已移至路由级的应用密钥(app secret),以实现更简洁的架构。
缺陷修复
- 通用:WhatsApp 响应送达:修复了智能体响应被静默吞掉而未发回 WhatsApp 的问题。消息中继回传路径现在会在投递失败时记录诊断详情,使未来的问题能够立即被诊断。
- 通用:跨模型的思考块签名:修复了从非 Claude 模型切换到开启思考模式的 Claude 时出现的“思考块签名无效”错误。推理格式检测现在默认为 'unknown',而不是错误地识别为 Anthropic 格式。
- 通用:新文档的 Slate 可编辑性:新建的 DOCX、PDF、RTF 和 XLSX Slate 现在可以正确在各自的编辑器中打开,而不是渲染为静态 HTML。
- 通用:Slate 导出回退机制:没有原始二进制数据的新文档现在可以平稳导出 —— XLSX 回退到 CSV,RTF 转换为 HTML,PDF 调用浏览器打印。
- 通用:Sandbox 预览渲染:修复了由于 postMessage 目标中的 sandbox 源不匹配导致的 HTML 和 Vega 预览空白问题。
- 通用:修订追踪列偏移:修订追踪中的删除操作现在可以正确映射 HTML 到文本的偏移量,修复了 TipTap 中位置偏移的更改。
- 通用:私有同步身份验证恢复:同步过程中过期或撤销的 OAuth Token 现在会自动触发重新授权,而不再需要手动重新连接。
- 通用:语音流式传输草稿指示器:语音转文字覆盖层现在显示“预览”状态并降低透明度,以提示该文本在录音停止前为临时内容。
- 通用:原生平台上的 MCP 工具:本地 MCP 服务器工具现在可以在 macOS、Windows 和 Linux 上正确注册 —— 此前处理器虽然启动了 MCP 进程,但从未获取或注册其工具。
- 通用:Slate 上下文标签更新:当 Slate 标签页标题在从 Drive 或 GitHub 加载后发生更改时,活动标签上下文标签现在会从存储中刷新。深色模式下的标题输入文本不再无法阅读。
- 扩展程序:Chrome Stub Polyfill:在 localhost 运行且具有
window.chrome但没有扩展程序 API 的 Chrome 浏览器标签页现在会获得正确的 Stub 注入,而不是被跳过。 - 扩展程序:中继客户端包崩溃:通过定义构建时环境变量,修复了 relay-client IIFE 包中的
import.meta.env崩溃问题。 - 扩展程序:远程应用登录:清理了远程浏览器应用的登录方式,将 Google OAuth 作为主要方法,并将电子邮件/密码作为折叠的次要选项。
版本 0.9.708 (2026年3月19日)
改进
- Common: 生成指示器协调:逐条消息的打字点现在与线程级回退指示器协调一致,消除了生成过程中重复出现的跳动点。现在,这些点在推理和工具执行阶段会持续显示,仅在最终答案开始流式传输时才会隐藏。
- Common: 流式光标:流式文本末尾现在会出现闪烁的光标,为响应仍在生成中提供清晰的视觉指示。
- Common: 推理预览格式化:折叠的推理块现在会渲染行内加粗和斜体格式,而不是显示原始的 markdown 语法。
- Common: Slate 文档列表:
list_slates现在可以正确显示通过轻量级线程查询加载的 DOCX、PDF 和 XLSX 文件的内容大小。列表还包括了编辑 DOCX 和 XLSX 文档的工作流指南。 - Common: Private Sync 设置板块:Private Sync 设置现在拥有独立的专用板块,以便更清晰地组织,并与常规设置分离。
- Extension: 连接设置重构:Private Relay 板块被重新组织为两个清晰的子板块 —— Private Relay(远程访问开关,始终可见)和 Caiioo Bridge(本地 MCP 服务器和系统工具)。远程访问开关不再要求 Bridge 处于运行状态。
- Desktop: Tauri 统一二进制文件:Windows/Linux 桌面应用从编译时变体整合为单一二进制文件,并采用运行时等级门控 —— 侧边栏的可见性由运行时的订阅等级决定。
错误修复
- Extension: 无需 Bridge 的 Private Relay:Private relay 现在可以独立连接,无需 Caiioo Bridge 应用。此前,身份验证仅由 Bridge 连接初始化,导致仅使用扩展程序的用户(包括 Linux/Windows)无法接收消息 Webhook 或使用远程访问。
- Extension: Google OAuth 路由:修复了 Chrome 上 OAuth 弹出窗口失败的问题,方法是在
getAuthToken不可用时跳过它并回退到 BYOA 凭据。COOP 弹出窗口的韧性增强防止了在限制性网站上出现空白窗口。 - Common: ElevenLabs 流式 STT:修复了当 ElevenLabs 流式传输遇到连接中断时,语音转录丢失或失败的问题。原生应用的语音输入现在可以优雅地回退。
- iOS: WKWebView 中的外部链接:本应在 Safari 中打开的链接现在可以正确地在外部打开,而不是在应用的 WebView 内部加载。
- Common: 广告拦截器孤立规则:修复了 Service Worker 重启后动态 DNR 广告拦截规则仍然存在的问题。
disableAllBlocking现在即使在拦截器实例为空时,也会直接查询并移除孤立规则。 - Common: 切换个人资料时的许可证同步:切换个人资料现在会从服务器同步许可证,确保等级门控工具立即刷新,而无需重启。
- Common: 配置前的 Token 刷新:过期的 OAuth token 现在会在配置 API 密钥之前刷新,防止静默失败。新服务器现在可以采用现有的身份连接。
- Web: iOS Safari 上的移动端菜单:营销网站上的汉堡菜单在 iOS Safari 上不再透明。
- Common: React-18 批处理竞态:添加了线程级生成指示器作为回退方案,以应对 React-18 状态批处理导致逐条消息打字点无法显示的情况。
版本 0.9.707 (2026年3月17日)
改进
BYOA 重新配置预填:重新配置现有的 Google 或 Microsoft 私有应用时,现在会预填客户端密钥和租户 ID,无需重新输入。
模型列表排序:每个模型商组内的模型现在按发布日期排序(最近优先),确保各平台排序一致。
修复
私有同步身份验证恢复:私有同步初始化期间的 OAuth 令牌故障(会话过期、令牌撤销、Chrome 配置文件令牌)现在会正确显示在 UI 中,而不会静默进入错误状态。
Slate 修订追踪可靠性:针对修订追踪进行了 10 项关键修复——包括修订合并竞态条件、所有更新路径下的差异基准持久化、DOCX 导出格式保留、TipTap 匹配的 HTML 标签剥离、全部接受/拒绝排序,以及实体转义和标签正则匹配的收敛修复。
Slate 数据完整性:修复了粘贴图像写入失效本地缓存、云端源元数据未持久化,以及中继/移动模式下实时 AI 更新的 BroadcastChannel 回退问题。
Slate 安全性:修复了图像查看器中的 XSS 注入问题,并将通配符 postMessage 源替换为限定范围的扩展程序 URL。
版本 0.9.706 (2026年3月16日)
新功能
- 模型商错误横幅:当 AI 模型商返回错误(402 需付费、缺少 API 密钥、频率限制)时,现在会显示带有明确操作说明的横幅,而非通用的失败消息。
改进
DOCX 跨样式编辑:
propose_change工具现在可以正确处理跨越多个格式运行(例如部分加粗文本)的查找/替换操作。意图会被传递,以便智能体进行上下文编辑。PDF 保存性能:原生 PDF 保存速度显著提升——消除了冗余解析,缓存了导入模块,并跳过了不必要的算子清理。
消息传递中的模式名称:消息设置模式选择器现在显示模式的品牌名称,而非内部 ID。
修复
Google OAuth 令牌刷新:修复了刷新 Google OAuth 令牌时出现的“未授权”错误,该错误曾导致无法访问日历、Gmail 和云端硬盘。
预置密钥错误消息:使用预置 API 密钥的用户不再看到误导性的“充值”错误——消息现在会说明实际问题及后续步骤。
并发线程竞态条件:修复了在生成过程中切换线程可能导致 GENERATION_COMPLETE/ERROR 事件应用到错误线程的问题。
修订历史恢复按钮:当当前内容与所选修订版本不一致时,Slate 修订历史中的恢复按钮现在可以正确显示。
双重 OAuth 弹窗:新 Chrome 扩展程序用户在首次登录时不再看到两个 OAuth 弹窗。
版本 0.9.705 (2026年3月15日)
新功能
- 设置类别分组:19 个设置板块现已整理为 5 个可折叠类别,以便逐步展示。代理模式板块显示交叉指示器,并带有指向受影响板块(工具配置、模型配置、外观)的导航链接。API 提供商板块默认打开,并带有模型功能警告。
错误修复
- 议程同步重复日历:当同一个电子邮件同时存在登录(身份)连接和私有连接时,Google Calendar 账户不再重复出现在同步选项卡中。连接在渲染前会进行去重处理。
- i18n 设置类别:设置类别标签现已在所有支持的语言中完成翻译。
Version 0.9.704 (2026年3月14日)
新功能
- Microsoft 365 集成基础:新增 Microsoft 作用域路由、Graph API 客户端以及支持 BYOA 的账户服务。为 Microsoft 提供商定义了作用域层级和工具作用域注册表扩展。Microsoft 已作为 relay-proxied 提供商添加。
- 富文本内联渲染 (RIR):用于在聊天消息中内联渲染富文本内容的新编解码器架构。包括 HTML、Markdown 和 DOCX 编解码器,并提供可扩展的编解码器接口。
- PDF 结构树与布局分析:用于语义化文档理解的标记化 PDF 结构树解析器。针对未标记 PDF 的启发式段落分组提供了后备布局分析。支持图像替换/插入和内容溢出检测。
- 消息模式选择:消息桥接设置现在包含默认模式选择器,允许代理在处理入站消息时以正确的个性进行回复。
改进
- 提供商速率限制重试:所有 LLM 提供商现在在遇到 429(速率限制)和 529(过载)响应时,将通过指数退避算法自动重试,而不是立即失败。支持最多 3 次带抖动的重试。
- Google OAuth 作用域超集匹配:写入作用域现在可以满足读取作用域的要求(例如,
drive涵盖了drive.readonly)。防止在已授予更广泛作用域时进行不必要的重复授权。 - BYOA 全作用域初始认证:当需要私有连接时,初始认证流程现在会预先请求所有必要的作用域,而不是提示两次(一次基础权限,一次扩展权限)。
- Google 404 转扩展访问提升:当 BYOA 连接在访问 Google Workspace 文件收到 404 错误时,该错误会提升为扩展访问提示,而不是死循环的错误消息。
- 消息凭据私有同步:消息桥接凭据现在通过端到端加密的私有同步在设备间同步,不再仅限于特定设备。同步清单版本升级至 v10。
- OAuth 等待超时延长:BYOA 和扩展访问的 OAuth 流程超时时间现已延长至 5 分钟(原为 2 分钟),为用户完成 Google Cloud Console 步骤留出充足时间。
- Sparkle 框架签名:macOS 分发构建版本现在按照由内而外的顺序正确签名 Sparkle 框架嵌套二进制文件,修复了公证失败的问题。
- Tauri Node 二进制文件捆绑:Tauri 配置现在将 Node.js 二进制文件捆绑为资源,用于 Windows/Linux 的 sidecar 执行。
- 消息设置搜索:消息桥接章节现在可以通过设置搜索栏使用 "whatsapp"、"telegram"、"webhook" 等关键词搜索。
- 设置 Relay 转发:设置保存现在通过 WebSocket 桥接转发到 relay 服务器,确保消息凭据和其他配置更改同步到服务器的状态文件。
Bug 修复
- Slate 货币与数学公式冲突:Markdown 表格中类似
$9/mo的金额不再被误判为 LaTeX 内联数学分隔符。数学正则匹配现在会遵循转义的货币美元符号。 - 对话页面 ToastProvider:弹出式对话标签页此前缺少
ToastProvider,导致依赖 toast 的功能静默失败。提供商树现在已与侧边栏保持一致。
Version 0.9.703 (2026年3月14日)
新功能
- Google Picker 集成:完整的 Google Drive 文件选择器,采用弹出窗口/iframe 混合模式,支持多视图过滤器(Docs、Sheets、Slides、PDFs),并在编辑器中提供 Drive 引用卡片。通过 Google Picker 选择的文件会自动获得
drive.file访问权限。 - Google Sheets 原生同步:在 Slate 中打开 Google Sheets,支持完整的单元格级双向编辑。Sheets 编解码器可将电子表格网格数据转换为 TipTap HTML 表格并还原,通过 Drive 的
modifiedTime进行冲突检测。支持读取、批量单元格更新以及结构性更改(添加/删除工作表、合并单元格)。 - Google Slides 只读视图:Google Slides 演示文稿在 Slate 中渲染,显示幻灯片缩略图并提取文本内容以供搜索。
- Gmail 批量获取与 Markdown 转换:Gmail 工具现在批量获取邮件元数据(一次最多 100 条),而非逐条获取;配备 5 分钟标签名缓存,并自动将 HTML 正文转换为 Markdown,以便 LLM 更清晰地读取。
- 选择内容悬浮层:在任何网页上选择文本时,会出现“添加到提示词”按钮,让您可以快速将选定内容添加到对话中。
- Relay 悬浮层管理器:Agent 悬浮层命令现在通过浏览器扩展程序路由,从而在活动网页上实现 Agent 驱动的 UI 悬浮层。
- 行内快速任务模型选择器:快速任务的模型选择现在直接嵌入在模型选择器下拉菜单中,不再使用单独的菜单。
- 来自 Google Drive 的 Slate DOCX 导出:在 Slate 中加载的 Google Docs 现在可以导出为 DOCX(通过
readFileContentAsBinary),激活带有修订追踪功能的完整 TipTap 可视化编辑器,而非仅作为纯 Markdown 打开。 - 私有连接 (Private Connection) 设置向导:改进了 BYOA 向导,增加了专门的“添加测试用户”步骤,与当前的 Google Cloud Console 流程匹配。授权屏幕子步骤现在遵循 Google 实际的 4 步折叠菜单。当用户身份已知时,电子邮件指令将进行个性化定制。
- 私有连接推广横幅:当 Agent 需要扩展 Google 权限范围(Gmail、Calendar 等)且不存在私有连接时,会出现一个动画横幅,提供通往设置向导的一键路径。在用户完成设置期间,Agent 会保持暂停状态,并在连接保存后自动恢复。
- 导出忠实度警告:在将文档导出为不同格式(例如 PDF 转 DOCX)之前,忠实度对话框会针对潜在的格式丢失发出警告,并按严重程度分类(信息、警告、严重)。
- PDF 注释提取:在文档处理和重建过程中,PDF 文本注释和标记现在会被提取并保留。
- 提醒事项日历同步:提醒事项模态框现在支持日历同步,并带有扩展访问权限控制。
改进
- Google Docs 同步忠实度:改进了格式跨度提取,支持正确的标签匹配(处理自闭合标签、嵌套不匹配)以及并发编辑的冲突检测。
- 私有同步账号不匹配检测:同步设置账号下拉菜单现在可以检测配置的同步邮箱是否与任何已连接的 Google 账号不匹配,并显示“未连接”指示器及切换选项。
- 团队/企业有效层级:许可证验证现在使用来自团队/企业委派的
effectiveTier,确保当用户的层级继承自团队计划时,能够正确访问相应功能。 - “Private App”更名为“Private Connection”:所有面向用户的引用现在均使用“Private Connection”而非“Private App”——这对于不将 OAuth 集成与“应用”联系起来的非开发人员来说更清晰。
- Google OAuth 权限范围对齐 (
drive.file):对于非 BYOA 用户,所有高级 Google Drive 权限范围(drive、drive.readonly、documents.readonly、spreadsheets.readonly、presentations.readonly)现在均被替换为更窄的drive.file权限范围,以符合 Google 的已验证应用要求。BYOA 用户保留完整权限范围。 - 权限选择器中可见 Gmail 权限:Gmail 读取、撰写和修改权限范围现在对 Google 权限编辑器中的所有用户可见(位于“高度敏感权限”下),不再仅对 BYOA 隐藏。这些权限范围在授权屏幕上获得批准,并在 Gmail 工具需要时通过 JIT 请求。
- Google Picker 授权恢复:当 Google 权限在外部被撤销时(例如通过 Google 账号设置),应用现在会自动检测过期的权限范围,使其失效,重新授权并重试,而不是静默失败并报错 403。
- Agent Google Drive 指引:工具错误消息和空结果提示现在会指示 Agent 告知用户点击编辑器中的 + 按钮并选择 Google Drive,而不是建议不可用的工具操作。
- Slate Drive 选择器简化:Slate 的“从 Google Drive 加载”现在直接加载文件,跳过了侧边栏式的“在 Drive 中处理”与“添加到对话”的选择界面。
- 官方 Google Drive 图标:Drive 卡片和附件菜单现在使用官方 Google Drive 图标,而非通用的绿色三角形。
- 统一模型选择器:辅助模型选择会回退到默认模型,并配有单一的合并模型下拉菜单。
- DOCX 非文本元素透传:DOCX 重建保留了不属于文本编辑流程的非文本元素(图像、图表、嵌入对象)。
- PDF 多段行编辑:PDF WYSIWYG 编辑器可处理跨多个文本段落分割的行。
- Auth 频率限制提升:Auth 端点频率限制从 10次/分钟提高到 30次/分钟,以适应 BYOA 设置期间快速的 OAuth 令牌交换。
- OAuth 令牌端点重新分类:OAuth 令牌交换从 Auth 频率限制池移动到通用池,防止在多权限授权流程中触发限流。
错误修复
- iOS 模态框堆叠:修复了在已有模态框(如浏览器悬浮层)显示时,弹出文件选择器或 Slate 悬浮层导致的崩溃问题。选择器和悬浮层现在呈现在最顶层的视图控制器上。
- Slate 行范围验证:当
startLine超过文档长度时,get_slate_content现在返回明确的错误,而非静默返回空内容。 - 服务器路径遍历:存储键现在会针对目录转义进行验证,防止对同步存储端点的路径遍历攻击。
- 广告拦截器正则上限:DNR 转换器现在将正则规则限制在 Chrome 的 1000 条规则限制内,并丢弃超过 RE2 内存限制的大型有界量词,防止扩展程序安装失败。
- 扩展访问时的 OAuth 超时:修复了 Agent 需要扩展 Google 权限范围(Gmail、Calendar)时出现的 120 秒超时问题。挂起的 OAuth 等待时间现在为 BYOA 设置延长至 5 分钟,且在设置中完成连接后会自动恢复暂停的 Agent。
- 聊天 UI 冻结:修复了可能导致聊天界面冻结的重叠异步间隔和静默广播错误。
- 云同步下载批处理:修复了云同步下载批处理程序中的 TypeScript 空检查错误。
- Service Worker 动态导入:将动态导入转换为静态导入,以兼容 Chrome MV3 Service Worker。
- BYOA 专用权限强制执行:
convert_to_google_doc和convert_to_google_sheet操作现在正确地仅要求drive.file,而非广泛的编辑器写入权限。 - Drive 卡片格式:Drive 引用卡片采用三段式格式,并带有正确的 BYOA 专用权限控制。
- Google Picker CORS:Picker 现在托管在私有中继上,以解决弹出窗口权限流程中的跨域问题。
版本 0.9.701 (2025年3月6日)
改进
- Ollama 上下文窗口指示器:上下文窗口使用率圆环现在通过查询
/api/show端点的num_ctx为 Ollama 模型进行渲染,而不是依赖不包含本地模型的 OpenRouter 模型列表。 - Ollama 工具调用:修复了 Ollama 的动态工具选择 —— 将
tool_choice传递给 API(自 Ollama v0.5.1 起支持),在工具激活时禁用思考模式以防止 JSON 损坏,并在主模型不支持工具调用时回退到轻量级非流式辅助模型。 - OpenRouter 推理缓存:修复了推理文本被流式传输提供商过早清除的问题。缓存生命周期现在由
agent-runner在迭代边界拥有,与 Anthropic 和 Google 提供商保持一致。 - PDF 所见即所得可靠性:全局文本对齐处理 PDF.js 跨多个 TextItems 拆分操作符的问题。在不匹配的跨度(注释/页眉文本)上禁用块编辑以防止导出错误。CMap 2 字节解码不再损坏带有 1 字节 ASCII 字体且由 Word 生成的 PDF。操作符匹配边界检查防止了空文本项上的索引越界。
- 桌面平台检测:动态工具选择器使用
localFolderSync能力而不是caiiooReminders进行桌面检测,使用appleScript/appleNotes而不是 Calendar/Reminders 进行 macOS 检测(Calendar/Reminders 通过 EventKit 跨 Apple 设备)。
Version 0.9.700 (2025年3月5日)
新功能
- 文件管理器 (File Manager):全新的文件管理系统,支持嵌套文件夹、用户标签、收藏以及专用的文件管理器 UI。可按文件夹层级组织附件,按类型(屏幕截图、AI 图像、照片)过滤,支持搜索、排序,并提供网格或列表视图模式。对话自动标签功能可将文件与对话关联。通过 manifest v9 支持私有同步。
- 本地文件夹同步 (Local Folder Sync):本地文件系统文件夹与文件管理器之间的双向同步。由变更驱动的重新同步功能可自动将删除、批量删除和移动操作同步到磁盘(具有 2 秒防抖处理)。子文件夹移动检测功能可在 Caiioo 中重新组织文件时同步移动磁盘上的文件。进入同步树中的任何子文件夹都会触发自动重新同步。
- 跨文件类型修订跟踪 (Cross-Filetype Tracked Changes):在 DOCX、PDF 和 Markdown 之间统一了接受/拒绝工作流。DOCX 编辑现在记录为修订记录,使用与 Markdown 和代码 Slate 相同的差异引擎。PDF 修订记录与可视化编辑器集成。
resolve_tracked_changes操作允许智能体以编程方式接受或拒绝修订。 - PDF 所见即所得 (WYSIWYG) 编辑:直接在渲染的 PDF 页面上编辑文本,并保持文档匹配的样式。文本层通过
textItemIndex将编辑内容链接到源内容流操作符,以便在导出时进行精确重构。包含用于变更检测的 plainText 基准线。 - DOCX 渲染保真度:丰富的 DOCX 预览,支持段落对齐、超链接、字体颜色/大小、行间距、缩进和表格单元格底纹。代码视图显示 Markdown 转换结果,以便 LLM 进行高效的 Token 消耗。
- 通用消息 (Universal Messaging)(仅限内部测试):通过 WhatsApp、Telegram 和 Slack 发送和接收消息,具备本地优先的隐私保护。智能体可以撰写和发送消息、列出对话并回复线程——所有操作均通过您自己的设备路由。
- Google Meet 集成:多操作会议回顾工具,包含
list_meetings(发现带有日期范围过滤的近期会议)和get_meeting(获取转录文本)。通过完整的 OAuth/JIT/作用域审批流水线运行,并支持凭据库。 - Gmail 发送邮件:通过 Gmail API 直接发送电子邮件,受高风险工具审批保护。按操作划分的风险等级覆盖允许
send_email要求显式确认,而草稿操作保持为中等风险。 - Microsoft BYOA:支持 Microsoft 365 的“自带应用 (Bring Your Own App)”。为 Microsoft OAuth 连接注册 Azure AD 应用。支持多提供商 BYOA 注册(Google + Microsoft),支持租户 ID,并提供 3 步式 Azure Portal 设置向导。
- Poe 提供商:新增 Poe 的 LLM 提供商集成,支持模型列表、按提供商分组的模型选择器、视觉/工具/推理能力检测以及价格显示。
- “新功能”对话框:由 API 驱动的内容流水线,用于发布版本说明和用户指南页面。异步“新功能”对话框会在更新时显示版本亮点。
- 私有同步账号选择器:选择用于私有同步的 Google 账号,而非默认使用主账号。
- 原生 TipTap 差异标记:使用原生的 ProseMirror 标记(DiffAdded/DiffRemoved)替换了原有的用于 AI 修订预览的独立 marked.js 渲染层。修订内容现在以行内跟踪更改的形式渲染,具有一致的排版,并支持块级接受/拒绝目标。
- Mermaid 图表:在 Slate 的 TipTap 预览模式下,代码块内支持实时 Mermaid 图表渲染。
- 帮助工具中的模糊章节搜索:帮助工具现在支持在搜索文档页面的特定章节时进行模糊匹配。
改进
- 文件管理器 UX 优化:文件夹同步图标指示、删除确认对话框、Shift+点击范围选择、工具栏在宽度较窄时自动换行而非溢出,并修复了重新加载后的标签持久化问题。
- 响应式编辑器布局:三区弹性布局可防止新对话按钮在宽度较窄时被挤出屏幕。模式和模型选择器使用交错的文本隐藏断点。自定义智能体和 AI 芯片图标替换了通用的默认图标。
- 设置 UX:重新排列了章节顺序以优化流程(个性化 → 凭据 → 工具审批 → 智能体模式 → 工具配置 → 技能库 → 工具服务器 → 文档处理 → 语音)。
- 修订状态完整性:修复了在活动 AI 修订期间删除大块内容时导致的损坏问题——实现了 sourceContent 不变性,将块重定位阈值提高到 0.7,自动拒绝过期块,并增加了版本历史完整性检查。
- 智能体循环可靠性:修复了中止控制器(abort controller)的竞态条件,即旧运行可能会删除新运行的控制器。取消信号现在会传播到队列中的工具。孤立的运行状态会广播错误,而不是留下空白消息。
- 插话处理:统一了服务器和 UI 上的
getActiveBranchMessages遍历逻辑,以一致地跳过插话。修复了当流式传输的 parentId 指向插话而非用户消息时,追问后响应消失的问题。 - macOS 原生稳定性:修复了进程纪元跟踪的重启竞态条件、重新连接时的 URLSession 泄漏,以及管道处理程序与停止操作之间的 LineBuffer 数据竞争。
- Google Sheets 修复:
create_table现在会写入列标题名称,而不是让第一行保持空白。 - 中间件清理:从 apple-routes、mcp-routes 和 attachment-routes 的 10 个行内身份验证检查中提取了
requireAuth中间件。 - 图像类型过滤:文件管理器通过独立的过滤选项和不同的图标来区分屏幕截图、AI 生成的图像和用户照片。
- 模式/模型选择器一致性:统一了模式选择器和模型选择器之间的字体粗细和图标描边。
- Beta 阶层限制:凭据库根据阶层检查对 Beta 功能进行限制。
- CIDFont 重新编码:PDF 重构支持带有 ToUnicode CMap 表的 CIDFont 编码,并为不在映射中的字符提供标识回退。
- PDF 导出重命名:在整个 PDF 工作流中将“下载”重命名为“导出”,以提高清晰度。
错误修复
- PDF 文本消失:修复了 PDF 视图文本在失去焦点时消失以及从所见即所得编辑导出时内容乱码的问题。
- PDF 修订记录路由:防止 PDF 修订记录通过统一差异引擎路由,以免损坏 PDF 特有的操作符数据。
- PDF 导出完整性:PDF 下载现在会抛出诊断错误,而不是静默回退到 Markdown 导出。
- Markdown 表格换行:Markdown 表格中的
<br>标签现在渲染为实际的换行符,而不是字面文本。 - DOCX 修订删除保留:修复了在可视化视图和代码视图之间切换时 DOCX 修订删除内容被剥离的问题。
- 存储的 Markdown 修订记录:修复了从存储加载时,Markdown Slate 上的
propose_change不显示红线的问题。 - 拒绝操作恢复内容:
resolve_tracked_changes的拒绝操作现在可以正确恢复 Markdown 和代码 Slate 的内容。 - Slate 保存循环:修复了在修订跟踪处于活动状态时触发的无限保存循环。
- 消息稳定性:修复了路由、回复线程、个人资料处理、队列弹性、Webhook 签名、发送者清理和有效载荷限制等问题。
Version 0.9.662 (2025年2月27日)
新功能
- 自带应用 (BYOA):支持使用您自己的 Google OAuth 凭据,而非 Caiioo 内置的应用。多应用支持允许团队在整个组织内共享单个 OAuth 客户端,同时保留各自的 API 密钥。BYOA 连接可自动检测过期令牌并提示重新验证。
- Wikilink 导航:在 Slate 文档之间支持 Obsidian 风格的双括号 Wikilink,用于构建互联的知识库。点击 Wikilink 即可在 Slate 之间即时跳转。
- 技能菜单:支持通过 Tab 键插入技能、动态高度下拉菜单、带有变量芯片的内联编辑,以及用于从编辑器进行完整 CRUD 操作的共享 SkillForm 组件。
- DOCX 下载:支持将 Slate Markdown 和文本文档下载为 DOCX 文件,并保留修订追踪记录。
- 表格自动填充:
insert_component现在可以从结构化数据中自动填充表格单元格,消除了空白占位表格。 - Gemini 3.1 Flash:作为图像生成模型选项添加,与现有的 Gemini、FLUX 和 Seedream 模型并列。
- 所有账号支持 Google Drive 保存:现在任何已连接的 Google 账号均可使用“保存到 Google Drive”功能,不再局限于主账号。
- 统一 Diff 引擎:完全重写了 Slate 的变更追踪 Diff 系统(阶段 0–7),具备 TOCTOU 安全性、缓存功能、单项变更接受/拒绝控件,并支持移动端点击切换。
改进
- 自适应私有同步:同步轮询频率根据活动情况动态调整。仅下载锁定优化减少了资源竞争。
- OAuth 邮箱获取:Google OAuth 始终包含身份作用域,确保每次连接都能获取用户邮箱,修复了部分账号邮箱为空的问题。
- 安全加固:加强了 OAuth PKCE 流程、智能体子进程边界,以及针对重复身份验证失败的单账号暴力破解锁定。
- 浏览器芯片布局:浏览器选择器芯片体积更小,并支持换行显示,不再超出容器范围。
- 注册表驱动的图像提供商:将硬编码的图像提供商列表替换为动态注册表,使添加新模型变得轻而易举。
- 内容 i18n 流水线:为所有文档页面提供统一的哈希追踪内容同步,支持增量翻译。
Bug 修复
- 预览中的数学表达式:修复了从 TipTap 预览切换到代码视图时数学表达式损坏的问题。
- 预览中的 Wikilinks:修复了在 TipTap 预览和代码视图之间切换时 Wikilink 语法被剥离的问题。
- 会话消息消失:修复了会话消息被 STATE_PATCH 剥离,或在对话中途切换模型时消失的问题。
- 插话孤立节点:修复了插话消息过滤后 parentIds 孤立导致的渲染错误。
- 私有同步无限循环:解决了由并发集合项时钟冲突和 thread_data_ 前缀污染引起的无限同步循环。
- BYOA 边缘情况:修复了 BYOA 配置在清除后无法恢复、异步保存竞争、扩展程序使用失效的 localhost 弹窗而非 launchWebAuthFlow,以及过时的 issuedByClientId 优先级问题。
- 私有同步作用域恢复:修复了当 Google Drive 作用域过期或缺失时,私有同步解锁静默失败的问题。
- 重复技能:防止私有同步合并后出现重复技能。
- 修订追踪路由:将
get_tracked_changes和get_comments接入 SlateTool 动作路由,使智能体能够读取修订状态。 - DOCX 下载源:修复了 downloadAsDocx 使用旧的构件内容而非实时编辑器状态的问题。
- 智能模型名称缩写:通过智能缩写修复了长模型名称超出紧凑型选择器的问题。
- Markdown 链接渲染:修复了渲染的 Markdown 链接中 chrome-extension: 和 Caiioo: URL 被拦截的问题。
- 会话创建速度:通过消除冗余的设置级联查找,将会话创建时间缩短了一半。
- Chrome 标签页标题:恢复了根据当前活动会话动态更新 Chrome 标签页标题的功能。
- 自适应问候语令牌:提高了自适应问候语的 max_tokens,以防止在使用推理模型时出现截断。
Version 0.9.661 (2025年2月25日)
新功能
- Agent 插话 (Agent Interjection):在 AI 运行过程中,只需输入消息并按回车即可进行引导。Agent 会在下一个决策点看到您的引导并调整方向——无需取消并重启。当您有待发送文本时,停止按钮旁会出现一个带有琥珀色徽标的发送按钮。
- API 工具管理:API 集成工具现在支持
save_tool、list_tools和delete_tool作为一级操作,方便直接从对话中管理 Agent 发现的 API。免费用户可以使用 GET 和 list_tools;Pro 用户可使用全套功能。 - 实时 Token 计数器:Token 和成本使用情况现在在流式传输过程中实时更新,并显示在每条消息的页脚。特殊成本(图像生成、网页搜索)会随着每个工具的完成而增量折叠显示。
- 自动展开工具卡片:工具卡片在开始接收流式参数或需要审批时会自动展开,并在成功完成后自动折叠。错误和被拒绝的工具将保持展开状态以便查看。
- Monaco 差异编辑器:Slate 代码修订现在使用 Monaco 原生的行内差异编辑器,带有逐项更改的接受/拒绝按钮,取代了之前的自定义装饰系统。
改进
- Private Sync 身份验证恢复:因 Google Token 过期或撤销导致的 Private Sync 错误现在会显示可操作的“重新连接 Google”和“授予权限”按钮,而非被动的错误消息。重新连接会请求正确的 Drive 权限并预选正确的 Google 账号。
- Private Sync 多账号支持:Private Sync 现在会根据配置邮箱匹配 Google 账号进行身份验证,而不是默认使用第一个连接的账号。修复了连接多个 Google 账号时同步到错误 Drive 的问题。
- 品牌焕新:采用源自 Caiioo 标志的新河流蓝 (river blue) 和岩石灰 (rock grey) 色调,取代了整个应用和网站之前的紫色主题。
- OAuth 安全性:从扩展程序包中移除了 Google、GitHub 和 Slack 的 OAuth 客户端密钥。Token 交换现在通过安全的 Cloudflare 中继代理进行,消除了客户端代码中的密钥。
- 启动加速:附件内容(图像、提取的文本)现在改为按需加载而非启动时加载,显著缩短了包含大量附件的对话的初始加载时间。
- 流式传输加速:上下文窗口使用情况现在通过快速广播路径传输,而不是通过存储进行往返,从而在不增加每个 Agent 循环异步 I/O 的情况下实现实时更新。
- Private Sync 速度:Google Drive 文件 ID 缓存现在跨重启持久化,消除了首次同步周期时的完整文件列表 API 调用。
- 统一流式渲染路径:流式内容和最终内容现在流经单一渲染路径,消除了生成完成时的闪烁并保留了插话消息。
- 跨模型切换:在对话中途切换 AI 提供商(例如从 Gemini 切换到 Claude)不再导致“思维块签名无效”错误。异构推理产物会自动扁平化为叙述文本,在保留上下文的同时避免不兼容的加密签名。
- 禁用工具引导:当 AI 尝试使用已禁用的工具时,它现在会收到可操作的建议(类似的已启用工具、如何启用),而不是通用的“未找到”错误。
- 响应式编辑器布局:编辑器工具栏采用交错式渐进披露——模式选择器、模型选择器、设置、议程和帮助图标会根据空间允许显示,而不会被裁剪。
- 设置颜色编码:设置部分现在使用 3 色系统——自定义部分使用强调色调,其余部分使用交替的中性色——以实现更清晰的视觉分组。
- 新手引导错误提示:免费密钥配给现在会在操作按钮下方显示描述性错误消息,而不是静默失败。
- AI Provider 设置:将“API & Provider”部分重命名为“AI Provider”以提高清晰度。
- 延长免费试用:Pro 试用期从 7 天延长至 14 天,让新用户有更多时间探索 Pro 功能。
- 乐观分支切换:在消息分支之间切换和重新加载消息现在会立即更新 UI,而无需等待存储往返。
- MCP 工具配置:Schema 自动纠错并改进了 MCP 工具配置,使工具设置更可靠。
缺陷修复
- 单条消息成本:单条消息成本现在累计匹配线程标题总额。Helper、OCR、图像生成和搜索成本现在归属于单条消息,而不仅仅显示在线程摘要中。
- 插话渲染:插话消息现在以紧凑的琥珀色标注形式显示在助手时间线内,而不会在生成完成时丢失。
- 循环检测:修复了在引用密集的回答中,URL 自然重复 3 次以上时触发的误报重复检测。
- Slate 差异对齐:修复了多行块在预览模式下的红线/绿线错位问题,此前无论块跨度如何,覆盖循环仅前进 1 行。
- Slate 删除位置:修复了插入偏移的双重计数问题,该问题曾导致删除内容渲染在配对的插入内容之后而非之前。
- Private Sync 修复:修复了 JIT 作用域请求未在代码分割块中触发的问题,以及上传后的无限同步循环。
- 新手引导流程:OAuth 流程现在能正确完成引导,触发检测支持带连字符的模式 ID,且剩余 0 天不再强制转换为 null。
- 密码重置:通过邮件链接重置密码现在会验证邮箱地址。为验证邮件过期的用户添加了重新发送验证的端点。
- 许可证等级:拥有管理员授予等级但无许可证记录的用户不再被卡在升级界面。
- 设置滚动:点击已学习页面的大脑图标现在会滚动到正确的设置部分,而不会因为上方的延迟加载部分而停止。
- Monaco 释放:修复了差异编辑器模型的释放顺序,防止出现悬空引用以及 Monaco 透过 TipTap 预览显示的问题。
- 操作指引定位:操作指引步骤现在会跳过被响应式容器查询隐藏的元素,而不是在左上角聚焦一个 16x16 像素的点。
- Kokoro TTS:修复了扩展程序中语音转文本失效的问题——ONNX 运行时检测在离线文档中失败,导致“未找到可用后端”错误。
- 自定义 API 工具保存:修复了在扩展程序中将 Agent 发现的 API 保存为自定义工具时崩溃的问题,原因是 Service Worker 环境中禁止动态
import()。 - 启动性能:修复了每次访问设置时(启动时超过 20 次)都会运行会话迁移的问题,这导致了不必要的磁盘写入和启动变慢。
- 重复存储广播:抑制了中继/服务器模式下的双重存储更改通知,该通知可能导致 UI 闪烁。
- Cairn 纹理恢复:修复了当内存中的世界缓存加载与渲染之间被剔除时纹理生成失败的问题,并修复了渲染器对附件支持的纹理显示为黑色的问题。
- 安全补丁:更新了 fast-xml-parser(通过 DOCTYPE 实体扩展的 DoS 漏洞)和 tar(硬链接逃逸漏洞)。
- MV3 合规性:将 CDN 加载的 vega-embed 替换为本地供应商包,确保所有图表渲染代码符合 Chrome Web Store 远程代码策略。
- Vega-Lite 图表:AI 现在直接在 Slate 中生成 Vega-Lite 可视化,而不是通过 CDN 加载 HTML,从而在不依赖远程脚本的情况下实现交互式图表。
- Google Drive 保存:修复了从 Slate 保存到 Google Drive 时因非 Agent Drive 处理器中的 OAuth 作用域检查过期导致的 403 错误。
- 新用户引导:修复了新用户在登录期间自动配给 API 密钥时完全跳过引导屏幕的问题。
- OpenRouter OAuth 弹窗:修复了当弹窗拦截器静默关闭 OAuth 窗口时,“正在连接...”加载动画无限卡住的问题。
- 试用横幅文案:试用横幅不再声称模型受等级限制——已更新为准确描述 Pro 功能(写入权限、图像生成、自定义模式)。
- DOCX 审阅工具栏:通过延迟滚动直到初始可见,修复了显示文档审阅控件时工具栏闪烁的问题。
- 添加到提示词覆盖层:修复了覆盖层标志被内容安全策略 (CSP) 拦截以及背景透明度与主题不匹配的问题。
- 消息编辑/重新加载状态:修复了编辑消息、重新加载响应或切换分支后内存状态过期的问题。
- 服务器登录挂起:修复了服务器登录流程中 WebSocket 存储操作失败的问题。身份验证现在已解耦,因此本地会话可以立即工作,而服务器身份在后台解析。
- WebSocket 连接挂起:修复了在初始 WebSocket 连接期间到达的 AUTH_STATE: ready 可能导致身份验证 Promise 孤立,从而阻止连接完成的竞态条件。
版本 0.9.655 (2025年2月19日)
新功能
- Slack 集成:连接您的 Slack 工作区,通过完整的 OAuth V2 授权启用 AI 驱动的 Slack 工具
- API 工具凭据:智能体发现的 API 现在可以保存为带有存储凭据的自定义 MCP 工具,实现跨对话重用
- 已保存 API 徽章:智能体创建的 API 工具在设置中显示“已保存 API”徽章,方便识别
- 对话导入:从 ChatGPT、Claude、Gemini、Perplexity 和 Grok 导入对话——上传您的导出文件,Caiioo 将转换完整的消息历史、附件和元数据
改进
- 学习到的 API 嵌套:学习到的 API 工具现在在设置中归类于可折叠部分,使组织更整洁
- Caiioo 品牌化:内置工具现在显示 Caiioo 图标,以保持视觉一致性
- 浏览器感知链接:智能体打开的 URL 现在会在您设置中选择的浏览器中启动
- Slate 云端加载:从 Google Drive 加载 Slate 文档现在会触发即时 OAuth 提示,而不是失败并显示晦涩的错误
错误修复
- DOCX 编辑:修复了跨嵌套跨度的段落运行正则匹配,解决了编辑格式化 DOCX 文本时导致内容损坏的问题
- 查找/替换安全性:恢复了在重构过程中丢失的结构化 HTML 模式保护——防止编辑损坏 XLSX/DOCX 内部标记
- 工具审批循环:修复了导致在单次智能体运行中对同一工具重复出现审批提示的竞态条件
- 陈旧身份:修复了在许可证同步期间 401 错误时未清除陈旧用户身份的问题,并在返回用户引导时增加了注销出口
Version 0.9.651 (2025年2月17日)
新功能
- 最小特权权限:Google Workspace 工具现在仅针对每项操作请求所需的精确范围,而非广泛访问权限。读取电子邮件仅请求只读权限;创建活动仅请求日历写入权限。
- 增强型权限对话框:即时授权对话框会准确显示正在请求哪些权限、为何需要这些权限,以及该操作是只读还是读写。
- 权限选择器:手动连接 Google 账户时,您可以预先选择授予哪些服务(Calendar、Gmail、Drive、Docs、Sheets、Slides)以及访问级别(只读 vs 读写)。现有连接现已支持“编辑权限”按钮。
- 图像结果:生成的图像和屏幕截图现在会显著渲染在折叠的处理步骤与最终答案之间,无需展开工具调用即可查看视觉输出。
改进
- Private Sync 安全性:并发编辑现在会下载以进行合并而非直接上传,锁定刷新会验证所有权,且清单合并可防止因过早的垃圾回收操作导致的数据丢失。
- 移除 P2P Sync:移除了 P2P 实时同步,消除了 100+MB 的冗余 WebSocket 流量并提升了扩展性能。
- 设置性能:对设置面板进行了记忆化处理(memoization)并隔离了折叠上下文,以实现更快的渲染速度。
- DOCX 渲染:改进了文档解析器中的段落渲染、编号和样式支持。
错误修复
- Google Docs 范围:修复了索引 Google Docs 时出现的“身份验证范围不足”错误 ——
index_document曾需要命名范围的写入权限。 - Google Docs 读取:修复了仅授予 Docs 权限时
read_document和get_document_info失败的问题 —— 这些操作同时需要 Drive 的读取权限。 - Calendar 复制:修复了范围注册表中缺失的
copy_event操作,该缺失曾导致无法触发即时权限请求。 - API Key 持久化:修复了在 Pro 试用激活期间,当
saveCustomMode崩溃导致设置保存路径中断时,BYOK API key 会静默丢失的问题。 - 设置重载竞态:修复了折叠/展开设置区块触发存储重载循环时,未保存的 API key 被抹除的问题。
- Chrome Identity 取消:修复了增量范围请求期间用户取消操作无法与错误区分的问题,且身份验证方法在获取 Web OAuth 刷新令牌后现在能正确转换。
- Private Sync 覆盖:修复了发生并发编辑时 Private Sync 覆盖近期轮次的问题。
- 视口截图:停止在最终响应文本上方显示视口截图。
- Agent 协调:修复了涉及轮次协调、感知和状态管理的 7 个问题。
- 修订模式 (Track Changes):修复了由于双状态变量不同步导致 slate 分解后修订模式损坏的问题。
- 文件管理器:删除和下载操作现在在所有模式下均可用,而不仅限于孤立文件。
- MCP 工具名称:修复了工具使用内部服务器 ID 而非人类可读名称的问题。
- Agenda 工具:修复了同步卡片始终显示权限缺失的问题,现已接入 Google OAuth 连接系统。
版本 0.9.642 (2025年2月16日)
改进
- 新文档创建:从“新建文件”下拉菜单创建的新 DOCX、XLSX、PDF 和 RTF 文件现在完全可编辑,支持修订跟踪和正确的格式
- Gemini 稳定性:添加了推理重复检测,以自动打破 Gemini 的思维循环,防止泄露的思维文本出现在聊天中
- 图像处理:DNG 原生照片预览现在尊重 EXIF 方向以进行正确显示,防止上传的图像出现畸变。
错误修复
- 新文档可编辑性:修复了通过“新建文件”创建的空白文档被渲染为静态预览而不是可编辑富文本编辑器的问题
- API 密钥检测:切换到您自己的 API 密钥 (BYOK) 现在立即生效,无需刷新页面
- 截图稳定性:修复了附件 ID 处理,防止截图数据丢失或损坏
- 标签页分组:修复了浏览器包含非标准窗口(例如开发工具、弹出窗口)时的崩溃问题
- 控制台噪音:移除了不必要的 llms.txt 探测,该探测导致 404 错误刷屏
- 工具超时:移除了可能干扰长时间运行的工具调用(如使用 Gemini 生成 4K 图像)的脆弱保活变通方法
- 提示词缓存:修复了在提示词缓存优化期间多模态内容(图像/截图)丢失的问题
内部
- 在错误处理、类型安全和架构分层方面进行了重大的代码库质量改进
- 将核心文档解析器模块化为专注且易于维护的模块
版本 0.9.641 (2025年2月14日) - 情人节快乐!
改进
- 模型选择器层级勋章:将硬编码的推荐徽章替换为 5 个 API 驱动的层级勋章(最适合 Caiioo、质量、可靠性、速度、价值),直接根据基准测试数据显示金/银/铜排名
- 技能系统:技能现在拥有“恢复默认”按钮,用于重新添加内置技能
- 提示词缓存:进一步优化了提示词缓存以节省成本
错误修复
- 浏览器兼容性:OAuth 登录和自动连接现在可以在 Vivaldi 和其他非 Chrome 浏览器中正常工作
- 成本追踪:修复了取消运行可能覆盖成本和使用数据的竞态条件;现在取消和报错的运行也会保留成本/使用数据
- 私有同步:重写了 purgeAllStorage 以实现彻底清除,修复了同步监听器竞态,整合了私有同步 UI
- 国际化 (i18n):为 conversation.html 弹出页面添加了缺失的翻译初始化
- 安全:修复了依赖项漏洞 (qs, @casl/ability, axios, markdown-it)
- 基准测试页面:将基准测试页面后端迁移至 Cloudflare 验证
版本 0.9.65 (2025年2月13日)
改进
- MiniMax M2.5 基准测试:完整的基准测试套件已完成 — 工具准确率 91%,可信度 95%(排名第 2),综合排名第 5,具有黄金价值等级
- 模型智能 API:将默认响应限制从 100 增加到 500,确保所有获得徽章的模型对客户端可见
错误修复
- 缺失的模型徽章:修复了 35 个已获得分级徽章(金/银/铜)的模型未出现在扩展模型列表中的问题 — 包括 Claude Opus 4.6(综合金奖)、Claude Sonnet 4.5(综合银奖)和 Claude Haiku 4.5(综合铜奖)。根本原因:API 默认仅返回按可信度排序的前 100 个模型,但分级是根据所有 367 个模型计算的。按可信度排名前 100 之外的模型其徽章被静默丢弃。
版本 0.9.64 (2025年2月12日)
改进
- Ollama 提供商功能对齐:实现与 OpenRouter 的完全功能对齐 —— 支持中止信号(abort signal)、错误处理、推理详情、已解析的模型 ID,以及通过流式混合(streaming mixin)处理 think 标签。
- AbortSignal 传播:子进程的 SIGTERM/SIGINT 现在会取消正在进行的 LLM API 调用。
- 构建时 Schema 验证:在构建时进行设置 Schema 验证,以捕获缺失的
SETTING_METADATA条目。 - 平台能力缓存:对平台能力进行缓存以提升性能,不再在每次访问时重新计算。
- 网站国际化 (i18n):信任页面和定价重构的翻译已同步至全部 22 个语种。
修复
- 网站身份验证:将旧版 Supabase 验证替换为直接调用 Cloudflare Worker API,用于 Google 登录、邮箱登录、注册及密码重置。
- Stripe 结账地区设置:通过将
navigator.language(例如en-US)映射至 Stripe 支持的地区并设置auto为备选项,修复了结账和门户页面中的“无效地区”错误。 - 密码最小长度:在服务器注册、密码重置和网站重置页面统一同步了 12 个字符的最小长度限制。
- 私有同步配置文件去重:登录时现在会检测并移除由早期同步漏洞导致的重复配置文件。
- 状态管理器初始化竞态:修复了 state-manager 中的初始化竞态条件。
- 智能体子进程清理:在智能体终止时清理僵尸子进程。
- 标签组/存储 API 保护:在各平台对标签组(tab group)和存储(storage)API 进行了妥善的保护处理。
- 地理位置错误处理:对地理位置权限错误进行了平滑处理。
- OAuth 刷新锁定:防止并发的 OAuth 令牌刷新尝试。
- 设置保存互斥锁:并发的设置保存操作不再互相覆盖。
- 智能体 JSON 解析隔离:格式错误的智能体输出不再导致解析器崩溃。
- 线程搜索竞态:修复了线程搜索结果中的竞态条件。
- 流式版本过期检查:在流式响应期间检查版本是否过期。
- 内容脚本超时:为内容脚本的消息传递增加了超时机制。
- 多模态上下文修剪:改进了存在多模态内容时的上下文修剪逻辑。
版本 0.9.63 (2025年2月12日)
修复
- 私密同步模式变量:修复了旧版设置迁移在每个同步周期运行的问题,该问题曾导致最近的本地编辑(如模式变量更改)被过时的 Drive 数据静默覆盖
版本 0.9.62 (2025年2月12日)
新功能
OpenRouter OAuth 一键设置
- PKCE 密钥创建:全新的 OpenRouter OAuth 一键流程,允许用户在不离开 Caiioo 的情况下创建并关联 API 密钥。
- 重新设计的入门体验:通过集成 OpenRouter OAuth,简化了新用户入门和升级流程。
- 隐私警告:免费模型入门选项现在会显示清晰的隐私/训练数据警告。
细粒度 Private Sync
- 逐项同步:MCP 服务器、工具授权、配置文件、技能、模式、覆盖设置和提醒现在以单个项目为单位进行同步,而不是覆盖整个集合。
- 逐键设置同步:设置按键值进行细粒度同步,防止远程同步覆盖无关的本地更改。
- 去重读取:对进行中的 WebSocket 存储读取进行去重,以减少不必要的网络流量。
改进
- 模式设置用户体验:覆盖设置现在会自动保存,“恢复默认值”可以正确恢复已删除的模式变量。
- 响应式 Composer:技能按钮在宽度较窄时会折叠为仅图标模式;移除了技能栏的布局间距。
- 支持工单:现在会自动包含构建版本号和日期时间。
- Slate 搜索:Slate 工具新增了
search_document操作。
错误修复
- Google Slides/Sheets OAuth:现在会正确抛出
OAuthAuthorizationRequiredError而不是返回设置文本,从而实现即时授权。 - 配置工具 UI 刷新:通过配置工具进行的 Agent 变更现在会广播
STORAGE_CHANGED,以便 UI 立即更新。 - 工具授权弹窗:修复了 React hooks 排序违规问题(将 useMemo 置于提前返回之上)。
- Localhost HTTPS:API 集成工具现在可以处理本地 HTTPS 服务器的自签名证书。
- 模式变量持久化:修复了 i18n getter 属性在存储前未实例化的逻辑,避免了变量在重新加载时消失的问题。
- Slate 线程安全:解决了 Slate 工具在并行 AI 轮次中导致重复 Slate 的竞态条件。
- Slate DOCX:修复了修订追踪中的删除可见性和基线损坏问题。
- Private Sync 稳定性:消除了同步冲突导致的编辑回弹和消失现象。
版本 0.9.61 (2025年2月10日)
改进
Slate 编辑器国际化
- 翻译后的工具栏和菜单:所有 Slate 编辑器工具栏按钮、上下文菜单和对话字符串现已完全翻译
错误修复
- OAuth 获取超时:所有 OAuth 令牌交换和刷新请求现在都有 15 秒的超时限制,防止在网络停滞时出现无限挂起
- GitHub 私有电子邮件:修复了当用户的个人资料电子邮件为私有时 GitHub 连接失败的问题(现在从
/user/emailsAPI 获取) - OAuth 连接对话框:通用化了 OAuth 连接对话框并修复了多个令牌/连接错误
- 密码长度一致性:在所有注册和重置界面中同步了 12 个字符的最低密码要求
Version 0.9.6 (2025年2月8日)
新功能
国际化 (20+ 语言)
- 全面 i18n 支持:Caiioo 现在支持 20 多种语言,包括英语、西班牙语、法语、德语、日语、韩语、中文、阿拉伯语、希伯来语、印地语等
- RTL 语言支持:为阿拉伯语、希伯来语和乌尔都语提供完整的从右至左布局支持
- UI 语言设置:在设置中选择您偏好的语言 —— 所有 UI 元素、工具标签和状态消息均已翻译
改进
设置面板性能
- 延迟加载分段:设置面板各部分现在按需加载,减少了初始渲染时间
- 模块化存储:设置按分段键值进行细粒度存储,而非单一的整体数据块,提升了读写性能
- 类型化 Getter:内部设置访问使用强类型 Getter,并具备变更粒度追踪功能
Slate 修订追踪可靠性
- 17 项修订管理器修复:全面强化了修订追踪系统,涵盖差异计算、接受、拒绝和持久化
- 纯文本差异对比:修订更改现在对比纯文本而非原始 markdown,生成更整洁、更准确的变更高亮
- 持久化用户更改:用户进行的修订追踪现在可以在页面刷新后保留
- 竞态条件修复:在保存前强制固化修订追踪,以防止数据丢失
缺陷修复
- Service Worker 崩溃:将 112 个以上的动态
import()调用替换为静态导入,以防止 Chrome service worker 崩溃 - 模式欢迎消息:修复了模式欢迎消息中的语言、已配置密钥检测及持久化问题
- Google 工具账号选择:账号选择器现在可以动态反映实际连接的账号
- DOCX 嵌套列表:修复了嵌套列表往返转换时的显示标记和导出损坏问题
- LaTeX 数学渲染:修复了货币美元符号转义导致以数字开头的 LaTeX 数学表达式中断的问题
- 标签组创建:将延迟标签组创建推迟到实际使用网络浏览工具时
- Agenda OAuth:重新抛出 OAuth 错误,以便正确触发即时授权
- 设置持久化:为 6 个此前静默保存失败的设置项添加了缺失的元数据条目
版本 0.9.5 (2025年2月6日)
安全加固
- 内容脚本来源验证:从网页发送到扩展程序的消息现在仅限于 caiioo.ai 来源,通过严格的同源检查防止跨域消息注入
- CSP 收紧:从扩展程序页面的内容安全策略中移除了仅用于开发的 localhost 脚本源
- 身份验证响应范围限定:扩展程序身份验证响应现在发送到特定的页面来源,而不是广播到所有框架
版本 0.9.4 (2025年2月4日)
新功能
多语言语音转文本
- 语言选择:在设置中选择您的 STT 语言,以实现准确的非英语语音输入
- 支持 90 多种语言:与 Whisper 和 ElevenLabs 配合使用,实现全面的语言覆盖
实时语音活动检测
- 低延迟 VAD:新的 Silero VAD v5 集成可实时检测语音,延迟极小
- 更智能的录音:录音根据语音活动自动开始和停止
- 减少误报:更好地分辨语音和背景噪音
建议可见性切换
- 隐藏/显示建议:新的切换开关,可在您想要更简洁的界面时隐藏 AI 后续建议
- 持久状态:您的偏好设置会被保存并在会话间记住
改进
修订跟踪自动烘焙
- 基于差异的跟踪:使用差异算法实现更高效的更改跟踪
- 自动保存:更改会定期保存,以防止在长时间编辑会话期间丢失数据
- 退出时快照:退出修订跟踪模式会自动烘焙所有待处理的更改
增强的提供商流式传输
- Gemini 改进:为 Google Gemini 模型提供更好的流式传输和推理能力
- 一致的行为:在 OpenRouter 和原生提供商之间统一了流式传输行为
版本 0.9.3 (2025年1月31日)
新功能
引导式新手教学
- 交互式 UI 导览:新的分步导览在用户输入 API 密钥后引导其了解界面的每个部分
- 三个阶段:涵盖编辑器(11 步)、设置面板(7 步)和模式系统(5 步)
- 聚光灯效果:每一步都会用聚焦聚光灯突出显示相关的 UI 元素
- 对话式引导:AI 引导的资料构建,从一开始就个性化您的体验
提示词历史
- 访问之前的提示词:您最近的提示词会被保存,并可以在编辑器中访问
- 快速重用:轻松重用或修改之前的消息
广告拦截级别
- 细粒度控制:广告拦截现在支持多个级别,而不仅仅是开启/关闭
- 选择您的保护:选择适合您浏览需求的拦截级别
DOCX 审阅工具栏
- 修订控制:查看带有修订记录的 Word 文档时出现新工具栏
- 接受/拒绝操作:轻松审阅并解决文档编辑
改进
线程保留设置
- 可配置清理:设置在自动清理前保留旧线程的时间
- 存储管理:更好地控制您的对话历史记录
Caiioo 动画
- 性能优化:通过改进渲染实现更平滑的动画
- 湿度效果:显示水饱和度的新视觉叠加层
- 直接粒子渲染:通过优化的粒子绘制实现更清晰的视觉效果
配置文件切换
- 增强的状态管理:通过改进的协议处理实现更可靠的配置文件切换
- 更好的同步:配置文件更改在扩展程序中正确同步
Google 日历
- 令牌管理:改进了日历操作的访问令牌处理
- 更可靠的同步:为日历集成提供了更好的 OAuth 流程
版本 0.9.2 (2025年1月26日)
新功能
广告与追踪器拦截
- 内置广告拦截器:使用 Ghostery 引擎和 MV3 兼容的 declarativeNetRequest 拦截广告和追踪器
- 设置切换:从设置面板启用或禁用广告拦截
- 过滤器列表更新:自动缓存过滤器列表以实现可靠拦截
即时 Google 权限请求
- 增量授权:Google 工具权限现在仅在需要时请求,而不是预先请求
- 更清晰的范围管理:缺失的权限范围会触发有用的错误消息,并提供授予访问权限的选项
- 更好的隐私:仅请求每个工具所需的特定 Google 权限范围
改进
Caiioo 动画
- 增强的物理效果:改进了粒子的动力学,具有更好的海拔、速度和密度力
- 更平滑的流动:粒子在生成时现在遵循通道方向,减少了聚集
- 真实的堆叠:当被鹅卵石或水坝阻挡时,粒子会自然堆叠
Google OAuth 流程
- 更快的登录:现在优先检索 ID 令牌以实现更快的身份验证
- 提高可靠性:更好的令牌处理减少了非 Chrome 浏览器上的验证失败
引导与设置
- 预览模式:在不清除用户数据的情况下测试引导流程
- 更简洁的免费层级:移除了已弃用的已配置 API 密钥恢复 UI
内部
- 小游戏系统:用于交互式介绍体验的新 MinigameContainer 基础设施
- 隐藏彩蛋:小游戏可见性状态在会话间持久化
版本 0.9.1 (2025年1月25日)
新功能
交互式水流模拟
- Caiioo Intro:加载界面新增交互式流体模拟——观察水流通过动态 S 形通道
- 可拖动鹅卵石:移动鹅卵石以改变水流方向并创建堤坝
- 泥沙动力学:真实的侵蚀与沉积效果——流速快的水流会带走泥沙,流速慢的水流则会沉积泥沙
- 主题自适应:水流颜色会自动匹配您选择的主题色调
Vega/Vega-Lite 图表支持
- 交互式可视化:直接在 Slate 中查看和编辑 Vega 及 Vega-Lite 图表
- 数据可视化:创建柱状图、折线图、散点图以及复杂的叠加可视化图表
- 规范编辑:编辑 JSON 规范并实时查看渲染效果
Mermaid 图表支持
- 图表类型:创建流程图、序列图、类图、状态图等
- 实时预览:编辑 Mermaid 语法时可获得即时视觉预览
- 导出选项:图表以 SVG 格式渲染,确保在任何尺寸下都能清晰输出
文件创建模板
- 快速创建菜单:在 Slate 中创建文件时新增下拉菜单,提供常用文件类型的模板
- 模板分类:涵盖 Markdown、代码文件、数据格式、图表等
- 一键启动:以正确的结构直接开始编写新文档
改进
API 错误处理
- 视觉通知:API 错误现在以可关闭的 Toast 通知形式显示
- 自动清除:非关键错误(如取消操作)会在几秒后自动清除
- 更清晰的消息:更优质的错误提示有助于更快地识别并解决问题
平台能力
- 智能功能检测:现在会自动检测需要特定平台支持的功能(如 macOS 上的 Apple Calendar)
- 平滑降级:工具会根据您的环境进行自适应,而非静默失败
- Apple 工具改进:Apple Reminders 现在支持取消完成(uncomplete)和列表操作
Safari 及非 Chrome 浏览器
- 优化 OAuth 流程:改进了 Google 登录的浏览器检测机制
- 回退机制:非 Chrome 浏览器现在拥有更可靠的身份验证路径
版本 0.9.0 (2025年1月22日)
新功能
自动数据清理
- 存储管理:旧线程和附件会根据您的保留偏好自动清理
- 可配置策略:设置自动清理前的数据保留时间
GitHub 同步
- 备份到 GitHub:将您的 Caiioo 数据同步到 GitHub 仓库,用于备份和跨设备访问
- 智能冲突解决:来自多个设备的更改会自动合并而不会丢失数据
- 选择性同步:使用
.gitignore风格的模式控制同步哪些数据
GitHub 工具
- AI GitHub 集成:AI 现在可以代表您与 GitHub 交互——创建 issue、浏览仓库、管理拉取请求等
- 仓库浏览:让 AI 探索代码库、查找文件并理解项目结构
改进
浏览器自动化
- 增强的页面交互:在复杂的网页上实现更可靠的点击、滚动和表单填写
- 更智能的工具选择:AI 现在能更准确地为每个任务选择合适的工具
文档处理
- 更好的 Word 文档:改进了对 DOCX 文件中表格、列表和格式的处理
- Google Slides:对幻灯片格式、形状和布局有更多控制权
设置与 UI
- 扩展的设置面板:更多配置选项,组织更合理
- 改进的线程列表:更好地对对话进行排序和过滤
- 位置权限:在为基于位置的查询授予位置访问权限时,流程更清晰
版本 0.8.9 (2025年1月19日)
新功能
Google 幻灯片集成
- AI 驱动的演示文稿:新的 Google 幻灯片工具允许 AI 创建、读取和修改幻灯片演示文稿
- 完全幻灯片控制:创建幻灯片、添加文本框、图像、形状和表格
- 模板支持:使用内置模板或从空白演示文稿开始
- 协作编辑:适用于您现有的 Google 账户连接
改进
代码质量
- TypeScript 修复:清理了整个代码库中的类型错误和未使用的导入
- 测试覆盖率:更新了测试夹具以匹配当前的类型定义
版本 0.8.8 (2025年1月17日)
新功能
Resemble.ai 文本转语音
- 专业语音合成:新的 Resemble.ai 集成,用于高质量的 AI 语音生成
- 流式音频:用于响应式语音输出的实时音频流
- 可配置语音:从多个专业语音选项中选择
- 截断警告:当长文本被截断以进行合成时,提供清晰的反馈
日历同步服务
- 后台同步:与 Google 日历的自动日历同步
- 增量更新:为了效率,仅同步已更改的事件
- 基于闹钟的调度:使用 Chrome 闹钟进行可靠的同步调度
改进
桌面应用 (Electron)
- 唤醒检测:系统现在检测您的 Mac 何时从睡眠中唤醒并自动刷新 OAuth 令牌
- 改进的可靠性:即使在长时间睡眠后,OAuth 连接也能保持新鲜
富文本编辑器输入
- 增强的组合:改进了消息输入,具有更好的格式支持
- 标签页自动补全:响应更快的标签页引用建议
版本 0.8.71 (2025年1月15日)
新功能
对话线程搜索
- 搜索您的对话:线程列表新增搜索框,可根据标题或内容快速查找对话线程
- 即时过滤:输入即可过滤——匹配的线程会立即显示并带有搜索高亮
- 智能防抖:搜索经过优化,即使有数百个线程也不会出现延迟
物理模拟工具
- AI 驱动的物理:新增物理工具,允许 AI 执行物理计算和模拟
- 抛体运动:计算轨迹、预测碰撞并解决运动问题
- 结构分析:分析结构的应力、梁弯曲、屈曲和稳定性
- 材料属性:内置常用工程材料数据库(钢、铝、木材、混凝土等)
- 物理公式:动能、动量、力、冲量计算
Cairn World Builder 增强功能
- 物理引擎:完整集成 Rapier3D 物理引擎,实现逼真的模拟
- 关节与约束:在物体之间创建铰链、滑块、球形接头和固定连接
- 传感器与触发器:定义传感器区域,检测物体的进入/退出
- 角色控制器:具有重力、跳跃和碰撞响应的第一人称角色
- 游戏模式:具有固定时间步长的实时物理,用于交互式探索
改进
Private Sync v2
- 增量同步:每个线程和附件现在单独同步,而不是作为单个大文件同步
- 更快的同步:仅上传更改的项目,大幅减少大型库的同步时间
- 更好的冲突处理:逐项向量时钟(vector clocks)可实现更精确的合并冲突解决
- 减少 API 调用:智能差异对比意味着更少的 Google Drive API 请求
同步可靠性
- 扩展程序/服务器一致性:修复了附件存储,以在两个平台上正确跟踪向量时钟
- 墓碑过滤:已删除的配置文件现在在扩展程序和服务器上都能被正确隐藏
版本 0.8.70 (2025年1月14日)
新功能
私密同步 (FREE 档次)
- 跨设备同步:通过 Google Drive 在所有设备上同步您的对话线程、设置和附件
- 端到端加密:所有同步数据在离开设备前都会使用您的密码进行加密
- 自动后台同步:每 30 秒自动同步更改,并具备智能防抖功能
- 冲突解决:采用 CRDT 风格的向量时钟,确保更改在设备间正确合并
改进
私密同步效率
- 减少轮询:同步间隔从 3 秒增加到 30 秒,以减少 API 调用
- 智能防抖:在更改稳定后等待 10 秒再进行同步
- 运行中保护:正在由 AI 处理的对话线程在完成前将被排除在同步之外
版本 0.8.69 (2025年1月14日)
新功能
Slate 修订导航
- 在更改之间导航: 新的导航按钮,用于在编辑器中的待处理修订块之间跳转
- 更改计数器: 可视化指示器显示待处理修订中的当前位置(例如,“2 / 5”)
- 键盘快捷键: 使用 Alt+Up/Down 快速在块之间导航,无需离开键盘
改进
文档处理
- 远程 OCR 后备: 当本地 PDF 文本提取失败或效果不佳时,文档会自动通过云端 OCR 处理以提高准确性
- 处理状态: 实时反馈显示文档何时正在远程处理
推理模型支持
- 多轮推理: 更好地在对话轮次间缓存推理细节,提高长思考模型的连续性
- 更简洁的消息: 内部系统注释现在从渲染的消息中剥离,防止指令泄露
版本 0.8.68 (2025年1月11日)
新功能
长期记忆
- 上下文持久化: AI 现在可以在对话间保持长期记忆,记住关于您的偏好和工作流程的重要上下文
- 使用情况跟踪: 增强了对 Token 使用量和成本的跟踪,并提供详细日志
模型智能
- 智能模型选择: 新的模型智能功能有助于根据您的使用模式识别最优模型
- 排名系统: 模型按性能和价值指标进行排名
改进
存储可靠性
- 跨平台存储: 模型缓存、工具批准和已学习页面现在可以在扩展程序、服务器和 LAN 模式下可靠工作
- 身份验证超时: 修复了连接到中继服务器时可能出现的挂起问题 - 现在会在 5 秒后优雅超时,而不是无限期等待
- 设置加载速度: 设置和模型选择器在扩展程序重新加载后加载速度更快
内容分页
- 正确的页面大小: 网页内容现在根据模型实际的上下文窗口(例如 131k tokens)进行拆分,而不是硬编码的默认值。这意味着在使用高上下文模型时,您会看到更大的页面块和更少的页数。
错误修复
- API Key 持久化: 修复了在短暂启用然后禁用 LAN 模式后 OpenRouter API key 会被“遗忘”的问题
版本 0.8.67 (2025年1月7日)
新功能
Kokoro TTS - 本地神经文本转语音
- 高质量语音: Kokoro 是一个本地神经 TTS 模型,提供多种自然发音的语音
- 无需 API Key: 完全在设备上使用 WebGPU/WASM 运行 - 无需云服务或 API Key
- 多种语音: 从美式、英式和其他口音选项中选择,并提供男女声变体
- 长文本支持: 通过流式合成正确处理长文本 - 不再在 30 秒时截断
- 纯净语音: 在朗读前自动剥离 Markdown 格式(粗体、斜体等)
改进
语音设置
- 统一语音部分: TTS 和 STT 设置合并在更简洁的布局中
- 语音预览: 在使用前测试所选语音
版本 0.8.66 (2025年1月7日)
改进
设置面板搜索
- 过滤搜索: 设置顶部新增搜索框,可通过关键字快速过滤部分
- 即时结果: 输入即可过滤 - 匹配的部分会立即出现
- 键盘友好: 打开设置时自动聚焦搜索框
MCP 服务器可靠性
- 启动验证: MCP 服务器现在在返回成功前会验证是否正在运行
- 更好的错误消息: 当 MCP 服务器在启动时崩溃时,会显示实际错误而不是通用失败提示
- 修复示例: 更正示例包名称以使用
@modelcontextprotocol/server-*(而非@anthropic/mcp-server-*)
macOS 应用身份验证
- 自验证 Token: 修复了在 WebSocket 状态同步前添加 MCP 服务器时的 401 错误
- 更快的验证: HTTP 端点不再需要等待 WebSocket 连接
版本 0.8.65 (2025年1月6日)
新功能
ElevenLabs 语音集成 (BYOK)
- 云端 TTS:使用 ElevenLabs 的高质量文本转语音——从多种声音和模型中选择
- 云端 STT:具有实时流式传输(~150ms 延迟)和 90 多种语言支持的 Scribe 转录
- 声音选择:直接在设置中浏览并从 ElevenLabs 声音库中选择
- 模型选项:在 Flash v2.5(极速 ~75ms)、Turbo v2.5 或 Multilingual v2(最佳质量)之间选择
- 自带密钥:使用您的 ElevenLabs API 密钥——Caiioo 不收取额外费用
多语言 Whisper 模型
- Whisper Tiny Multilingual:支持 99 种语言的新本地 STT 选项(~39MB 下载)
- 与仅限英语版大小相同:与 Whisper Tiny English 同样紧凑的 39MB 大小
- 语言检测:自动检测所说的语言
Google Docs 增强读写
- 默认 Markdown:写入时文本现在默认格式化为 markdown。使用
useMarkdown: false进行保留现有格式的纯文本插入。 - 丰富格式:将 markdown 标题、加粗、斜体、删除线和链接转换为原生的 Google Docs 样式
- 列表与表格:支持带嵌套的有序/无序列表和 markdown 表格
- 建议追踪:待处理的建议通过语义标签显示:
<ins>添加的文本</ins>表示插入,<del>删除的文本</del>表示删除。相邻标签表示替换。 - 行内评论:评论以行内形式出现并带有作者署名:
<comment author=\"姓名\" on=\"引用文本\">内容</comment>,并带有用于线程的嵌套<reply>标签
改进
Gemini 扩展思维
- 改进的思维签名:更好地处理流式分块中的 Gemini thought_signature,提高了多轮工具使用中扩展思维的连续性
版本 0.8.64(2025 年 1 月 5 日)
新功能
Google Sheets 单元格元数据
- 读取超链接与备注:使用
includeMetadata: true可检索单元格中的超链接、备注和数据验证规则 - 添加超链接:新增
update_cell_metadata操作,用于添加带有自定义显示文本的可点击超链接 - 添加备注:以编程方式为单元格附加备注/评论
- 数据验证:在单元格上创建下拉菜单、数字范围、文本验证和自定义公式规则
Safari 平铺(macOS)
- 智能窗口定位:从侧边栏打开链接时,Safari 窗口会自动定位在侧边栏旁边,以便于并排浏览
- 屏幕空间优化:平铺逻辑会根据可用屏幕空间计算 Safari 的最佳放置位置
- 模式切换时重新平铺:当侧边栏更改模式时,Safari 窗口会自动重新定位
macOS 侧边栏中的复制/粘贴
- 全面支持复制/粘贴:复制和粘贴功能现已可在 macOS 侧边栏应用中稳定运行
- 系统键盘快捷键:标准的 ⌘C/⌘V 快捷键可按预期工作
改进
macOS 服务器可靠性
- 信号处理:改进了对管道信号的处理,以防止应用意外终止
- 重启可靠性:服务器停止和重启操作现已更加可靠,并具备适当的清理机制
- 连接稳定性:通过重试逻辑和指数退避算法,更好地处理 OAuth 令牌刷新
Safari 扩展
- 稳定的浏览器 ID:Safari 扩展现在会生成稳定的浏览器 ID,以防止重新连接时出现重复条目
- 更简洁的重新连接:服务器端浏览器注册使用客户端提供的稳定 ID,以实现更简洁的重新连接处理
模型选择器
- 滚动至选中项:打开模型下拉菜单时,现在会自动滚动至当前选中的模型
macOS 应用中的标签页引用
- 支持侧边栏:标签页引用和上下文现在不仅适用于 Chrome 扩展,也适用于原生 macOS 侧边栏
版本 0.8.63 (2025年12月31日)
新功能
语音输出 (文本转语音)
- 朗读:AI 回复现在可以使用 Microsoft Edge TTS 朗读
- 自动播放选项:在设置中启用新 AI 回复的自动朗读
- 速度控制:将播放速度从 0.5x 调整到 2x
- 暂停/恢复:通过每条消息上的暂停和恢复按钮控制播放
本地语音转文本 (Whisper)
- Whisper 升级:选择加入本地 Whisper 转录以获得更准确的语音输入
- 模型下载:下载 Whisper Tiny 模型 (~40MB) 以供离线使用
- 隐私:音频在本地处理,绝不发送到外部服务器
- 回退:如果 Whisper 不可用,则回退到 Web Speech API
统一议程工具
- 单一工具:新的
agenda工具整合了日历和提醒操作 - 多提供商:适用于 Google Calendar、Apple Calendar、Apple Reminders 和 Caiioo 提醒
- 对智能体更简单:一个工具界面即可满足所有调度需求
改进
设置面板
- 持久化折叠状态:各部分的展开/关闭状态现在可以在会话间记住
- 语音设置:用于配置 TTS 和 STT 偏好的新部分
版本 0.8.62 (2025年12月31日)
新功能
DOCX 列表支持
- 编号列表: 带有编号列表的 Word 文档现在可以正确渲染并保持适当格式
- 项目符号列表: 项目符号列表被保留并准确显示
- 嵌套列表: 多级列表缩进在 HTML 预览中得到维护
电子表格 CSV 导出
- 导出为 CSV: XLSX 文件现在可以导出为 CSV,以便于数据提取
- 格式选择: 下载电子表格附件时,可在 XLSX 或 CSV 之间选择
版本 0.8.61 (2025年12月30日)
新功能
工具审批工作流
- 交互式审批:某些工具现在在执行前需要用户审批——您将看到一个弹窗,要求批准或拒绝该操作
- 状态跟踪:工具执行现在会在时间轴中显示“等待审批”和“已拒绝”状态
- 默认安全:敏感操作在继续之前会等待明确的用户许可
当前位置变量
- {{currentLocation}}:用于将您当前的位置上下文添加到提示词中的新变量
- 地理位置权限:首次使用时需要浏览器地理位置权限
- 上下文感知:非常适合基于位置的查询,例如“我附近的餐厅”或旅行规划
批量会话管理
- 多选模式:切换选择模式以一次选中多个会话
- 批量删除:通过单个操作删除选定的会话
- 批量归档/导出:同时归档或导出多个会话
Slate 中的图像查看器
- 专用查看器:图像现在会在 Slate 内的全屏查看器中打开
- 缩放控件:放大/缩小并平移大图
- 下载选项:用于在本地保存图像的快速下载按钮
改进
推理显示
- 更好的聚合:模型思考/推理块现在可以正确合并,不会重复
- 更简洁的显示:来自扩展思考模型的推理内容显示更加可靠
Ollama 集成
- 流式推理:来自本地 Ollama 模型的推理/思考内容的实时流式传输
- 更好的模型处理:提高了与 Mistral 模型的兼容性以及对严格消息排序要求的支持
附件管理
- 孤立文件清理:设置中新增对话框,用于管理未链接到任何会话的孤立附件
- 分配到会话:将孤立附件移动到现有会话中
- 批量删除:清理孤立文件以释放存储空间
Slate 默认设置
- 默认 Markdown:在创建新 Slate 且未指定类型时,现在默认格式为 markdown (.md)
版本 0.8.6 (2025年12月19日)
新功能
浏览器自动化等待操作
- 离散等待类型: 浏览器自动化中的新
wait操作,具有 4 种专门的等待模式:timeout- 简单延迟(默认 1000ms,最大 30000ms),用于基本计时selector- 等待元素出现或消失(用于加载动画/加载器)network_idle- 等待 fetch/XHR 请求稳定(仅限扩展程序)animation- 等待 CSS 动画和过渡完成
- 智能元素可见性: 选择器等待检查 display、visibility、opacity 和 offsetParent 以进行准确的可见性检测
改进
浏览器自动化架构
- 统一脚本执行: 新的
executeInPage抽象确保了在 Chrome 扩展程序和中继/服务器上下文之间的一致行为 - MAIN 环境执行: 为需要拦截页面级 JavaScript (fetch, XHR) 的操作提供正确的 MAIN 环境脚本执行
- 优雅降级: 仅限扩展程序的功能现在在以中继模式使用时,提供带有替代方案的有用错误消息
错误修复
OAuth Token 刷新
- Chrome 扩展程序 Token 刷新: 修复了 Chrome 缓存的 OAuth Token 未能正确刷新的陈旧 Token 问题。Token 现在会被验证,陈旧 Token 在重试前会被清除。
- PKCE 授权流程: OAuth 弹出窗口现在使用带有 PKCE 的授权码流程,而不是隐式流程,从而在无需客户端密钥的情况下支持正确的刷新 Token。
- 直接 Token 刷新: 带有刷新 Token 的连接现在可以直接使用 Google 的 Token 端点进行刷新,无需后端服务器。
- Token 验证: 添加了 Token 验证步骤,以便尽早捕获已撤销/无效的 Token 并触发自动重新身份验证。
版本 0.8.5 (2025年12月19日)
新功能
Apple 日历集成
- 原生日历访问:新的 Apple 日历工具通过 EventKit 提供对 macOS 日历的快速原生访问
- 统一议程:来自所有连接账户(Google Calendar + Apple Calendar)的提醒和日历事件的合并视图
- 多账户支持:同时从多个 Google Calendar 账户和 Apple 日历中提取事件
学习到的页面
- 智能页面学习:通过捕获特定网站的结构来教导 Caiioo
- URL 模式匹配:学习到的模式会自动应用于同一站点上的类似页面
- DOM 快照存储:捕获的页面结构有助于 AI 更好地理解和与复杂的 Web 应用交互
RTF 文档支持
- 富文本编辑:直接在 Slate 中上传和编辑 RTF(富文本格式)文档
- 双向转换:在保留格式的同时在 RTF 和 HTML 之间转换
- 导出选项:将编辑后的文档下载为 RTF,以便在 Pages、Word 或其他文字处理器中使用
改进
桌面应用安全
- 中继身份验证:扩展程序与桌面服务器之间安全的 HMAC-SHA256 身份验证
- 每用户令牌:身份验证令牌现在与用户身份绑定,以实现多用户安全
- 受保护的端点:所有敏感的 API 端点现在都需要身份验证
性能
- Swift 助手:用于 Apple Reminders、Calendar 和 Notes 的原生 Swift 二进制文件提供比 AppleScript 快 10 倍的访问速度
- 直接调用:在桌面上下文中运行时,Apple 工具绕过 HTTP 中继以降低延迟
- 共享实用程序:整合的中继 API 客户端消除了代码重复
错误修复
- 日历事件去重:出现在多个日历中的事件现在在统一视图中被正确去重
- 提示词缓存:修复了在令牌估算期间缓存控制标记被剥离的问题
版本 0.8.45 (2025年12月18日)
新功能
- 图像去重: 当您在对话中多次上传同一张图片时,AI 现在会将其识别为重复并引用原始图片,而不是再次处理。这节省了上下文 Token,并帮助 AI 理解您指的是同一张图片。
改进
- 文档去重: 改进了跨源文档匹配 - 无论文档内容来自用户上传、Gmail 附件还是网页摄取,现在都能被识别为同一文档。
错误修复
- PDF 身份验证错误: 修复了获取受保护 PDF 时身份验证错误(401, 403)被掩盖为通用提取失败的问题。实际的身份验证错误现在会正确显示,并附带指导建议。
版本 0.8.44 (2025年12月18日)
错误修复
- 重新加载/重新生成按钮: 修复了点击助手消息上的重新加载时会显示旧回复而不是正在生成的新回复的问题。UI 现在在流式传输期间会正确切换到新分支。
改进
- 上下文窗口管理: 所有分页和上下文计算中现在一致使用更保守的 Token 估算(3 字符/Token),减少了大型网页导致上下文溢出错误的可能性。
版本 0.8.43 (2025年12月17日)
改进
时间轴与推理显示
- 完成时自动折叠: 推理块和过程时间轴在生成完成后自动折叠,保持对话整洁且仍可访问
- 中间思考可见: Agent 在工具调用之间的“大声思考”现在显示在时间轴中,从而更好地洞察 Agent 的决策过程
- 工具操作标签: 工具调用现在在标签中显示具体操作(例如,“Web Browse → click” 而不仅仅是 “Web Browse”)
工具结果
- 截图显示修复: 截图和图片不再在工具结果中自动展开 - 只有渲染的文本内容(如搜索结果)会自动展开
错误修复
- Ollama CORS: 修复了从 Chrome 扩展程序使用 Ollama 时的连接问题 - CORS 标头现在被自动处理
版本 0.8.41 (2025年12月15日)
改进
- 类型安全:服务器存储适配器现在对话题、技能、个人资料、MCP 服务器和许可证信息使用正确的 TypeScript 类型,而不是
any - 构建系统:备份目录现在通过
caiioo_BACKUP_DIR环境变量选择性加入(不再是硬编码)
版本 0.8.4 (2025年12月15日)
新功能
DNG/RAW 图像支持
- 相机 RAW 文件: 直接从您的相机或照片库上传 DNG (Digital Negative) 文件
- 自动预览提取: 从 RAW 文件中提取嵌入的 JPEG 预览以进行快速处理
- 保留原始质量: 在 AI 使用高质量预览的同时保留原始 RAW 数据
改进的图像处理
- 服务器端压缩: 超过本地压缩限制的大型图像现在由桌面服务器处理
- 更好的错误反馈: 图像处理失败时出现可视化错误指示(红色边框、警告图标)
- 优雅后备: 当离屏文档不可用时,压缩会自动回退到服务器
改进
- 共享 Agent 架构: 扩展程序和桌面服务器之间共享统一的 Agent 运行器,以实现一致的行为
- 协议处理程序合并: 存储和消息处理现在使用共享协议处理程序
版本 0.8.3 (2025年12月13日)
新功能
原生移动应用
- Android 应用:原生 Kotlin 应用 (
android-app/),具有 WebView + 原生桥接通道 (CalendarContract, SAF/照片选择器, AlarmManager, OkHttp 流式传输) - 共享 UI:移动应用使用与浏览器扩展相同的 React UI,以获得一致的体验
- iOS + Android:原生 Swift (iOS) 和原生 Kotlin (Android),具有匹配的桥接 API
改进
- 身份同步:改进了扩展程序与桌面服务器之间许可证和个人资料数据的同步
- 附件管理:更好地处理 LAN/中继模式下的附件
- 扩展客户端追踪:桌面服务器现在可以追踪连接的扩展客户端及其时间戳
移除
- Swift 中继应用:macOS 中继功能现在完全由原生应用服务器处理(于 0.8.2 引入)
版本 0.8.2 (2025年12月12日)
新功能
跨平台桌面服务器
- Caiioo Server:新的基于 Electron 的桌面应用程序取代了仅限 macOS 的 Swift 中继应用
- Windows 支持:原生 Windows 安装程序 (NSIS) 和便携式可执行文件
- Linux 支持:适用于 Linux 发行版的 AppImage 和 .deb 包
- 菜单栏集成:带有状态指示器和快速控制功能的系统托盘/菜单栏应用
特定平台的脚本执行
- 统一脚本 API:新的
/api/script端点可自动检测平台并使用适当的脚本引擎 - Windows 上的 PowerShell:在 Windows 上执行用于系统自动化的 PowerShell 脚本
- Linux 上的 Bash:在 Linux 系统上执行 shell 脚本 (bash/sh/zsh)
- macOS 上的 AppleScript:保留现有的 AppleScript/JXA 支持
跨平台助手
- 桌面通知:在所有平台上使用原生 API 显示通知
- 剪贴板访问:跨平台读取和写入剪贴板内容
- 活动窗口检测:获取前台应用程序/窗口标题
- 系统信息:检索操作系统、CPU 和内存信息
改进
- 自动化构建流水线:版本、图标和许可证在构建期间从主项目同步
- 更小的分发包:为统一构建做准备,移除了冗余的移动应用代码库
版本 0.8.1 (2025年12月11日)
新功能
灵活的登录选项
- 多种身份验证方法: 使用 Google OAuth、电子邮件/密码或许可证密钥登录 - 选择最适合您的方式
- 账户关联: 将您的 Google 账户关联到现有的电子邮件/密码账户,以实现跨方法无缝访问
MCP 服务器自定义 OAuth
- 自带 OAuth 凭据: 对于需要预注册 OAuth 客户端的 MCP 服务器,您现在可以提供自己的客户端 ID 和密钥
- 动态 Token 刷新: OAuth Token 会自动刷新,确保与 MCP 服务器的连接不中断
改进
- 文档处理指示器: 处理 PDF、Word 文档和 Excel 电子表格时有清晰的视觉指示
- 按层级设置导航: 设置面板现在根据您的订阅层级智能显示相关选项
- 更好的 OAuth 错误处理: 当 MCP 服务器 OAuth 发现失败时,提供改进的错误消息
版本 0.8.0 (2025年12月10日)
新功能
MCP 服务器浏览器与管理
- 浏览 MCP 服务器:直接在 Settings 中从 MCP Registry 和 npm 搜索并安装 MCP 服务器
- 本地 MCP 服务器:通过 relay app 在您的机器上本地运行 MCP 服务器,以增强隐私和控制
- 凭据解析:MCP 服务器现在可以从 Credentials Vault 提取凭据,以进行安全身份验证
- 运行状况监控:自动检查已连接 MCP 服务器的运行状况,并带有状态指示器
配置文件管理
- 多配置文件:创建并在多个用户配置文件之间切换
- 配置文件切换器:在编辑器中通过易于访问的下拉菜单切换配置文件
- 配置文件删除:移除您不再需要的配置文件
Google 账号选择
- 账号选择对话框:连接 Google 服务时,可在 Chrome 配置文件账号或添加其他 Google 账号之间进行选择
- Web OAuth 流程:对于未登录 Chrome 的账号,可选择通过浏览器进行身份验证
增强型浏览器代理
- 后退操作:代理现在可以在浏览器历史记录中执行后退导航
- ARIA 快照:捕获无障碍树快照,以更少的 token 实现更高效的页面分析
移动应用
- iOS App:用于在本地网络访问 Caiioo 的原生 iOS 客户端
- Android App:具有服务器发现和 WebView 缓存功能的原生 Android 客户端
多设备同步
- 设备身份:每个连接的设备/扩展程序都通过其自身的身份进行跟踪
- 状态同步:在多个连接的扩展程序之间实现实时状态同步
- Web 客户端身份验证:为连接到 relay 的 Web 客户端提供安全身份验证
改进
- LLM 提供商密钥管理:直接在 Credentials Vault 中管理各种 LLM 提供商的 API 密钥
- MCP 工具图像:返回图像的 MCP 工具现在会在对话中内联显示
- PDF 文本检测:改进了 PDF 提取中对乱码/空格分隔文本的检测,并增加了置信度评估
- 图像 CORS 绕过:图像现在通过离屏文档获取,以绕过 CORS 限制
错误修复
- 生成状态跟踪:改进了最终状态捕获,以确保准确检测生成任务的完成情况
版本 0.7.8 (2025年12月7日)
新功能
Excel 电子表格支持
- XLSX 导入:直接将 Excel 电子表格 (.xlsx) 上传到您的对话中
- 数据提取:电子表格内容被解析并提供给 AI 进行分析
- 往返编辑:在 Slate 中编辑电子表格并导出回 XLSX 格式
“新功能”对话框
- 更新通知:更新 Caiioo 后,“新功能”对话框会自动显示新版本的发布说明
- 特定版本的说明:准确查看更新中的变化,包括格式化的功能列表和改进
- 非侵入性:对话框每次更新仅出现一次,且在首次安装时不显示
版本 0.7.6 (2025年12月3日)
新功能
带修订跟踪的 Word 文档支持
- DOCX 导入: 直接将 Word 文档 (.docx) 上传到您的对话中
- 修订跟踪可见: 悬停时可查看插入(绿色)和删除(红色删除线)内容,并显示作者和日期
- 评论支持: 评论以黄色高亮显示,工具提示显示评论文本和作者
- Slate 编辑: 在 Slate 中查看和编辑 DOCX 内容,并具有完整的修订跟踪样式
- 深色模式支持: 所有修订跟踪和评论样式在浅色和深色主题中均可正常工作
版本 0.7.4 (2025年12月2日)
新功能
FLUX 图像生成器
- AI 图像生成: 通过 OpenRouter 使用 FLUX AI 模型根据文本描述生成图像
- 图像编辑: 通过提供附件 ID 和编辑指令来编辑对话中现有的图像
- 多参考支持: 使用 flux.2-flex 模型组合多达 10 张图像的元素
- 多种模型: 从 flux.2-pro(快速,默认)或 flux.2-flex(最高质量)中选择
- 自动存储: 生成的图像保存到您的对话中并内联显示
- 成本跟踪: 图像生成成本被单独跟踪并添加到线程总计中
版本 0.7.3 (2025年12月1日)
新功能
增强型模型选择器
- 统一模型选择器: 在编辑器和设置中提供一致的模型选择体验
- 隐私指示器: 盾牌图标显示具有零数据保留 (ZDR) 的模型 - 您的提示词不会被用于训练
- 视觉支持: 眼睛图标表示可以分析图像的模型
- 推荐模型: 星形图标突出显示推荐选择(Claude Haiku 4.5, Claude Sonnet 4.5)
- 成本透明度: 直接在模型列表中查看每百万 Token 的价格 - 轻松识别免费模型
- 图标图例: 设置中的快速参考解释了每个指示器的含义
版本 0.7.2 (2025年12月1日)
新功能
PDF 文档摄取
- 直接上传 PDF: 将 PDF 文档附加到您的消息中 - 它们会自动通过 Mistral OCR 处理
- 高质量文本提取: 表格、图形、公式和格式被保留为 Markdown
- Agent 文档摄取: Agent 可以使用新的
ingest_document操作处理浏览时遇到的 PDF URL - 持久存储: 提取的内容被存储以供将来参考,无需重复处理成本
错误修复
- 大型图像附件: 超过 5MB 的图像现在在发送到 LLM API 前会自动压缩,修复了与 Google/Gemini 等提供商出现的“图像超过 5 MB 最大限制”错误
版本 0.7.0 (2025年12月1日)
新功能
多线程支持
- 同时运行多个 Agent: 您现在可以同时运行最多 3 个线程
- 可视化运行指示器: 当线程正在主动生成时,侧边栏中的线程标题旁边会出现动画点
- 后台处理: Agent 在后台工作而不抢占焦点 - 在它们工作时自由浏览
- 线程隔离: 每个线程独立跟踪自己的标签页和状态
Agent 非干扰
- 保持控制: 当 Agent 打开标签页或导航页面时,如果您已移动到其他标签页,它不会抢占您的焦点
- 智能标签页感知: Agent 仅处理它们创建或开始时所在的标签页,绝不会在运行中跟随您到新的标签页
Apple 集成 (macOS)
- Apple Notes: 在文件夹中读取、创建、搜索和整理笔记 - AI 可以直接帮助起草和编辑笔记
- Apple Reminders: 管理待办事项列表和提醒 - 在 AI 辅助下创建、完成和整理任务
版本 0.6.5 (2025年11月30日)
新功能
AI 后续建议
- 智能提示: 在助手回复后,会出现 AI 生成的后续建议,以帮助继续对话
- 上下文感知: 建议基于对话上下文以及您接下来可能想做的事情
改进
LAN 中继设置
- 显示网络地址: 连接到中继服务器时,设置现在会显示实际的 IP 地址和
.local主机名,以便于移动设备连接 - 简化说明: 服务器运行后连接信息会自动出现 - 无需检查终端
版本 0.6.4 (2025年11月29日)
错误修复
Slate 修订系统
- 词级接受/拒绝:现在可以可靠地接受或拒绝单个单词的更改,而不会破坏后续更改
- 稳定的更改跟踪:修复了接受更改会导致其他待处理更改无法点击的问题
- 预览中的 Markdown 渲染:更改预览现在渲染 markdown 格式(粗体、斜体等),而不是显示原始星号
- 无限循环修复:修复了接受纯文本添加时浏览器挂起的问题
- 完整差异显示:更改预览现在显示所有删除和添加的单词,而不仅仅是最小差异
版本 0.6.3 (2025年11月26日)
新功能
- 基础用户默认体验:新用户现在默认作为基础用户而非管理员开始使用
- 许可证密钥升级:在“设置”中添加了醒目的“升级到 Pro”按钮,以使用许可证密钥解锁管理员功能
- 简化入门:更简洁的首次用户体验,专注于核心功能
版本 0.6.2 (2025年11月26日)
错误修复
- 生成超时恢复:修复了在长时间 Slate 操作期间的静默失败问题,该问题会导致 UI 无限期显示“正在生成”
- 后端现在会在生成期间跟踪活动,并在 2 分钟无进展后超时
- 流式传输块、工具执行和代理决策都会重置超时
- 服务工作线程在生成过程中重启时自动恢复(孤立状态检测)
- 超时发生时向用户显示错误消息,而不是静默挂起
版本 0.6.1 (2025年11月26日)
新功能
对话导入/导出
- 导出所选对话:切换选择模式以挑选特定对话进行导出
- 导出所有对话:一键导出所有包含附件的对话
- 从文件导入:从导出的 JSON 文件导入对话
- 选择性导入:从文件中选择要导入的特定对话
- 重复检测:自动检测已存在的对话,并提供跳过或覆盖选项
- 附件支持:导出内容包含所有图片、PDF 和文件
- 归档对话支持:活跃对话和归档对话均可导出/导入
改进的 Prompt Caching
- 提高 Claude 模型长对话的缓存命中率
- 动态缓存策略根据对话长度自动调整
Google Workspace 集成
- Google Drive:搜索、创建、复制、移动、共享文件和文件夹
- Gmail:读取邮件、管理标签、创建草稿(安全优先:仅限草稿,不自动发送)
- Google Calendar:列出日历、查询事件、创建/更新/删除事件、查找空闲时段
- 内联授权:直接在聊天中授权 Google 访问权限,无需访问设置页面
网页浏览改进
- 新增
click_coordinates动作,可通过屏幕位置点击元素 - URL 现在默认在新标签页中打开(防止标签页覆盖)
- 标签页按对话线程自动分组
- 改进的 CSS 选择器检测,实现更可靠的元素点击
模型选择
- 模型选择器移至输入框区域,方便快速切换
- 模型在模式切换时保持全局一致
- 具备 Vision 能力的模型标有眼睛图标
流式传输 UI
- 工具参数在流式传输时实时显示
- 推理/思考模块的渐进式显示
- 响应过程中的“正在生成...”状态指示器
Token 使用量与成本追踪
- 显示输入、输出、推理和缓存的 Token 数量
- 显示每条消息的成本以及对话累计成本
UI 改进
- 模式选择器面向所有用户开放:非管理员用户现在可以在设置中切换模式
- 可折叠的设置区块:设置面板各部分可折叠/展开,便于导航
- AI & 模型配置 (LLM Provider, API Key, 模型, Temperature, 最大迭代次数)
- 个性化 (个人指令, Profile 变量)
- Agent 模式配置 (模式选择器, 变量, 指令, 品牌定制, 工具, MCP 服务器)
- 外观设置
- 备份与恢复
- 文档
- 模式专属主题色:每个内置模式现在都有默认配色方案
- 购物 Agent:绿色
- 旅游 Agent:蓝色
- 助手 Agent:粉色
- Caiioo (通用):紫色
- 色彩循环模式:开启色彩旋转,使色谱逐渐循环变化
- 主题覆盖管理:
- 当主题被自定义时显示视觉指示(切换模式时不会丢失)
- “保存为模式默认值”按钮(管理员)将当前主题持久化为该模式的新默认值
- “重置为模式默认值”恢复原始模式主题色
- 全新的 Caiioo 品牌标识和图标
- 模式选择器移至输入框区域
- 新建对话按钮显示模式选择下拉菜单
- 输入框顶部栏新增对话列表切换开关
- 受控浏览器标签页新增晕影边框效果
- 受控标签页上新增悬浮停止按钮
- 下拉菜单在靠近屏幕边缘时可正确定位
Bug 修复
- 设置更改后模型选择器立即更新
- 新用户引导流程现在能正确启动助手 Agent
- 设置面板不再因自定义变量格式错误而崩溃
- 对话标题更改时,标签页组名称同步更新
- Slate 接受/拒绝组件位置修正
- 深度思考功能支持更多模型 (Haiku 4.5, Gemini 等)
- 修复了“最多 4 个 cache_control 块”的错误
版本 0.3.4 (2025年11月24日)
新功能
文本选择上下文
- 在网页上选择文本时显示“添加到提示词”按钮
- 选择的文本在撰写器中以标签形式显示,并包含页面上下文
- 捕获 DOM 位置以实现精确的智能体交互
Google Calendar 集成
- 全面的日历管理(列出、创建、更新、删除事件)
- 跨所有日历的智能空闲时间搜索
- 自然语言时间解析(如“明天”、“下周”)
缺陷修复
Slate 模式
- 接受/拒绝按钮不再被编辑器内容遮挡
- 词级差异高亮(而非整行)
- 多个 propose_change 调用现在可以正确累加
- 视图切换不再出现意外的“回弹”
品牌重塑
- 从 “ContextFlow” 更名为 “Caiioo”
版本 0.3.0 (2025年11月22日)
新功能
移动端与局域网访问
- 局域网服务器:从本地网络中的任何设备访问 Caiioo
- 对话侧边栏:在浏览器标签页中打开对话,以获得更大的屏幕空间
- 移动端导出:将对话导出为独立的 HTML 文件以便离线查看
缺陷修复
- 修复了关键的消息分支逻辑错误
- 修复了已归档线程的操作问题
版本 0.2.0 (2025年11月21日)
新功能
扩展思考支持
- Claude 模型现在支持扩展思考/推理块
- 可折叠的推理 UI 以查看模型思维过程
- 推理详情已缓存,以实现多轮对话的连续性
新的 LLM 提供商
- Ollama 集成:通过 Ollama 运行本地 LLM
- 设置面板中的提供商选择
图像格式支持
- HEIC/HEIF 支持:Apple 图像格式自动转换以实现兼容性
UI 改进
- 工具菜单在关闭时自动保存
- 更好的设置面板组织
错误修复
- 改进了变量自动补全的定位
版本 0.1.x (先前版本)
核心功能
- 多模型 AI 聊天 (OpenRouter, Anthropic, OpenAI, Ollama)
- 浏览器自动化和网页抓取
- 用于代码和文档编辑的 Slate
- MCP 服务器集成
- 截图和视觉能力
- 语音输入
- 线程管理和分支
- 个人资料和模式系统