headroomlabs-ai/headroom

エージェントの入力を LLM に送信する前に圧縮し、同じ回答を少ないトークン数で実現するライブラリ・プロキシ・エージェント統合ツール

開発の材料自由に使える · Apache-2.0LLM ツール・RAGPython難易度
74,794+506今週0 保存
5,799フォーク192Issue
デモ・公式サイトをひらくdocs.headroomlabs.ai

中辛 の解説

Headroom はエージェント・アプリケーションから LLM へ送信されるコンテンツ(JSON ログ、ソースコード、テキストなど)を自動的に検出して型別に圧縮し、トークン使用量を削減します。ContentRouter が内容タイプを判定し、SmartCrusher(JSON)、CodeCompressor(AST)、Kompress-v2-base(テキスト)の 3 つの圧縮器を使い分けます。ローカル実行により入力はあなたのマシンに留まり、圧縮後のプロンプトと検索ツール呼び出し用の CCR(可逆圧縮・復元)を LLM に送ります。Python・TypeScript ライブラリとして埋め込むか、ゼロコード変更のプロキシ(ポート 8787)として起動するか、Claude Code・Cursor・Cline など 14+ のエージェントに対して headroom wrap で直接統合できます。出力トークン削減機能(簡潔な指示追加・推論努力の動的調整)により、モデルが書き戻すトークンも削減します。実装が完成済みで、ベンチマーク(SRE デバッグで 57% 削減、検索結果で 21% 削減)と精度評価(GSM8K・TruthfulQA・SQuAD で実施)が記載されています。

こんなリポジトリです

こんなときに便利です

  • SRE チームが膨大なログ出力を圧縮して、デバッグ時に LLM エージェントへ送信するトークン数を削減
  • 開発者が大規模コードベースの検索結果(100 件以上)を RAG チャンクとして圧縮し、Claude Code や Cursor での検索精度を保ちながらコスト削減
  • GitHub Issue の大量情報を圧縮して自動トリアージ エージェントに渡し、API 呼び出しコストを削減

主な機能

Python・TypeScript ライブラリ、ローカルプロキシ、MCP サーバー、14+ エージェント統合(wrap コマンド)JSON・ソースコード・テキストを型別に検出して最適なコンプレッサー(SmartCrusher・CodeCompressor・Kompress-v2-base)を自動選択可逆圧縮(CCR)により元データをローカルキャッシュ保持し、モデルが必要時に完全版を検索・復元

ほかとの違い

ローカル実行のため入力データが外部に送信されず、プロンプトキャッシュを損なわない設計と、推論パラメータ(thinking tokens・output effort)を利用した出力トークン削減によって、従来の圧縮手法より透過的で安全な統合が可能です。

このリポジトリの作り方

はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。

準備するもの

  • Python 3.10 以上(推奨 3.13)
  • OpenAI、Anthropic、Bedrock などの LLM API キー(プロキシ・ライブラリ経由で利用時)

すぐに始める

  1. headroom-ai をインストールします。
pip install "headroom-ai[all]"

別案:uv ツール機能を使用(分離環境)

uv tool install --python 3.13 "headroom-ai[all]"
  1. 設定を確認します。
headroom doctor
  1. プロキシを起動するか、エージェントをラップします。プロキシモード:
headroom proxy --port 8787

またはエージェント統合(例:Claude Code):

headroom wrap claude
  1. 削減量を確認します。
headroom perf
headroom dashboard
  1. Python で直接使用する場合:
from headroom import compress
from openai import OpenAI

messages = [{"role": "user", "content": "Analyze these results"}]
result = compress(messages, model="gpt-4o")

client = OpenAI()
response = client.chat.completions.create(model="gpt-4o", messages=result.messages)
print(f"Saved {result.tokens_saved} tokens ({result.compression_ratio:.0%})")

ギット飯トライで味見

入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。

ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。

npx gitbap-try headroomlabs-ai/headroom

Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →

これを仕事に活かす

味見がすんだら次は応用です — 仕事やビジネスに活かす方法をまとめました。

レシピ — AI にこのまま頼んでみてください

レシピを読み込んでいます…

スター推移 · 7日

74,794+506 / 7日

確認日時

使いやすさ · まねしやすいか

ベストサンプルサンプル評点 80/100
  • ゆるいライセンス
  • テストあり
  • サンプル集
  • 最近の更新
  • AGENTS.md
  • llms.txt
  • テンプレート

最近の更新あり · 2026 年に作成

「LLM ツール・RAG」 こういうリポジトリを毎週受け取りませんか?

毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。

自分のリポジトリですか? README にギット飯バッジを貼る
[![깃밥](https://www.gitbap.com/badge/headroomlabs-ai/headroom.svg)](https://www.gitbap.com/r/headroomlabs-ai/headroom)
Claude からそのまま使う — ギット飯のつなぎ方

ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。

方法 ① コネクタ URL

Claude の設定 → コネクタにこのアドレスを貼り付け。

https://www.gitbap.com/api/mcp
方法 ② プラグイン(試用まで)

プラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
つなぎ方をくわしく →

AI が README をもとに要約しました · 原文を見る