MENU

Claude Codeのファイル指定はどうやる?初心者向けに詳しく解説!

Claude Codeを使い始めたばかりだと、どのファイルを読み込ませればいいのか、どうやって特定のファイルにアクセスすればいいのか迷うこともありますよね。実は、Claude Codeのファイル指定はコツさえ掴めれば驚くほど直感的に操作できるんです。ファイル指定のやり方をマスターすることで、AIが必要なコンテキストを正確に理解し、的外れな回答を減らすことができます。この記事では、初心者の方でもすぐに実践できる基本的な指定方法から、開発効率を爆上げするテクニックまで分かりやすく解説していきますね。これを読めば、もっとスムーズにコーディングが進められるようになるかなと思います。

  • @メンションを使った直感的なファイル指定のやり方
  • 特定の行範囲やディレクトリを対象にする絞り込みテクニック
  • ターミナルの出力や外部リソースを連携させる方法
  • トークン節約やセキュリティを考慮した高度な設定
目次

Claude Codeのファイル指定術!効率的な使い方の基本

@メンションによる直感的なファイル選択

Claude Codeで最も頻繁に使い、かつ最も強力なのが、「@」記号を使ったメンション機能です。これはSlackやDiscordで誰かをメンションするような感覚で、チャット欄に@と入力するだけでプロジェクト内のファイル群がリストアップされる仕組みです。この機能の素晴らしいところは、単なるファイル名の指定にとどまらない「ファジーマッチング(曖昧検索)」の精度の高さにあります。例えば、プロジェクトの深い階層にsrc/hooks/useAuth.tsというファイルがあったとしても、パスを全部打つ必要はありません。@useAと数文字入力するだけで、Claude Codeが賢く候補を絞り込んでくれます。

なぜこのメンション機能が重要かというと、AIに「今、何を根拠に話してほしいか」を明確に伝えられるからです。何も指定せずに「ログイン機能を直して」と頼むよりも、@auth.service.tsを添えて依頼する方が、AIは関連コードを読み解く手間が省け、より正確な修正案を出してくれます。また、複数のファイルを一度にメンションすることも可能なので、「@index.html@styles.cssのクラスを適用して」といった具体的な指示も一瞬で完了します。大規模なプロジェクトになればなるほど、この「AIの視界を誘導する」スキルが作業スピードに直結してくるんですよね。

さらに、最近のアップデートではファイルだけでなく、関数の定義や特定のシンボルに対してもメンションが効くようになっています。ファイル全体を読み込ませるほどではないけれど、あの関数のロジックだけは参照してほしい、という時に非常に重宝します。これ、一度体験すると、いちいちコードをコピペしていた昔には戻れないくらい快適ですよ。

行範囲を指定してコンテキストを絞り込む方法

エンジニアとして開発を進めていると、1,000行を超えるような巨大なファイルに出会うことも珍しくありません。そんな巨大なファイル全体をClaude Codeに読み込ませてしまうと、AIが関係ないコードまで読み取ってしまい、肝心のロジックが埋もれてしまうことがあります。また、AIモデルには一度に扱える情報量(コンテキストウィンドウ)に限りがあるため、不要な情報は極力削ぎ落とすのが「AI使い」の鉄則です。そこで活用したいのが、特定の行数だけを指定するテクニックです。

使い方は簡単で、@app.py:50-120のように、ファイル名の後ろにコロンと行の範囲を付け加えるだけ。これにより、AIはその指定された70行分だけを集中して解析します。これには大きなメリットが3つあります。 まず1つ目は「精度の向上」です。情報の密度が高まるため、AIが「どこのコードについて話しているのか」を迷わなくなります。 2つ目は「トークン消費の節約」です。Claude Codeの料金体系や制限は、処理したデータの量(トークン)に依存するため、必要な部分だけを渡すことは直接的なコストカット(あるいはリミットまでの余裕)に繋がります。 3つ目は「修正範囲の明確化」です。AIが行指定された範囲をベースに回答を作るため、差分(diff)が非常に見やすくなり、マージミスのリスクを大幅に減らせます。

「この大きなファイルの真ん中あたりにある、あの計算ロジックだけ直してほしい」といった、ピンポイントな修正依頼を出す際にこれほど心強い機能はありません。デバッグ中など、問題の箇所が特定できている場合は、積極的に行指定を使っていきましょう。AIを「迷わせない」ことが、結果として最速の解決ルートになるんです。

行指定のメリット:

  • 不要なコードによる混乱を防ぎ、AIの回答精度を最大化できる
  • トークンの消費を最小限に抑え、処理速度とコスト効率を高められる
  • 修正依頼を出す際に、AIが書き換えるべき対象箇所が明確になる

ディレクトリ単位で情報を読み込ませる手順

特定のバグが、実は複数のコンポーネントにまたがって存在している場合や、新しいディレクトリ内の構成をAIに把握させたい場合、ファイルを一つひとつ選んでいくのは少し骨が折れますよね。そんな時は、ファイル単位ではなくディレクトリ(フォルダ)単位での指定が威力を発揮します。例えば、@src/components/という風にフォルダを指定すると、Claudeはその配下にあるファイルのリストを確認し、必要に応じてそれぞれの内容をスキャンしてくれます。

この使い方の面白いところは、AIが「構造的な理解」をしてくれる点にあります。「このディレクトリ内にあるReactコンポーネントの中で、共通して使われているプロパティを抽出して」とか、「このフォルダの中に新しい機能を追加したいから、既存の命名規則を真似して雛形を作って」といった、全体像を俯瞰した依頼が可能になるんです。特に初めて触るレガシーなプロジェクトや、複雑な依存関係を持つディレクトリを相手にする時、この機能はまさに「強力な相棒」となってくれます。

ただし、ディレクトリ指定をする際は少し注意も必要です。あまりに巨大なディレクトリ(例えばnode_modulesなど)を読み込ませようとすると、情報量が多すぎてAIがパンクしてしまいます。基本的には、自分が今から手を加えようとしている機能単位のフォルダを指定するのが、最も効率的でスマートなやり方かなと思います。ディレクトリ指定を使いこなせるようになると、ファイルという「点」ではなく、プロジェクトという「面」でAIと対話できるようになりますよ。

(出典:Anthropic公式ドキュメント 「Claude Code Overview」

ターミナルの実行結果をAIに渡す便利なテクニック

プログラミングにおいて、エラーログとの格闘は避けて通れない道ですよね。従来なら、ターミナルに表示された真っ赤なエラーメッセージをマウスでドラッグして、コピーして、AIのチャット欄にペーストして…という作業が必要でした。しかし、Claude Codeならもっとスマートに解決できます。それが、@terminalという特殊なメンションです。これを使うことで、直前に実行したコマンドの結果(標準出力やエラーログ)をそのままAIに読み込ませることができるんです。

例えば、npm run devを実行してエラーが出た直後に、「@terminal このエラーの原因を教えて」と送るだけでOKです。Claude Codeは、エラーメッセージの内容だけでなく、どのファイルで、どの行が原因で落ちているのかを即座に解析し始めます。さらに、単に解説するだけでなく、「@terminalの結果を元に、該当ファイルを修正して」と指示すれば、エラー解消のためのコード書き換えまで一気通貫で行ってくれます。このスピード感は、一度味わうと病みつきになります。

また、エラーログだけでなく、ビルド結果のサマリーやテストコードの実行結果(JestやPytestなど)を渡すのにも最適です。「テストが3件通らなかったから、パスするように修正して」といった指示も、@terminalを使えば極めて正確に伝わります。開発中の「あ、動かない」という絶望の瞬間を、ワクワクする解決の瞬間に変えてくれる。そんな魔法のようなテクニックなんですよね。

さらに高度な活用法:外部コマンドの結果を連携

実は、@terminal以外にも、lsgrepといったUnixコマンドの結果をコンテキストとして活用することも可能です。Claude CodeはCLIツールとしての性質を活かし、システムの現在の状態を非常に高い解像度で把握できます。ターミナルとAIの境界線がなくなることで、私たちの開発体験は一段上のステージへと引き上げられるはずです。

タブ補完やドラッグ操作で入力を簡略化する

Claude Codeはコマンドライン上で動作するツールですが、その操作感は決して「古臭い黒い画面」ではありません。むしろ、最新のIDE(統合開発環境)に近い、非常にリッチなユーザー体験を提供してくれます。その筆頭がタブ(Tab)キーによる強力な補完機能です。@の後にファイル名の最初の数文字を打ち込んでTabキーを押せば、一瞬でパスが完成します。複数の候補がある場合はリストが表示され、矢印キーで選ぶだけ。この補完が非常に高速なので、タイピングによるストレスがほとんどありません。

さらに驚くべきは、GUIとの親和性です。VS Codeのターミナルや、iTerm2、Mac標準のターミナルなどを使用している場合、エクスプローラーから目的のファイルをターミナル画面に直接ドラッグ&ドロップしてみてください。すると、そのファイルのフルパスが自動的に入力されます。長いディレクトリ構造の中に埋もれたファイルを指定したいとき、「えーっと、パスは何だったかな…」と迷う必要はもうありません。目で見て、掴んで、放す。これだけでAIにファイルを渡せるんです。

こうした細かい操作の積み重ねが、長時間の開発作業における「疲れ」を劇的に軽減してくれます。ショートカットキーやマウス操作を組み合わせることで、脳のリソースを「タイピング」や「ファイル探し」ではなく、本来の目的である「ロジックの構築」に集中させることができるようになります。初心者の方こそ、こうした「楽をするための機能」を積極的に使って、Claude Codeとの対話をより軽やかなものにしていってほしいなと思います。


Claude Codeのファイル指定で開発を加速させる

基本をマスターしたら、次はより実践的な運用について見ていきましょう。プロジェクトが大きくなってくると、単なるファイル指定だけでは不十分な場面が出てきます。ここでは、起動時の設定やプロジェクト管理のコツなど、一歩進んだ活用法を解説します。

起動時のフラグで作業ディレクトリを追加する方法

Claude Codeは通常、起動した現在のディレクトリ(カレントディレクトリ)をプロジェクトのルートとして認識します。しかし、実際の開発現場では、今作っているアプリのコードだけでなく、隣のフォルダにある社内共通ライブラリを参照したかったり、別のリポジトリにあるドキュメントを確認したかったりすることもありますよね。そんな時に便利なのが、起動オプションで指定できる--add-dirフラグです。

例えば、claude --add-dir ../shared-libraryのように起動すると、Claude Codeは現在のプロジェクトと、指定した共有ライブラリの両方を同時に見ることができるようになります。これにより、ライブラリ側のソースコードを確認しながら、本体側のアプリを実装するという「横断的な作業」が可能になります。いわゆるモノレポ(複数のプロジェクトを一つのリポジトリや近い階層で管理する手法)構成で開発しているチームにとっては、なくてはならない機能です。

この設定を行っておくことで、AIは「あ、この関数は別フォルダのあのファイルで定義されているんだな」と自律的に判断できるようになります。ファイル指定の際に、わざわざ相対パスを意識してAIに教える手間が省けるので、コンテキストの広がりがそのまま開発効率の向上に直結します。プロジェクトの境界を越えて、AIの知能を最大限に活用していきましょう。

プロジェクト固有のルールをシステムプロンプトに反映

「変数はキャメルケースで書いてほしい」「コメントは必ず英語で」「テストコードにはこのライブラリを使って」……プロジェクトごとに細かなローカルルールって必ずありますよね。これを毎回Claude Codeに説明するのは非常に面倒ですし、AIが忘れてしまうこともあります。そこで役立つのが、--append-system-prompt-fileフラグを活用した、プロジェクト規約の自動読み込みです。

この機能を使えば、プロジェクト専用の指示書(Markdown形式などがおすすめ)を事前に用意しておき、Claude Codeの「基本性格」としてインストールすることができます。この指示書がある状態でファイル指定を行うと、AIはそのファイルの内容を読み取るだけでなく、「このプロジェクトのルールに照らし合わせると、このコードはこう直すべきだ」という、一段上の視点からアドバイスをくれるようになります。 例えば、@api-handler.tsを渡して「新しいエンドポイントを追加して」と頼んだとき、指示書に「エラーハンドリングは必ず共通のAppErrorクラスを使うこと」と書いてあれば、AIは何も言わなくてもその通りに実装してくれます。まさに、阿吽の呼吸で動くベテランパートナーが隣にいるような感覚になれるんです。

トークン消費量を抑えるセッション管理と圧縮

Claude Codeとの会話が長くなってくると、AIがこれまでに読み込んだファイルや過去の発言が積み重なり、動作が重くなることがあります。これは、AIが一度に記憶できる「短期記憶(コンテキスト)」がいっぱいになってきているサインです。そのまま使い続けると、レスポンスが返ってくるまでに時間がかかったり、最悪の場合、古い情報を忘れてしまったりすることもあります。そこで重要なのが、定期的な「情報のメンテナンス」です。

特におすすめなのが、/compactコマンドです。これを実行すると、Claude Codeはこれまでの長いやり取りをギュッと要約し、重要なエッセンスだけを残してトークン消費量を削減してくれます。また、全く別の作業に移る時は/clearコマンドで一度コンテキストをリセットするのも効果的です。常に「今、必要な情報だけ」をAIの頭の中に入れている状態を作ることで、ファイル指定時のレスポンスもキビキビとしたものになります。

コンテキスト管理のコツ:

現在の使用状況を知りたいときは /context コマンドを打ってみてください。どのファイルがどれくらいトークンを占有しているかが一目でわかりますよ。もし不要なファイルが居座っていたら、セッションを整理するタイミングかもしれませんね。

セキュリティを守るアクセス権限と除外設定の基本

AIは非常に便利ですが、プロジェクト内のあらゆるファイルを無制限に見せてしまうのは、セキュリティの観点から少し不安ですよね。例えば、APIキーやデータベースのパスワードが書かれた.envファイル、あるいは機密性の高い個人情報が含まれるログファイルなどです。Claude Codeには、こうした「聖域」を守るための仕組みがしっかりと備わっています。

最も一般的な方法は、.claudeignoreというファイルを作成することです。これは.gitignoreと同じような仕組みで、AIに読み込ませたくないファイルやディレクトリを指定できます。ここに追加されたファイルは、たとえユーザーがメンションしようとしてもAIはアクセスできません。また、設定ファイルのpermissions.denyセクションを使うことで、読み取りだけでなく「書き込み」を禁止する設定も可能です。 「このフォルダのファイルは参考にするだけにして、勝手に書き換えないで」といった制御ができるわけですね。安全な環境を自ら構築しておくことで、安心してAIに広範囲なファイル指定を任せることができるようになります。自由と規律の両立こそが、プロの開発環境と言えるでしょう。

プロジェクト全体の地図となる設定ファイルの活用

Claude Codeを本当の意味で「自律的なエージェント」に進化させる秘策があります。それが、プロジェクトのルートディレクトリにCLAUDE.mdというファイルを作成しておくことです。このファイルは、いわばAIのための「プロジェクトの取扱説明書」です。Claude Codeはセッション開始時にこのファイルを真っ先に読み込み、プロジェクト全体の構造や、どのファイルが何を担当しているのかを把握します。

例えば、「/src/servicesにはビジネスロジックがあり、/src/uiはデザインのみを担当する」といった記述をしておけば、AIはわざわざ指示されなくても、関連するファイルを自ら見つけ出し、的確なファイル指定を自分で行えるようになります。 私たちが「このバグ直しておいて」と一言つぶやくだけで、AIが「地図」を参照して、@service.ts@controller.tsを自分で読み込み、原因を特定して修正する……そんな未来のコーディング体験が、たった一つのMarkdownファイルで実現します。エージェントが「自分の意思で動いている」と感じる瞬間は、本当に感動的ですよ。

自動レビュー機能で大規模なコード修正を効率化

たくさんのファイルを一気に修正した後、すべての箇所が正しく直っているか、デグレード(先祖返り)が起きていないかを確認するのは大変な作業です。そんな時に力を発揮するのが、修正後のコンテキストを活かした自動レビュー機能です。Claude Codeに修正を行わせた後、/simplifyや特定のプロンプトを投げることで、変更を加えたファイル群に対して「客観的なセルフチェック」をさせることができます。

AIは「直前の作業でどのファイルをどう変えたか」を覚えているため、人間が見落としがちなタイポや、型定義の不整合、あるいはリファクタリングの余地などを鋭く指摘してくれます。複数のファイルを対象にしていても、AIはそれらを統合的に判断できるため、ファイル間の矛盾も見つけやすいのが特徴です。 自分で一つひとつのファイルを指定して見返すのも大事ですが、まずはAIに「ざっと目を通しておいて」と頼むことで、レビューの精度とスピードが格段に上がります。自分一人で抱え込まず、AIを優秀なレビュアーとして使い倒すのが、現代的なファイル指定術の到達点かもしれませんね。

機能・コマンド主な用途期待できる効果
@ファイル名特定のファイルをコンテキストに追加精度の高い回答、参照の固定
@terminal直前の実行ログをAIに送信爆速のデバッグ、エラー解消
/context現在のトークン利用状況を確認コスト管理、不要な情報の特定
CLAUDE.mdプロジェクトの概要やルールを記述AIの自律的な理解度の向上

初心者でも迷わないClaude Codeのファイル指定

ここまで、Claude Codeのファイル指定に関する様々なテクニックを紹介してきました。最初は「@メンション」さえ覚えておけば十分ですが、慣れてきたら行指定やディレクトリ指定、そして設定ファイルによる自動化に挑戦してみてください。適切なコンテキストを渡すことは、AIとの対話において最も重要なスキルの一つです。AIに何を、どの範囲で、どのようなルールで見せるか。このコントロールができるようになれば、あなたのプログラミングのスピードも質も、これまでにないほど格段にアップするはずです。 もし「もっと詳しく知りたい!」と思ったら、ぜひ実際のプロジェクトで@を打つところから始めてみてください。きっと、その便利さに驚くはずです。あなたの開発ライフが、Claude Codeという最高のツールによってもっと楽しく、クリエイティブなものになることを願っています。ぜひ、今日から日々の開発に取り入れてみてくださいね!

目次