本文档由英文原版机器翻译而成。如果翻译版本与英文原版之间存在任何冲突,请以英文原版为准。 阅读英文原版
版本 0.9.724 (2026年6月18日)
这是 0.9.723 的后续版本,增加了 OpenAI 作为 BYOK(自带密钥)语音提供商,引入了您可完全控制的可选匿名使用分析,并为音频和视频附件提供了更丰富的预览。同时修复了工具密集型 Hub 应用、技能名称、已连接服务登录以及订阅过期后启动冻结的问题。
新功能
- 通用:OpenAI 现已成为 BYOK 语音提供商:OpenAI 的 gpt-4o-mini-tts 已加入各模式的语音选择器,用于文本转语音。其输出是可引导的——您可以用自然语言要求特定的口音、语调或语速(例如“用温暖的爱尔兰口音朗读这段文字”),语音将遵循该指令。请在 Settings → Voice 中添加您的 OpenAI API 密钥。
- 通用:音频和视频附件现显示真实预览:录制或添加的音频剪辑将在附件标签上渲染其实际波形,而非通用的文件图标;视频附件则显示从剪辑中提取的静止帧——让您一眼就能区分不同的剪辑。预览仅生成一次并重复使用。
- 通用:可选的匿名使用分析——在 EEA、英国和瑞士默认关闭:您可以选择分享匿名的、不含内容的信号,以帮助我们发现并修复可靠性问题——例如,一次对话轮次是成功了还是遇到了特定类型的错误,以及您对回复明确给出的 👍/👎 反馈。它绝不会包含您的对话、提示词、身份、IP 地址或任何在会话间跟踪您的标识符;这仅限第一方(无第三方追踪器);且存储的事件没有任何信息可以追溯到您。在 EEA、英国和瑞士,该功能保持关闭状态,直到您主动开启;在其他地区,该功能默认开启,并提供一键关闭开关。您可以随时在 Settings → Privacy & Diagnostics 中更改设置,无论如何选择,都不会产生费用、折扣或功能差异。
改进
- 通用:Settings → Voice 会在语音提供商非低延迟时发出提醒:Gemini 和 OpenAI 会在生成完整回复后才开始播放音频,因此在处理较长回复时,首个声音可能会滞后几秒——这与 ElevenLabs、Cartesia 和 Resemble 不同,后者会在音频传输时同步开始播放。现在,选择较慢的提供商时,语音选择器下方会显示一段简短说明,解释这种权衡并指向更快的选项,从而使延迟符合预期而非令人困惑。
- 通用:音频分析开关现已隐藏,除非应用需要:麦克风旁边的波形按钮(用于附加您的实际录音,以便具备听觉能力的模型可以随提示词一起查看)是一个小众控件,对大多数任务并无用处。它现在默认隐藏,仅在明确选择启用该功能的模式或应用中显示,因此不再占用输入框空间。如果之前设置了捕获录音,该捕获也会在开关隐藏时暂停,确保在没有可见关闭开关的情况下不会录制任何内容。
缺陷修复
- 通用:已安装的 Hub 应用不再在每个轮次发送所有工具:在预配置了助手调用工具的应用中(如医学、法律等应用),该配置之前被忽略,导致每个轮次都会静默发送完整的工具列表——使对话变得更慢且成本更高。现在该配置已生效,每个轮次仅包含相关的工具。
- 通用:内置技能显示其实际名称:默认技能此前可能会显示占位名称(如“Skill 1781…”)而非其正式标题;技能现在显示可读名称(例如“Summarize Page”),任何已创建的带有占位符的技能都将自动更正。
- Extension:通过私有中继使用时,已连接服务不再提前断开:通过私有中继刷新已连接服务的登录状态时,可能会丢失会话令牌并被拒绝,导致连接在到期前被标记为失效。现在登录刷新功能已可正常工作。
- 通用:修复了订阅过期后启动时的冻结问题:如果您的 Pro 订阅已过期或被取消,应用在加载时可能会卡在重复执行免费层级降级的过程中——在完成启动前冻结界面。现在降级过程可以在单次运行中干净利落地完成,使应用能正常启动并保留所有免费层级功能。
版本 0.9.723 (2026年6月12日)
这是针对 0.9.722 版本的定向后续更新,新增了 BYOK 语音提供商、全新的临床决策支持应用、个人 Hub 应用的内置编辑功能、通过私有中继在任何浏览器中使用 Caiioo 的能力、更清晰的设置面板、支持自动分叉的持久模式编辑、对文档往返管道的实质性二次优化、针对所有 AI 提供商的流式传输可靠性提升,以及安全加固扫描。
新功能
- 通用:Cartesia 现已成为 BYOK 语音提供商:Cartesia Sonic(文本转语音)和 Cartesia Ink(语音转文本)现已加入各模式的语音选择器、首次使用 TTS / STT 对话框以及实时字幕路径。在 Settings → Voice 中添加您的 Cartesia API 密钥,即可在任何支持语音提供商的地方选择 Cartesia。
- 通用:在 Caiioo 内部编辑任何分叉的 Hub 应用:Settings → Tools, Modes & Apps 为个人应用(分叉的 Hub 应用和您保存的应用)增加了针对每个原语的编辑器。卡片、视图、工作流、技能、模式和变量都拥有了带有安全默认值的专用编辑器,因此分叉中格式错误的原语不再会破坏编辑器。智能体还可以通过新的
save_session_as_app工具将有用的会话快照保存为个人应用草案——只需说“将此保存为应用”(或类似指令),它就会持久化到您的个人应用库中供您完善。 - 通用:编辑任何模式的系统提示词 — Caiioo 为您自动分叉:您现在可以编辑任何模式的系统提示词(或整个定义),包括内置模式和从 Hub 安装的模式。第一次编辑会自动将该模式的应用分叉为个人副本,因此您的更改将在切换模式时保持不变,并像任何个人应用一样同步到您的其他设备。每当您的副本处于活动状态时,都会显示“Forked from … — your copy”横幅,并提供一键重置功能以恢复原始版本。现有的自定义模式将自动迁移到此系统中。
- 通用:Caiioo for Medicine (beta):一款全新的可从 Community Hub 安装的应用,镜像了 Caiioo for Legal 的模式——这是一个临床决策支持工厂,将鉴别诊断、药物相互作用和 SOAP 记录技能及其参考资料捆绑在一起。一键安装,可像任何 Hub 应用一样进行分叉。
- 通用:通过您自己的私有中继在任何浏览器中使用 Caiioo:当您登录且桌面中继运行时,在没有安装扩展程序的浏览器中打开 caiioo.ai,现在会通过您的私有中继提供相同的侧边栏 UI——因此您可以在 Chromebook、公共电脑或平板电脑上使用 Caiioo,而所有的工具调用仍然通过您自己的机器路由。
- 通用:设置面板重组:高级设置布局现在分为七个用户意图类别——Account、Personalization & Privacy、AI Setup、Tools / Modes & Apps、Data & Sync、Connectivity 和 Help——取代了历史上的五个类别。User Profile 和 Credentials Vault 移入专用的 Account 类别;LAN Relay / API Access / Messaging Gateway 归类为 Connectivity(共同点是入站/出站网络接口);Voice 移入 AI Setup(属于 AI 行为,而非工具);Backup / Private Sync / Data Management 组成了独立的 Data & Sync 类别。简单模式变体将相同的控件折叠为六个类别,并完全隐藏了高级用户控件。
改进
- 通用:文档往返 — 第二次保真度优化:对 Slate / DOCX / PDF / RTF / Google Docs 的又一轮扫描解决了长串的往返发现。亮点包括:生成的修订追踪现在会发出 Word 有效的修订 ID 并平展嵌套的修订标记(这样 Word 在打开时不再抱怨“损坏”的修订追踪);DOCX 注释按 ID 去重而非重复计数;DOCX → Markdown 导出时会转义表格单元格中的字面量
|字符,防止表格解体;RTF 解析器现在能正确处理嵌入的二进制段 (\binN),使杂散字节不再导致文档其余部分失步,正确跳过\ucUnicode 回退,通过 Windows-1252 解码\'hh十六进制,保留修订追踪并渲染图像占位符;PDFToUnicodeCMaps 解码代理对和 bfrange 数组 / 多单元形式(非 BMP 字符和表情符号可干净提取);修订追踪前缀检测现在支持缩进和嵌套的列表标记以及)编号;保真度矩阵现在会显示 docx → md/html/rtf 和 pdf → docx 的注释丢失情况,以便您预先了解哪些内容无法往返。RTF 导出还会移除待处理的追踪删除,而不是将其作为字面文本内联。 - 通用:Google Sheets 公式在 Slate 同步中得以保留:从 Slate 编辑同步的 Google Sheets 不再会将公式重写为其计算后的值。Slate 中的修订追踪解析也得到了修正,当内容已与目标匹配时,接受/拒绝操作会提交正确的文本。
- 通用:Google Docs 同步忽略表格单元格段落:同步扫描器此前会进入表格单元格并产生错误的文档偏移。现在在段落扫描前会跳过单元格,因此在包含表格的文档中,编辑会落在正确的位置。
- 通用:匿名化器端到端保护机器生成的 ID:Slate(以及任何发出机器生成标识符的工具)现在可以用
<!--no-pseudonymize-->标记将其包裹,该标记在整个管道中保持不变——匿名化器会跳过它们,标记在到达屏幕前会被移除。这解决了工具调用的内部 ID 在一轮对话中被匿名化,但在下一轮中从替换映射中丢失,导致引用该 ID 的后续工具调用失败的问题。 - 通用:Self Checker 现在在服务器上运行评判:点击 ⚖ 按钮会将裁决计算移至中继器而非在侧边栏运行,因此即使您关闭面板,结果也能完成,返回速度更快,且在不同设备间保持一致。评判调用还通过与原始对话相同的线程级匿名化器进行路由,因此对匿名化消息的裁决绝不会向评判模型泄露真实的 PII。
- 通用:设置清单中的技能 / 模式徽章:Settings → Tools, Modes & Apps 中每个已安装的技能现在会显示它属于哪个(些)模式,让您一眼就能看到智能体实际上会在哪里调用它。
- 通用:使用预置密钥的免费层级用户不再在网页搜索时遇到 401 错误:搜索工具此前通过绕过凭据解析器的代码路径解析 OpenRouter 密钥,导致使用预置密钥(非 BYOK)的用户间歇性收到 401 错误。解析器现在在每个调用点运行。
- 通用:UI 上下文提供程序明显变快:扩展程序的 UI 上下文提供程序增加了结果缓存、延迟模式加载、别名解析和更严格的排除项,因此模型选择器和模式选择器在大型工作区中不会卡顿。
- 通用:语音播放速度滑块现在支持 ElevenLabs 和 Cartesia:速度滑块此前对 ElevenLabs 或 Cartesia 无效——无论设置如何,语音始终以正常速率播放。现在这两个提供商都会按您选择的速度生成语音。(ElevenLabs 支持 0.7–1.2×,Cartesia 支持 0.6–1.5×;滑块会限制在各提供商的范围内。Resemble 和 Gemini 不提供速度控制,保持不变。)
- 通用:编辑器中可见 STT 模型加载状态:当设备端语音模型正在下载或预热时,编辑器现在会显示真实的下载百分比,并且并发加载请求会被序列化,因此两个几乎同时的“说话”动作不会触发重复下载。
- 通用:编辑器在窄宽度下保持发送按钮在屏幕内:此前当面板非常窄时,发送按钮可能会超出编辑器范围。现在无论宽度如何,它都会保持锚定。
- 通用:远程侧边栏连接更干净:针对新的“通过私有中继在浏览器中使用 Caiioo”功能,中继器现在能正确地将回复寻址回远程浏览器,并在连接时为其提供初始状态快照,因此重新连接时会恢复到您离开时的状态。
- 通用:UI 资产处理程序回显请求 ID:响应现在会将原始请求 ID 回显给调用者,修复了一类因两个资产获取竞争且第二个结果被丢弃而导致的加载图标卡死错误。
- 通用:Caiioo for Legal 现更名为 "for Legal":在 "for Medicine" 推出后,Legal 应用名称中的 "Caiioo for" 前缀显得冗余。现有安装将继续通过旧 ID 工作。
- 通用:针对所有 AI 提供商的流式传输可靠性优化:对所有提供商的回复流式传输方式进行了深度优化。此前跨网络数据包拆分的回复片段可能会被静默丢弃——这会破坏 Anthropic 模型的多次对话深度思考、Gemini 和 GPT-5 的推理连续性,偶尔还会导致本地 MLX 模型丢失答案文本;非英语文本或表情符号在保存的答案中可能会损坏为 字符。这些问题已在所有地方修复。停止按钮现在还会取消正在进行的 Perplexity 搜索,而不是让它在后台完成(并计费);停止运行现在会触达任何仍在工作的子智能体;与 Mistral 模型聊天时附加的图像不再会在传输中损坏。
- 通用:技能现在拥有正式名称:每个技能都带有一个显式的显示名称,显示在设置、编辑器的技能选择器以及智能体自身中——这样提示词开头类似的技能就不会折叠成无法区分的行。在编辑器中输入 "/" 会优先按名称匹配,发布到 Hub 现在要求每个技能都有名称。
- 通用:Hub 应用模式保留其完整配置:从 Community Hub 安装的模式(for Legal, for Medicine, …)此前可能会在智能体核心深处静默回退到通用模式,导致在运行中丢失其变量和工具配置。现在它们在所有地方都能正确解析,且无法解析定义的模式将回退到标准 Caiioo 提示词而非空提示词。
- 通用:预置密钥(Caiioo 发行)账户修复:重新发行您的 Caiioo 提供的 AI 密钥不再会清除已购买的额度——剩余余额会结转到新密钥。撤销密钥现在会先在提供商处实际撤销,然后再报告成功。拥有无限余额的账户现在显示 "Unlimited" 而非数字,且不再触发自动额度购买。在设备上恢复密钥时的短暂登录故障现在会重试而非直接失败。
- 通用:免费层级模型选择保持最新:免费层级模型列表不再提供提供商已退役的免费模型,此前选择这些模型会立即报错。
- 通用:视频生成先检查每个模型的真实能力:视频工具现在直接从提供商处读取每个模型的实时能力表——支持的长宽比、时长、分辨率以及是否接受参考帧,并在提交前验证您的请求,因此不支持的组合会立即失败并显示清晰消息,而不是在长时间等待后失败。从参考图像生成动画现在会使用所有模型都接受的格式发送。
- 通用:匿名化器覆盖范围 — 线程标题和辅助调用:开启 Pseudonymizer 后,自动生成的对话标题和小型内部 AI 辅助调用现在通过与您的消息相同的保护机制进行路由(在客户端和中继器上均有效),因此线程标题不再会将真实姓名携带给模型。子智能体的答案现在也会在屏幕上显示真实值,而非其替代名称。
- 通用:GitHub 同步处理非英语内容和同时编辑:从 GitHub 同步的包含重音或非拉丁字符的文件不再会乱码;向自上次同步以来在 GitHub 上已移动的文件推送更改时,现在会提示冲突,而不是静默覆盖较新的副本。
- 通用:瞬时服务器错误不再导致您登出:每日后台登录刷新期间的临时服务器错误此前可能会清除您的会话并导致登出。现在只有真实的凭据拒绝才会导致登出;任何瞬时错误都会在宽限期内保留您的会话。
- 通用:远程浏览器客户端启动更干净:从普通浏览器(通过您的私有中继)打开 caiioo.ai 在登录时不再显示长串的连接错误,且更新后 UI 始终加载最新版本而非陈旧的缓存副本。
- macOS, iOS, Android:冷启动模型预热:设备端语音和 STT 模型现在在应用启动期间预热,而不是在首次使用时延迟加载,从而消除了首次调用的数秒延迟。现在第一次点击麦克风几乎感觉是即时的。
- iOS:符合 App Store §3.1.1 销售路由规定:所有外部支付界面(Stripe 结账按钮、指向应用外的“管理账单”链接)都经过 iOS 检查,因此 iOS 客户端仅为数字订阅提供应用内 StoreKit 购买,符合 Apple 的反转向政策。
- iOS, macOS:陈旧的 Safari 扩展注册不再冻结中继路径:当 Apple 的 WebKit 在应用更新后留下多个陈旧的 Safari 扩展注册时,Caiioo 现在会剔除被取代的重复项,而不是让它们处于休眠冻结状态,从而使基于中继的 Safari 扩展无需手动重新安装即可持续工作。
- Android:清理陈旧的媒体权限:清单文件中移除了
READ_MEDIA_IMAGES,并剥离了 LiteRT GPU 库隐式添加的旧权限,因此应用的运行时权限提示现在是最小化的——更接近用户实际同意的内容。
安全
- 通用:导入、渲染和日志记录的加固扫描:精心构造的 Word 文档和对话导入存档不再能通过解压技巧耗尽内存(实施了严格的大小限制和更安全的文档解析);恶意结构的 ChatGPT 导出文件不再会导致导入器挂起;关闭了文档 (Slate) 页面中的三个跨站脚本风险;服务器现在拒绝获取指向内部或私有网络地址的模型建议 URL;如果过滤规则的模式可能导致匹配器锁定,则会被拒绝;支付 Webhook 调试日志不再记录敏感信息。
错误修复
- 通用:语音提供商 API 密钥显示在正确位置:当云提供商仅用于语音转文本(例如将 Cartesia Ink 作为您的听写引擎)时,其 API 密钥字段此前被遗留在 Text-to-Speech(输出)部分,而不是在语音转文本选择器旁边——并且即使您将 TTS 语音切换到其他提供商,它仍然可见。现在每个提供商的密钥字段都会根据实际使用的选择器(输入 vs. 输出)进行渲染,由单一的语音提供商定义驱动。
- 通用:自动朗读现在支持 Cartesia 和 Gemini 语音:当您的 TTS 语音为 Cartesia 或 Google Gemini 时,“朗读回复”开关此前会静默失效——两者都被错误地归类为等待下载的设备端模型。现在一旦设置了提供商的 API 密钥(以及需要的语音),自动朗读即可正确开启。
- 通用:Cartesia 听写在所有地方均可工作:Cartesia Ink 作为您的语音转文本引擎,现在一旦设置了 API 密钥即可被正确识别为就绪状态(而不是被视为等待下载的本地模型)——这涵盖了扩展程序、原生应用和基于中继的设置(macOS 或通过私有中继的 Web 客户端),此前中继器会尝试将 "cartesia" 加载为设备端模型。
- 通用:Gemini 语音开始播放更迅速:Google Gemini TTS 现在逐句朗读回复,因此播放会在第一句之后开始,而不是等待整个回复合成完毕——这与 ElevenLabs、Cartesia、Resemble 和 Kokoro 的体验一致。(Gemini 的 API 一次生成整个话语,因此分块是在我们这边完成的;速度滑块现在也适用于 Gemini。)
- 通用:语音播放错误现在会显示,不再静默:当朗读回复失败时(缺少/无效的 API 密钥、不兼容的 Resemble 语音/模型、提供商拒绝等),原因现在会作为屏幕消息显示,而不是仅在控制台记录日志并静默失败。消息具有可操作性(例如,“所选的 Resemble.ai 语音不支持 'chatterbox-turbo' 模型 — 请选择兼容 Chatterbox 的语音…”)。
- 通用:更清晰的 Resemble.ai 语音/模型错误:当所选的 Resemble 语音不支持所选模型时,错误消息现在会准确说明原因及修复方法,而不是显示原始的内部错误负载。
- 通用:现代 iPhone 的 HEIC/HEIF 照片恢复转换:附加最近的 iPhone 照片 (HEIC/HEIF) 此前会转换失败——报错“格式不支持”并退回到普通文件附件,而不是可查看的图像。内置的图像转换器已过时多年,无法读取当前 iPhone 的照片(特别是全分辨率和 HDR 照片)。它已被替换为最新的解码器,因此 HEIC/HEIF 附件现在会转换为 JPEG 并再次内联显示。
- 通用:视频和音乐工具始终宣传实时模型列表:视频和音乐工具此前仅向 LLM 显示其三个捆绑的回退 ID——在中继子进程内部获取实时 OpenRouter 视频/音乐注册表的每轮背景预热存在竞争,且经常在工具描述发出前错过截止时间。现在缓存的注册表状态会在子进程启动时预置视频和音乐模型服务,因此工具始终显示当前的阵容(Kling, Hailuo, Wan 等),且用户选择的模型无需每轮网络往返即可解析。
- 通用:Test Runner 多模型基准测试现在返回有意义的分数:使用
runLLMJudge = true运行“比较这些模型”基准测试此前会静默产生零分和输入顺序排名,因为套件级路径仅检查每个测试的evaluation设置而忽略了运行范围的标志。现在该入口遵循任一信号,且当评判开启但未提供评分标准时,将应用默认标准(事实性 + 完整性 + 清晰度 + 帮助程度)。test_runner工具的get_result和export_transcript动作在仅缺少其中一个字段时也不再以runId and testId are required拒绝——错误现在会指明实际缺失的字段。 - 通用:iOS 和 Safari 上的语音播放可能完全静音:朗读回复有时完全没有声音,直到应用重启——音频引擎以挂起状态启动且从未被唤醒。现在播放能可靠地产生声音。
- 通用:每日提醒在您设置的时间触发:为例如上午 9:00 创建的重复提醒可能会发生偏移,转而在每天创建它的那一刻触发。现在重复周期锚定在预定的开始时间。
- macOS, Desktop:计划任务通知确实送达:当计划任务完成并尝试通知您时,macOS 和 Windows/Linux 桌面应用此前会静默丢弃通知。现在它会作为正常的系统通知出现。
- 通用:注册失败不再静默:如果在注册期间无法发送验证邮件,您现在会立即收到清晰的错误提示,而不是看起来注册成功但从未收到邮件。
- 通用:编辑器的 "+" 附件菜单在窄面板上重新出现:此前为了让发送按钮在极窄宽度下保持在屏幕内的修复,无意中将附件菜单裁剪掉了。现在两者都能适配。
- 通用:Claude 模型名称对 BYOK Anthropic 用户恢复工作:使用您自己的 Anthropic 密钥选择某些 Claude 模型时,由于内部模型名称映射过时,会产生“未找到模型”错误。现在模型名称会原样传递给 Anthropic。
- 通用:多步应用工作流中的失败步骤现在会停止工作流:失败的嵌套工作流此前会被报告给其父级为成功,导致工作流的错误处理分支从未运行。现在失败会正确传播。
版本 0.9.722 (2026年5月22日)
这是首个向所有人开放三大期待已久功能的版本:Pseudonymizer(伪名化工具)、Community Hub(社区中心)和 Messaging Gateway(消息网关)。这三项功能已在测试计划中磨合数月;以下亮点涵盖了公开发布的内容,以及随之推出的新功能和修复。
新功能
- 通用:Pseudonymizer 向所有人发布:Caiioo 的设备端个人数据过滤器可检测您输入的姓名、电子邮件、电话号码、地址、身份证号、组织、城市和其他敏感值,并在其到达模型之前将其替换为逼真的虚假值——然后在返回途中在本地反向替换,因此您屏幕上的对话仍显示真实值。模型永远看不到真实值;工具调用在恢复后使用真实值运行。通过发送按钮旁边的全新盾牌图标开启——灰色表示关闭,蓝色表示个人数据过滤器,青色表示 PHI / 受限数据集,翡翠色表示 PHI / 安全港模式。开启时,与活动模式颜色匹配的细环会包裹输入框作为环境提醒,并且在每个经过值替换的消息下方会出现一个“🛡 pseudonymized — N substitutions”标签;点击它可以查看具体的“真实→虚假”配对及类别标签。包含严格的 PHI / Safe Harbor(安全港)子模式(符合 HIPAA §164.514(b)(2):还会剥离年份以外的日期、详细地理地址和 89 岁以上的年龄),适用于您需要共享去标识化数据集且无需签署数据使用协议的情况。(该功能此前被称为“Anonymizer”。我们将其更名为“Pseudonymizer”,因为这在技术上更准确:GDPR 第 4(5) 条将“匿名化”定义为单向、不可逆的转换,而此功能设计上是可逆的——您的屏幕仍会显示真实姓名。)
- 通用:Community Hub 发布:一个全新的、一键式安装扩展 Caiioo 的工具、模式、MCP 服务器和完整应用的平台。您可以从扩展程序内部或访问 caiioo.ai/hub 进行浏览。首发目录包括 Slack(通过 Caiioo Slack 应用登录一次即可——无需手动配置应用或开发者模式)、Notion、Linear、GitHub、Atlassian、PandaDoc、Microsoft 365、Legal Data Hunter(涵盖 110 多个国家的 1800 万+ 判例法、立法和学说文件),以及 18 个额外的自注册 MCP 服务器,这些服务器通过其自身提供商的登录进行授权——无需您复制粘贴密钥或进行开发者模式设置。每个软件包在您点击安装前都会预览其安装的确切内容——工具、模式、技能、MCP 服务器和变量。
- 通用:工具网络访问——当工具离开您的机器时需明确同意:当您选择本地聊天提供商(Ollama、MLX)时,您做出了一个有意的隐私选择——您的对话保留在设备上。过去,路由到远程提供商的工具(图像生成、音乐、视频、Perplexity 网页搜索)会悄悄跨越这条界线。现在,Caiioo 会在第一次尝试时停止,在行内渲染一个“批准/取消”卡片,标明工具名称及其将发送到的提供商,并记住您对每个提供商的决定。您可以随时在“Settings → Personalization & Privacy → Tool Network Access”中撤销。
- 通用:Messaging Gateway 发布 (Pro):Caiioo 现在可以通过 Settings → Messaging 中的单一可配置网关,在您的客户和联系人实际使用的平台上回复消息——WhatsApp Business、Messenger、Telegram、iMessage、Signal、Viber 和 Beeper。每个频道使用其提供商的标准机器人/商业凭据,每个服务输入一次。对于每个对话,您可以选择代理的显示方式:Auto(代理回答所有人;您在同一会话中输入的任何内容都被视为塑造下一次回复的指导)、Direct(代理仍自动回答,但您输入的任何内容都会以您的身份发送给对方)或 Takeover(代理完全退出,由您接管)。图像、音频和视频附件在两个方向上都会流向模型,因此您可以询问“客户刚发的这张照片里有什么?”并在同一频道中回答。Slack 作为独立的 MCP 软件包存在于 Community Hub 中——请从那里安装,而不是通过 Messaging Gateway。
- 通用:My Day (Beta):第二个可从 Hub 安装的应用:一键式早间简报,将今天的日历、未读邮件和最近的文档整合到一个仪表板中。输入框按钮运行简报;代理每次都会渲染到同一个仪表板视图中,并带有后续技能,用于展开任何项目、起草回复或安排深度工作时间块。
- 通用:Storybook Builder (beta):另一个可从 Hub 安装的应用:选择风格、受众、年龄范围和自由简报;代理会设计角色阵容,绘制参考肖像以保持角色一致性,生成带有散文和插图的每一页,从最佳页面衍生出封面,并将完成的书籍渲染到可读的滚动布局查看器中。像任何 Hub 应用一样可以 Fork(分叉),因此您可以自定义主提示词或更换风格选项。
- 通用:免费计划现包含桌面应用:macOS 和 Windows / Linux 桌面应用以前需要 Pro 订阅。免费用户现在可以在每个平台上登录桌面应用——平台本身是免费的,Pro 订阅仍通过 Pro 专属功能(图像生成、远程 MCP 服务器、计划任务等)进行区分。
- 通用:取消 Pro Mobile——网页、桌面和移动端统一为 9 美元 Pro 档位:iOS 和 Android 上的 2.99 美元 Pro Mobile 应用内购买已取消。现在,单一的 9 美元/月 Pro 档位可解锁每个平台上的所有 Caiioo 客户端——Chrome、Edge、macOS、Windows、Linux、iOS、Android——不再有单独的移动端 SKU,也不再有复杂的跨平台权益转换。现有的 Pro Mobile 订阅者将自动升级至 Pro 权益,无需额外费用,并保留其拥有的所有功能。新的移动端安装在应用内支付页面仅显示 9 美元 Pro 档位,与网站保持一致。
- 通用:Caiioo for Legal (beta):从 Community Hub 一键安装即可激活 15 项跨业务法律技能——合同标记、修订起草、交易起草、备忘录与意见书、辩护、批量规则手册审查等——由两份全面的谈判规则手册(买方和卖方)支持,涵盖数十个常见条款的“首选/退让/放弃”层级。变量的作用域保留在您正在处理的会话中,因此每个事项都保留自己的客户、交易对手、管辖权和立场,而不会混入下一个事项。
- 通用:Self Checker——使用新的 ⚖ 按钮评判任何答案:现在每个助手回复的操作栏中都有一个 ⚖ 按钮。点击它可以根据您的要求为该答案评分——评判者会查看完整的交互(您的提示词、每个工具调用的输入和输出、附加图像以及助手的回复),编写确定性检查(精确匹配、包含、正则表达式、数值范围、算术),运行这些检查并在线渲染裁决卡片。您可以选择任何您拥有密钥的提供商;评判者的 LLM 成本将计入对话的总额中,因此没有隐藏费用。
- 通用:Test Runner——在您自己的示例列表上测试 Caiioo (Pro):向 Caiioo 提供一份提示词列表和每个答案的评分方式——应出现的子字符串、响应应匹配的模式、应使用的特定工具,或者根据您定义的标准为答案打分(1-10分)的第二个模型。Caiioo 会在各自独立的对话中运行每个提示词,记录助手的回复、调用的工具、耗时和成本,然后生成一份可导出为 CSV 的通过/失败报告。这对于抽检新模式、新模型或安装的 Hub 应用是否仍符合预期非常有用。
- 通用:Hub 应用可以附带现成的参考资料:Community Hub 软件包现在可以捆绑自己的 Slate 模板、PDF 和其他参考文件。例如,安装 Caiioo for Legal 会直接将两份谈判规则手册放入您的库中,以便代理在第一次交互时就能根据它们标记您的合同。
- 通用:My Apps——Fork 任何 Hub 应用并将其作为自己的应用编辑:Settings → Tools, Modes & Apps 中新增的 My Apps 面板允许您将任何 Community Hub 应用 Fork 到个人副本中,并使用专用编辑器编辑其任何原语——工具、技能、模式、卡片、视图、工作流、模板附件和变量。代理还可以将有用的对话快照保存为个人应用草案,供您进一步完善。
- 通用:Hub 应用现已跨设备同步:在 Mac 上安装 Community Hub 软件包,它就会出现在您的 iPhone 上,反之亦然。个人应用(您 Fork 或保存为自己的应用)也会同步。每个软件包的向量时钟意味着任何安装都不会覆盖来自另一台设备的更新安装。
- 通用:Hub 设置现已在独立章节中列出每个应用原语:Tools, Modes & Apps 增加了四个新章节——Cards、Views、Workflows 和 Template Attachments——与现有的 Tool Configuration 和 Agent Modes 并列。每个章节都是您已安装应用的只读清单,带有来源归属,因此您可以查看哪个 Hub 软件包引入了哪个技能、模式或卡片。
- 通用:技能现在对模型可见:以前技能仅限 UI 使用——点击技能标签会将文本粘贴到您的消息中,但模型本身并不知道它们的存在。现在,每个模式都会将其可用技能(名称、描述、提示词主体)注入系统提示词中,因此像“使用你的合同分析技能处理这个 PDF”这样的短语现在可以实际生效。
- 通用:子代理卡片在主聊天中行内渲染:当子代理发出卡片(Self Checker 裁决、生成的图表、结构化结果视图)时,该卡片会被重新挂载到父对话中,并在子代理的文本结果旁边行内渲染——这与子代理附件的处理方式一致。
- 通用:Google Sheets — 14 项新操作:粘贴数据(CSV / TSV / HTML)、分列、修剪空格、删除重复项、应用或清除带有标准和排序规则的工具栏过滤器、移动行或列、插入和删除单元格范围、保护带有编辑权限的范围、定义和更新命名范围、附加开发者元数据、微调条件格式以及使用现代 ColorStyle 调色板——所有这些都无需离开聊天。
- 通用:Google Docs 获得真实评论、多标签页支持和智能芯片识别:添加、回复、解决和删除原生的 Docs 评论,这些评论会显示在所有人的 Docs UI 中。多标签页文档现在可以正常工作——代理会读取和写入正确的标签页,而不是将所有标签页混为一谈。现在可以识别智能芯片(人员、链接、方程式、分页符、日期芯片),从而使搜索和编辑操作定位到正确的字符。并发编辑现在会抛出清晰的错误,而不是静默覆盖。
- macOS:语音播放 (Kokoro TTS) 在一秒内启动:由于模型无法在 WebView 中加载,设备端语音在 macOS 上曾静默失败。现在语音通过桌面应用的辅助进程运行并按句流式传输,因此即使在繁忙的机器上,点击播放后约一秒内即可听到第一句话。
- Web:Hub 软件包通过
caiioo://链接安装:在 caiioo.ai 上点击安装现在会直接路由到您实际拥有的客户端——Chrome 扩展或原生应用——而不是同时触发两者。如果您同时安装了两者,将看到一个选择器。Community Hub 安装弹窗还会拆解每个软件包的负载——工具、模式、技能、MCP 服务器和变量——以便您在点击安装前确切了解安装内容。 - Desktop:Linux AppImage 注册
caiioo://URL 方案:使用 AppImage 构建的 Linux 用户现在可以一键从 caiioo.ai 安装 Hub 应用——URL 方案在首次启动时注册,无需安装任何系统包。
改进
- 通用:Slate 稳定性与往返保真度大修:修复了富文本编辑器、差异引擎、版本历史和 Word 导入/导出中的约 40 个独立错误。当 AI 建议应用到您自上次编辑后的文档时,修订追踪不再损坏;版本历史快照现在是真正的冻结副本;当内容与目标匹配时,修订能正确解决而不再卡住;AI 建议会与现有修订合并,而不是覆盖其他作者的编辑;在 Word 文件中接受或拒绝更改会持久化到存储;富文本导出可处理表情符号和其他补充平面字符;差异引擎在文本匹配时不再混淆删除和修改。
- 通用:Slate — 接受或拒绝选区内的所有修订:Slate 审阅工具栏中新增的 ✓ Sel / ✗ Sel 按钮模仿了 Word 的“选择段落,接受其中所有更改”的行为——突出显示一个区域,一键即可解决所有重叠的修订。差异引擎还会将仅由空格或标点符号分隔的相邻编辑合并为单个接受或拒绝单元,因此审阅 AI 的重写不再需要点击数百次。
- 通用:Word 文档导入/导出保真度:对 .docx 解析器进行了约 110 个错误的修复,解决了忽略显式“关闭”切换的字符格式、损坏的样式继承、缺失的主题颜色解析、丢失的段落缩进、错误处理的上标/下标/隐藏文本、标题后错误的列表编号、提取文本中缺失的制表符和换行符分隔符、完全未被提取的嵌入图像,以及导出时嵌入图像引用的往返丢失。Markdown 导出现在使用符合 CommonMark 的列表缩进。
- 通用:PDF 往返与渲染审计:对 PDF 流程的审计确保了往返过程中的行内图像、十六进制字符串和字母间距;正确解析继承的页面资源;在图像替换时保留透明掩码、解码、意图和插值标志;挽救了 Windows 字体无法原生编码的特殊字符(欧元符号、智能引号、商标);正确处理 PDF 嵌入字体中的表情符号和其他补充平面字符;并显示 OCR 错误而不是将其吞掉。Slate PDF 查看器通过延迟渲染页面,在打开多页 PDF 时速度明显加快,且大型 PDF 在首次打开时不再重复获取文件。
- 通用:PDF 导出保留无法编码的字符而非失败:所选字体无法编码的特殊字符现在会从源 PDF 中原样透传,而不是中止整个导出。
- 通用:Pseudonymizer 准确性与覆盖范围升级:个人数据检测模型使用区域感知流程进行了重新训练,现在能显著更好地处理中文和更广泛的非拉丁脚本。姓名跨度现在可以正确延伸跨越脚本边界——中间名首字母、前置头衔以及连续的中文、日文、韩文和阿拉伯文运行——从而堵住了半个姓名的泄露。新增的第二道安全网检查可在发送前捕获遗漏。相同标签的碎片化跨度在替换前会被合并。多语言城市和公司名称检测现已上线。计算器工具的数字输出不再被误分类为姓名。
- 通用:Pseudonymizer 幻觉检查器:扫描助手的回复,查找不在您会话替换映射中的虚假格式姓名——命中意味着模型可能编造了一个名字。配合现有的泄露检查器,可全面查看模型关于身份的表述。
- 通用:Pseudonymizer 多语言虚假值:城市名称、公司名称和个人姓名现在会生成符合当地语言习惯的替代值——西班牙语提示词会得到看起来像西班牙语的虚假值,日语提示词会得到看起来像日语的虚假值,依此类推。
- 通用:Pseudonymizer 30 多项小型正确性修复:多轮审计清除了数十项低、中、高严重性的发现——脚本覆盖缺口、调试日志噪音、跨会话泄露、URL 裁剪错误、策略边缘案例、审计日志隐私、恢复稳健性、用户字典中的 Unicode 处理、仅限自我模式下的结构化 PII 泄露等。
- 通用:Telegram 消息以正确的格式渲染:通过 Telegram 桥接发送的消息现在使用 Telegram 原生的加粗、斜体、代码和链接样式,而不是显示原始星号、反引号和损坏的“text (url)”语法。来自 Telegram 的入站图像也能正确流向具备视觉能力的模型,且来自代理的预格式化消息不会被桥接重新格式化。
- 通用:日历同步涵盖您账户中的每个日历:后台同步以前仅迭代您的主 Google 日历;团队和家庭日历会静默缺失。现在所有可见日历都会同步。正确遵循事件分页(因此超过第一页的事件不再丢失),保留事件时区而不是归一化为 UTC,全天事件锚定正确,且 Apple Calendar 处理现在也会路由 Apple Reminders。
- 通用:Calendar / Agenda 工具正确性:修复了日历创建/更新/删除/列出中的 19 个错误——最重要的是,全天事件日期现在根据您的本地时区而非 UTC 衍生,因此您在周五设置的事件在东部时区不再掉到周四。
- 通用:Gmail 工具可靠性清理:修复了五个会导致静默产生错误账户结果、损坏的回复线程、乱码的“Doe, John”式收件人姓名以及隐藏的身份验证失败的错误。回复现在在 Gmail 和外部邮件客户端(Outlook、Apple Mail、Thunderbird)中都能正确成链。草稿更新会保留原始对话线程。
- 通用:Gmail 按发件人、类别、时长、附件和未读状态搜索:要求代理查找“上周来自 Bob 的带附件的未读邮件”以前依赖于模型记住 Gmail 精确的搜索操作符语法——它会用不同的措辞重复发出相同的逻辑查询直到成功。Gmail 工具现在公开了一等公民过滤器参数(
from、subject、label、hasAttachment、isUnread、isImportant、category、7d/1m/1y等newerThan/olderThan,以及after/before日期),因此代理第一次尝试就能选对过滤器。 - 通用:Google Drive 工具可靠性清理:十二项修复,包括拒绝将二进制文件作为文本读取、支持共享驱动器文件夹路径、显示大型文件夹列表的分页、将 Slides 映射到 PPTX 导出、从共享选项中删除损坏的“owner”角色,以及修复移动时的目标文件夹过滤。Drive 传输缓存现在会在 24 小时后使公开链接过期,而不是在清理失败时让其永久公开。
- 通用:Google Drive — 全文件夹路径、共享驱动器、导出、所有权转移、链接发现:Drive 操作现在接受人类可读的文件夹路径(
Engineering/Specs/Q3)而不仅仅是不透明的文件夹 ID,支持进入共享驱动器作为一等目标,将 Docs / Sheets / Slides 导出为特定 MIME 类型(PDF、DOCX、XLSX、PPTX),在用户之间转移文件所有权,并显示“任何拥有链接的人”和公开链接,以便代理可以回答“这个文件的可共享 URL 是什么?”而无需您手动复制。 - 通用:Google Slides 文本编辑定位准确:Slides 工具曾使用 999999 作为“文本末尾”的魔数,这被 API 拒绝了。它现在会查找实际文本长度并构建正确的范围,以便部分索引编辑(例如“从第 5 个字符开始设置样式”)能按预期工作。
- 通用:Google Sheets — 30 多项小型正确性修复:范围解析可处理带内部标点符号的引用工作表名称、无界引用(A:A, 1:10)以及超过 Z 的列;图像上传会写入真实的
=IMAGE()公式而不是擦除单元格;HTML 导入可解码命名、十进制和十六进制实体,包括星际平面字符;图表不再导致工作表信息读取器崩溃;搜索会报告绝对列字母并显示每个工作表的错误。工作表差异现在能正确发出添加和删除。 - 通用:变量对话框现在适用于任何 Hub 应用:输入框的“打开变量”按钮以前是为特定应用硬编码的。现在它由 Hub 清单驱动,因此任何附带变量对话框的应用都会获得自己的按钮和标签。
- 通用:个人应用在每个读取器中显示:个人应用(您 Fork 或保存的应用)现在通过代理读取它们的每个地方(不仅是输入框)贡献其技能、模式、MCP 服务器、工具、视图和变量。它们现在是一等应用,与 Hub 安装的应用完全相同。
- 通用:Hub 卸载会真正移除所有内容:卸载 Hub 应用现在还会移除该软件包的模式、输入框按钮、技能、模板附件、模式变量补丁、缓存的系统禁用列表,以及(如果您正在使用它)该软件包的活动模式。卸载后不再有孤立模式留在选择器中。
- 通用:Hub 安装会警告重叠:当您安装一个其技能、模式、MCP、工具或视图与您已有内容重复的软件包时,安装时会弹出提示显示冲突,以便您决定如何处理,且每行重复指示器在 Hub 安装列表和您的 Settings 清单中保持可见。
- 通用:针对事项范围工作的每线程变量覆盖:模式变量以前在每个对话中都是持久的,这对于事项范围的工作(每个法律事项、每个客户委托、每个项目都是不同的上下文)是不正确的。现在每个线程都可以携带自己的变量覆盖,因此代理可以在一个线程中处理事项 A,在下一个线程中处理事项 B,而不会混淆。
- 通用:Hub 安装不再为每个所需的登录弹出级联标签页:安装多提供商的 Hub 应用以前会按顺序为每个提供商触发一个登录标签页。现在安装会快速完成,并根据需要逐个提示剩余的登录,而不是堆叠标签页。
- 通用:云同步稳健性:团队同步密钥衍生现在使用您的组织 ID 和密码短语,而不是您的个人电子邮件,因此同一团队的每个成员都会衍生出相同的密钥,并能实际解密彼此的项目(此前该功能已损坏)。同步计时器、向量时钟和清单锁定也已加强,以防止重叠同步损坏状态。
- 通用:“使用 Caiioo 账户”按钮适用于重新签发的预配密钥:如果您的预配 OpenRouter 行因之前切换到 BYOK 或解密失败而被停用,Settings 按钮以前会失效。现在当服务器提示您没有密钥时,它会生成一个新行,因此该按钮始终能恢复可用的密钥。
- 通用:OpenRouter 密钥字段与 Settings 保持同步:API 密钥输入框现在会在父组件推送新值时(例如点击“使用 Caiioo 账户”后)刷新,而不是保留页面首次渲染时的值。
- 通用:模式设置更改时输入框按钮重新加载:输入框操作按钮(变量等)现在会在模式设置更改时立即刷新,而无需重新加载聊天。
- 通用:代理工具在读取 Slate 前会看到您的最新编辑:如果您在 AI 工具触发(Slate 更新、修订、修订追踪解决)时仍在输入,工具现在会等待正在进行的编辑器内容刷新到存储,以便它操作您实际看到的内容——而不是一秒钟前的陈旧快照。
- 通用:行内卡片根据内容自适应大小:Self Checker 裁决卡片和其他行内卡片现在会根据其实际内容增长,而不是保留固定插槽,并采用父应用的主题(浅色或深色),而不是强制白色背景。
- 通用:悬浮操作按钮默认位于左上角:悬浮的 ⚖ 和 🛡 按钮(以及任何自定义悬浮按钮)现在默认位于输入框的左上角,而不是遮挡右侧的发送按钮。您仍然可以将它们拖动到任何位置。
- 通用:用户个人资料和模式变量更新拒绝未知字段:代理以前可以发明像
_clientName这样静默失效的变量名。现在更新要求键必须存在于架构中,否则返回清晰的错误。 - 通用:简化入职欢迎屏幕:首次运行现在显示三个清晰选项——免费、订阅 Pro 或自带 API 密钥试用——而不是之前的长篇入职表单。当您第一次打开 Composer、Settings 或 Slate 时,会运行一个简短的交互式导览来指出相关控件。
- 通用:登录只需一步:Caiioo 以前在允许您进入之前需要验证身份和活动许可证检查。现在那个冗余的许可证探测已移除——一旦登录,您就进来了。许可证状态仍限制 Pro 专属功能(图像生成等);它只是不再限制打开应用。
- 通用:Settings 搜索可显示高级章节:搜索位于“高级”折叠项下的设置以前会因为章节已折叠而静默返回无结果。现在搜索栏会显示匹配的已折叠章节,且新增的“全部折叠”按钮可一键恢复。
- 通用:更友好的提供商目录:新发布的 OpenRouter 免费层级模型现在在模型选择器中优先显示,弃用的模型会被软删除,不再使列表杂乱。
- 通用:每个原生平台的主机语言检测:macOS、iOS、Android 和 Tauri 外壳现在在启动时检测您的 OS 界面语言并将其传递给侧边栏,因此首次运行的翻译会以正确的语言显示,无需您手动设置。在 23 个非英语区域增加了约 10,000 条翻译字符串。
- macOS:单实例强制执行:当一个 macOS 应用已在运行时,即使 macOS 启动服务有两个注册副本(通常是之前安装的残留),也无法再从
caiioo://链接启动第二个副本。 - macOS:通过 Homebrew 安装的 MCP 服务器现在可以启动:macOS 15+ 禁止经过公证的应用运行带有“provenance”属性的二进制文件,而 Homebrew 会为其安装的所有内容添加该属性。Caiioo 现在会在权限被拒的生成操作中自动清除该属性,因此通过 Homebrew 安装的本地 MCP 服务器(文件系统、内存、获取等)无需任何手动清理即可开始工作。
- macOS, iOS:冷启动时通过
caiioo://安装 Hub 应用更可靠:在刚启动的应用上点击caiioo://安装链接可能会与 WebView 的首次加载发生竞争,并静默丢失安装意图。现在意图会在冷启动竞争中持久化,以便在应用准备就绪后完成安装。 - iOS:尊重 Apple 新的“仅写”日历权限:iOS 17 引入了第三种日历/提醒事项权限——“仅写”——允许 Caiioo 在看不到您现有事件的情况下创建事件和提醒。Caiioo 以前将其视为“拒绝”;现在它能正确使用仅写访问权限,因此仅授予该级别权限的用户仍可要求代理安排事务。
- iOS:应用内购买无法验证时显示更清晰的消息:购买验证失败现在会显示具体原因而非通用错误,且交易不再静默完成,符合 Apple 的 StoreKit 指南。
- Android:保存文件不再冻结应用:通过 Android 保存文件选择器写入大文件以前在 UI 线程运行,在慢速存储上可能会冻结应用数秒。现在写入操作在 UI 线程之外进行。
- Android:流式网络响应在数据块之前交付标头:长时间运行的流式调用现在在任何正文块到达之前向调用者交付标头,修复了一类间歇性的流故障。
- Android:设备端转录更快且内存效率更高:Whisper / Moonshine 音频捕获路径现在使用原始浮点缓冲区而不是装箱列表,减少了内存和 CPU 占用。加载、卸载、转录和清除模型缓存现在也通过共享锁序列化,因此如果您在转录中途切换模型,应用不再偶尔崩溃。
- Desktop:Windows / Linux 外壳的可靠性与安全审计:对 Tauri 外壳进行了全面检查——功能范围缩小到仅限受信任的侧边栏(因此任意访问的页面无法调用特权命令),加强了
caiioo://Hub 安装桥接上的 HTML 转义,增加了优雅的“未找到 Node.js”消息而非静默崩溃,以及一些稳健性修复。 - Desktop, macOS:设备端语音和语音模型下载现已生效:桌面应用的 WebView 内容安全策略曾阻止从 huggingface.co 下载,导致 Kokoro 语音和 Whisper 语音转文本模型在首次使用时无法加载。现在策略已允许 huggingface.co。
- Extension:Settings → Tools, Modes & Apps 重命名并重组:旧的“Tools & Capabilities”类别现在更名为“Tools, Modes & Apps”,并从“Advanced”中拆分出新的“Connectivity”类别。
- Web:23 种语言的定价文案精简:对网站的 Free / Pro 功能要点进行了编辑审阅,使非英语区域与最新的英语源保持一致。法律文档的“最后更新”日期已刷新。
安全
- 通用:登录加固:关闭了对登录和凭据库流程审计中的多项发现。现在仅接受为 Caiioo 自己的客户端 ID 签发的 Google ID 令牌(堵住了一个漏洞,即任何 Google OAuth 客户端的令牌都可以登录某人)。Apple 登录现在会根据 Caiioo 生成的随机数验证 Apple 返回的随机数。Google 和 Apple 登录拒绝将外部身份自动链接到未验证电子邮件的账户(堵住了“影子注册”接管)。刷新令牌端点现在拒绝已撤销的令牌,因此注销的令牌无法换取新令牌。OAuth 令牌签发端点现在需要有效的持有者令牌。OAuth 回调页面本身也针对几种脚本注入向量进行了加固。
- 通用:所有设置的按配置文件隔离:在某些代码路径中,设置层在同一安装的多个登录之间共享单个存储桶,这可能会将一个账户下输入的凭据泄露到另一个账户的视图中。现在每个设置的读写都严格按配置文件进行,旧的共享存储桶在升级后首次启动时会被擦除,且云同步拒绝上传或下载这些旧存储桶。
- Extension:本地桥接自动发现现为选择性开启:Chrome 扩展以前无条件连接到它在 localhost 上找到的任何 Caiioo 桌面应用。现在仅当您在 Settings 中明确开启本地桥接访问时才会连接,因此共享机器上由另一名用户安装的桌面应用不会被静默桥接到您的扩展会话。
- macOS, iOS:加固
caiioo://安装桥接以防注入:处理caiioo://hub/install/<id>URL 的 JavaScript 上手动编写的字符串转义仅转义了单引号——恶意构造的软件包 ID 可能会跳出字符串字面量并在 WebView 中运行任意脚本。现在两个平台都已替换为完整的 JSON 转义。 - iOS, macOS, Extension:Google 登录流程现使用已验证的 Caiioo OAuth 应用:为 Private Sync、Calendar、Gmail、Drive 和其他 Workspace 工具连接 Google 时,以前在 iOS、macOS 和 Chrome / Edge 扩展上会显示“此应用未经验证”警告,因为这些平台仍在针对旧的、未经验证的 Google Cloud 项目进行身份验证。现在每个平台都端到端使用 Caiioo 已验证的 Google 项目,因此您在 Google 授权屏幕上会看到正确的 Caiioo 品牌和已验证应用的绿色对勾,而不是警告。一次性重新登录:iOS 和 macOS 上的现有用户将自动注销,并在本次更新后首次打开应用时被要求重新登录——之前的登录令牌由旧的 Google 项目签发,无法沿用。
错误修复
- macOS:“浏览器未连接”警告在 Safari 连接时清除:将 Safari 扩展连接到 Mac 应用后,曾留下一个陈旧的警告称浏览器控制不可用——且该警告仅点名 Chrome,尽管 Safari、Edge 和 Firefox 都能正常工作。应用现在会统计每个已连接的浏览器(Safari 通过与其他浏览器不同的频道连接,这就是它之前被遗漏的原因),因此警告会在任何浏览器连接时立即清除,且其措辞不再专门针对 Chrome。
- 通用:您选择的新图像模型现已实际可用:图像模型选择器显示了您账户可以生成的每个模型——包括新发布的如 Recraft——但选择其中一个可能会失败并提示“未知图像模型”,因为生成器是在陈旧的内置列表而非实时列表中检查您的选择。生成器现在会在决定前刷新实时模型列表,因此选择器中可见的任何模型都能工作。默认模型也从 FLUX.2 [pro] 更改为更快、更便宜的 FLUX.2 [flex],这是一个更好的通用默认值。
- 通用:Word 文档内的修订追踪现可正确接受和拒绝:在以 .docx 为底层的 Slate 中点击接受或拒绝修订时,曾使用文档位置作为修订 ID,这永远无法匹配真实存储的修订 ID——因此修订在视觉上切换了状态但从未持久化。已修复。
- 通用:Slate 处理损坏的模板安装:Hub 安装的 Slate 模板如果未附带正确的包装器,以前会导致查看器卡在“Loading artifact”且无法恢复。现在模板在加载时会自愈,如果模板确实损坏,查看器会显示清晰的错误。
- 通用:Self Checker 不再叙述两次裁决:当 Self Checker 渲染其裁决卡片时,代理也会在回复文本中描述分数——同一屏幕上出现了两份相同的裁决。现在卡片渲染时会抑制散文总结。
- 通用:Self Checker 正确读取图像附件:评判者以前将图像附件解码为文本,并将产生的垃圾数据输入评估。现在图像附件会作为实际图像转发给评判者,因此任何正确性取决于图像内容的交互都能得到正确评分。
- 通用:Self Checker 仅显示最新裁决:每次点击 ⚖ 都会追加一张新的裁决卡片而不移除前一张,导致聊天中出现一堆重复内容。现在每轮交互仅显示最近的裁决,并带有一个用于清除它的 ×。
- 通用:提醒事项同步对话框正确渲染 Outlook 事件:内部的“microsoft_calendar”源值曾泄露到提醒事项弹窗的平台检测路径中。弹窗现在会回退到其推断路径,因此无论事件来自何处都能正确渲染。
- 通用:大型 Gmail 附件可靠流转:大型 Gmail 附件(25 MB 的文件在 base64 编码后约为 33 MB)曾超过进程间消息上限并静默丢失。运行时现在会为超大负载回退到临时文件,确保附件能够通过。
- 通用:PandaDoc MCP 安装恢复工作:PandaDoc 将其 MCP 端点移动到了新路径。Caiioo 的目录条目现在指向新端点。
- 通用:工作流渲染步骤不再将字符串输出误解析为附件:将字符串输出从一个工作流步骤转发到 View 步骤以前会失败,因为每个字符串都被视为附件 ID。现在通过引用转发的字符串与字面量附件 ID 已被区分开。
- 通用:浏览器环境下的订阅状态检查不再挂起:议程工具在没有桌面桥接的环境中,每次缓存未命中都会探测桌面桥接,每次都抛出“Failed to fetch”错误。现在探测仅在桌面桥接实际可达时进行。
- 通用:代理后台进程现能干净退出:之前版本的一个更改导致代理后台进程在完成后仍保持开启,阻塞了交互后的后续操作——最明显的是自动对话标题生成。现在进程会干净退出,标题生成和其他交互后步骤能按预期触发。
- 通用:从模式选择器中隐藏实验室和仅限管理员模式:仍有两个路径会将内部“lab”模式(以及任何标记为仅限管理员的模式)泄露到面向用户的模式选择器中。已修复。
- 通用:保存时去重重复的 Hub 安装:安装流程中的竞争可能会为同一个软件包写入两个条目。新的保存将通过软件包标识符(slug)去重,现有的重复项将在下次读取时修复。
- 通用:自定义模式 ID 不再与 Hub 安装冲突:存储键现在对自定义模式 ID 具有权威性,消除了当 Hub 安装的模式落在已有用户编辑副本的键上时的冲突。
- 通用:子代理附件和卡片到达主聊天:生成图像、图表、Self Checker 裁决或任何其他附件的子代理以前会将结果丢在不可见的子代理线程中——父对话有时会发明一个 URL 来填补空白。现在子代理附件和卡片会在代理运行器的运行中清理过程中正确重新挂载到主线程,因此子代理产生的内容会出现在您发送请求的地方。
- 通用:延迟渲染页面上的 PDF 读取:PDF 片段的“查看原始文本”弹出窗口现在可以在创建片段时尚未渲染的页面上工作。
- macOS:Slack、Notion、Linear 和其他 Hub OAuth 登录现可在原生应用中完成:使用仅限 HTTPS OAuth 的 Hub MCP 服务器(Slack、Notion、Linear 等)以前无法重定向回本地中继,因为它们的提供商拒绝 http:// 回调。macOS 应用现在通过 Caiioo 云中继的
/oauth/callback路由这些流程,然后通过现有的每用户频道将授权码弹回本地中继——因此在原生应用内登录这些提供商现在与在扩展程序中一样。包含一次性迁移,修复了存储的配置文件尚未连接到本地中继身份提供商的现有安装。 - 通用:“询问用户”在子代理运行中不再挂起:从子进程内部调用
ask_user的代理曾命中一个跨进程不可达的共享内存单例,导致问题从未显现,运行一直停滞直到您取消。协作控制器现在是按线程分配的,因此问题会像在主代理循环中一样显示在聊天中。 - 通用:原生 macOS Calendar / Notes / Reminders 辅助程序刷新:针对当前的 macOS SDK 更新了辅助程序二进制文件,解决了 0.9.721 中提醒事项同步间歇性看到错误项目的问题。
- Extension:Self Checker 裁决卡片现可在扩展程序内渲染:卡片模板内的行内脚本曾被扩展程序的内容安全策略阻止。现在卡片通过扩展程序的沙箱页面路由,以便正确渲染。
- 通用:将 SVG 绘图转换为图像时显示文本:在 Chrome 扩展和 macOS 应用中,将 SVG(徽标、图表或图形)渲染为图像以前会丢失所有文本(字标、标签、标题),在文字应出现的地方留下空白;只有移动应用能渲染它们。Caiioo 现在附带了回退字体(无衬线、衬线和等宽,包括粗体),因此文本会完全按绘制显示——包括 &、™ 等符号和带重音的字符——且绘图要求的任何不可用字体都会回退到整洁的无衬线字体,而不是消失。
版本 0.9.721 (2026年5月15日)
新功能
- 通用:定价简化为免费版(Free)和专业版(Pro),Pro 版每月赠送 $5 OpenRouter 额度:我们取消了独立的 Platform 和 Pro Mobile 层级,并将所有仅限 Platform 的功能(Apple 日历 / 提醒事项 / 备忘录、加密私有中继、API 访问预览、原生语音听写、浏览器 UI)整合进 Pro 版。网站、账户页面和扩展程序内的定价面板现在采用清爽的 Free / Pro 双卡片布局。作为变更的一部分,每个付费 Pro 月份(通过 Stripe 或 Apple)现在除了您现有的余额外,还会为您配置的 OpenRouter 密钥充值 $5 额度。现有的 Platform 订阅者将自动升级为 Pro 版,无需额外费用,并保留其拥有的所有功能。OpenRouter 额度购买门槛也已降低:终端用户不再看到旧有的 $0.80 最低费用附加费,仅需支付 5.5% 的通道费。
- 通用:Slack 现支持在 Community Hub 一键安装:独立的 Slack 集成已移除;Slack 现在像 Notion、Linear、GitHub 等一样从 Community Hub 安装。在 Hub 中点击 Slack 软件包的“安装”,使用 Caiioo Slack 应用登录一次,官方 Slack MCP 服务器即刻连接完成——无需手动配置应用,无需开发者模式。在任何邀请了机器人的频道中,
/caiioo和/caiioo-help等斜杠命令均可使用。 - 通用:Workspace Files 工具:全新的沙盒文件工具允许智能体在您指定的任务空间文件夹内读取、写入、编辑和搜索文件。智能体无法逃逸该文件夹,也无法通过此工具访问网络。读取功能会自动解析 Office 格式(docx/xlsx/pptx)和 PDF。在“设置 → 工具 → Workspace Files”中配置文件夹;智能体将立即识别。
- 通用:Pseudonymizer 的 PHI Safe Harbor 子模式:Pseudonymizer 的 PHI 模式现在提供两种子模式——Limited Data Set(现有的 16 类脱敏,默认)和 Safe Harbor(更严格的 HIPAA §164.514(b)(2) 标准,还会移除年份以外的具体日期、详细地理地址以及 89 岁以上的年龄)。从 Pseudonymizer 设置或新的聊天内切换开关中选择子模式。当您需要一套无需《数据使用协议》即可共享的去标识化数据集时,Safe Harbor 是正确选择。
- 通用:Pseudonymizer 现已正式发布:Pseudonymizer——它能检测您输入的内容中的姓名、电子邮件、地址、ID 和其他敏感值,并在其到达模型之前将其替换为真实的伪造值——在本版本中结束测试计划,并向包括 Free 版在内的所有方案开放。在“设置 → 隐私 → Pseudonymizer”中开启,或使用新的聊天内盾牌图标切换。模型永远不会看到您的真实值;替换值在工具调用运行前会在本地还原,因此输出保持准确。
- 通用:Pseudonymizer 聊天内控制:Pseudonymizer 不再隐藏在“设置”中。发送按钮旁的盾牌图标(灰色 = 关闭,蓝色 = 个人数据过滤器,青色 = PHI/Limited Data Set,翡翠绿 = PHI/Safe Harbor)可一目了然地显示当前模式,并打开一个带有模式选择器的弹出框。当 Pseudonymizer 开启时,输入框周围会出现一个与模式颜色匹配的 1 像素圆环作为环境提醒。在每次包含替换的对话轮次后,您的消息下方会出现一个小的“🛡 已匿名化 — N 处替换”标签;点击它可以查看具体的“真实 → 伪造”替换对及其类别标签。
- 通用:将另一台设备上的浏览器连接到您的电脑:新的配对流程让您可以安全地在手机、平板或其他笔记本电脑的浏览器中使用 Caiioo,而所有程序仍在您的主电脑上运行。在“设置 → 连接 → Caiioo Bridge → 配对设备”中,生成一个有效期 5 分钟且仅限一次使用的 6 位代码。在另一台设备上打开相同的 URL,输入代码,该设备此后将保持配对状态。暴力破解尝试被限制为每 IP 每分钟 10 次,主电脑上的服务器重启会干净地重新配对每台设备。
改进
- 通用:待办事项按源日历显示颜色条:提醒事项 / 议程窗口中的每个事件卡片现在都带有一个与其所属日历匹配的颜色条,因此您可以一眼分辨出该项目是来自工作、个人还是共享日历。目前支持 Google 日历;Apple 和 Microsoft 将在其数据源公开日历颜色后跟进。
- 通用:AI 无需预先指定单元格即可读取 Google Sheet:Google Sheets 读取工具以前除非智能体指定确切的单元格范围(如
Sheet1!A1:D200),否则拒绝运行。现在模型可以请求读取整个工作表或工作簿中的所有工作表,工具会自动识别布局。内置的 1000 行上限可防止巨型电子表格超出模型的上下文窗口——如果工作表被截断,响应会告知模型,以便其下次请求更小的范围或更高的行数。 - 通用:从 Community Hub 安装 OAuth 工具现在会自动打开登录页面:添加需要登录的 Hub 软件包(Notion、Linear 等)以前会让卡片停留在“需要 OAuth”状态,并需要您单独点击“登录”按钮。现在安装会自动为您打开登录标签页——您的“安装”点击被视为同意——并显示一行“正在打开 X 的登录页面...”来解释为何弹出标签页。手动的“登录”按钮保留作为备份。
- 通用:设置 → 连接显示其他设备的真实网络地址:macOS 应用上的“从网络上的其他设备连接”面板之前显示的是
127.0.0.1:3847(仅在同一台电脑上有效的回环地址),导致用户复制粘贴了一个实际上无法从其他设备访问的地址。该面板现在显示来自 bridge 本身的真实局域网 IP 和.local网络名称。当新的“允许从其他设备访问”开关关闭时,该地址也会被隐藏,以免您看到一个无法使用的地址。 - 通用:网络搜索可靠捕获 Google 的 AI Overview:网页浏览工具的 Google 抓取工具偶尔会返回空的 AI Overview 区块,或者拉入杂乱的右侧栏“来源”文本和内联脚本。我们重新将提取锚定在 Google 稳定的区块标记上,并在返回前剔除脚本内容和右侧栏,确保智能体只看到可读的答案。
- 通用:Pseudonymizer 同时也保护公司名称:Pseudonymizer 现在将组织名称视为受保护实体,替换为保留法律后缀样式(Inc.、LLC、GmbH)和“合伙人 vs 品牌”结构的真实伪造名称。城市和小地区名称(如 "Springfield"、"St. Albans")也被检测为一级类别,以便根据您的活动模式进行替换或剔除。
- 通用:Pseudonymizer 为城市和地区增加了西班牙语、法语、德语及其他多语言覆盖:个人数据检测模型使用 23 种语言的城市名称手工编写的多语言数据进行了重新训练,因此使用非英语提示词的用户现在可以获得与英语用户同等级别的保护。
- 通用:Pseudonymizer 模型下载在 iOS 上显示进度:首次下载 PHI / 个人数据检测器时,在 iOS 上可能会显得卡住,因为没有任何提示告知其仍在工作。现在增加了心跳进度日志,以便您看到下载并未冻结。
- 通用:子智能体可以按名称搜索模型目录:为了将子智能体工具描述控制在预算内,其中嵌入的目录现在是每个供应商价值最高的前 10 个模型。当子智能体需要该列表之外的模型时,它可以调用新的
search_models操作并输入名称片段(例如 "haiku"),从而获取确切的目录 ID、定价和功能标志——这样模型即使对于较少使用的选项也能选择具体的 ID。 - 通用:自定义 MCP 服务器在凭据库中显示友好名称:当您登录自定义 MCP 服务器时,凭据库以前使用原始连接 URL 进行标记,难以辨认。凭据库现在显示您赋予它的友好服务器名称,仅在未设置名称时才回退到 URL。
- 通用:Community Hub 现已加入 Legal Data Hunter:一个新的 Community Hub 软件包将 Legal Data Hunter(涵盖 110 多个国家的 1800 万+ 判例法、立法和学说文件)接入为一键安装的 MCP。
- Web:信任页面显示 SOC 2 Type I 徽章:Caiioo 已通过 SOC 2 Type I 审计。caiioo.ai 上的信任页面现在在现有安全披露旁展示 AICPA SOC 2 徽章。
- iOS:隐藏 iOS 添加到文本框的键盘工具栏:iOS 为网页文本框在键盘上方附加的前进/后退箭头和“完成”按钮占用了编辑器明显的垂直空间。该栏现在已被隐藏(仅使用 Apple 公开 API,因此符合 App Store 安全规范),并在页面重新加载后保持隐藏。
安全
- 通用:本地 bridge 默认保留在您的电脑上;局域网访问需主动开启:驱动 stdio MCP 和仅限桌面工具的本地 bridge 以前监听所有网络接口,在公共 Wi-Fi 网络上,其他设备可能会请求会话令牌,然后调用特权的“运行 shell 命令”端点。现在 bridge 默认仅监听您自己的电脑。要从其他设备使用它,请在“设置 → 连接”中开启“允许从网络上的其他设备访问”,然后使用新的代码流程配对设备(见上文)。即使开启了局域网访问,会话令牌也仅发放给来自您自己机器的请求,因此同一 Wi-Fi 下的陌生人无法获得访问权限。
- 通用:Pseudonymizer 拒绝向 Perplexity 泄露您的真实值:如果开启了 Pseudonymizer,且智能体尝试运行 Perplexity 搜索,而查询中包含已匿名化的标识符(已替换的姓名、电子邮件、地址),Caiioo 现在会拦截该搜索并显示明确的解释,而不是还原该值并发送给 Perplexity。Perplexity 是第三方 LLM 服务——Pseudonymizer 的核心意义就在于此类值永远不会到达 LLM 服务。要运行搜索,请在该轮对话中关闭 Pseudonymizer,或重新组织语言以避开受保护的值。
- 通用:电子表格解析器更换为维护中的库 (GHSA-4r6h-8v6p-xvw6):Caiioo 用于解析
.xlsx附件的库存在未修复的原型污染漏洞,且已不再维护。我们将其替换为维护良好的exceljs库。电子表格上传和文件任务空间的.xlsx读取将返回与以前相同的内容。
缺陷修复
- 通用:服务器重启后浏览器卡在 "Loading Caiioo… 0/0":当主机服务器尚未与连接的浏览器建立端到端加密会话时(因为服务器刚重启,或者是浏览器的首次连接),浏览器会忽略服务器启动密钥交换的请求——导致加密消息无法解密,UI 卡在加载中。浏览器现在能正确响应密钥交换请求,侧边栏可以正常加载。
- 通用:Caiioo 反复请求您已授予的 Google 权限:当您在对话过程中授予 Google 权限时(通过同级工具、设置面板或从另一台设备同步),智能体内存中的账户副本未能察觉,并会继续再次请求相同的权限——有时在一次运行中请求多次。Caiioo 现在会在提示缺少权限前重新读取一次您的账户,因此运行中的授权会立即生效。
- 通用:7 种语言曾被告知 AI 是“英语”:从语言代码到语言名称的内部映射覆盖了 24 种支持语言中的 17 种。UI 设置为阿拉伯语、希伯来语、印地语、孟加拉语、乌尔都语、土耳其语或荷兰语的用户,其系统提示词曾显示“用英语回答”,而不是其实际的 UI 语言。映射现已补全,并增加了防止此类退化的测试。
- 通用:提醒事项同步对话框显示原始文本代码而非翻译标签:提醒事项 / 议程同步对话框中的 Caiioo 卡片在所有语言中都渲染了字面占位符(如
reminders.sync.CaiiooName),而不是翻译后的文本。已修复。 - 通用:在对话中授予额外权限时,Google 登录停止“乒乓”跳转:当智能体需要尚未拥有的 Google 作用域(Drive、Sheets 等)并提示您从侧边栏标签页授权时,新的登录可能会让智能体返回到再次请求相同作用域的状态。OAuth 流程现在能正确地将新授予的作用域合并到您现有的连接中,而不是覆盖它,从而实现一次批准即有效。
- 通用:子智能体附件现在显示在主聊天中:当子智能体的工具创建图像、文件或其他附件时,以前它被存储在子智能体的不可见线程中,主对话不显示任何内容——有时父模型会编造一个 URL 来填补空白。子智能体附件现在会自动链接回父线程,并像其他工具结果一样内联渲染。
- 通用:Pseudonymizer 检测器第二遍扫描捕获第一遍遗漏的姓名:Pseudonymizer 现在在发送前会运行快速的第二遍检测,重新检查消息中是否包含任何本应被屏蔽但被遗漏的真实值。这是针对模型最容易遗漏的受保护类别的双重保险。
- 通用:Pseudonymizer 不再将您的真实姓名放入 My Identifiers 占位符中:“设置 → Pseudonymizer → My Identifiers”字段之前将您账户的真实姓名显示为示例占位符,这既看起来像泄露,又让设置过程感到困惑。现已替换为通用占位符。
- 通用:Pseudonymizer 药丸标签在深色主题下清晰可见:用户消息下方的“🛡 已匿名化”药丸标签在深色主题中使用了浅色模式的文本颜色,导致几乎看不见。已修复。
- Extension:侧边栏“获取当前位置”死循环已修复:侧边栏的位置请求在浏览器询问您之前就返回“权限被拒绝”,因为 Chrome manifest 完全缺少位置权限。权限已添加;位置请求现在可以按预期到达浏览器提示。现有用户在更新时会看到一次性权限请求。
- iOS:层级合并后订阅页面仅销售 Pro 版:iOS 应用内付费墙曾短暂仍显示已取消的 Pro Mobile 和 Platform 层级,这可能导致用户订阅已不支持的方案。付费墙现在销售与网站完全一致的 Pro 层级。现有的 Pro Mobile / Platform 订阅者将继续作为 Pro 用户获得支持,无需额外费用。
- iOS:页面仍在加载时进行导航导致的罕见崩溃:当页面导航在加载中途被取消时(例如,在前一页完成前点击链接),iOS 可能会崩溃。修复方案将所有错误路径路由通过同一个已受保护的助手,因此取消的加载永远不会尝试在已关闭的页面上交付结果。
- Web:登录可在应用内浏览器(Slack / X / LinkedIn / Instagram)和 iOS Safari 中正常工作:当从另一个应用内的链接打开 caiioo.ai 时,弹出式 Google 登录会失败,因为应用内浏览器要么拦截弹出窗口,要么切断其与原始页面的连接。在移动端和应用内浏览器中,网站现在使用通过您自身浏览器会话的全页重定向,而不是弹出窗口,从而确保登录完成并返回起始页面。桌面端弹出式登录保持不变。
- Web:Community Hub 在平板电脑和长名称显示上的优化:网站导航栏现在在平板宽度(最高 1024px)下会切换到汉堡菜单,而不是溢出到 Logo 上。Hub 软件包模态框标题不再延伸到关闭按钮下方。“即将推出”标签在窄宽度下会整齐换行。工具图标会依次尝试回退到表情符号、公司网站的已知 Logo、首字母头像——而不是让长的内部标识符(如 "customerio")溢出图标框。
- Web:Community Hub 现在为每个软件包显示正确的作者:Hub 中的每个软件包以前无论实际开发者是谁都显示“by caiioo”。作者现在反映真实的维护者——“Model Context Protocol”、“oraios”或供应商品牌——仅在我们自己构建的工具和模式中回退到“Caiioo”。尚未完全连接完成的集成卡片将从 Hub 中隐藏,直到其可用,以免您看到安装后立即报错的卡片。
- Web:站点地图停止触发“带重定向的页面”警告:Search Console 之前将 caiioo.ai 上的每个页面标记为重定向,因为站点地图列出的 URL 缺少实时网站使用的结尾斜杠。站点地图现在与规范 URL 匹配,并包含各语言备选链接,因此搜索引擎不再将整个网站视为重定向。
版本 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 上限,适用于每个供应商。
Version 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 服务器集成
- 截图和视觉能力
- 语音输入
- 线程管理和分支
- 个人资料和模式系统