原文(日本語に翻訳)
バックグラウンドのBashタスクは出力が5GBを超えると強制終了されるようになりました。暴走したプロセスによるディスクの枯渇を防ぎます
原文(英語)
Background bash tasks are now killed if output exceeds 5GB, preventing runaway processes from filling disk
概要
Claude Codeのバックグラウンドで実行されるBashタスクに5GBの出力上限が設けられました。無限ループや想定外の大量ログ出力が発生した場合に、プロセスが自動的に終了してディスクスペースを使い切ってしまう問題を防ぎます。本番環境での長時間バッチ処理や自動化スクリプトの実行時に、意図しないディスク障害が起きにくくなります。
基本的な使い方
この機能はバックグラウンドタスクに対して自動的に適用されます。特別な設定は不要です。
bash
# バックグラウンドタスクとして大量出力が予想されるコマンドを実行
# 出力が5GBを超えると自動的に終了する
find / -name "*.log" -exec cat {} \; &
# Claude Codeは出力サイズを監視し、5GB超過時にプロセスを終了
# ユーザーには上限超過の通知が表示される実践例
ログ収集スクリプトの安全な実行
bash
# 大量のログを収集するスクリプトを実行
# 予期せぬ大量出力があっても5GBで自動停止する
./collect-logs.sh --all-services --verbose
# 出力が5GBに達した場合:
# "バックグラウンドタスクが終了されました: 出力が5GBの上限を超えました"
# というメッセージが表示されるデータ処理パイプラインの監視
bash
# 大規模データの変換処理
python process_large_dataset.py --input /data/raw --output /data/processed --verbose
# 問題: デバッグログが無限に出力され続ける場合
# → 5GB超過で自動終了し、ディスクが守られるビルドプロセスの安全な実行
bash
# 詳細出力付きのビルドコマンド
make all VERBOSE=1 2>&1
# ビルドシステムのバグで無限ループになった場合でも
# 5GBの上限で自動停止するため、ディスク枯渇を防げる注意点
- 5GBの上限: 現時点では5GBが固定値です。この制限は変更できません
- 終了の通知: 上限超過でプロセスが終了した場合、Claude Codeから通知が表示されます
- バックグラウンドのみ: この制限はバックグラウンドタスクに対してのみ適用されます。フォアグラウンドの通常のBashコマンドには適用されません
- 正当な大量出力: 5GBを超える出力が正当に必要な場合は、出力をファイルにリダイレクトして管理するか、タスクを分割することを検討してください
- ログローテーション: 長時間実行するタスクでは適切なログローテーション設定を行うことを推奨します