过去几周,我用 Rust 写了一个叫 Kumo(日语里是“蜘蛛”)的终端复用器。它不是一个普通的终端复用器,而是专门围绕 AI Agent 设计的。

我平时和大量 AI Agent 一起工作:opencode、Claude,也试过 Qwen。通常会有多个 Agent 分别处理问题的不同部分,但很难一眼看清它们的状态:还在跑?卡住等我批准?还是已经结束了?我只能在终端窗口之间切来切去,眯着眼一个个看,最终决定:自己写一个。

并不是说现有工具不好。终端复用器领域现在其实很繁荣:有 herdr、cmux、amux,还有经典的 tmux、zellij。另外还有 superlogical,也就是 Mitchell Hashimoto 的新公司——对,就是做 Ghostty 的那个 Mitchell。我很欣赏他们的工作。

我把这些工具都试了一遍,它们各自都很强,但我始终没有找到那种“完全属于自己”的感觉。Ghostty + tmux + LazyVim 的组合让我觉得这就是我的终端:熟悉、温暖、一切都放在我想要的位置。所以 Kumo 不是要做一个“更好的 tmux”,而是想把这种熟悉感,加上一些我一直想要的功能,变成现实。

有几个设计选择,对我来说非常重要:第一,像 tmux 一样强大,但开箱即用,而且有真正可看的 UI。tmux 很好,但学习曲线把很多人挡在门外。我希望我的父亲不用读 man page 也能直接上手。第二,不做成另一个独立应用。Kumo 就住在你的终端里,所以它很轻量,在哪儿都能用——比如我父亲就在 Windows 上编程——而且我只需要保留 Ghostty 这一个终端。第三,完全可配置。Kumo 是开放的,你可以按照自己的习惯彻底调教它。

它已经成了我日常的默认选择。如果你也经常同时跑好几个 AI Agent,你可能也会需要它。