whip README

The project's README from github.com/context-labs/whip. As one markdown file: README.md.

              █   ▀    
        █ ▄ █ █▀█ █ █▀█
        ▀▄▀▄▀ █ █ █ █▄█
         ▀ ▀  ▀ ▀ ▀ █  
        whip — a fast coding-agent harness in Go

An LLM tool-use loop (bash / read / write / edit / subagent), an interactive bubbletea session, and provider-routable models. One binary, no runtime, config you can read.

Why whip

Install

curl -fsSL https://raw.githubusercontent.com/context-labs/whip/main/install.sh | sh

Checksum-verified prebuilt binaries (Linux/macOS, x64/arm64). Or from source (Go ≥ 1.27):

go install github.com/context-labs/whip/cmd/whip@latest

Then whip and you're in. Defaults to inference.net models — any OpenAI-compatible endpoint works as a provider. One command wires up OpenRouter's whole catalog (/model lists every model, no per-model config):

whip auth openrouter   # masked key prompt — or /auth openrouter in-session

To update to the latest release later, run whip update — it re-runs the install script above.

Codex subscription

Whip can use an existing ChatGPT/Codex subscription instead of an API key. Run whip auth codex and follow the displayed URL and one-time code. On approval, Whip saves the login and adds the account's available Codex models to /model immediately. The same flow is available from an active session with /auth codex. /usage shows the subscription's rate-limit windows; whip auth codex logout removes the provider from Whip again.

Whip saves the login in ~/.codex/auth.json. Expiring tokens refresh locally and are never printed or added to conversations. Whip fetches the signed-in account's https://chatgpt.com/backend-api/codex/models catalog and refreshes it every 24 hours (or with /model refresh), so plan and rollout availability come from the backend rather than a hard-coded list. gpt-5.5 @ codex-subscription remains as a compatible fallback route. OAuth credentials are only sent to https://chatgpt.com/backend-api.

First things to try

/context-doctor     audit what a fresh session injects, in tokens
/goal <text>        work until done
/model              pick a model — type to filter (new) entries come from the
                    provider catalog, no config needed

Drop a .mcp.json in your repo and MCP servers just appear (/mcp to see them). ctrl+c once interrupts; twice quits.

Docs

The full setup, config reference, MCP, browser/computer-use, and how everything works: docs/README.md.

Highlights:

whip (context-labs/whip)

bubbletea
Searching Database…

1.1K ·GitHub
What is this?whip is a fast coding-agent harness written in Go: an LLM runs a tool-use loop (bash, read, write, edit, subagent) inside an interactive bubbletea terminal session to work on your code.
How is it different from other coding agents like opencode or codex?It is a single Go binary with no runtime and a readable config. whip cherry-picks the best ideas from pi, opencode, codex, and exo into one opinionated harness instead of inventing its own patterns.
How do I install and start it?Install a checksum-verified prebuilt binary (Linux/macOS, x64/arm64) or build from source with Go 1.27 or newer, then just run whip. ctrl+c once interrupts, twice quits; whip update upgrades you later.
Do I need API keys, and which models can it use?No runtime or per-model config needed: any OpenAI-compatible endpoint works as a provider. whip defaults to inference.net models, and one command wires up OpenRouter's whole catalog, browsable via /model.
Is there a Windows build?Prebuilt binaries ship only for Linux and macOS (x64/arm64), so Windows users have to compile from source themselves, which requires Go 1.27 or newer.
Why is it built for open-source models?whip bets on a future where open-source models are the preferred ones. Since keeping up with them is hard, it discovers models live from every provider's catalog, surfaces new ones in the picker, and keeps a fast default tracking the frontier.
Can I use my ChatGPT/Codex subscription instead of an API key?Yes. Run whip auth codex and approve the one-time code — the account's Codex models appear in /model right away. /usage shows rate-limit windows, the login is stored in ~/.codex/auth.json, and expiring tokens refresh locally.
How do I add MCP servers?Drop a .mcp.json file in your repo and the servers just appear — /mcp lists what is connected. Browser and computer-use tooling is covered in the docs as well.
What tools can the agent run?bash, read, write, edit, and subagent. Tool calls run in parallel with everything streamed, and background subagents are compiler-checked Go primitives (channels instead of hand-rolled promises).
Why is whip fast?Speed is its core design constraint: it is written in Go with parallel tool calls and full streaming, so there is nothing between you and the model but a loop.
Size
69.5 MB
Stars
1.1K
Age
1mo
Commits · 90 Days