Skip to content

Back to the catalog

context-labs/whip
github.comrepo

context-labs/whip

WhipCode (context-labs/whip) is an open-source coding agent written in Go, with a Desktop app, terminal UI and web client on a shared daemon. A recursive language model loop runs short Starlark or JavaScript programs to inspect context, call tools and delegate to subagents. It supports MCP servers, skills and provider-routed models, and solved 20 of 30 tasks in a retained evaluation.

TL;DR Ships a Go coding agent that delegates recursively through a daemon, for work too large for one context window.
Document

What it claims

WhipCode is an Apache-2.0 coding agent in Go, shipped as one binary with no runtime. It reports 20 of 30 tasks solved (66.7%) in a retained Frontier evaluation. Those 30 tasks are 21 Terminal-Bench tasks and nine code-repository tasks. It targets work that does not fit in one context window: agents read history, files and large tool outputs in bounded slices rather than in a single prompt.

How it works

A shared daemon owns sessions, so closing a Desktop, TUI or web window does not end the work. The web client runs as a separate gateway. Stopping it with Ctrl+C ends web access but not daemon work, and ordinary daemon and Desktop startup open no web listener.

flowchart LR
  D[Desktop app] --> S[Shared daemon]
  T[Terminal UI] --> S
  W[whipcode web gateway] --> S
  S --> R[RLM loop]
  R --> X[Tools and MCP]
  R --> A[Subagents]
  A --> R

The recursive language model (RLM) loop writes short Starlark or JavaScript programs to inspect context, call tools and delegate. Subagents can launch their own agents and coordinate through messages. Users choose models, set tool permissions, attach local or remote execution hosts, and inspect the execution tree, timeline, usage and cost.

How to use it

Desktop Beta is for Apple Silicon on macOS 14 or newer: install whipcode-desktop-darwin-arm64.dmg. The app bundles its backend, so no separate CLI install is needed. Model access needs an API key or a supported subscription login.

Standalone CLI on macOS or Linux:

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

Web client:

whipcode daemon start
whipcode web

CLI installs update with whipcode update. Desktop installs update through Desktop.

Building from source needs Go 1.27+, Node.js 24 and Task:

git clone --branch main https://github.com/context-labs/whip.git
cd whip
npm ci
task generate
task build

Rerun task generate after protocol changes or branch switches. Run npm ci first if dependencies changed. A local build does not replace an installed app or restart its daemon.

Limits

The authors say the benchmark is not a matched cost comparison or an official leaderboard ranking. Providers and execution environments differ across the compared systems. The chart's $2.60 cost point for WhipCode and its cost-axis definition are not yet reconciled with the retained reports.

The CLI track is prerelease, at v1.0.0-alpha.N, and prerelease installation must be chosen explicitly. A default stable install arrives only with v1.0.0, and latest.sh never selects an alpha. Desktop releases from before the "clean-project reset" are not an upgrade path. Existing internal installs must follow a manual reset checklist instead of upgrading in place. Desktop is Apple Silicon only.

Organisations named here

  • Context Labs

Technologies named here

  • Model Context Protocol
  • JavaScript
  • Go
  • Node.js
  • macOS
  • Linux
  • Terminal-Bench
  • bubbletea
  • Starlark
  • Task
  • WhipCode

Techniques named here

  • Recursive language model (RLM)

Concepts named here

  • Bounded context access
  • Daemon-owned session state
  • Recursive delegation

Also named here

  • Bubble Tea