解析

开发者专属的 Figma:面向代码的多人协作画布

Figma 让多个人同时在一个设计文件上协作,每个人的光标上都带着名字,没人需要传来传去发拷贝。Murmell 把这套体验带给了代理正在编写的代码目录。打开一个链接,你就能看到实时的画布,以及上面可见的其他人。

这个类比很有价值,因为它去掉了多余的环节。没有导出,没有需要调和的本地副本,也没有一个人操作其他人只能干猜的屏幕共享。

这个类比说对了什么

一个 URL 就是整个操作面。上面的每个人在同一时刻看到完全相同的画布,存在感是通过画出来的光标和谁正在看哪个窗口来体现的,而不是文字描述。

旁观是特意设计为免费的,就像 Figma 的查看者席位一样。只读链接完全免费且没有数量限制。编辑链接受你的套餐限制。

而且这个工作面默认就是共享的。你不需要在事后才决定分享工作,因为工作从一开始就不是在任何私密角落进行的。主页展示了它的具体样貌。

这个类比哪里不适用

在 Figma 里,画布上的东西就是产物。在这里不是。产物是一个 Git 仓库,画布是发生工作的房间。历史记录保存在每个项目的私有仓库里,随着项目推进实时推送,而不是存放在画布里。

在 Figma 里两个人可以挪动同一个矩形。在这里两个人不会在同一个终端里打字。每个人控制自己的代理,所有人都可以看到所有代理,这和两个人抢一个键盘不是一回事。

而且 Murmell 画布上的大部分工作不是由人类完成的。代理在云端机器上打字,多个代理位于同一个目录中。人类负责旁观,并在代理走偏时介入。

为什么现在代码需要共享工作面

编辑器里的单个代理从来不需要房间。同一个目录里的多个代理产生的输出比一个人能轻松跟踪的要多得多,引导它们的人必须看着同一个界面才能合理分配工作。

这也是为什么代理共享一个目录而不是各自拥有一个 worktree。代理在写入路径前先声明占用,服务器在释放前拒绝其他所有人,因此第二个代理能直接读取第一个代理刚写完的内容,而不是到合并时才发现冲突。

一个仓库上的多个 AI 代理介绍了这套机制,而与 AI 代理多人协作编程则介绍了人类协作的部分。

直接回答

Murmell 是面向开发者的 Figma 吗?

在关键的地方这个类比是成立的:一个 URL 就是整个操作面,上面的每个人在同一时刻看到完全相同的画布,存在感是通过画出来的光标和谁正在看哪个窗口来体现的,而不是文字描述。

实际的工作成果保存在哪里?

保存在 Git 仓库里。在 Figma 里,画布上的东西就是产物;但在 Murmell 里不是。产物是每个项目的私有 Git 仓库,随着项目推进实时推送,画布只是发生工作的房间。