熟悉,自然而然
启动器、工作区、常用应用,依然是熟悉的入口。保留已经习惯的手势与操作,让背后的智能持续进化。
一个理解你意图的 Agent Shell,让智能融入你早已熟悉的应用。与 AI 相处,本来就可以更自然。
一次开放探索:聊天框之外,人机交互还能是什么?
新的开始,少一点忙乱
明天可能会下雨。想去散步的话,今天的阳光刚刚好。
海雾会在中午散去。不必早起赶路,给早晨留一点悠闲。
下一场会议在 14:00。现在,可以安心做一件喜欢的事。
各平台支持情况有所不同。桌面、Home 与 ROM 的构建要求各异;iOS 尚无集成 Agent 内核。当前构建指南见架构板块。
从桌面、鼠标,到多点触控,我们花了几十年,让计算机更直观、更好用。这些积累,也应该属于下一个时代。
OctoSense 把 Agent 能力带进熟悉的界面。打开应用,轻触卡片,自由操作。让意图成为看得见、摸得着、可以亲手改变的体验。
阅读完整理念好的交互,是用起来觉得「本来就该这样」。
启动器、工作区、常用应用,依然是熟悉的入口。保留已经习惯的手势与操作,让背后的智能持续进化。
规划旅行,就应该像在规划旅行。Agent 把合适的工具带到眼前,让你直接看、选、操作。
应用可以像你的每一天一样独特。更安静的布局,更合拍的节奏,只留下此刻在意的信息。
学校通知、年度体检、同学聚会,还有安心新家。选择一个场景,点击卡片,亲手走完完整的服务体验。
这些概念指南展示熟悉的应用如何协作,所有工作流均为模拟,并超出当前实现。下方架构说明介绍已经运行的部分。
一条消息、一次天气变化,或一个约定的时间。
Agent 将信息与你的计划、偏好联系起来。
一封待回复邮件、一项日程变更、一份物流追踪。
确认、修改,或授权明确范围内的自动处理。
App Card 是一个小型的、可以操作的应用。它可以独立出现在桌面上,也可以嵌入你正在阅读的邮件。同一件事、同一份状态,在需要它的地方出现。
以下是设想中的后台工作流。当前 Shell 尚未实现应用 Agent 的自动触发与定时调度。
物流更新、学校来信、天气变化,都可以唤醒对应任务,并更新它的卡片。
提前安排晨间简报或播放列表。等你开始一天时,需要读、听、使用的内容已经就绪。
优先处理紧急事件。对不紧急的研究合并处理,或在可用时选择成本更低的时段,并遵循你设定的预算。
应用是入口,App Card 承载行动。Agent 连接上下文,你决定它可以做什么。
OctoSense 托管应用,并把它们接入共享的 octos Agent 内核。Agent 是由模型驱动、处理请求并使用获授权工具的协作方;应用操作由 Shell 检查并执行。
你可以让系统助手协调工作。它会向已获允许的应用 Agent 求助,再获取结果。
声明了 Agent 访问或工具的应用,经你同意后可以获得 Agent。Shell 按应用与账号准备称为 peer 的身份,其工具与数据访问都有明确范围。
桌面端的 “Ask <app>” 打开应用 Agent 的对话。你的对话与系统助手委派的任务各有记录,可以并行运行。
在桌面端,配置模型并同意使用 Calendar 的 Agent 后,“我今天有哪些日程?”可以走两条路线。模型可以调用日历事件工具,读取宿主管理的日历。
交互图将在此加载。下方文字路线无需 JavaScript 也能阅读。
在桌面端的 Ask Calendar 中问“我今天有哪些日程?”。配置模型并获得同意后,应用 Agent 可以调用日程工具,答案回到你的对话。
系统助手可以把同一个问题委派给 Calendar 的 Agent。它使用同一应用/账号 peer 上的另一条对话,获取结果后再回答你。
跟随一个请求从 UI 进入 octos。箭头表示请求方向,回复沿这些边界返回。Peer 是持久身份,并非一个进程、线程或 Tokio task。
同一个 peer 可以服务这两条路线。每条对话保存自己的记录,也可以接收另一条对话近期历史的有限摘录。
在 Unix 上,应用 Agent 可以用受限文件工具读取开放的账号工作目录,也可调用 calendar.events 等已实现的应用工具。它不会自动看到所有应用数据库和凭据。调用另一应用的工具,还需要宿主提供该工具、所有者声明可共享、调用方获得授权,并有实际执行器;审批遵循 Shell 的策略。
News 提供读取与通知工具;桌面 Calendar 提供日程工具。Mail 的 Agent 目前通过 mail.notify 发布通知,其 UI 的读信和发信 API 尚未开放为 Agent 工具。应用包的自动触发器、由脚本实现的 Agent 工具,以及应用到系统 Agent 的通用委派仍未实现。本站的邮件和定时服务场景展示的是设想中的工作流。随产品提供的通知和日历卡片没有卡内对话;Mail 聊天演示使用预设回复。
编译后的模块在 Shell 内运行;部分桌面应用可以作为子进程运行。模块和进程是不同的启动方式,并非每个 Agent 对应一个进程。
App Hub 准入应用包后,由 Splash 隔离环境执行 main.splash。L0 page.card 应用包则走独立的 Octoscript 解析与 Makepad lowering 路线。Design Flow 的 tools/octo 命令启动 App Hub 的 card-host,适合检查本地 UI;该宿主没有 Shell 的宿主服务或 Agent。
Peer 是持久身份;session 保存对话,turn 处理一次输入。Tokio task 执行异步工作。Shell UI、broker runtime 和共享内核服务分别调度。一个 peer 并不等于一个线程或一个 task。
桌面版与 Android Home 共用 Rust Shell。OpenHarmony 在进程内运行内核;iOS 目前没有集成 Agent 内核。ROM 将 Home 与 Android 平台服务一起打包,其中的特权桥接服务不同于系统 LLM Agent。手机触控导航尚无打开 Ask-app 面板的入口。
支持有界工作流与声明式卡片的语言,解析器和检查器由 Rust 实现。隔离的 main.splash 应用走独立的 Makepad Script 路线。
受隔离约束的小型脚本应用,把意图变成可以直接使用的体验。用应用开发流程构建,发布到 App Hub,系统自带应用就是示例。
OctoSense 是 Agent Shell,即传统操作系统之上的交互层。我们希望把应用、上下文和 Agent 能力,带进一个熟悉的入口,连接桌面与移动设备。
对话是表达意图的一种好方式。OctoSense 探索更丰富的可能:可交互卡片、应用、直接操作与熟悉的手势。Agent 参与塑造的不只是回答,还有工作区本身。
当然,这正是我们的核心想法。你依然可以启动并亲手操作应用。Agent 的辅助应该建立在这种掌控感之上,让体验更有用。
octos 内核、Makepad UI 框架和 OctoSense Shell 以 Rust 构建。应用可使用 Splash 脚本或 Octoscript L0 卡片;Android 等平台集成还包含平台专用代码。各项目均开源,许可证以各仓库为准。
可以。用 cargo 运行桌面版,在 Android 手机上安装 OctoSense Home 应用,或者给 OnePlus 6 刷入 OctoSense ROM;三者都从 OctoSense 仓库构建,那里有最新的构建说明。想动手做应用,从 OctoScript-App-Design-Flow 开始;Agentic App 黑客松是很好的起点。本站的交互预览使用示例数据来呈现理念,并非正在运行的 Agent。
一个值得探索的想法,一段可以共同创造的未来。
在 GitHub 一起构建参加 Agentic App 黑客松