Frona v2026.6.0 – 自托管个人AI助手
Frona v2026.6.0 版本引入了多项重要更新:统一的人机交互暂停/恢复机制、斜杠命令合成器、类型化文件工具、按频道的消息分割器,以及共享链接和预览页面。后台架构重构,新增 Harness 结构体整合运行时,并优化了沙箱管理。前端工具视图也进行了扩展。
Frona v2026.6.0 版本正式发布,这是一个自托管的个人AI助手项目的重要更新。本次发布带来了多项核心功能改进和架构优化,旨在提升用户体验和系统可靠性。
首先,统一的人机交互(HITL)机制是本次更新的亮点之一。该机制在全部支持的频道(包括 Telegram、Discord、Slack、WhatsApp Cloud、Signal、SMS 和个人 WhatsApp)上实现了暂停/恢复功能。当需要用户确认时,系统会在不同频道上以适当的方式呈现按钮或回复提示(如“是/否”)。后台新增了类型化的 HITL 值处理,并提供了一个 REST API 端点用于解析工具调用。此外,还优化了持久化和恢复逻辑,确保暂停的对话能够继续。
其次,斜杠命令合成器让用户可以直接通过 / 或 @ 前缀调用技能和其他代理。前端集成了 Lexical 触发器,并提供了命令发现 API。同时,技能(Skill)的元数据支持了 disable-model-invocation、argument-hint 和 arguments 字段,以便在 / 菜单中显示但不在模型调用中暴露。
类型化文件工具是另一项重要改进。新增了读取、写入、编辑、全局搜索和 grep 等工具,并基于工作区进行作用域限制。编辑工具采用了 Unicode 标准化和 ASCII 规范化,使得即使记忆略有偏差的片段也能匹配目标,从而减少令牌消耗和幻觉。这些工具通过结构化 diff 替代了传统的 shell 往返调用。
为了解决长消息被截断的问题,本次发布引入了按频道的消息分割器。分割器会在段落、行、单词和 UTF-8 字符边界处进行分割,并且不会在代码块或转义序列内部断开。不同频道有不同的限制(如 Telegram 4096 字符、Discord 2000 字符、SMS 1600 字符等),分割器会适配这些限制并生成适当的格式。
共享链接和预览页面功能也得到了增强。新增了 Share 实体,支持文件或聊天类型的短链接生成,并提供了预览页面渲染 Markdown 和代码高亮。后台会定期清理过期的共享内容。
任务系统方面,现在支持 result_description 参数,允许直接提供文本答案而无需编写 schema。复杂任务结果要求包含顶层 summary 字段。任务完成事件会通过一个 schema 驱动的气泡渲染,并在各个频道上统一展示。研究工具现在会以 Markdown 附件形式发布完整的研究报告,文件名基于主题生成,避免覆盖。
在后台架构上,引入了 Harness 结构体作为代理运行时的视图,整合了会话构建、WebSocket、消息流和恢复功能。任务执行器被简化,并且 HITL 解析逻辑移入 Harness。沙箱管理统一为每个主体类型使用单一的 SandboxManager。频道适配器框架现在使用类型化的 ChannelError 来分类失败类型(如临时错误、禁止访问、未找到等)。
前端也进行了多项改进:工具视图注册表允许为不同类型工具提供定制化渲染,包括 shell、Python、Node、文件工具、任务工具、内存工具等。Shell 命令显示为 bash 高亮的代码块,文件工具带有行号和语法高亮。此外,聊天页面不再在跨页时丢失最新消息,推理切换按钮改用 sparkle 图标。
其他细节包括:浏览器会话保持活动状态以避免超时、修复了单波浪线删除线被误解析的问题等。总体而言,Frona v2026.6.0 是一次功能丰富、注重稳定性和用户体验的重大更新。