Skip to content

リンターが多数のファイルを変更した際のfile-modifiedリマインダーのサイズ上限を設定

原文(日本語に翻訳)

リンターが一度に多数のファイルを変更した場合のファイル変更リマインダーの合計サイズに上限を設定しました。

原文(英語)

Bounded total size of file-modified reminders when a linter touches many files at once

概要

ESLintやPrettierなどのリンターが大量のファイルを一度にフォーマット・修正した場合、「ファイルが変更されました」というリマインダーメッセージがコンテキストウィンドウを大量に消費してしまう問題が修正されました。合計サイズに上限を設けることで、大規模なlint操作後もClaude Codeのコンテキストが無駄に消費されなくなります。

基本的な使い方

bash
# 多数のファイルをフォーマットするリンターを実行した場合
npx prettier --write "src/**/*.ts"
# → 何百ものファイルが変更されても、リマインダーは適切なサイズに抑えられる

# v2.1.126以前: リマインダーがコンテキストを大量消費
# v2.1.126以降: リマインダーのサイズが上限内に収まる

実践例

大規模コードベースでのlint操作

bash
# 数百のファイルを一括フォーマット
npx eslint --fix "src/**/*.{ts,tsx}"
npx prettier --write "."

# v2.1.126以降: Claude Codeのコンテキストが不必要に消費されない
claude "フォーマット後のコードに残った問題を確認して"
# → コンテキストの大部分が実際の作業に使える

husky/lint-stagedとの組み合わせ

json
// .lintstagedrc.json
{
  "*.{ts,tsx}": ["eslint --fix", "prettier --write"],
  "*.{js,jsx}": ["eslint --fix", "prettier --write"]
}
bash
# git commit時に多数のファイルがlintされても
# Claude Codeのコンテキストが保護される
git commit -m "feat: 新機能の追加"
# → lint-stagedが多数のファイルを処理してもリマインダーサイズが上限内

注意点

  • この修正は大規模なlint操作を行うプロジェクトで効果が大きいです
  • 小規模な変更(数ファイル程度)への影響はありません
  • リマインダーが上限に達した場合、一部の変更ファイルが表示されない場合があります

関連情報