context-labs/whip

A fast coding-agent harness in Go. Tool-use loop, bubbletea TUI, provider-routable models with live catalog discovery, MCP support, background subagents. One binary, no runtime, built for open-source models.

whip – Goで書かれた高速なコーディングエージェントハーネス

概要whip は、LLM駆動の「ツール使用」ループを実行する単一バイナリのコマンドラインツールです。Bubble Teaで構築されたインタラクティブなターミナルUIを通じて、言語モデルがファイルの読み書きや編集、bashコマンドの実行、さらにはサブエージェントの生成まで行えるようにします。

存在理由 – 既存のエージェントハーネスは動作が遅いか、複雑な設定が必要であるという課題があります。Goの並行処理プリミティブ(channels, goroutines)を活用することで、このプログラムは並列的なツール呼び出しや応答のストリーミングを実現し、モデルからユーザーまでのパスを可能な限り短縮します。

主な機能(READMEより)

  • 速度重視の設計 – 並列ツール呼び出し、ストリーミングI/O、余計なランタイム層なし。
  • 独自のデフォルト設定pi, opencode, codex, exo といったプロジェクトのアイデアを統合しており、ロードマップファイルで各ソースが引用されています。
  • プロバイダー対応モデル – OpenAI互換のあらゆるエンドポイントで動作します。OpenRouterなどのプロバイダーが提供するモデルを自動的に検出し、モデルごとの個別設定は不要です。
  • 組み込みのモデル検出whip auth openrouter でOpenRouterの全カタログを読み込み、whip auth codex でAPIキーの代わりにChatGPT/Codexサブスクリプションを使用してログインできます。
  • 自動トークン管理 – ログイン用トークンはローカル (~/.codex/auth.json) に保存され、バックグラウンドで更新されるため、プロンプトに露出することはありません。
  • MCPサポート – リポジトリに .mcp.json ファイルを配置すると「MCPサーバー」が表示され、/mcp コマンドからアクセス可能になります。
  • テーマ設定/theme コマンドでターミナルの配色をプレビューおよび選択できます。
  • 便利なコマンド
    • /context-doctor – 新規セッションのトークン使用状況を監査します。
    • /goal <text> – 目標が達成されるまでエージェントに作業を指示します。
    • /model – プロバイダーカタログからのライブ更新を含むモデル選択メニューを表示します。
    • /usage – Codexサブスクリプションのレート制限情報を表示します。

インストール

# ワンライナーインストーラー(Linux/macOS用のチェックサム検証済みバイナリをダウンロード)
curl -fsSL https://raw.githubusercontent.com/context-labs/whip/main/install.sh | sh

またはソースからインストール(Go ≥ 1.27が必要):

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

インストール後、whip コマンドが使用可能になります。

アップデートwhip update を実行すると、インストーラースクリプトが再実行され、最新リリースが取得されます。

ドキュメント – リポジトリ内の docs/ フォルダには、アーキテクチャ、エージェントループ、並行処理モデル、全機能マップ、および実装済み機能と今後の予定を区別したロードマップの詳細なmarkdownファイルが含まれています。

最初のステップ

/context-doctor   # トークン注入の詳細を確認
/goal Build a simple CLI tool
/model            # モデルを選択(入力でフィルタリング)
/theme            # ターミナルテーマを選択

Ctrl-C を1回押すと現在の操作が中断され、2回押すとプログラムが終了します。


上記の情報はすべてリポジトリのREADMEから直接引用したものであり、追加の仮定は含まれていません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト