用 Rust + GPUI(Zed 的 UI 框架)编写的原生桌面应用,把 Amp、Claude Code、Codex CLI、Cursor CLI、Kimi Code、OpenCode、Pi 等九种本地编码代理统一到一个项目与会话管理界面中,全程本地运行、无账号无远程服务。核心能力围绕统一多代理管理、共享控制面板、排队与转向展开。2026 年开发者平均同时装着好几个 agent CLI,切换会话靠翻终端历史。

| 项目 | 内容 |
|---|---|
| 仓库 | egoist/waku |
| 语言 / 许可证 | Rust / GPL-3.0-only |
| 总星标 | ⭐ 1255(截至 2026-08-26) |
| 创建时间 | 2026-07-31 |
| 榜单 | 近30天新星榜 第16名 |
用 Rust + GPUI(Zed 的 UI 框架)编写的原生桌面应用,把 Amp、Claude Code、Codex CLI、Cursor CLI、Kimi Code、OpenCode、Pi 等九种本地编码代理统一到一个项目与会话管理界面中,全程本地运行、无账号无远程服务。
2026 年开发者平均同时装着好几个 agent CLI,切换会话靠翻终端历史。waku 抓住"多代理并存"这一真实痛点,靠 egoist 本人的社区影响力与"原生性能 + 完全本地隐私"卖点迅速起量:不造新代理而是做代理的驾驶舱,恰好填满了生态缝隙;GPUI 实现也让它看起来不像又一个 Electron 套壳。
桌面 App 是 RPC 客户端,真正的活儿由独立 `waku-daemon` 完成:provider 会话跑在 `waku-core` crate 内,经 `waku-protocol` 定义的带鉴权版本化 WebSocket 协议对外暴露;daemon 持有 SQLite 任务数据、附件、provider 原生会话分叉及全部文件/Git 操作。`apps/web` 下的浏览器客户端直接从 Rust 协议类型生成——协议变更需 `bun run protocol:generate && bun run protocol:check`。这种 client/daemon 分离为远程 daemon 预留了空间(当前默认仅 loopback)。
前提是至少安装并认证一个受支持的 agent CLI。源码开发要求 Rust 1.96+ 与 Bun:
bun install
bun run dev
Linux 支持 Wayland/X11,Windows 需 MSVC 工具链。
安装后启动 waku,它会扫描可用 CLI 并列出各代理的项目与会话;选中即可在新窗口续聊或发起新任务。典型操作都在界面里完成:切模型、排入后续消息、查看 diff、用 checkpoint 回退。无项目场景的工作区落在 `~/.waku/projects/
对比 Claude Code/Codex 各自官方 GUI 的单一家园,waku 是跨代理聚合层;同赛道还Crystal、Conductor 等在争抢,但 waku 以 GPUI 原生渲染与 client/daemon 架构做出区分度。GPLv3 商用需留意传染性条款。