Claude Codeの追加利用枠切れで夜間cronが止まった。再実行の前に切り分ける

2026 年 10 月 3 日 23 時の夜間ジョブは、記事を 1 文字も書かずに止まりました。Claude Code が返した文はYou're out of usage credits.です。これは契約プランのセッション上限や週次上限がゼロになった表示ではなく、追加利用枠(usage credits)側の案内です。
認証は通っています。Claude Code は 2.1.286 で、ログイン方法は Claude Pro account でした。問題は「ログインできない」ではなく、「ログイン後に使える追加枠がない」です。私はこの状態で同じジョブをすぐ再実行しませんでした。空のブランチを確認し、記事・OG・commit・PR がない地点で止めています。
この記事の根拠は、上記の 23 時 1 回分の実行記録です。夜間ジョブを回す運用エージェント(Hermes)の履歴ツールには、同種の失敗がほかにも並ぶことがありますが、ここではその一覧を一般化しません。検証したのはこの 1 件です。
前回完了時と今回完了後
前回は 23 時のジョブが失敗を報告し、空のローカルブランチだけを残しました。今回は失敗の場所を認証、追加利用枠、Git の残骸に分けて確認しました。設定変更や自動切り替えはまだしていません。
| 時点 | 分かっていたこと | 判断できなかったこと |
|---|---|---|
| 前回完了時 | 記事生成に使っている Claude モデル名を指定して起動した実行が、追加利用枠切れ表示で停止しました | 認証切れか、モデル障害か、追加利用枠の案内かは未分離でした |
| 今回完了後 | 認証済み、Claude Code 2.1.286、23時1件の失敗内容、空ブランチの存在を確認しました | 追加利用枠の回復時刻と、次回ジョブの成功はまだ確認していません |
飛ばせる章: 夜間ジョブの実行履歴をすでに読める場合は、「再実行より先に見る3か所」へ進めます。
なぜ再実行を急がないのか
追加利用枠切れのまま再実行しても、同じ入口で止まります。夜間ジョブは Claude Code を 1 回だけ起動し、成功した時だけ記事と OG を作る契約です。失敗後に別経路で記事を作ると、誰が書いた稿か分からなくなります。さらに、空ブランチや未追跡ファイルが重なると、翌日の差分確認も難しくなります。
Claude Code の--fallback-modelも万能ではありません。公式 CLI リファレンスでは、主モデルの過負荷や利用不能時に別モデルへ切り替える機能です。Anthropic の費用管理資料は、契約プランのセッション上限や週次上限はモデル間で共有され、モデル変更だけでは回復しないと説明しています。一方、今回画面に出たYou're out of usage credits.は、その契約側セッション/週次上限そのものではなく、追加利用枠の案内です。種類が違うため、過負荷向けの fallback を根拠なく足しませんでした。
[夜間スケジューラ 23:00]
↓
[Claude Codeを1回起動]
↓
[追加利用枠切れの表示]
├─ 記事なし
├─ OGなし
├─ commitなし
├─ PRなし
└─ 空のlocal branchあり
↓
[履歴・認証・Gitを確認]
↓
[再実行せず人が判断]
用語
| 用語 | この回での意味 |
|---|---|
| 追加利用枠(usage credits) | 契約プランの通常枠とは別に案内される追加の利用枠です。今回のYou're out of usage credits.はこの側の表示です |
| 契約のセッション/週次上限 | Claude Proなどの契約で、一定期間に使える量の上限です。今回のエラー文そのものではありません |
| 認証 | Claude Code がアカウントへログイン済みかどうかです |
| fallback model | 主モデルが過負荷または利用不能の時に試す代替モデルです |
| 夜間ジョブの実行記録 | スケジューラ側(Hermes)が保存する cron の実行履歴です |
| 失敗の追跡記録 | 同種の cron 失敗を追うためのスケジューラ側の記録です |
再実行より先に見る3か所
1. 夜間ジョブの最新実行を読む
夜間の記事生成ジョブについて、スケジューラ側の履歴から最新 1 件だけを表示しました。コマンドでは、登録済みジョブを指す短い識別子を渡します。
hermes cron runs <夜間記事生成ジョブの識別子> --limit 1
今回の対象行は次の通りでした。先頭の長い文字列は実行 1 回分の記録 ID、job=の後ろはジョブの識別子です。本文中のclaude-fable-5は、記事生成に使っている Claude の指定モデル名です。
fd5292b930e249f68aefcf6c4bd4e0c4 failed job=28199a48b30a source=builtin 2026-10-03T23:00:50.677865+09:00
Claude Codeを`claude-fable-5`で1回起動しましたが、利用枠切れ(`You're out of usage credits.`)で停止しました。記事・OG・commit・push・PRは未作成で、空のローカルbranch `content/2026-10-03-ai-html-product-network-preflight` のみ残しています。
ここでは、エラー文だけでなく副作用も読みます。記事や PR はなく、空ブランチだけが残っています。失敗を成功として扱わず、公開工程へ進んでいない点も確認できます。
2. Claude Codeの版と認証を分けて見る
まず版を確認しました。
claude --version
2.1.286 (Claude Code)
次にclaude auth status --textを実行しました。
claude auth status --text
公開不要な組織名とメールアドレスは載せず、判断に使った行だけを示します。
Login method: Claude Pro account
認証済みでも追加利用枠切れは起こります。auth statusが成功した事実だけで、生成できるとは判断できません。一方、認証エラーなら追加枠を待つ前にログイン経路を直す必要があります。この 2 つを混ぜないことが大切です。
3. Gitに何が残ったか確かめる
報告されたブランチ名を、そのまま照合しました。
git branch --list 'content/2026-10-03-ai-html-product-network-preflight'
content/2026-10-03-ai-html-product-network-preflight
この確認では削除、reset、clean をしていません。失敗したジョブの痕跡を別の自動処理が消すと、原因調査が難しくなるからです。再利用もしません。次に作業する時は、同期したmainから新しいブランチを作ります。
同じジョブをすぐ再試行しない
スケジューラ側の失敗追跡一覧には、同じ夜間ジョブ向けの記録がほかにも並ぶことがあります。背景として「単発の通信失敗だけではないかも」と疑う材料にはなりますが、この記事で中身まで確認したのは 2026 年 10 月 3 日 23 時の 1 回だけです。その 1 件だけを偶発的な通信失敗とみなし、同じ手順を繰り返す材料にはしません。
私なら復旧条件を先に決めます。追加利用枠が使える状態になったことを確認した後、既存の失敗ブランチとは別の新しいブランチで 1 回だけ試します。成功条件は Claude Code の終了だけではありません。記事 1 本、OG1 枚、品質ゲート、draft: true、main 向け PR までを一続きで確認します。
よくあるエラー
| 症状 | 切り分け | 対応 |
|---|---|---|
You're out of usage credits.で止まります | 認証済みかと、追加利用枠の案内かを分けて見ます。契約のセッション/週次上限ゼロとは別表示として扱います | 回復条件が分かるまで自動再試行しません |
auth statusが失敗します | 追加利用枠より前に認証経路が壊れています | 対話環境でログイン方法を確認します |
--fallback-modelを付けても止まります | 契約のセッション/週次上限ならモデル変更では回復しません。今回の追加枠メッセージとも別です | エラー種別を読み、過負荷・契約上限・追加枠を混同しません |
| 空ブランチだけが残ります | 記事・OG・commitの有無をgit statusと履歴で確認します | 自動削除や再利用をせず、次回は新しいブランチを使います |
| cronの最終表示だけでは足りません | スケジューラ側の実行記録と失敗追跡に詳細が残っています | hermes cron runsとhermes cron incidentsを確認します |
| Claude Codeが終了コード0です | 生成物や品質ゲートの成功とは別です | diff、frontmatter、build、PRを個別に確認します |
一次情報
| 資料 | 確認したこと |
|---|---|
| Claude Code: Manage costs effectively | ProやMaxの利用状況、usage credits、上限エラー時の考え方です |
| Claude Code: CLI reference | -p、auth status、--fallback-modelの役割です |
| Hermes Agent: Scheduled Tasks | 夜間ジョブの実行記録、失敗追跡、cronジョブの確認方法です |
| 夜間ジョブの実行記録(2026-10-03 23:00) | 実エラー文と、生成物が作られなかった事実です |
夜間の自動化では、「別モデルなら動くはず」という期待より、停止地点を狭く残す方が次の判断に効きます。今回は記事を作れなかったこと自体が重要な結果でした。認証、追加利用枠、Git の痕跡を分けたので、次回は同じ失敗を成功らしく包まずに済みます。
