第39回: コスト管理とトラブルシューティング
この回で学ぶこと
API料金の確認方法と上限設定
コスト最適化の4つのテクニック
トラブル対処の基本ツール(
openclaw doctor/openclaw logs)運用中のよくあるトラブルと対処法
前回のおさらい
AGENTS.mdで複数のエージェントにチームとしての運用マニュアルを持たせ、@メンションやsessions_spawnで連携させる方法を学んだ。Lobsterワークフローエンジンで決まった手順を繰り返し実行できる仕組みも紹介した。今回は、長期運用に欠かせないコスト管理とトラブル対処法を学ぶ。
API料金の確認方法
OpenClawを使い続けると、裏でAI(大規模言語モデル)への問い合わせが発生する。この問い合わせにはAPI料金がかかる。「使った分だけ払う」従量課金制のため、使用量の把握が大切。
確認方法は2つある。
方法1: OpenClawのコマンドで確認する
openclaw gateway usage-cost
これで過去30日分の使用コストが表示される。期間を指定したい場合は --days 7(7日分)のように追加する。
方法2: APIプロバイダのダッシュボードで確認する
Anthropic(Claude) | 日別・月別の使用量とコスト | |
OpenAI(GPT) | トークン数と金額の推移 |
方法1は「OpenClawがいくら使ったか」の全体像、方法2は「どのプロバイダにいくら払っているか」の詳細。両方使い分けると正確に把握できる。
上限設定(使いすぎ防止)
OpenClaw自体には使用金額の上限を設定する機能がない。上限はAPIプロバイダ側で設定する。
Anthropicの場合: console.anthropic.com → Settings → Limits → 月額の上限金額を設定
上限に達するとAPIが停止し、OpenClawも動かなくなる。まず月$50(約7,500円)などの上限を設定しておくと安全。週1回はダッシュボードを確認する習慣をつけること。
コスト最適化の4つのテクニック
モデルの使い分け | 重要なタスクにはSonnet、定型タスクにはHaiku | Haikuの料金はSonnetの約1/3 |
Heartbeat間隔の調整 | デフォルトの30分間隔を1時間に変更 | コストが約半分になる |
lightContextの有効化 | Heartbeat実行時に読み込む情報を最小限にする | Heartbeatのコストが約95%以上削減 |
不要タスクの無効化 | 使わなくなったcronジョブやHeartbeatタスクを停止 | 無駄な実行をゼロにする |
それぞれ詳しく見ていく。
テクニック1: モデルの使い分け
OpenClawは複数のAIモデルに対応している(Anthropic、OpenAI、Google等)。同じAnthropicでもモデルによって料金が違う。
Claude Haiku 4.5 | $1.00 | $5.00 | 定型作業、分類、要約 |
Claude Sonnet 4.5 | $3.00 | $15.00 | 文章作成、分析、複雑な判断 |
HaikuはSonnetの約1/3の料金。「毎日のニュース要約」「メール分類」のような定型作業はHaikuで十分。「レポート作成」「複雑な分析」にはSonnetを使う、という使い分けでコストを抑えられる。
テクニック2: Heartbeat間隔の調整
第6回で紹介したHeartbeat(定期チェック機能)は、デフォルトでは30分間隔で動く。実は、この間隔は変更できる。
openclaw.json に以下を追加する:
{
"agents": {
"defaults": {
"heartbeat": {
"every": "1h"
}
}
}
}
"30m"(30分)、"1h"(1時間)、"2h"(2時間)のように指定できる。"0m" にするとHeartbeatを完全に停止できる。
間隔を30分から1時間にするだけでコストは約半分になる。「30分ごとにチェックする必要が本当にあるか?」を考えて、1時間でも問題ないなら変更しよう。
補足: 第6回で「30分間隔は固定」と説明したが、正確にはデフォルトが30分であり変更可能。この回で改めて訂正する。
テクニック3: lightContextの有効化(最も効果が大きい)
Heartbeatが動くたびに、OpenClawはSOUL.md、MEMORY.md、スキル一覧など多くの情報を読み込む。これが毎回のトークン消費の大部分を占める。
lightContext: true を設定すると、Heartbeat実行時にHEARTBEAT.mdだけを読み込むようになる。
{
"agents": {
"defaults": {
"heartbeat": {
"every": "1h",
"lightContext": true
}
}
}
}
通常のHeartbeat実行では1回あたり数万〜数十万トークンを消費することがあるが、lightContext: true にすると数千トークンまで減る。これだけでHeartbeatのコストが95%以上削減される。
「Heartbeatでは簡単なチェックしかしない」という場合は、迷わず有効にしてよい。SOUL.mdやMEMORY.mdの内容が必要なHeartbeatタスクの場合は、オフのままにする。
テクニック4: 不要タスクの無効化
使わなくなったcronジョブは停止する:
openclaw cron disable ジョブ名
HEARTBEAT.mdの不要なチェック項目は削除するか、行の先頭に <!-- と --> をつけてコメントアウトする(HTMLのコメント記法)。
トラブル対処の基本ツール
OpenClawには、トラブル対処に使える2つの便利なコマンドがある。まずこの2つを覚えておけば、たいていの問題に対処できる。
ツール1: openclaw doctor(健康診断)
openclaw doctor
PCの設定やOpenClawの状態を自動でチェックしてくれる。問題が見つかれば修正方法を教えてくれる。さらに --repair をつけると、安全な範囲で自動修正もしてくれる。
openclaw doctor --repair
チェックされる項目: Node.jsのバージョン、ゲートウェイ(OpenClawの中核プロセス)の接続状態、設定ファイルの書式、APIキーの認証状態、ポート番号の衝突など。
「なんか調子がおかしい」と思ったら、まず openclaw doctor を実行するのがおすすめ。
ツール2: openclaw logs(ログ確認)
openclaw logs --follow
OpenClawが何をしているかをリアルタイムで表示する。--follow をつけると、新しいログが出るたびに自動で画面が更新される。
エラーだけを見たい場合:
openclaw logs --level error --since "1h"
これで「直近1時間のエラーだけ」が表示される。エラーメッセージを読んで、その内容で検索すると解決策が見つかることが多い。
よくあるトラブルと対処法
Heartbeatが動かない | HEARTBEAT.mdが空、または中身がヘッダー行だけ | チェック項目( |
Heartbeatで意図しない通知が来る | エージェントが | Heartbeat実行後、異常がなければエージェントは |
APIエラー(429) | レート制限(短時間にリクエストを送りすぎ) | しばらく待ってから再試行する。頻発する場合はHeartbeat間隔を広げるか、軽量モデルに変更する |
APIエラー(401) | APIキーの期限切れ or 設定ミス | プロバイダのダッシュボードでキーの状態を確認する。 |
秘書の返事が遅い | 重いモデルを使っている、またはコンテキストが大きすぎる | Haikuなどの軽量モデルに変更する。 |
ポートが使用中と表示される | 別のOpenClawプロセスが動いている |
|
トラブル対処の基本手順:
openclaw doctorを実行する(自動診断)問題が見つからなければ
openclaw logs --level error --since "1h"でエラーを確認するエラーメッセージをそのまま検索する(OpenClaw公式ドキュメントやGitHubで解決策が見つかることが多い)
ゴール状態
openclaw gateway usage-costでコストを確認できるHeartbeat間隔の変更と
lightContext: trueでコストを最適化できるopenclaw doctorとopenclaw logsでトラブルの原因を調べられるよくあるトラブルの対処法を知っている