結論:必要な出力だけ増やし、128Kを初期値にしない
Claude Code 2.1.261で追加されたbashOutputMaxCharsとtaskOutputMaxCharsは、Bashコマンドやbackground taskの出力をinlineでClaudeへ渡す上限を引き上げる設定です。最大128K文字まで指定できますが、まず失敗原因を確認し、必要な設定だけを最小値で試します。
読者の困りごとは、ログが途中で切れて原因が見えない一方、上限を無制限に近づけると巨大な出力、秘密情報、コンテキスト負荷を招くことです。読了後は、どちらの設定をどのscopeへ置き、ログ保存と人間確認をどう組み合わせるか判断できます。
これはログを永続保存する機能ではありません。inlineへ渡す量を変える設定と、コマンド側で保存するファイルやCIのartifactを分けます。最初の行動は、切れているコマンド、必要な行、現在のscope、秘密情報の有無を一つの再現ケースへ固定することです。
2.1.261の新設定と対象範囲
Claude Code公式CHANGELOGの2.1.261(2026年9月4日)には、bashOutputMaxCharsとtaskOutputMaxCharsが追加されたと記載されています。コマンドやbackground taskの出力をinlineで受け取る量を増やし、最大128K文字まで指定できます。従来どおり、一定量を超える結果はファイルへ保存されるため、inlineの上限と保存先を混同しません。
bashOutputMaxCharsはBash実行の結果、taskOutputMaxCharsはbackground taskの結果に対応します。ビルド、テスト、ログ検索、長い生成物を同じ値にする必要はありません。Bashは要約可能な診断ログ、taskは進捗と完了状態など、Claudeが次の判断に必要な情報を先に定義します。
設定の配置と優先順位は公式Settingsを正本にします。user、project、local、managedのどこへ置くかで影響範囲が変わり、repositoryへcommitした設定は他の利用者へ波及します。試験段階はlocal、チーム標準はproject、組織統制が必要な場合はmanagedと、変更責任に合わせます。
上限を増やす前に確認する4つの境界
| 境界 | 確認すること | 失敗時の対応 |
|---|---|---|
| 情報量 | 次の判断に必要な行数と文字数 | grep、tail、要約で絞る |
| 秘密情報 | token、cookie、個人情報、顧客データ | redaction、deny、ダミー値で再現 |
| コンテキスト | 他のprompt、Skill、tool定義との合計 | scopeを限定し、古い出力を保存へ回す |
| 証跡 | 再現command、保存先、owner、期限 | artifactとaudit logへ分けて残す |
上限を増やす理由が「全部見たい」だけなら、設定より取得方法を見直します。たとえばテストの失敗行だけを抽出し、完全なログはartifactへ保存します。Claudeへ送る量を減らしても、reviewerが後から完全な証跡へ到達できることが重要です。
外部送信のあるMCP、CI、共有sessionで利用する場合は、出力がどの境界を越えるかを確認します。ログに環境変数が含まれるcommandは、先にマスキングを入れます。出力が見えない原因を設定不足と決めつけず、shell、process、保存ファイル、権限、接続先も分けて調べます。
安全に設定する8手順
- Claude Codeのversion、install方法、settings scopeを記録します。
- 出力が切れる再現commandまたはbackground taskを一件だけ選びます。
- 必要な情報を「要約」「失敗行」「完全ログ」に分類します。
- token、個人情報、顧客データを含む出力はダミー化してから試します。
- localまたはprojectの設定へ、必要な方のキーだけ小さな値で追加します。
- 同じtaskを再実行し、inlineの内容、保存ファイル、処理時間を比較します。
- 費用、context残量、再現性、reviewerの確認時間を記録します。
- owner、適用scope、rollback、次回見直し日を台帳に残し、承認後に展開します。
初期値の決め方は、必要な失敗情報が収まる最小値です。長いログ全体が必要な運用でも、常時128Kを送るより、対象taskだけproject設定へ限定し、通常の作業では要約を使う方が説明しやすくなります。設定を変更した後に差分をレビューし、意図しない他の設定を同じcommitへ混ぜません。
設定例とrollback
例として、projectの.claude/settings.jsonへ次のような値を置く場合があります。数値は環境依存の例であり、公式の既定値や推奨値と断定しません。
{
"bashOutputMaxChars": 24000,
"taskOutputMaxChars": 16000
}
導入時は一つのキー、一つのtask、一定期間の観測に限定します。出力が増えたことではなく、原因特定が速くなったか、秘密情報が露出していないか、モデルへの入力が過剰になっていないかで評価します。悪化した場合は設定を削除または変更前commitへ戻し、保存artifactから原因を調べます。
チェックリスト:入力を増やす価値はあるか
対象がBashかbackground taskか/再現commandが一件に固定されているか/必要な行数を説明できるか/完全ログの保存先があるか/secretをマスクしたか/設定scopeとownerが明確か/実行前後のcontextと費用を記録したか/reviewerが差分とログを確認できるか/rollbackと期限があるか、を確認します。
出力の安全な扱いは秘密情報を見せずに使う方法、利用量の観測はstatus lineの見方、変更証跡はClaude Code監査ログも参照してください。上限設定だけで監査やデータ保護は完成しません。
設定を全社へ配布する場合は、開発者の便利さだけでなく、ログを扱う部署の責任も決めます。出力の中に顧客情報やアクセス情報が混ざるなら、送信前のマスク、保存期限、閲覧権限、削除手順を先に置きます。設定の効果を測る期間と、元へ戻す担当者も同じ変更票へ記録します。
よくある質問
128Kにすればログ切れはなくなりますか?
最大値を指定しても、出力の生成元、保存、他の制限、context全体の容量は別です。必要な情報の抽出と完全ログの保存を組み合わせます。
2つの設定は同じ値でよいですか?
対象が違うため、Bashとbackground taskの実測に合わせます。片方だけ切れるなら、その設定だけを変更します。
上限を増やすと必ず高額になりますか?
設定単体の料金と断定せず、実際にClaudeへ渡る入力、モデル、契約、キャッシュ、sessionの利用量を公式条件で確認します。
公式情報と無料診断
正式なキー名、上限、settings scope、料金・利用条件は公開直前に公式CHANGELOG、Settings、Pricingをreadbackしてください。Miraigentの無料診断では、出力、秘密、権限、費用、保存、rollbackを業務単位で整理します。
