About this project
Kaku (書く, meaning 'to write' in Japanese) is a macOS terminal emulator designed for AI-assisted coding, built on top of WezTerm. It aims to provide a polished, ready-to-use experience with sensible defaults, eliminating the need for extensive manual setup. The project is part of a trilogy by the author, alongside Waza (for habit drilling) and Kami (for document shipping).
**Key Features:**
- **Out-of-the-box experience:** Includes JetBrains Mono font, automatic dark/light themes, copy-on-select, and familiar Mac shortcuts.
- **Tabs and panes:** Supports splitting the workspace, navigating panes with a Tab Navigator, and restoring windows, panes, and working directories on restart.
- **Right-click menu:** Provides quick access to paste, search, open AI chat, and split/close panes without needing to remember shortcuts.
- **Clickable links:** Cmd+Click opens URLs and file paths, with automatic URL wrapping to preserve full addresses.
- **AI-friendly:** Integrates with coding tools and offers an optional AI assistant for command suggestions, natural language to command conversion, and chat. Users can configure their own AI service via `kaku ai`.
- **Shell tools:** Includes zsh completion, syntax highlighting, and directory jumping, with shortcuts for optional Lazygit and Yazi installations.
- **Lua configuration:** Allows customization of fonts, themes, shortcuts, and terminal behavior using WezTerm's Lua configuration system.
**Installation:**
- Download the DMG from the releases page and drag to Applications, or use Homebrew: `brew install --cask kaku`.
- After opening, run `kaku init` to set up shell integration and install optional tools. Check version with `kaku --version`.
**Usage:**
The README provides a table of common shortcuts, including new tab (Cmd+T), split pane (Cmd+D / Cmd+Shift+D), AI panel (Cmd+Shift+A), AI chat (Cmd+L), apply AI suggestion (Cmd+Shift+E), open Lazygit (Cmd+Shift+G), Yazi file manager (Cmd+Shift+Y or y), clear screen (Cmd+K), and open context menu (right-click). Full keybinding reference is in docs/keybindings.md.
**AI Assistant:**
- Configure via `kaku ai`; Kaku does not provide or relay the AI service.
- Command suggestions: When a command fails, the assistant can suggest a fix; press Cmd+Shift+E to paste it.
- Natural language to command: Type `# <description>` and press Enter to generate a command.
- Chat: Press Cmd+L to discuss terminal output or work with project files; `kaku chat` from another shell accesses the same conversation store.
- AI Tools Config: Manage settings for Claude Code, Codex, Gemini CLI, Copilot CLI, Kimi Code, and more.
**FAQ Highlights:**
- macOS-only; no Windows or Linux version currently.
- Different from iTerm2, Warp, Ghostty, or WezTerm? See kaku.fun/compare.
- Transparent windows: set `config.window_background_opacity` in `~/.config/kaku/kaku.lua`.
- If `kaku` command is missing, run `/Applications/Kaku.app/Contents/MacOS/kaku init --update-only && exec zsh -l`, then `kaku doctor`.
**Documentation:**
- Website: kaku.fun (English/Chinese docs)
- Compare: kaku.fun/compare
- Keybindings, Features, Configuration, CLI Reference, FAQ are available in the docs folder.
**Background:**
The author, a heavy CLI user, built Kaku after years with Alacritty and exploring Kitty, Ghostty, Warp, and iTerm2, seeking a balance of performance, defaults, and control. WezTerm's robustness and hackability served as the foundation.
**Support & License:**
- Support via Mole for Mac (paid app), starring/sharing, or sponsoring the author's cats.
- MIT License; attribution for WezTerm and bundled fonts in NOTICE.md.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.