Omodachi:你的 Omarchy 桌面,就在你随身带着的 iPhone 和 iPad 上

Omodachi 是 Omarchy 的开源伴侣。Omarchy 是基于 Arch Linux 和 Hyprland 的桌面。Omodachi 把 iPhone 或 iPad 变成你那台 Omarchy 电脑的延伸:可以是电脑旁边的第二块屏幕,也可以接管整个桌面;还有 Omarchy 菜单和你的快捷键、电脑上正在跑的 agent、Herdr 和终端。没有账号,没有云服务,也没有任何统计。

打开 JavaScript 后,这个页面是一个可以上手操作的 App 模拟:一台 iPad 接管了 Omarchy 桌面,跑的是演示数据。

怎么运作

  1. Omarchy 插件在 bar 上加一个 Omodachi 图标,图标下面是一个面板。在面板里按一次 Install,就会把主机端 omodachi-core 装到同一台电脑上。
  2. 主机端跑在你的 Omarchy 电脑上,真正的数据和动作都在它那里:菜单、快捷键、工作区、远程屏幕、Herdr、SSH 和通知。
  3. iPhone 和 iPad 上的 App 通过 Tailscale 连到电脑:两边都装上 Tailscale,再把电脑的名字粘贴进 App。没有 Tailscale 时,它会在你的局域网里找到电脑,只能在那个 Wi-Fi 下用。每一台设备,都要你在电脑上的面板里放行。

功能

Remote:扩展屏或接管桌面

iPhone 和 iPad 都可以。扩展屏在电脑自己的屏幕旁边多加一块显示器,窗口可以拖过去。接管桌面会把所有工作区搬到设备上,电脑自己的屏幕关掉,直到你结束为止。两种方式都通过我们的 Sunshine 分支串流,支持直接触摸、触控板模式和键盘快捷键。Sunshine 没法串流时,比如电脑没有 VA-API 视频编码器,它们会改用 WayVNC,这时是单指指针加键盘。会话期间,App 的 bar 上一直留着三个快捷动作:键盘、指针模式和主机音频。

七个面板

Omarchy 菜单和每一个快捷键,常用的行可以 pin 住;Remote;Agent,和电脑上已经在跑的 agent 说话,发照片和文件给它,回答它的提问,开始新对话;Herdr;SSH;设置;还有桌面的通知,每条点一下就能打开或清掉,也有勿扰。

Odomo,给锁着屏的手机

App 开着的时候,agent 或 Herdr 里的 pane 在等你,它会告诉你。批准可以直接在提醒上允许或拒绝;你正在用电脑时,提醒会先等着。Odomo 是电脑自己的网页 App,放在你的主屏幕上,手机锁着屏也能找到你;它需要电脑上开着 Tailscale。

用 Face ID 批准 sudo

可选。电脑为 sudo 或系统提示框要你的密码时,在设备上用 Face ID 或 Touch ID 批准就行。设备从不保存、也看不到这个密码,直接输密码也照样能用。

Herdr 和终端

你的 Herdr 会话变成一张能点的 pane 网格,每个 pane 保留它在桌面上的名字,有一排按键、快捷回复,还有一个往 pane 里打字、却不把它抢过来的输入框。可以切换会话、启动停着的会话,或者在你挑的文件夹里开一个新工作区。电脑上的 SSH 终端打开就能用,什么都不用配。

Agent,在 Omarchy 自带的 agent 面板之上

Omarchy 自带的 agent 面板,显示电脑上每个 AI 编程 agent 用了多少:它的额度,以及按天、按模型统计的 tokens。Omodachi 加上的是对话本身,就在 iPhone 或 iPad 上。Agent 面板和电脑上已经在跑的 agent 说话;它的脸,也就是 Omodachi 的 o,会显示它是空闲、在想、在跑命令、在等你,还是做完了。

  • 离开桌子也行。用手机和电脑上的 agent 说话。通过 Tailscale,出门在外也能用;没有 Tailscale 时,要在同一个 Wi-Fi 下。
  • 在手机上同意或拒绝。agent 要运行什么之前先问你时,在手机上回答。App 的 bar 会显示它在等;Odomo 是电脑自己的网页 App,手机锁着屏也能找到你。
  • 照片和文件。选一张照片或一个文件,或者粘贴一张图片,它会跟着你的消息一起发过去。
  • 链接在对的地方打开。回复里的网页链接在手机上打开。它提到的文件在电脑上打开,Remote 把它带到你面前;链接从不运行程序。
  • 新对话和模型。一点就开始新对话,还能挑 agent 用哪个模型回答。
  • Herdr 里的每个 agent。Herdr 的 pane 会标出每个 agent、说出它在做什么,在等你的那个,直接在网格里就能回答。

获取

  • Omarchy 插件市场:已上架。插件已经在 Omarchy 插件市场上了;App Store 随后就来。
  • GitHub 上的插件。一条命令把它加到 Omarchy,再在它的面板里按 Install。
  • iPhone 和 iPad 的 App。用 Xcode 从源码自己编译。TestFlight:内部测试;App Store:即将推出。
omarchy plugin add https://github.com/omodachi/omodachi-plugin.git --enable

截图

真实的屏幕:一台一次性虚拟机上刚装好的 Omarchy、连着它的 App,以及演示模式里的 App。

插件刚加上,它的面板里只有一个 Install 按钮。
插件刚加上,它的面板里只有一个 Install 按钮。
按下 Install 半分钟后,面板显示电脑已经就绪。
按下 Install 半分钟后,面板显示电脑已经就绪。
安装程序在一个你看得到的终端里跑,只要一次 sudo。
安装程序在一个你看得到的终端里跑,只要一次 sudo。
一台手机请求加入,电脑会显示是谁在请求、它能做什么。
一台手机请求加入,电脑会显示是谁在请求、它能做什么。
在电脑上点一下,就让它进来了。
在电脑上点一下,就让它进来了。
一台接管了整个桌面的 iPad,窗口和 bar 都在。
一台接管了整个桌面的 iPad,窗口和 bar 都在。
iPad 成了电脑旁边的又一块屏幕。
iPad 成了电脑旁边的又一块屏幕。
电脑上的一个 shell,什么都不用设置。
电脑上的一个 shell,什么都不用设置。
在手机上,bar 会从圆角往里让一点。
在手机上,bar 会从圆角往里让一点。
手机上的,是电脑自己的 Omarchy 菜单。
手机上的,是电脑自己的 Omarchy 菜单。
iPad 上菜单和快捷键并排,你 pin 住的几行在最上面。
iPad 上菜单和快捷键并排,你 pin 住的几行在最上面。
Agent 面板上有 agent 的脸和新对话,回形针一点就到。
Agent 面板上有 agent 的脸和新对话,回形针一点就到。
iPad 上的 Herdr,有 pane、画面、往里打字的输入框和那一排按键。
iPad 上的 Herdr,有 pane、画面、往里打字的输入框和那一排按键。
手机上的同一个 Herdr 面板,按键收在一个按钮后面。
手机上的同一个 Herdr 面板,按键收在一个按钮后面。
iPhone 上的 Omarchy 菜单。
iPhone 上的 Omarchy 菜单。
每一个快捷键,搜一下就找到。
每一个快捷键,搜一下就找到。
桌面的通知,每一条点一下就能打开或清掉。
桌面的通知,每一条点一下就能打开或清掉。
电脑、提醒和屏幕的设置。
电脑、提醒和屏幕的设置。

开源

Omodachi 的每一部分都是开源的。主机端和 Omarchy 插件是 MIT;iPhone 和 iPad 的 App,以及我们的 Sunshine 分支,是 GPL-3.0。

  • omodachi-plugin,MIT:Omarchy 插件:bar 上的图标、面板,以及让设备加入。
  • omodachi-core,MIT:跑在 Omarchy 电脑上、真正干活的主机端。
  • omodachi-ios,GPL-3.0:原生的 iPhone 和 iPad App。
  • omodachi-sunshine,GPL-3.0:我们从 LizardByte 的 Sunshine 分出来的版本,负责串流远程屏幕。

Omodachi 是一个独立项目,和 Omarchy 上游没有关系。