原文(日本語に翻訳)
CLAUDE.mdファイルで @include ディレクティブを使用した際に、バイナリファイル(画像、PDFなど)が誤ってメモリに読み込まれていた問題を修正しました。
原文(英語)
Fixed binary files (images, PDFs, etc.) being accidentally included in memory when using @include directives in CLAUDE.md files
概要
CLAUDE.mdファイルで @include ディレクティブを使用してディレクトリやファイルパターンを指定した際、意図せずバイナリファイル(画像、PDF、動画など)がメモリに読み込まれてしまい、メモリ使用量の増加やパフォーマンス低下を引き起こす問題が修正されました。これにより、テキストファイルのみが適切に処理されるようになります。
基本的な使い方
この修正は自動的に適用されます。CLAUDE.mdファイルで @include を使用する際、バイナリファイルは自動的に除外されます。
CLAUDE.mdの例
markdown
# CLAUDE.md
プロジェクトの指示をここに記述
@include src/**/*
# v2.1.2以降:
# - src/**/*.js, *.ts などのテキストファイルのみが読み込まれる
# - src/**/*.png, *.pdf などのバイナリファイルは除外される実践例
ドキュメントディレクトリの読み込み
markdown
# CLAUDE.md
@include docs/**/*
# 修正前:
# - docs/**/*.md (テキスト) ✓
# - docs/**/*.png (画像) ✗ メモリに読み込まれてしまう
# - docs/**/*.pdf (PDF) ✗ メモリに読み込まれてしまう
# 修正後:
# - docs/**/*.md (テキスト) ✓
# - docs/**/*.png (画像) 自動的に除外
# - docs/**/*.pdf (PDF) 自動的に除外プロジェクト全体の読み込み
markdown
# CLAUDE.md
@include **/*
# 修正前:
# 画像、PDF、バイナリファイル全てがメモリに読み込まれ、
# 大量のメモリを消費してパフォーマンスが低下
# 修正後:
# ソースコードやドキュメントなどのテキストファイルのみが読み込まれ、
# メモリ使用量が適切に管理されるアセットを含むディレクトリの処理
markdown
# CLAUDE.md
# 公開ディレクトリを含める
@include public/**/*
# 修正前の問題:
# public/
# images/
# logo.png (5MB) → メモリに読み込まれる
# banner.jpg (3MB) → メモリに読み込まれる
# videos/
# intro.mp4 (50MB) → メモリに読み込まれる
# → 合計58MB以上の不要なメモリ消費
# 修正後:
# public/
# index.html → 読み込まれる
# styles.css → 読み込まれる
# images/, videos/ → バイナリファイルは除外される
# → 必要なファイルのみが読み込まれる混在したプロジェクトでの使用
markdown
# CLAUDE.md
# デザインファイルとコードが混在するプロジェクト
@include design-system/**/*
# design-system/
# components/
# Button.tsx → 読み込まれる
# Button.stories.tsx → 読み込まれる
# button-mockup.sketch → 除外される
# button-icon.svg → 除外される (SVGもバイナリとして扱われる)
# docs/
# README.md → 読み込まれる
# screenshot.png → 除外される注意点
- 自動除外: バイナリファイルは自動的に除外されるため、特別な設定は不要です
- テキストファイルのみ:
@includeは基本的にソースコード、ドキュメント、設定ファイルなどのテキストファイル用です - メモリ効率: この修正により、大規模プロジェクトでもメモリ使用量が大幅に削減されます
- SVGファイル: SVGはテキスト形式ですが、一部のケースではバイナリとして扱われる場合があります
- 明示的な指定: 特定のファイルを読み込みたい場合は、ファイル名を明示的に指定してください