夜間のAI処理が終わる前に、サーバー更新の時間が来る。そこで強制終了すると、作業途中の状態だけが残り、翌朝は「完了したのか、途中なのか」の確認から始まります。
Claude Code v2.1.238では、セルフホスト型ランナーの終了方法と、長時間セッションのメモリ管理が改善されました。派手な新機能ではありません。しかし、AIへ数時間の仕事を任せる会社にとっては、モデル性能より先に確認したい変更です。
公式リリースで確認できる変更
Anthropicが2026年8月20日に公開したv2.1.238には、セルフホスト運用に関係する次の変更が含まれます。
claude self-hosted-runner --defer-shutdown-max-min <minutes>を追加。SIGTERMを受けた後も、接続中のセッションを指定時間まで継続し、残った処理を退避して終了できる- 長い対話セッションで増え続けていたメモリ使用を修正。最近の表示範囲から外れたサブエージェントのツール結果を解放する
- 遅い、または失われたポーリング要求が1回あっただけで、正常なセルフホスト型ランナーがサーバーから外される問題を修正
- コマンドが強制終了、タイムアウト、中断されたときに残る一時ファイルを修正
ここまでは公式リリースに書かれた事実です。以下は、更新内容を小さな会社の運用へ置き換えた私の見立てです。
終了猶予は「待ち時間」ではなく退避ルール
終了猶予を長くすれば安全、とは限りません。外部APIの応答待ちや、終わらないサブタスクまで抱えたままでは、更新作業そのものが止まります。先に決めるべきなのは、どの処理なら完了を待ち、どこから先は退避して次回へ回すかです。
たとえば、文章の下書きや調査結果の整理は数分待てます。一方、メール送信、顧客データ更新、公開処理は、終了直前に始めない方が安全です。再開時に二重実行すると困る操作には、処理IDや完了記録を残します。
AIが書いた「完了しました」という一文も、完了記録の代わりにはなりません。成果物ファイル、更新先のレコード、公開URLなど、外部に残った結果を正本として照合します。
メモリ改善だけでは長時間運用は安定しない
v2.1.238は、画面に残す必要がなくなったサブエージェント結果を解放します。長いセッションのメモリ増加には効きます。ただし、同じ会話へ仕事を詰め込み続ける運用まで正当化する変更ではありません。
案件、顧客、権限が違う仕事はセッションを分けた方が扱いやすい。途中経過を会話だけに置かず、タスク台帳や作業ログへ保存しておけば、セッションを閉じても仕事は失われません。AIの記憶より、会社側の保存先を先に決めます。
更新前に決めておく4項目
- 終了信号を受けた後、何分まで既存処理を待つか
- 待ち時間を超えた処理を、どこへ退避するか
- 再開時に二重実行を防ぐ識別子と完了記録
- 成果物を確認できない場合に、人へ差し戻す条件
最初のテストは本番データを使わずに行います。10分程度かかる模擬処理を開始し、途中でSIGTERMを送る。設定した猶予内で処理が続くか、超過分が退避されるか、再起動後に重複しないかを確認します。
そのまま導入すると危ない点
--defer-shutdown-max-minは、処理の正しさを保証する機能ではありません。外部サービスへの書き込みが終わった直後に完了記録だけ失えば、再開時に同じ操作を繰り返す恐れがあります。終了猶予と、重複を防ぐ設計は別に必要です。
また、今回のリリースノートには改善内容が記載されていますが、会社ごとのプロキシ、認証方式、監視環境までは検証してくれません。更新後は、正常終了、猶予超過、ネットワーク断の3通りを自社環境で試すべきです。
最初にやるなら
夜間やバックグラウンドでClaude Codeを動かしている会社は、次の保守時間までに「終了猶予」「退避先」「再実行条件」を1枚にまとめてください。その上で模擬処理を1本だけ走らせ、停止から再開まで確認します。
AIに仕事を委譲するなら、始め方だけでなく止め方も業務設計に入れる。更新作業で処理を捨てないことと、待ち続けないこと。この両方を決めて初めて、長時間のAI作業を日常運用へ移せます。

