An open API service indexing awesome lists of open source software.

https://github.com/usewhale/whale

Whale — blazingly fast, terminal-first AI coding agent for DeepSeek. ~98% prompt cache hit rate, 1M context, MCP tools, dynamic workflows.
https://github.com/usewhale/whale

coding-agent deepseek deepseek-agent deepseek-cli deepseek-coding-agent go llm mcp skills terminal

Last synced: 3 days ago
JSON representation

Whale — blazingly fast, terminal-first AI coding agent for DeepSeek. ~98% prompt cache hit rate, 1M context, MCP tools, dynamic workflows.

Awesome Lists containing this project

README

          

# Whale


Whale — AI coding agent for DeepSeek, in any environment


简体中文 · English


release
npm
CI
license
GitHub stars
98% prompt cache hit


Blazingly fast · ~98% prompt cache hit · Zero bloat


Whale — AI coding agent for DeepSeek, in any environment.

Long context, tools, and programmable workflows —

start in the terminal, scale to desktop and beyond.

---

## 🚀 Quick Start

Any platform:

```bash
npm install -g @usewhale/whale
```

macOS:

```bash
brew install usewhale/tap/whale
```

Linux:

```bash
curl -fsSL https://raw.githubusercontent.com/usewhale/Whale/main/scripts/install.sh | sh
```

Windows PowerShell:

Requires Windows 10 or Windows Server 2016 or later.

```powershell
irm https://raw.githubusercontent.com/usewhale/Whale/main/scripts/install.ps1 | iex
```

Windows CMD:

```cmd
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/usewhale/Whale/main/scripts/install.ps1 | iex"
```

```bash
# Set your DeepSeek API key
whale setup

# Launch the interactive TUI
whale
```

That's it. Type your question and Whale starts working — reading files, running commands,
editing code, searching the web.

> Need a different model provider, proxy, or custom config? See [Configuration](docs/configuration.en.md).

---

## ✨ At a Glance

| What | Why it matters |
|---|---|
| 💰 **~98% prompt cache hit** | Whale reuses cached context aggressively — most prompts hit cache, slashing costs to pennies per session. DeepSeek pricing × Whale caching = AI-assisted coding at scale. |
| 🐋 **DeepSeek-native** | Built for DeepSeek's long context (1M tokens), tool calling, and cost efficiency — no generic multi-model wrapper |
| 🔁 **Dynamic Workflows** | Write JavaScript scripts that orchestrate multiple agents — fan-out research, multi-perspective review, pipelines. Claude Code compatible. |
| 🔌 **MCP** | Plug in 1,000+ MCP servers for extended tooling — file ops, shell, git, web, and more |
| 🧩 **Skills + Plugins** | Install community skills (code review, git workflows, etc.) or write your own |

---

## 🔁 Dynamic Workflows

Whale's **Dynamic Workflows** let you script multi-agent orchestration in JavaScript:

```js
// .whale/workflows/research.js
const results = await parallel([
() => agent("Search for best practices in Go error handling"),
() => agent("Find common Go error handling mistakes"),
]);
return agent("Synthesize both findings into a concise guide");
```

**Fan-out research · Multi-perspective review · Pipeline processing · Adversarial validation**

> ✅ **Claude Code compatible** — workflow scripts written for Claude Code work as-is in Whale.

> **⚠️ Disabled by default** — run `/config` in the TUI and enable `Dynamic workflows`, or add `[workflows] enabled = true` to `.whale/config.local.toml`.

Learn more: [Workflow Overview](docs/workflows.en.md) · [Custom Workflow Guide](docs/custom-workflows.en.md)

---

## 🧰 MCP, Skills & Plugins

| Extension | What it does | Get started |
|---|---|---|
| **MCP Servers** | Connect to 1,000+ tools (databases, APIs, browser automation) | [docs/mcp.en.md](docs/mcp.en.md) |
| **Skills** | Load domain expertise — code review, git-worktree, and more | [docs/skills.en.md](docs/skills.en.md) |
| **Subagents** | Define focused child-agent roles such as reviewers or researchers | [docs/agents.en.md](docs/agents.en.md) |
| **Plugins** | Extend Whale's runtime with custom logic | [docs/plugins.en.md](docs/plugins.en.md) |
| **Hooks** | Run scripts on lifecycle events | [docs/hooks.en.md](docs/hooks.en.md) |

---

## 📸 How It Works

Whale currently offers three interfaces — with more environments on the way:

| Interface | When to use |
|---|---|
| **`whale`** (TUI) | Interactive coding sessions — chat, review, iterate with full context |
| **`whale ask "..."`** (CLI) | One-shot questions, quick code reviews, single commands |
| **`whale --headless`** | CI/CD, automated PR reviews, scheduled tasks |

---

## 🎯 Non-goals

- **Multi-model shell.** Whale is DeepSeek-first — optimized for DeepSeek's caching, tools, and pricing.
- **IDE replacement.** Whale is not an IDE — it's an agent that meets you wherever you code: terminal, desktop, or CI.

## 📦 Project Status

Whale is in active development. Best suited for personal projects, experimental repositories,
and workflows where changes can be reviewed and rolled back.

> **Disclaimer:** This project is not affiliated with DeepSeek Inc. It is an independent open-source community project.

---

## 🤝 Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md) for local development, testing, issues, and PRs.

Current direction and available tasks: [ROADMAP.md](ROADMAP.md).

Security issues: [SECURITY.md](SECURITY.md).

---

## Star History





Star History Chart

---

## 🙏 Credits

Whale stands on the shoulders of giants:

- [Charmbracelet](https://charm.sh) — Bubble Tea, Lip Gloss, Glamour, and the entire TUI ecosystem
- [fastschema/qjs](https://github.com/fastschema/qjs) — QuickJS Go bindings for workflow scripting
- [spf13/cobra](https://github.com/spf13/cobra) — CLI framework
- [alecthomas/chroma](https://github.com/alecthomas/chroma) — Syntax highlighting
- [yuin/goldmark](https://github.com/yuin/goldmark) — Markdown parsing
- [modelcontextprotocol/go-sdk](https://github.com/modelcontextprotocol/go-sdk) — MCP protocol support
- [tetratelabs/wazero](https://github.com/tetratelabs/wazero) — Pure-Go WebAssembly runtime

And the many open-source libraries we depend on — thank you.