Mosaic: agents from tabs to infinite canvas

1 天前
 Lambert2022

日常用 Agent 写代码,很快就会碰到一件烦事:同一件事要开好几个 Agent 。

一个在修 bug ,一个在看 CI ,一个在 worktree 里试另一条线。它们共享同一个仓库、同一套上下文,工具却逼你切——终端 tab 、再开一个窗口、再开一个 TUI 。谁在等你确认、刚才看到哪一行,全靠脑子暂存。切两次,上下文就丢一块。

所以我做了 Mosaic 。一张无限画布,每个 Agent 是一块 tile 。同一个项目围着一个 Workspace ,位置就是上下文:要看谁,平移过去;要对照,两块并排放。多 Agent 开发从「切来切去」变成「摊在桌上」。

这张图是我自己在用的房间。几个彩色圆是不同项目的 Hub ,每个旁边挂着自己的 Grok ; worktree 也单独占一块。没有全屏切换,也没有把会话藏进标签页。

看到 FlutterFlow 的 Campus 之后,我决定用原生技术复刻这个「工具摊在画布上」的想法。Campus 装下来超过 900 MB ; Mosaic 现在 24.5 MB 。AppKit + SwiftUI ,终端是真 PTY ,笔记是系统文本视图,房间和布局存在本地 SQLite ,没有账号。滚动、缩放、快捷键、窗口行为都是 macOS 自己的那一套。

画布上不只有 Agent 。终端、笔记、Git diff 、网页、别的 App 窗口的实时画面,都可以放上来。Room 是一整张画布; Workspace 是画布上的圆形 Hub ,把同一件事的 session 、改动和笔记连在一起。折叠只是收起呈现,进程还在跑。谁在等你,右上角会有计数,点一下飞到最旧的那条。

目前是 1.0.0 preview ,要求 macOS 15+、Apple 芯片。官网: https://anderson-hyl.github.io/mosaic-web/

欢迎拍砖。

599 次点击
所在节点    分享创造
1 条回复
cppc
10 小时 22 分钟前
有意思

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1242982

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX