finds.dev← search

// the find

Hmbown/CodeWhale

★ 38,294 · Rust · MIT · updated Jun 2026

Open-source, community-driven agent harness

CodeWhale is a Rust TUI/CLI agent harness for doing real coding work in your terminal — reading files, running commands, editing code, and committing patches, all routed through a model you configure. It started as a DeepSeek-specific tool and has broadened into a provider-agnostic harness that works with OpenRouter, self-hosted vLLM/Ollama, and a dozen Chinese model providers. The target user is a developer who wants a Claude Code / Aider-style workflow but without being locked to a single provider or paying Anthropic/OpenAI rates.

The side-git snapshot system is genuinely useful — every turn is snapshotted separately from your working repo, so `/restore` doesn't pollute your `.git` history. The execution policy layer (`crates/execpolicy`) applies structured rules to shell commands before they run, which is more principled than the 'just ask the model to be careful' approach most tools take. LSP integration that fires after file edits gives you real type-checker feedback in the loop rather than having to run a build manually. The multi-provider routing, including self-hosted vLLM and Ollama, means you can actually run this on cheap inference without forking the config.

The codebase has a branding hangover — Homebrew installs as `deepseek-tui`, legacy config lives in `~/.deepseek/`, and the npm wrapper is a thin shim around a Rust binary, which is a fragile distribution path. Sandbox coverage is Linux-first (bwrap, landlock, seccomp) with a `windows.rs` that almost certainly does far less; the Windows story is weak for a tool claiming cross-platform support. The fleet/sub-agent system looks capable on paper but the documentation is thin and the failure recovery story (`docs/SUBAGENTS.md`) is unclear — parallel agents sharing a workspace without strong coordination is a foot-gun waiting for a real use case to expose it. At 38k stars the contributor volume is high enough that the codebase shows signs of committee design: too many abstraction layers (`core/engine/`, `rlm/`, `repl/`, `fleet/`, `seam_manager`) that likely overlap in responsibility.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →