このプロジェクトについて

cost-xrayはAIコーディングエージェント向けのローカル捕捉・コスト帰属ツールです。事後にローカルトランスクリプトを読むのではなく、Claude CodeとCodexが送信する実際のAPIリクエストを傍受し、各リクエストを構成要素ごとのソースに分解して価格を算出します。 存在理由:ログベースの使用量ツールは呼び出しやセッションの総コストを示しますが、リクエスト時のコンテキスト(システムプロンプト、注入されたツールスキーマ、MCPブロック、ツール結果、キャッシュ読み書き、以前のthinkingブロック)はリクエスト時に組み立てられ、トランスクリプトには書き込まれません。この不可視のプレフィックスはコンテキストの大きな割合を占めることがあります。cost-xrayは生のワイヤリクエストを読むことで、スキーマ、MCPサーバー、ツール、メッセージバケットにトークンとドルを、個々のツール呼び出しに至るまで帰属させることができます。 仕組み:mitmproxyがローカル捕捉ホップとして動作します。Claude Codeはbase-URLオーバーライドによるリバースプロキシモードで捕捉されます(証明書不要)。Codexはフォワードプロキシと、codexコマンドのみが信頼するスコープ付きローカルCAを使用します。プロキシは127.0.0.1にバインドし、テレメトリを送信せず、ディスク上の~/.cost-xray/に書き込む前にAuthorizationヘッダー、APIキー、Cookie、およびシークレットらしきボディフィールドを秘匿化します。分析はリクエストパスから外れた別のマテリアライザーで実行されるため、トークン化と価格計算がライブリレーにレイテンシを追加しません。捕捉されたトラフィックは一意のブロックごとに重複排除され、ターンごとの差分を取るため、100万トークンのセッションでもディスク使用量を小さく保ちます。 READMEに記載されている機能:fresh、cache-read、cache-write、outputトークンに分割されたソース別コスト帰属で、個々の呼び出しまで価格を算出。コンテキストウィンドウ占有率をソースレベルの行に分解。設定されたMCPサーバーと、すべてのリクエストに注入されるが決して呼び出されないツールの検出。Claude向けのトークン化アプローチで、tiktoken推定とプロバイダー自身の使用量合計に対する比例キャリブレーションを使用(合計は正確、ソース別分割は近似)。プロキシを再起動するかエージェントの直接実行にフォールバックする自己修復ラッパー。そしてライブTUI。 インストールはcurlでパイプするインストールスクリプトで、どのエージェントを捕捉するかを尋ねるか、COST_XRAY_AGENTS=claude|codex|allを受け付けます。捕捉はフォワードのみで、新しいターミナルが必要です。cx CLIはTUIを開き、サービスを管理します(status、stop、start、restart、install、uninstall)。要件はmacOSまたはLinux、サポート対象のエージェント、APIキーやアカウントは不要です。MITライセンス。