Claude Code貼り付けで大きいテキストが省略される仕組みと対処法
800字か2行を超える貼り付けが自動で折りたたまれる仕組みと、キャッシュが消えた後に再送すると何が起きるかをまとめます。
Claude Codeの入力欄に800字を超えるテキスト、または2行を超える内容を貼り付けると、[Pasted text #1 +120 lines]のようなプレースホルダーに折りたたまれます。表示が短くなるだけで、送信時には元の内容がそのままClaudeに渡ります。折りたたまれた内容は~/.claude/paste-cache/に一定期間保存され、コマンド履歴からプロンプトを呼び戻したときの再送にも使われます。一方、画像の貼り付けは文字数に関係なく最初から[Image #1]のようなチップ表示になり、しきい値の判定自体がありません。
800字か2行を超えると自動で折りたたまれる
貼り付けが800字を超えるか、2行を超える場合、Claude Codeは入力欄の表示を[Pasted text #1 +120 lines]のような短いプレースホルダーに置き換えます。折りたたまれるのは画面上の表示だけです。Enterで送信した時点で、Claudeに渡るのはプレースホルダーではなく貼り付けた全文です。長いログやコードを貼っても入力欄が埋め尽くされないための表示上の工夫であり、内容が要約されたり切り詰められたりするわけではありません。
例えばCIのエラーログを300行貼り付けた場合、入力欄には[Pasted text #1 +300 lines]の1行だけが残ります。そのままEnterを押せば、Claudeが受け取るのは省略前の300行そのものです。改行だけを挿入して送信を止める操作(複数行入力の方法で扱っています)とは別の仕組みで、貼り付けの改行はキー操作を挟まなくてもそのまま保持されます。
折りたたんだ内容はどこに保存されるか
プレースホルダーが指す実体は、貼り付けた時点の内容のまま~/.claude/paste-cache/に保存されます。この保存があるおかげで、Ctrl+Pや↑キーで過去のプロンプトをコマンド履歴から呼び戻して再送したときも、プレースホルダーではなく元の貼り付け内容がもう一度Claudeに送られます。これは同じセッション内に限らず、後日新しいセッションを開いて履歴を呼び戻した場合でも同様です。ショートカットの全体像はClaude Codeショートカット一覧で確認できます。
キャッシュファイルは他のセッションデータと同じ保持期間ルールに従い、設定ガイドのcleanupPeriodDays(既定30日)を過ぎると起動時の一括削除で消えます。長期間開いていなかったプロジェクトで古いプロンプトを呼び戻すと、貼り付けた内容だけキャッシュ切れになっている可能性があります。同じ保持ルールはセッションのチェックポイントにも適用されており、貼り付けキャッシュだけが特別扱いされているわけではありません。cleanupPeriodDaysを長めに設定しておけば、貼り付けキャッシュとチェックポイントの両方が長く残りますが、その分ディスクに残るファイルも増える点は頭に入れておくとよいでしょう。
キャッシュが消えた後に再送するとどうなるか
cleanupPeriodDaysの掃除でキャッシュファイルが消えた状態で、プレースホルダー付きのプロンプトを履歴から呼び戻して送信するとどうなるかは、状況によって挙動が分かれます。このとき[Pasted text #N]という文字列がそのままClaudeに送られることはありません。
| 状況 | 挙動 |
|---|---|
| 通常のプロンプトで、プレースホルダー以外に文字が残っている | 挙動プレースホルダーだけ取り除き、残りの文字列を送信する |
シェルモード(!)や/コマンドで、除去すると意味が変わる | 挙動送信を中止し、プレースホルダーを含んだ元の文字列を入力欄に残す |
| プレースホルダー除去後に入力欄が空になる | 挙動同様に送信を中止し、元の文字列を入力欄に残す |
後者2つのケースでは、通知でどのプレースホルダーが失われたかが表示されます。入力欄のプレースホルダーを手で削除するか、内容を編集してから改めて送信してください。
画像を貼り付けたときの挙動
クリップボードの画像はCtrl+V(iTerm2ではCmd+V、WindowsとWSLではAlt+V)で貼り付けられ、カーソル位置に[Image #N]というチップが挿入されます。テキストと違って画像は行数や文字数で折りたたまれるのではなく、最初からチップ表示です。プロンプト内でチップの位置を動かせば、画像への言及順序をそのまま制御できます。WSLではCtrl+VとAlt+Vの両方が既定で割り当てられているため、ターミナル側がCtrl+Vを横取りしてしまう場合はAlt+Vを使います。この割り当てはkeybindings.jsonではchat:imagePasteというアクション名です。
大きな貼り付けを一時退避する
長いログをいったん貼り付けた直後に、別の質問を先に済ませたくなることがあります。このとき入力欄の中身をそのまま消してしまうと、プレースホルダーが指していた貼り付け内容ごと失われるように見えて手が止まりますが、実際にはCtrl+Sでスタッシュしておけば安全です。入力中のテキストをスタッシュして入力欄を空にし、空の状態でもう一度Ctrl+Sを押すと、スタッシュしていたテキストとカーソル位置に加え、貼り付けた内容もまとめて復元されます。別の短いプロンプトを先に送ってから、あとで元の作業に戻る、という使い方ができます。
VS Code統合ターミナルでの既知の制限
VS Code統合ターミナルは、非常に大きな貼り付けの途中で文字を取りこぼすことがあります。数千行のログや長大な設定ファイルをまるごと貼り付けるような場面では、この統合ターミナルを避けるか、貼り付けに頼らない方法へ切り替えるのが安全です。他のターミナルにすぐ切り替えられない事情がある場合ほど、次に紹介するファイル経由の方法が有効です。
具体的には、内容をファイルに書き出してからClaudeにそのファイルを読ませます。会話のトランスクリプトが貼り付けた全文で埋まらずに読みやすく保てるうえ、Claudeは後の会話でもパスを指定してそのファイルを参照できます。1回きりの参照であってもファイル経由にしておくメリットは大きく、巨大な入力を扱うときの基本方針として覚えておくとよいでしょう。
クリップボードの中身をそのままファイルに書き出してから読ませる方法は、VS Code統合ターミナルに限らずどのターミナルでも使えます。macOSならpbpasteでクリップボードの内容をファイルへ落とせます。
pbpaste > error.logerror.logを読んで原因を調べて貼り付け1回では収まらないほど巨大なログや、複数ファイルにまたがる出力をまとめて渡したいときも、このやり方なら入力欄のプレースホルダーに頼らずに済みます。WindowsのPowerShellならGet-Clipboard、LinuxのX11環境ならxclip -oのように、クリップボードをファイルへ書き出すコマンドはOSごとに用意されています。
よくある質問
プレースホルダー表示のまま送信しても内容は伝わりますか
伝わります。入力欄の表示が[Pasted text #1 +120 lines]のようになっていても、それは画面上の省略表示にすぎません。送信時にはキャッシュされた元の内容がそのままClaudeに渡るので、送信前にプレースホルダーを展開して中身を確認する必要はありません。
貼り付けキャッシュの保存期間を変更できますか
~/.claude/settings.jsonのcleanupPeriodDaysで変更できます。既定は30日で、この日数を過ぎたキャッシュファイルは起動時に他のセッションデータとまとめて削除されます。長く残したい場合は日数を増やして設定してください。
{
"cleanupPeriodDays": 90
}数値を大きくするほど古い貼り付けキャッシュが長く残り、コマンド履歴から古いプロンプトを呼び戻しても再送に失敗しにくくなります。設定を保存すれば次回起動時の一括削除から新しい日数が適用されます。
WSLで画像貼り付けのCtrl+Vが反応しません
WSL環境ではターミナル側がCtrl+Vを横取りしてClaude Codeまで届かないことがあります。その場合はAlt+Vを使ってください。WSLでは両方のショートカットが既定で割り当てられているため、片方が使えなくてももう片方を試せば済みます。
古いプロンプトを呼び戻したら貼り付けが消えていました
コマンド履歴に残っているプロンプトのプレースホルダーが指すキャッシュファイルは、cleanupPeriodDaysの日数を過ぎると削除されます。キャッシュが消えた状態で再送すると、通常のプロンプトなら残りの文字列だけを送信し、/コマンドやシェルモードの場合は送信自体が中止されて元の文字列が入力欄に戻ります。日常的に長いログを貼り付けて調査するチームほど、この日数設定を意識しておく価値があります。↑キーでの呼び出しに限らず、Ctrl+Rの逆方向検索でプロンプトを呼び戻した場合も同じキャッシュを参照するため、挙動は変わりません。
貼り付けを間違えたときに取り消せますか
Ctrl+_(またはCtrl+Shift+-)で直前の入力操作を取り消せます。貼り付け自体も入力操作の一つとして扱われるため、貼り付け直後であれば、この操作で貼り付け前のテキストとカーソル位置に戻せます。誤ったファイルの内容を貼り付けてしまったときや、意図せず二重に貼り付けてしまったときに、入力欄をすべて選び直さずに済む手段として覚えておくと便利です。
画像を複数貼り付けたときの番号はどう振られますか
同じプロンプト内で画像を続けて貼り付けると、[Image #1]、[Image #2]のように番号が増えていきます。この番号でプロンプト文中から特定の画像を指し示せるので、「1枚目の画像のエラー部分を見て」のように位置を指定した指示ができます。チップはカーソル位置にそのまま挿入されるため、先に説明文を書いてから画像を貼るか、画像を貼ってから補足を続けるかは自由に選べます。
まとめ
Claude Codeは800字か2行を超える貼り付けを自動でプレースホルダーに折りたたみますが、送信される内容は常に元の全文です。折りたたんだ実体は~/.claude/paste-cache/に保存され、cleanupPeriodDays(既定30日)を過ぎると削除されます。キャッシュが消えた後に古いプロンプトを再送すると、通常のプロンプトは残りの文字列だけが送られ、/コマンドやシェルモードでは送信が中止されて手動での編集が必要になります。VS Code統合ターミナルでの巨大な貼り付けは文字が欠落することがあるため、ファイルに書き出してClaudeに読ませる方法に切り替えるのが安全です。