billion-context とは?AIコーディングエージェントのコンテキスト圧縮プロキシ徹底解説
AIコーディングエージェントを使って長時間作業していると、ある壁に突き当たります。「コンテキストウィンドウが枯渇した」というエラーです。billion-contextはこの問題を根本から解決する、オープンソースのコンテキスト圧縮プロキシです(GitHubスター数:72、2026年8月時点)。
billion-contextとは?仕組みと概要
billion-contextは、AIコーディングエージェント(Claude Code・Codex・Cursor・Aider・OpenCodeなど)とモデルAPIの間に挟まるローカルプロキシです。会話履歴が蓄積されてコンテキストウィンドウが逼迫したとき、LLM自身が compress ツールを呼び出して会話を高品質なサマリに圧縮します。
重要なのは、圧縮の判断をモデル自身が行う点です。「何をいつ圧縮するか」はLLMが自律的に決定し、ハードな打ち切りではなく可逆的なサマリとして折りたたみます。これにより「1億トークン超の単一セッション」も理論上は可能になります。
npmでグローバルインストールするだけで、既存の設定ファイルを変更せずに動作します。
npm install -g billion-context
コマンド名は bili です。
なぜ今AIエージェントにコンテキスト圧縮が必要なのか
Claude Opus 4のコンテキストウィンドウは200Kトークンですが、大規模リファクタリングや複数ファイルにまたがる長時間セッションでは、あっという間に上限に達します。上限に達するとセッションが劣化するか、強制終了になります。
各AIプロバイダーはトークン単価で課金するため、コンテキストが膨らむほどAPI費用も増大します。billion-contextはコンテキストを増分圧縮することで、費用を抑えながら長時間セッションを維持します。
プレフィックスキャッシュとの相性も考慮されており、圧縮後もキャッシュプレフィックスが維持されます。
billion-contextの主な機能
4つのコンテキスト管理ツール
プロキシがAnthropicまたはOpenAI互換のAPIリクエストを受け取ると、以下のツールを会話に自動注入します:
| ツール | 役割 |
|---|---|
compress |
指定範囲の会話をサマリに圧縮する |
decompress |
圧縮済みブロックを元に展開する |
search_context |
圧縮された履歴からキーワード検索する |
acp_status |
圧縮状態・トークン使用量を確認する |
ランチャーモードとURLプレフィックスモード
エージェントをプロキシ経由で起動する2通りの方法があります。
ランチャーモード(最も簡単):
bili claude # Claude Codeをプロキシ経由で起動
bili codex # Codexをプロキシ経由で起動
bili pi # piをプロキシ経由で起動
bili opencode # OpenCodeをプロキシ経由で起動
URLプレフィックスモード(永続設定):
bili # プロキシ起動(デフォルト: localhost:8787)
クライアントのbaseURLを以下のように変更するだけです:
変更前: https://api.openai.com/v1
変更後: http://localhost:8787/bili/https://api.openai.com/v1
APIキーはクライアント設定にそのまま残してください。プロキシはそのまま通過させます。
デバッグとログ機能
動作確認は以下のコマンドで行えます:
# ヘルスチェック
curl -s http://localhost:8787/__bili/health
# ライブ統計(実リクエスト後)
curl -s http://localhost:8787/__bili/stats
ログは ~/.local/state/billion-context/bili.log に自動保存され、10MBで自動ローテーションします。
Condenseや組み込みサマライザーとの違い・なぜ今このツールか
AIコーディングエージェントのコンテキスト問題を解決するツールとして、商用サービスの Condense がAPIコスト削減プロキシとして知られています。
billion-contextとの主な違いは3点です。
- 完全ローカル動作・オープンソース: billion-contextはGitHub上でMITライセンスで公開されており、コードを確認・改変できます。Condenseは商用サービスです。
- プレフィックスキャッシュ保持: billion-contextの圧縮はサマリを小さなレンジで書き込む増分方式で、キャッシュプレフィックスを破壊しません。ハードな先頭切り捨てと異なり、プロバイダーのプレフィックスキャッシュ恩恵を維持します。
- モデル主導の圧縮: ルールベースや閾値トリガーではなく、LLM自身が「いつ・何を」圧縮するか判断します。
現在、AIコーディングエージェントが普及する中でコンテキスト管理のニーズが急拡大しており、2026年8月だけでv0.1.65〜v0.1.67と頻繁にリリースが続く活発なプロジェクトです。
こんな人に向いている
フロントエンドエンジニア・大規模リファクタリング担当
大規模なコンポーネント設計・リファクタリングをClaude Codeで行うフロントエンドエンジニアに最適です。数百ファイルにまたがる変更でも、コンテキストが自動圧縮されてセッションが中断されません。bili claude の一行で既存の作業フローを変えずに使い始められます。
バックエンド・API設計エンジニア
複数のマイクロサービス設計をCodexで長時間議論するバックエンドエンジニアにも有効です。過去の設計議論が圧縮済みサマリとして保持されるため、「さっきの設計方針」を毎回説明し直す手間が省けます。トークン費用の削減効果も見込めます。
AI/MLエンジニア・プロンプトエンジニア
複数エージェントを並列で走らせるAI/MLエンジニアにとっては、複数セッションのプロキシ管理(セッションID分離機能あり)が役立ちます。__bili/stats エンドポイントで圧縮効果を定量的に計測できます。
使う前に知っておきたいこと
開発ステータス
現在はアーリーステージ(Early)です。 READMEに「Protocol handling and compression work against mock tests (500+ passing). Real-model integration testing is the next milestone. Expect rough edges.」と明記されています。本番環境での大規模展開よりも、個人の開発作業での試用から始めることを推奨します。
piエージェントの並列使用に注意
pi エージェントはセッションIDを送信しません。そのため、複数の pi セッションを同時にプロキシ経由で使う場合、最初のユーザーメッセージが同一だとセッションが衝突するリスクがあります。並列利用には x-acp-session ヘッダーを手動で設定するか、Claude CodeやCodexなどセッションIDを送信するクライアントを使いましょう。
セキュリティ上の注意点(リモート利用)
デフォルトはループバック(127.0.0.1)バインドのみです。--host 0.0.0.0 でリモートエージェントからも接続できますが、認証機能はありません。信頼できるLAN環境またはファイアウォール内でのみ使用してください。起動時に [security] 警告が表示されます。
GFW環境(中国本土)での利用
設定ファイルに "proxy": "http://127.0.0.1:20172" を記述することで、アウトバウンドのモデルAPIアクセスをアップストリームプロキシ経由にできます。v2rayA・Clashなどとの組み合わせが想定されています。
ライセンス
MITライセンスで商用利用・改変・再配布が可能です。
まとめ
billion-contextは、AIコーディングエージェントを日常的に使うエンジニアが直面するコンテキスト枯渇問題を、LLM主導の増分圧縮で解決するプロキシです。Claude Code・Codex・Cursorを bili <agent> の一行で既存設定を変えずに使い始められます。
2026年8月末時点ではアーリーステージですが、活発な開発(v0.1.67まで頻繁リリース)が続いており、実用水準に近づいています。長時間セッションでAPI費用を節約したい方、コンテキスト枯渇に悩んでいるAIエージェントユーザーはぜひ試してみてください。
GitHub: ranxianglei/billion-context
関連ツール・おすすめサービス
- DigitalOcean — AIエージェントやDevToolを動かすクラウドサーバーならDigitalOceanが手頃でシンプル
この技術を学ぶ
DevToolに興味を持った方には、UdemyのAI開発・エージェント系コースもおすすめです。
- 🎓 関連するDevToolコース一覧 — セール時(最大90%OFF)を狙うとお得です
関連記事
この記事が役に立ったらシェアしてください