Codewhale
Codewhale is an open-source agent that reads your project, edits files, runs commands, and checks its work using a hosted or local model you choose. Start with one task in your terminal. For a larger job, give parts of the work to agents with different models and roles.
<picture <source media="(prefers-color-scheme: dark)" srcset="brand/wordmark-inverted.svg" <img src="brand/wordmark.svg" alt="Codewhale" width="360" </picture
简体中文 · 日本語 · Tiếng Việt · Bahasa Indonesia · 한국어 · Español · Português · Русский · Українська · Français · Deutsch · 繁體中文 · हिन्दी · Türkçe · Italiano · Polski · العربية · Català
<picture <source media="(prefers-color-scheme: dark)" srcset="web/public/codewhale-tui-d7a9a1c.png" <img src="web/public/codewhale-tui-d7a9a1c.png" alt="A Codewhale terminal session" width="720" </picture
Terminal preview from a v0.10.0 development build.
Install
macOS / Linux — install the official GitHub release:
curl -fsSL https://codewhale.net/install.sh | sh
"$HOME/.local/bin/codewhale"The installer selects the latest published release. The changelog also describes the next release's unreleased candidate; those changes are not included in published downloads until the release is available.
Windows: download the matching installer or archive from GitHub Releases. For an existing direct install, run codewhale update (or codewhale update --check to inspect it). The updater prints the executable path and keeps newer builds.
The first run opens straight to the composer; it does not walk you through setup. Model replies require a connected hosted or local model: until one is connected, the launch screen says "no model connected". Run /provider (or press F3) to add a hosted key or pick a local runtime. If Ollama is already running with a chat model, Codewhale switches to it on its own. Codewhale also supports npm and Cargo as secondary packaging routes, plus Docker, Nix, Scoop, Android/Termux, and an optional CNB mirror. Existing package-managed installs receive migration instructions. See installation and PATH help.
Tab completion is one command per shell — codewhale completion bash|zsh|fish|powershell|elvish. See shell completions.
Use
Open a terminal in your project folder and run codewhale. Choose your provider with /provider and your model with /model. Then describe a concrete task:
Fix the failing tests and explain what changed.Or run a task without opening the TUI:
codewhale exec "fix the failing tests and explain what changed"