Waku 编程智能体桌面端
在一个原生桌面应用中管理本地项目及多个编程智能体会话。
安装默认按用户进行,Linux 不要求 root,外部守护进程默认仅监听回环地址,浏览器来源需要精确配置;这些证据支持较好的最小权限设计,但守护进程仍拥有工作区文件系统、Git、终端和附件操作能力,未见逐项权限隔离。文档说明项目、会话和转录保存在本机,也解释了桌面端、守护进程、缓存和认证令牌的边界;但发布流程出现可配置分析端点,所给材料没有说明遥测内容、启用条件或退出方式,因此数据流透明度未获满分。稳定认证令牌和附件属于敏感数据,但没有提供静态加密、权限模式、保留期或清除策略。依赖采用版本约束,修补依赖固定到提交,更新包有签名机制;扣分点是主要 GPUI 依赖跟踪可变 Git 分支,且材料未展示依赖审计或漏洞扫描。文件、Git、自动更新和远程守护进程的外部影响有明确描述,但没有展示所有高影响动作的确认门槛。Git 感知回退和卸载文档引用提供部分恢复路径,但附件、数据库迁移和自动更新的回滚细节不足。仓库、维护邮箱、赞助入口和 GPL 来源清楚;发布者身份仍未经企业注册表验证,因此维护归属不能视为完全确认。
README、Cargo 清单和发布工作流在版本、平台、架构及打包方式上基本一致,并通过协议生成检查、版本与标签匹配以及精确产物路径减少发布偏差;但没有提供足够的运行时代码或测试材料来全面核对所有产品声明。Rust、Bun、平台工具链、支持的代理 CLI 以及 Linux/Windows 前置条件均有说明,发布流程也固定 Rust 版本;可变 Git 分支和若干外部服务仍降低依赖可用性的确定性。工作流对缺失版本、标签不一致、缺失产物和空发布资产给出明确错误,但所给材料几乎没有展示桌面应用、守护进程或代理会话在运行失败时面向用户的诊断信息,因此 failure_messages 仅得薄分。
材料清楚面向使用本地编码代理的桌面用户,并覆盖项目、并行会话、跟进消息、模型与访问模式、Git 回退等常见场景,但缺少按用户角色或复杂部署场景展开的指导。能力边界说明非常具体:列出支持的代理、远程守护进程下不可用的本地文件选择器和 PTY、macOS 专属的浏览器与实验性计算机使用功能,以及 Linux/Windows 可用功能,因而该项获满分。自动检测已安装 CLI、显式开放守护进程端口和精确配置浏览器来源体现了合理触发控制;扣分是未展示代理启动、工具执行或高风险操作的完整触发规则。macOS、Linux、Windows、Wayland、X11、MSVC、不同架构和便携 Windows 包都有明确适配信息,环境适配证据充分。
README 按安装、代理支持、功能、架构、开发、赞助和许可组织,并指向职责明确的 crate、应用及配套文档,信息架构完整。三大平台均有安装路径,Linux 说明无 root 安装并引用手动安装与卸载说明,Windows 同时提供安装器和便携包,因此安装说明充分。Waku、waku-daemon、waku-core、waku-client 和 waku-protocol 的命名在清单与文档中稳定一致。扣分主要来自缺少完整的端到端使用示例、界面示例和 FAQ。已明确平台差异与远程守护进程限制,但没有集中列出数据迁移、遥测、恢复及安全限制。GPL-3.0-only 在 README、Cargo 元数据和完整 LICENSE 中一致,许可获满分。Cargo 版本、标签校验、发布资产和 CHANGELOG 提取流程显示正式版本路径,但实际 CHANGELOG 内容未提供。SECURITY.md 给出最新版本支持政策、私密报告渠道和维护邮箱,RELEASING.md 也被引用;不过发布者身份未知,且材料未给出明确维护团队或长期治理结构。
产品把多个代理的项目、会话、转录、模型选择、跟进消息、差异、文件和 Git 回退集中到一个原生界面,输出具有普通使用价值;但没有截图、完整交互示例或实际产出样本,无法从静态材料确认呈现质量。相对于分别操作多个 CLI,统一协议、会话连续性和共享控制界面提供明确增量价值;扣分是部分价值仍停留在功能声明,且远程守护进程模式缺少文件选择器和 PTY。无 Waku 账户、默认本地存储、按用户安装和 GPL 许可降低采用成本,但用户仍须单独安装并认证代理 CLI,开发还需要 Rust、Bun及平台工具链,自动更新和潜在分析端点也带来运维与隐私权衡。
架构声明通常关联到具体 crate、配置路径、协议生成命令和发布工作流,版本及许可也能直接对应清单和 LICENSE;但所给证据没有包含被引用的核心实现、Linux/Windows 文档、CONTRIBUTING、RELEASING 或 CHANGELOG,因此部分功能和安全声明不能逐行追踪。README、Cargo.toml、SECURITY.md 和两个发布工作流对平台、版本、签名更新、维护渠道和发布路径形成了较强的跨文件印证,因此该项获满分。材料明确区分当前可用功能、实验功能和尚不可用的远程能力;扣分是“fast”等宣传性表述没有依据,且“无需远程服务”的叙述没有同时解释发布流程中的分析端点,事实与推断的分离仍不完整。
- 这是未执行程序、未独立测试且仅限所给文件的静态评估;不能据此确认运行时安全性、正确性或可复现性。
- 守护进程拥有工作区文件系统、Git、终端和附件等广泛能力;在连接外部守护进程或提高代理访问模式前,应核实授权边界和确认机制。
- 发布流程包含分析端点配置,但所给材料没有说明采集字段、默认状态、传输目的地或退出方法。
- 核心 GPUI 依赖使用可变 Git 分支;构建或部署前应核对锁文件、提交解析结果和依赖漏洞状态。
- Linux 的 curl 管道安装、自动更新及远程发布资产会执行或获取外部内容;应在受控环境中先审查安装脚本、签名和更新源。
- 发布者身份在指定企业注册表中未经验证;这表示身份未知,不表示恶意。
这个 Agent 能做什么,适合哪些场景?
Waku 是一款以 Rust 和 GPUI 构建的原生桌面应用,用于统一操作安装在本机的编程智能体 CLI。它支持 Amp、Claude Code、Codex CLI、Cursor CLI、Fx、Grok Build、Kimi Code、OpenCode 和 Pi,并通过各提供方的原生结构化协议延续会话。桌面端是独立 waku-daemon 的 RPC 客户端;会话由 waku-core 运行,并通过 waku-protocol 定义的带认证、带版本 WebSocket 契约通信。守护进程管理任务 SQLite 数据、附件、提供方原生会话分支以及工作区中的文件系统和 Git 操作,桌面端只保留展示状态和可丢弃的预览缓存。项目、会话记录和应用状态保存在本机,无需 Waku 账户或其远程服务;同时还提供 apps/web 浏览器客户端。正式桌面版覆盖 macOS、Linux 和 Windows,但嵌入式浏览器及实验性的 Computer Use 集成目前仅限 macOS。
启动后,Waku 自动检测已安装的受支持智能体 CLI,并使用对应提供方的原生结构化协议创建或继续会话。用户可将项目和相互独立的智能体会话集中管理,切换模型、推理强度与访问模式,并在智能体工作期间排队或追加引导消息。waku-daemon 负责运行 waku-core 中的提供方会话,保存任务 SQLite 数据和上传附件,并执行工作区文件、差异、编辑、Git、技能、用量及任务状态相关操作。对于由 Git 管理的任务,它还能建立与对话关联的检查点并执行回退。桌面端通过 waku-client 和经过认证的版本化 WebSocket RPC 与守护进程交互;apps/web 则使用 packages/waku-client 中由 Rust 协议生成的浏览器传输层。
- 同时使用 Claude Code、Codex CLI 或其他受支持 CLI 的开发者,希望从一个界面管理不同项目和独立会话。
- 需要在智能体执行过程中继续排队问题或调整方向,而不想等待当前步骤结束的工程师。
- 处理 Git 仓库任务并希望利用对话感知检查点回退改动的开发者。
- 不希望创建额外云端产品账户,并希望将项目、任务数据、附件和会话记录留在本机的个人或团队。
- 需要让桌面客户端或浏览器客户端连接独立守护进程,同时把文件和 Git 操作留在守护进程主机上的用户。
- 在 Linux 或 Windows 上需要原生运行智能体会话、文件编辑、差异查看、终端和用量功能,但不依赖 macOS 专属 Computer Use 的开发者。
这个 Agent 有哪些优点和局限?
- 原生支持九种已列出的编程智能体 CLI,并保留各提供方原生结构化协议和会话连续性。
- 任务 SQLite 数据、附件、项目和会话记录由本地守护进程管理,无需 Waku 账户或 Waku 远程服务。
- 桌面端、守护进程、核心会话层和版本化 WebSocket 协议职责清晰,也提供使用同一协议语义的浏览器客户端。
- 支持运行中消息排队与引导,以及面向 Git 任务的对话感知检查点回退。
- macOS、Linux 和 Windows 均可运行核心智能体、项目、文件编辑、差异、终端和用量功能。
- Waku 不自带编程智能体;采用前必须另行安装并认证至少一个受支持的 CLI。
- 嵌入式浏览器和实验性 Computer Use 集成目前仅支持 macOS,Linux 与 Windows 无法获得这部分能力。
- 连接由桌面进程外部管理的守护进程时,本地文件夹选择器和 PTY 不可用,仍需等待守护进程主机选择器及终端流协议端点。
- 源码开发要求 Rust 1.96 或更新版本和 Bun,Windows 还增加 MSVC 工具链依赖。
- 固定端口的远程浏览器访问需要手动配置精确来源并管理稳定认证令牌;默认连接范围仅为本机回环地址。
如何安装或部署这个 Agent?
使用前先安装并完成至少一个受支持智能体 CLI 的认证。macOS:从 https://waku.sh 下载已签名的 .dmg,应用会自行更新。Linux:运行 curl -fsSL https://waku.sh/install.sh | sh;安装脚本无需 root,并写入 ~/.local。Windows:从 GitHub 最新发行版运行 Waku-<version>-<arch>-Setup.exe,它按用户安装并自动更新;也可使用同版本提供的便携式 .zip。若从源码开发,系统需安装 Rust 1.96 或更新版本及 Bun;Windows 还需 MSVC 工具链,然后运行 bun install 和 bun run dev。
如何使用这个 Agent?
先安装并认证 Amp、Claude Code、Codex CLI、Cursor CLI、Fx、Grok Build、Kimi Code、OpenCode 或 Pi 中至少一个 CLI,再启动 Waku。应用会自动发现可用 CLI;随后添加或打开项目、创建独立智能体会话,并从共享界面选择模型、推理强度和访问模式。智能体运行时可以排队或发送后续引导消息;Git 管理的任务可使用对话感知检查点进行回退。无项目任务的工作区由守护进程创建在 ~/.waku/projects/<date>/<slug>。如需浏览器访问,可在 Settings → Daemon 中显式设置固定端口、精确允许的浏览器来源并复制稳定认证令牌;守护进程默认只监听回环地址。
这个 Agent 与同类方案有什么区别?
与分别打开 Amp、Claude Code、Codex CLI、Cursor CLI、Fx、Grok Build、Kimi Code、OpenCode 或 Pi 相比,Waku 提供统一的原生界面来组织项目、会话、模型、推理强度和访问模式,但仍依赖这些 CLI 的独立安装与认证。桌面端通过 Rust waku-client 连接 waku-daemon;浏览器端则通过 packages/waku-client 使用相同的握手、请求 ID、订阅、序列去重和重放游标语义。