コンテンツにスキップ

コスト管理

このガイドでは、エージェントの実行にいくらかかっているかを確認する方法と、自律実行に上限を設ける方法を説明します。

エージェントの実行はすべて実行ログを書き込み、そこには入力トークン、出力トークン、推論トークン、キャッシュ読み取りとキャッシュ書き込みのトークン、セント単位の推定コスト、そして生成したサブエージェントのコストが記録されます。

料金は models.dev カタログから取得します。このカタログはモデル一覧に料金とコンテキストウィンドウを補うためにのみ使われ、モデル ID の供給元にはなりません。カタログが料金を特定できないモデルは $0 として記録され、ゼロコストの実行は使用量とコストのサマリーから除外されます。したがって、ローカルの Ollama モデルは支出がまったく表示されませんが、トークン数は引き続き記録されます。定額プラン(kimi-code、Claude サブスクリプション)も、提供されるモデルにカタログの料金がない場合に限り同じ扱いになります。料金がある場合は、その料金で実行が推定されます。フォールバックチェーンの場合、実行は要求したモデルではなく、実際に提供したモデルに対して料金が計算されます。

サイドバーのフッター → オブザーバビリティから開きます。最初に使用量タブが開き(生涯のトークン合計)、メインのコスト画面には 2 つ目のタブであるインサイトに切り替えます:

  • 期間の選択: 過去24時間、過去7日間、過去30日間、または全期間
  • エージェント、モデル、ステータス、ロールによるファセットフィルター。閉じられるチップとして表示されます
  • KPI ストリップ: 合計実行数、合計コスト、エラー率、キャッシュ率、トークン/秒、平均レイテンシ、最初のトークンまでの時間。それぞれに前期間比の変化が付きます(「全期間」では非表示)
  • アクティビティとコストのチャート、およびロール別コストの内訳。支出をメインエージェント、そのサブエージェント、アドバイザーに分けて表示します
  • コストで並べ替えたエージェント別テーブル。上位 10 件を表示し、全件表示に切り替えられます。行をタップすると、ほかのすべての画面がそのエージェントで絞り込まれます
  • 詳細な実行ログ。選択した実行のトランスクリプトドロワーをドッキング表示します

このページの使用量とコストカードには、過去 7 日間に観測された支出が 1 つのドル金額として表示され、プロバイダー別の内訳と、プロバイダーが公開している場合は次回の割り当てウィンドウがリセットされるまでの時間も示されます。

設定 → ワークスペース → エージェント → エージェントを選択 → ログには、その実行がステータス、所要時間、開始時刻と完了時刻、PID、アダプターとともに一覧表示されます。このタブにはコストは表示されません — コストはオブザーバビリティ → インサイトのエージェント別テーブルで確認してください。

スペースのコンポーザーで入力する 2 つのスラッシュコマンドだけが、支出上限を持つ実行です:

/goal ship the auth refactor --budget 20
/loop keep the flaky tests green
  • /goal または /loop 実行の各セグメントは、料金計算された支出が **500 セント($5.00)**に達すると停止します。その 80% の時点で、ループはまずモデルをまとめに入らせ、きれいに引き継げるように仕向けるため、タスクの途中で途切れることはありません。
  • 永続ゴール全体には、--budget <dollars> を渡さない限り **5000 セント($50.00)**の上限が適用されます。スーパーバイザーはゴールの_残り_予算を各セグメントに引き継ぐため、明示的な予算がセグメント 1 つ分まるごと超過することはありません。
  • --days N は実時間の期限を、--max N は実行回数の上限を追加します。どちらもオプトインで、指定しなければゴールはコストによってのみ制限されます。
  • 上限に達したゴールは budgetExhausted で停止し、予算を引き上げることによってのみ再開できます。

上限は料金に基づくため、カタログが料金を特定できないモデルは上限に達することがありません。そのような実行は代わりに、ドゥームループの反復ガード、3 回連続の失敗後にスーパーバイザーが諦めること、そしてあなたによって制限されます。

スペース内のメッセージ、@メンション、パイプラインのステップには支出上限がありません。実行は、モデルが停止したとき、あなたが停止したとき、またはドゥームループガードが方向づけたときに終わります。

スペースのコンポーザーで /compact と入力します。このコマンドはクライアント側でインターセプトされ、トランスクリプトに残ることはありません。サーバーが古い履歴をアンカー付きの要約に畳み込み、会話は圧縮されたコンテキストで続行されます。

エージェントがターン実行中の場合と、畳み込むほど古い履歴がない場合、圧縮は拒否されます。組み込みハーネスも、履歴がモデルのコンテキストウィンドウに近づくと自ら圧縮します。

エージェントの推論の程度(設定 → ワークスペース → エージェント)では、選択したモデルが公開しているレベルを選べます。レベルが高いほど、より多くの推論トークンを消費します。最上位のレベルは、それを必要とする作業のために取っておいてください。

モデルはエージェント単位のフィールドなので、整形やトリアージのエージェントは安価なモデルで実行し、アーキテクチャのエージェントは高価なモデルで実行できます。オブザーバビリティ → インサイトのエージェント別テーブルをモデルで絞り込むと、どの組み合わせが実際にコストをかけているかがわかります。

インサイトの実行ログ(絞り込んだ最新 50 件の実行)を開き、異常なものについてはトランスクリプトドロワーを開きます。よくある原因は、長すぎるシステムプロンプトやペルソナ、圧縮すべきだったコンテキスト、いくつかの小さなタスクに分けるべきだったタスクです。

念のため、monthlyBudgetCents または予算ポリシーがエージェントの行に直接書き込まれた場合の動作を説明します:

  • 予算はディスパッチの前ではなく、実行が完了した後に評価されます。実行完了時のリスナーが、エージェントの月初来の支出を上限と比較します。
  • ソフトしきい値(既定では 80%)を超えると警告インシデントが記録され、パイプライントリガーをぶら下げられる BudgetThresholdCrossed イベントが発行されます。
  • 予算を使い切るとハードインシデントが記録され、同じイベントが発行され、エージェントのライフサイクルステータスが paused に切り替わります。
  • ディスパッチ前のブロックは存在しますが、復旧をスケジュールする際にオーファン実行のリーパーと立ち往生したチケットのレコンサイラーだけが参照します — 通常のディスパッチがそこに到達することはなく、ディスパッチ経路のどこも一時停止ステータスを確認しません。唯一の可視シグナルは、組織図のライフサイクルバッジです。