最近 Vibe Coding 用多了之后,发现一个很现实的问题:窗口越来越多。
一个窗口跑 dev server ,一个窗口跑 test ,一个窗口开 Claude Code ,一个窗口开 Codex ,还有日志、git 、临时 shell 。 这些东西不是简单的“开几个 tab”就能解决的,因为很多任务是同时在动的:有的在编译,有的在等输入,有的跑挂了,有的只是暂时不用看但不能关。
我想要的其实是一个可以“一心二用”的终端工作台: 主窗口里专注当前任务,但旁边还能留一点余光,看别的 session 有没有变化;暂时不用看的任务可以挂起到后台,但进程继续跑。
这个想法很大程度上受到了 NekoApocalypse/Vibe99 的启发。Vibe99 里那个“一个主 pane + 多个侧边预览”的感觉我很喜欢,但是当时的技术栈是 Electron (PS:现在也改成了 tauri) 感觉太重,所以我做了一个自己的 GUI multiplexer ,叫 Vibemux 。同时增加了更多对 Keyboard 和 基础 AI 功能的支持。
https://github.com/yoko19191/vibemux
它和普通 Terminal / tmux / zellij 的区别大概是:
普通 Terminal 更关注 window / tab / pane 。 tmux 、zellij 这类工具很强,但很多状态还是藏在编号、status line 、命令和肌肉记忆里。
Vibemux 想把终端当成一组“活着的任务”来管理。每个 session 都有名字、颜色、工作目录、进程状态和注意力状态。它不是 tmux 的 GUI 套壳,而是一个面向本地多任务 / 多 agent 场景的 GUI multiplexer 。
目前已经有这些功能:
选择 Tauri 主要是想让它轻一点,不想为了一个终端工作台再塞一个完整 Chromium 大包。PTY 和 session 生命周期这块在 Rust 侧做,前端使用成熟的 xterm.js 完成终端渲染。
后面 roadmap 里我比较想做的是和各种 Code CLI 更深一点的集成。比如 Claude Code / Codex 这类工具有时候会进入交互式状态,问你要不要继续、要不要确认命令。未来希望 Vibemux 能识别到这些状态,然后让对应 session 闪一下,或者在 detached bar 里显示“需要处理”,这样就不用每个窗口来回扫了。
现在还是早期版本,很多地方肯定粗糙。 欢迎试用、提 issue ,尤其想听听大家在多终端 / 多 agent / Vibe Coding 场景下到底怎么管理注意力。大家在使用 Terminal 时还有什么痛点。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.