Install
git clone https://github.com/egoist/wakuInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →Waku
Waku is a fast, native desktop app for working with local coding agents. It is built in Rust with GPUI and keeps projects, sessions, transcripts on your machine.
Install
On macOS, download the signed .dmg. It updates itself.
On Linux:
curl -fsSL https://waku.sh/install.sh | sh
The script installs into ~/.local without root. See
docs/linux.md for requirements, manual installation, and
uninstalling.
On Windows, run Waku-<version>--Setup.exe from the
latest release. It installs
per-user and updates itself. A portable .zip is published alongside it. See
docs/windows.md for requirements and what is not available
there yet.
Supported agents
Waku works with:
Install and authenticate at least one supported agent CLI before starting Waku. Waku detects available CLIs automatically and uses each provider's native structured protocol and session continuity.
Highlights
- Keep projects and independent agent sessions in one native app.
- Switch models, reasoning effort, and access modes from a shared interface.
- Queue or steer follow-up messages while an agent is working.
- Rewind Git-backed tasks with conversation-aware checkpoints.
- Store app state locally, with no Waku account or remote service required.
Architecture
The native desktop is an RPC client of the standalone waku-daemon process.
Provider sessions run in waku-core, behind the
authenticated, versioned WebSocket contract in
waku-protocol. Waku Desktop depends on
waku-client, not on the daemon implementation. The
daemon owns task SQLite data, uploaded attachments, provider-native session
forks, and all workspace filesystem and Git operations; paths returned by it
always refer to the daemon host. The desktop retains only presentation state
and a disposable preview cache.
The browser client lives at apps/web and uses the generated
browser transport in packages/waku-client. Its
checked-in types are generated directly from the Rust protocol, while its
WebSocket client implements the same handshake, request IDs, subscriptions,
sequence deduplication, and replay cursors as the Rust client. Run
bun run protocol:generate after changing a wire type and
bun run protocol:check to verify that generated files are current.
Projectless task workspaces live on the daemon host under
~/.waku/projects/<date>/<slug>. The daemon moves workspaces created by the
older ~/.waku/<date>/<slug> layout on first load.
Configuration ownership is separate too: the Release desktop writes
~/.waku/app.json, while Debug stays isolated at temp/app.json. Daemon
provider and Computer Use settings live in ~/.waku/settings.json. The
desktop's Settings → Daemon page can explicitly
expose the child daemon on a fixed port, configure exact browser origins, and
copy its stable authentication token. It remains loopback-only by default.
Similar plugs
CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
Bash is all you need - A nano claude code–like 「agent harness」, built from 0 to 1
Documented system prompts from Anthropic - Claude Fable 5.1, Opus 5.5, Claude Design, Claude Code. OpenAI - ChatGPT GPT-6-Astra, Codex. Google - Gemini 3.8 Flash, 3.1 Pro,…
Wrap Antigravity, ChatGPT Codex, Claude Code, Grok Build, Muse Code, Devin as an OpenAI/Gemini/Claude/Codex compatible API service, allowing you to enjoy the free Gemini…