原文(日本語に翻訳)
Readツールがコンパクトな行番号形式を使用するようになり、変更のない再読み取りを重複排除することでトークン使用量を削減
原文(英語)
Read tool now uses compact line-number format and deduplicates unchanged re-reads, reducing token usage
概要
Claude Code v2.1.86より、Readツール(ファイル読み取り)に2つのトークン最適化が追加されました。行番号の表示形式がよりコンパクトになり、同一ファイルを変更なしに再度読み取る場合は重複した内容を送信しなくなります。長い作業セッションで同じファイルを繰り返し参照するワークフローで、大幅なトークン節約が期待できます。
基本的な使い方
特別な設定は不要です。Readツールを使用するだけで、自動的に最適化が適用されます。
# ファイルを読み取る(通常通り)
Read: src/main.py
# v2.1.86以降の改善点:
# 1. 行番号形式がコンパクトに
# 2. 同じファイルを再読み取りする際、内容が変わっていなければ重複送信しない実践例
コンパクト行番号形式
# v2.1.85以前の行番号形式(詳細):
# 1 | def hello():
# 2 | print("Hello")
# 3 |
# 4 | hello()
# v2.1.86以降のコンパクト形式:
# 1 def hello():
# 2 print("Hello")
# 3
# 4 hello()行番号の表示に使用する文字数が削減されるため、大規模ファイルでのトークン消費を抑制します。
重複読み取りの排除
長い会話の中で同一ファイルを複数回参照するシナリオ:
# 会話の流れ
1. "src/config.py を読んでください" → ファイル内容を送信(通常通り)
2. 別の話題について会話...
3. "src/config.py をもう一度確認して" → ファイルが変更されていなければ重複排除
# v2.1.85以前: ファイル内容が毎回送信される
# v2.1.86以降: 変更がなければ再送信をスキップしてトークン節約長時間セッションでの効果
python
# 典型的な開発セッションでの効果
# - main.py を5回参照(変更なし)→ 4回分の重複を排除
# - config.json を3回参照(変更なし)→ 2回分の重複を排除
# - utils.py を途中で編集後に2回参照 → 編集後のみ新たに送信
# 100行ファイルを各5回参照する場合(概算):
# v2.1.85以前: 5 × 100行 × 平均5トークン/行 = 2,500トークン
# v2.1.86以降: 1 × 100行 × 5トークン/行 = 500トークン(80%削減)注意点
- ファイルが変更された場合は、重複排除の対象外となり最新内容が送信されます
- この最適化はClaude側で自動判断するため、ユーザーの操作に影響はありません
- コンパクト行番号形式でも行番号は正確に表示されます
- Edit/Writeツールと組み合わせて使用した場合、変更後の再読み取りは通常通り送信されます