結論:必要な出力だけ増やし、128Kを初期値にしない

Claude Code 2.1.261で追加されたbashOutputMaxCharstaskOutputMaxCharsは、Bashコマンドやbackground taskの出力をinlineでClaudeへ渡す上限を引き上げる設定です。最大128K文字まで指定できますが、まず失敗原因を確認し、必要な設定だけを最小値で試します。

読者の困りごとは、ログが途中で切れて原因が見えない一方、上限を無制限に近づけると巨大な出力、秘密情報、コンテキスト負荷を招くことです。読了後は、どちらの設定をどのscopeへ置き、ログ保存と人間確認をどう組み合わせるか判断できます。

これはログを永続保存する機能ではありません。inlineへ渡す量を変える設定と、コマンド側で保存するファイルやCIのartifactを分けます。最初の行動は、切れているコマンド、必要な行、現在のscope、秘密情報の有無を一つの再現ケースへ固定することです。

2.1.261の新設定と対象範囲

Claude Code公式CHANGELOGの2.1.261(2026年9月4日)には、bashOutputMaxCharstaskOutputMaxCharsが追加されたと記載されています。コマンドや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手順

  1. Claude Codeのversion、install方法、settings scopeを記録します。
  2. 出力が切れる再現commandまたはbackground taskを一件だけ選びます。
  3. 必要な情報を「要約」「失敗行」「完全ログ」に分類します。
  4. token、個人情報、顧客データを含む出力はダミー化してから試します。
  5. localまたはprojectの設定へ、必要な方のキーだけ小さな値で追加します。
  6. 同じtaskを再実行し、inlineの内容、保存ファイル、処理時間を比較します。
  7. 費用、context残量、再現性、reviewerの確認時間を記録します。
  8. 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、料金・利用条件は公開直前に公式CHANGELOGSettingsPricingをreadbackしてください。Miraigentの無料診断では、出力、秘密、権限、費用、保存、rollbackを業務単位で整理します。