Claude Codeのおすすめフォルダ構成6選【分け方や整理術も紹介】

Claude Codeってフォルダ構成はどう整理すればいいんだろう?
どんな分け方がベストなのかな…

Claude Codeを使い始め、プロジェクトのフォルダ構成をどう整理すればいいか悩んでいる人は多いですよね。

ただ、フォルダ構成は後から変更すると修正コストが大きくなりがち。最初にどう構成するかで、その後の開発効率や保守性が大きく変わるため、できれば最初にしっかり決めておきたい人もいるはず。

そこでこの記事では構成例も交え、Claude Codeでのおすすめのフォルダ構成を解説します。フォルダの指定方法やディレクトリ移動の手順も紹介するので、ぜひ参考にしてください。

Claude Codeの特徴をおさらいしておきたい人は、次の記事を参考にしてください。

この記事の要約
  • フォルダ構成を整理するとプロジェクト全体を把握しやすくなる
  • 規模・用途別に6つの構成パターンを使い分けるのがおすすめ
  • CLAUDE.mdにフォルダ構成や役割を記載すると運用しやすくなる

『ClaudeCodeに興味はあるけど、どうやって使えばいいんだろう…』

そんな方へ、

  • ClaudeCodeに作業や仕事を任せる方法
  • ClaudeCodeを使いこなすたった1つのコツ
  • 業務効率化や収入獲得に活かすClaudeCodeの実演

を、無料のオンラインセミナーで凝縮してお伝えします!

パソコンはもちろん、スマホから気軽に参加OK。この時間が、あなたを変える大きなきっかけになりますよ。

\ スマホ参加OK!顔出し不要 /

目次

Claude Codeでフォルダ構成が重要な理由

Claude Codeを使うなら、フォルダ構成はできるだけ整理しておくことが重要です。

なぜならば、Claude Codeはプロジェクト内のファイルやディレクトリを参照しながら作業を進めるためです。フォルダ構成が乱雑だと、目的のファイルを見つけにくくなり、開発効率や保守性の低下につながります。

たとえば、設定ファイルとソースコードが同じ階層に混在していると、人間だけでなくAIにとってもプロジェクト全体の構造を把握しにくくなります。結果として、作業対象の特定に時間がかかったり、意図しないファイルを編集したりするリスクが高まります。

また、チーム開発においては「誰が見ても迷わない構成」が生産性に直結します。フォルダ構成が整理されていれば、Claude Codeへの指示もシンプルになり、開発メンバー同士の認識合わせもしやすくなります。

そのため、Claude Codeを活用する際は、プロジェクトの規模や用途に合わせて適切なフォルダ構成を設計することが大切です。

Claude Codeのおすすめフォルダ構成6選

ここからはClaude Codeのおすすめフォルダ構成を、6つにまとめて解説します。

シンプルな小規模プロジェクト向け構成

小規模プロジェクトには、ファイル数を絞ったシンプルな構成がおすすめです。

Claude Codeは、階層が少ないほどプロジェクト全体を把握しやすくなります。まずは動くものを作るフェーズでは、複雑なフォルダ構成より見通しのよさを優先しましょう。

```
my-project/
├── CLAUDE.md          # Claude Codeへの指示ファイル
├── README.md
├── src/
│   ├── main.py
│   └── utils.py
├── tests/
│   └── test_main.py
└── .claudeignore
```

srcにソースコード、testsにテストコードを配置し、ルートディレクトリにCLAUDE.mdや設定ファイルを置くだけのシンプルな構成です。小規模なツールや学習用プロジェクトであれば、この構成で十分対応できます。

機能別に分けるモジュール型構成

中規模以上のプロジェクトには、機能単位でフォルダを分けるモジュール型構成が適しています。

Claude Codeは、認証機能やユーザー管理機能など役割ごとにディレクトリを分けることで、関連ファイルを見つけやすくなります。また、機能単位で開発や保守を進められるため、影響範囲を把握しやすいのもメリットです。

```
my-project/
├── CLAUDE.md
├── README.md
├── src/
│   ├── auth/
│   │   ├── login.py
│   │   └── token.py
│   ├── user/
│   │   ├── profile.py
│   │   └── settings.py
│   └── common/
│       └── helpers.py
├── tests/
│   ├── auth/
│   └── user/
└── .claudeignore
```

たとえば「authモジュールのログイン処理を修正して」のように、機能単位で指示や作業範囲を整理しやすくなります。

フロント/バック分離型構成

Webアプリケーションでは、フロントエンドとバックエンドをフォルダで明確に分離した構成が一般的です。

役割ごとにフォルダを分けることで、どの領域を修正するのかが明確になり、チーム開発でも管理しやすくなります。

```
my-project/
├── CLAUDE.md           # プロジェクト全体の指示
├── frontend/
│   ├── CLAUDE.md       # フロント専用の指示
│   ├── src/
│   │   ├── components/
│   │   └── pages/
│   └── public/
├── backend/
│   ├── CLAUDE.md       # バック専用の指示
│   ├── api/
│   └── models/
└── shared/
    └── types/
```

sharedフォルダに型定義や共通処理を配置することで、フロントエンドとバックエンドの両方から利用しやすくなります。

モノレポ型の複数プロジェクト管理構成

複数のアプリケーションやライブラリを1つのリポジトリで管理する場合は、モノレポ構成が適しています。

プロジェクトごとにディレクトリを分けることで、共通コードを再利用しながら管理を一元化できます。

```
monorepo/
├── CLAUDE.md
├── packages/
│   ├── web/
│   │   ├── CLAUDE.md
│   │   └── src/
│   ├── mobile/
│   │   ├── CLAUDE.md
│   │   └── src/
│   └── shared/
│       └── utils/
├── tools/
│   └── scripts/
└── .claudeignore
```

モノレポはpackages配下のディレクトリ名を統一することが重要です。web・mobile・sharedのように役割が明確な名前にすると、プロジェクト全体を把握しやすくなります。

データ分析・スクリプト特化型構成

Pythonを使ったデータ分析やスクリプト開発ではデータとコードを分離した構成がおすすめです。

データファイルとソースコードが混在していると、管理が煩雑になりやすいため用途ごとにフォルダを分けておくと運用しやすくなります。

```
analysis-project/
├── CLAUDE.md
├── data/
│   ├── raw/            # 元データ(変更しない)
│   ├── processed/      # 加工後データ
│   └── output/         # 出力結果
├── notebooks/
│   └── analysis.ipynb
├── src/
│   ├── preprocess.py
│   └── analyze.py
├── reports/
└── .claudeignore
```

とくにrawフォルダには元データを保存し、加工後のデータはprocessedフォルダへ出力する運用がおすすめです。

データ管理のルールをCLAUDE.mdやREADMEに記載しておくと、チーム内で共有しやすくなります。

Claude Codeでデータ分析する方法を詳しく知りたい人は、次の記事を参考にしてください。

AIプロンプト管理を含む構成

Claude Codeを使ったプロンプトエンジニアリング作業やAIサービス開発では、プロンプトを専用フォルダで管理する構成が効果的です。

コードとプロンプトを分離することで、どのプロンプトを利用しているのか把握しやすくなり、改善やバージョン管理も容易になります。

```
ai-project/
├── CLAUDE.md
├── prompts/
│   ├── system/
│   │   └── base_system.md
│   ├── templates/
  │   └── summary.md
│   └── versions/
│       └── v1/
├── src/
│   ├── ai/
│   │   └── client.py
│   └── utils/
├── tests/
└── .claudeignore
```

prompts/versions配下でバージョン管理を行うことで、過去のプロンプトに戻したい場合でもスムーズに対応できます。 

フォルダ構成を活かすClaude Codeのおすすめ設定

フォルダ構成の効果を最大限に引き出すには、関連する設定ファイルをあわせて整備することが欠かせません。ここからは下記の設定別に、具体的な方法を解説します。

CLAUDE.mdにフォルダ構成と役割を記載する

CLAUDE.mdはClaude Codeにプロジェクトのルールや前提条件を伝えるためのファイルです。

フォルダ構成ごとの役割や運用ルールを明記しておくことで、プロジェクトの構造を把握しやすくなり、作業の一貫性を保ちやすくなります。

CLAUDE.mdには以下の内容を記載するのがおすすめです。

“`
# プロジェクト概要
このプロジェクトはユーザー管理システムです。

# フォルダ構成と役割
src/auth/: 認証・認可処理
src/user/: ユーザープロファイル管理
src/common/: 共通ユーティリティ
tests/: 各モジュールのユニットテスト
data/raw/: 変更禁止の元データ

# コーディング規約
Python 3.11以上を使用
関数には必ず型ヒントを付ける
テストはpytestで実装する

# 運用ルール
data/raw/内のファイルを変更しない
本番環境の設定ファイルを直接編集しない
“`

フォルダの役割を記載することで「src/authの処理を修正して」のような短い指示でも、Claude Codeが正しいファイルにアクセスできます。

プロジェクトの構造やルールを明文化しておくことで、開発メンバー間で認識を共有しやすくなります。プロジェクトが変化したら、CLAUDE.mdも同時に更新する習慣をつけましょう。

Claude Codeに’CLAUDE.md’について詳しく知りたい人は、次の記事を参考にしてください。

‘.claudeignore’で不要ファイルを除外する

.claudeignoreは、Claude Codeに読み込ませたくないファイルやフォルダを指定するための設定ファイルです。

依存パッケージやビルド成果物など、通常は編集対象にならないファイルを除外することで、プロジェクトを整理しやすくなります。

“`
# 依存パッケージ
node_modules/
.venv/
__pycache__/

# ビルド成果物
dist/
build/
*.pyc

# 機密情報
.env
secrets/
credentials/

# データファイル(大容量)
data/raw/*.csv
data/raw/*.parquet

# ログ
logs/
*.log
“`

とくに機密情報を含む.envファイルや、大容量のデータファイルは除外対象として管理しておくと安心です。プロジェクトの規模に応じて、定期的に設定内容を見直しましょう。

設定ファイルを分けプロジェクトを管理する

Claude Codeの設定ファイルには、グローバル設定とプロジェクト単位の設定の2種類があります。

複数のプロジェクトを扱う場合は、共通設定とプロジェクト固有の設定を分けて管理するのがおすすめです。

たとえば、全プロジェクト共通のルールはグローバル設定にまとめ、言語やフレームワークに関するルールは各プロジェクトの設定ファイルに記載します。プロジェクトごとに設定を分けることで、複数プロジェクトを横断しても設定が混在しない管理が実現します。

“`
# グローバル設定(全プロジェクト共通)
~/.claude/settings.json

# プロジェクト設定(そのプロジェクト専用)
my-project/.claude/settings.json
my-project/CLAUDE.md
“`

グローバル設定には「常に日本語で回答する」などの共通ルールを書き、プロジェクト設定には「このプロジェクトではTypeScriptを使う」「ESLintのルールに従う」といった固有のルールを記載すると管理しやすくなります。

共通設定とプロジェクト設定を分離することで、複数の開発案件を並行して進める場合でも運用しやすくなります。

Claude Codeのフォルダ分け・整理のコツ

フォルダを分けるだけでなく、整理の原則を守ることでClaude Codeの精度はさらに高まります。ここからはフォルダ分け・整理のコツを、5つにまとめて解説します。

1階層あたりのファイル数を抑える

1つのフォルダに大量のファイルを配置しないようにしましょう。

ファイルが多すぎると、Claude Codeがどのファイルを参照すべきか判断しにくくなり、保守性も低下します。関連する機能ごとにサブフォルダへ分割すると、プロジェクト全体を把握しやすくなります。

たとえば、共通処理を1つのファイルに集約するのではなく、用途ごとに分割する方法があります。

utils/
├── date_utils.py
├── string_utils.py
└── api_utils.py

ファイル数が増えてきたら整理する習慣を付けることで、ディレクトリ構成の肥大化を防げます。

命名規則を統一する

フォルダ名・ファイル名の命名規則は、プロジェクト全体で統一することが重要です。

命名ルールが混在すると、ファイルの役割を把握しにくくなり、チーム開発でも混乱が生じやすくなります。たとえば、以下のように言語や用途に応じてルールを決めておくのがおすすめです。

おすすめの命名規則は以下のとおりです。

  • Pythonのファイル・フォルダ:スネークケース(例:`user_profile.py`)
  • JavaScriptのコンポーネント:パスカルケース(例:`UserProfile.jsx`)
  • フォルダ名:すべて小文字のケバブケース(例:`user-settings/`)

CLAUDE.mdに命名規則を明記しておくと、Claude Codeが新しいファイルを生成する際にルールに沿った名前をつけてくれます。

テストとソースを対にして配置する

テストファイルとソースコードの対応関係を分かりやすくしておくことも重要です。

対応するファイルが近い場所に配置されていると、保守やテスト追加を行いやすくなります。

たとえば、同じディレクトリ内に配置する方法があります。

```
src/
├── auth/
│   ├── login.py
│   └── login_test.py   # 対応するテストを隣に置く
└── user/
    ├── profile.py
    └── profile_test.py
```

一方で、testsフォルダを分ける場合は、ソースコードと同じディレクトリ構造を維持するのがおすすめです。

src/auth/login.py
tests/auth/test_login.py

このように対応関係を明確にしておくことで、テスト管理がしやすくなります。

読み込み対象を意識して階層を浅く保つ

フォルダの階層は、できるだけシンプルに保ちましょう。

Claude Codeはプロジェクト全体をスキャンしてから作業を始めます。階層が深くなりすぎると、目的のファイルにたどり着くまでの手間が増え、プロジェクト全体を把握しにくくなります。

```
# 深すぎる構成(避けるべき)
src/modules/features/auth/components/forms/LoginForm.jsx

# 浅く保った構成(おすすめ)
src/auth/LoginForm.jsx
```

ディレクトリが深くなりすぎた場合は、フォルダ構成全体を見直すタイミングです。モノレポ型に切り替えたり、サービスを分割したりすることを検討しましょう。

フォルダ構成をREADMEにも明記する

README.mdにもフォルダ構成と各フォルダの役割を記載しておきましょう。

CLAUDE.mdだけに書いていると、チームメンバーや将来の自分がプロジェクトに入った際に構成を把握するのに時間がかかります。READMEに記載することで、Claude Codeとチームの両方に対してプロジェクト構成を明確に伝えられます

README.mdへの記載例は以下のとおりです。

“`
## フォルダ構成

フォルダ役割
src/auth/認証・認可処理
src/user/ユーザー管理
tests/各モジュールのテスト
data/raw/変更禁止の元データ

“`

READMEに構成を明記しておけば、プロジェクトの全体像を素早く共有でき、運用や保守もスムーズになります。

Claude Codeのフォルダ指定/移動方法

ここからは、Claude Codeで作業する際のフォルダ指定方法とディレクトリ移動の方法を解説します。

作業ディレクトリの指定手順

Claude Codeは、起動したディレクトリを作業対象として認識します。そのため、作業したいプロジェクトフォルダへ移動してから起動するのが基本です。

ターミナルで以下のように操作します。

```bash
# プロジェクトフォルダに移動
cd /Users/username/projects/my-project

# Claude Codeを起動
claude
```

この方法で起動すると、現在のフォルダがプロジェクトルートとして扱われます。プロジェクト内にあるCLAUDE.mdや.claudeignoreも、そのディレクトリを基準に参照されます。

また、ターミナル上で現在のディレクトリを確認したい場合は、以下のコマンドを使用します。

```bash
pwd
```

また、Claude Codeのチャット内で作業ディレクトリを確認したい場合は、「現在の作業ディレクトリを教えて」と入力するとClaude Codeが表示してくれます。

Windowsの場合は、次のコマンドで現在のディレクトリを確認できます。

```bash
Get-Location
```

作業前に現在の場所を確認しておくことで、意図しないプロジェクトで作業するミスを防げます。

プロジェクト間のディレクトリ移動手順

Claude Codeのセッション中にプロジェクト間を移動したい場合は、一度Claude Codeを終了してから再起動する方法が確実です。

```bash
# Claude Codeを終了(Ctrl+C または exitコマンド)
exit

# 別のプロジェクトに移動
cd /Users/username/projects/another-project

# Claude Codeを再起動
claude
```

この方法であれば、新しいプロジェクトのCLAUDE.mdや設定ファイルを正しく読み込んだ状態で作業を開始できます。

セッションを終了せずにフォルダを移動したい場合は、Claude Codeのチャット内で以下のように指示できます。モノレポ構成の場合は、リポジトリのルートディレクトリでClaude Codeを起動しておくのがおすすめです。

monorepo/
├── packages/
│   ├── web/
│   ├── mobile/
│   └── shared/

このような構成であれば「packages/webのログイン画面を修正して」のように対象ディレクトリを指定して作業を進められます。

Claude Code関連フォルダの保存場所

ここからは下記のフォルダ別に、Claude Code関連ファイルの保存場所を解説します。

設定ファイルの格納先

Claude Codeの設定ファイルは、一般的にユーザーのホームディレクトリ以下に保存されます。

OSごとの設定ファイルの場所は以下のとおりです。

OS格納場所
Mac / Linux`~/.claude/settings.json`
Windows`C:\Users\ユーザー名\.claude\settings.json`

また、プロジェクト固有の設定を利用する場合は、プロジェクト内に設定ファイルを配置して管理できます。

```
# グローバル設定
~/.claude/settings.json

# プロジェクト設定
my-project/.claude/settings.json
```

設定ファイルの有無を確認したい場合は、ターミナルで以下のコマンドを実行します。

```
ls -la ~/.claude/
```

Windowsでは、次のコマンドで確認できます。

```
dir /a C:\Users\ユーザー名\.claude\
```

キャッシュの格納先

Claude Codeを利用すると、一時データやキャッシュファイルが保存されることがあります。

環境によって保存場所は異なりますが、一般的にはClaude関連の設定ディレクトリ配下やOS標準のキャッシュディレクトリに保存されます。

キャッシュが原因で不具合が発生している場合は、公式ドキュメントを確認したうえでキャッシュの削除を検討してください。

なお、キャッシュを削除すると再生成に時間がかかる場合があるため、必要な場合のみ実施することをおすすめします。

ログの格納先

Claude Codeでは、エラー情報や実行履歴などのログが保存される場合があります。

ログの保存場所は環境やバージョンによって異なるため、問題が発生した際は公式ドキュメントや設定ファイルを確認しましょう。

ログにはトラブルシューティングに役立つ情報が含まれているため、Claude Codeの動作が不安定なときや、予期しないエラーが発生した場合は、まずログを確認するのがおすすめです。

また、ログは自動的に蓄積されるため、容量が大きくなってきたら古いログファイルを削除しておくことをおすすめします

Claude Codeのフォルダ構成によく抱く疑問

ここからはClaude Codeのフォルダ構成に関するよくある疑問を、4つにまとめて解説します。

途中からフォルダ構成を変えても大丈夫?

途中からフォルダ構成を変更しても問題ありません。

ただし、構成を変更した場合は、CLAUDE.mdやREADME.mdなどの関連ドキュメントもあわせて更新することが大切です。

フォルダ構成を変更したにもかかわらずドキュメントが古いままだと、プロジェクトの実態と説明内容が一致せず、開発メンバーが混乱する原因になります。

フォルダ構成変更時のチェックリストは以下のとおりです。

  • CLAUDE.md内のフォルダ構成の記述を更新する
  • ‘.claudeignore’のパスが変わっていないか確認する
  • ‘README.md’のフォルダ構成も同時に更新する
  • 開発メンバーへ変更内容を共有する

フォルダ移動はGit管理下であれば`git mv`コマンドを使うと、ファイルの移動履歴も保持できます。

フォルダが深すぎると認識精度は落ちる?

フォルダ構成が複雑になるほど、人間にとっても管理が難しくなります。

とくに、何階層もディレクトリがネストされている構成では、目的のファイルを探すだけでも時間がかかります。

たとえば、以下のような構成は把握しづらくなりがちです。

src/modules/features/auth/components/forms/LoginForm.jsx

必要以上にディレクトリを細分化せず、機能ごとに整理された分かりやすい構成を意識しましょう。目安としては「ファイルの場所を説明しやすいか」を基準にすると、適切な階層設計を行いやすくなります。

フォルダ構成を自動生成できる?

Claude Code自身にフォルダ構成を生成させることができます。

たとえば、次のように依頼すると構成例を提案してもらえます。

“`
FastAPIを使ったWebアプリ向けの
フォルダ構成を提案してください。
CLAUDE.mdの内容も作成してください。
“`

より実用的な提案を得るためには、次の情報をあわせて伝えるのがおすすめです。

  • プロジェクトの種類(WebアプリかCLIツールかなど)
  • 使用する言語・フレームワーク
  • チーム人数と開発規模
  • 運用方針

要件を具体的に伝えるほど、プロジェクトに適した構成案を得やすくなります。

WindowsとMacで構成に違いはある?

プロジェクトのフォルダ構成自体に、WindowsとMacの違いはほとんどありません。

ただし、ファイルパスの表記方法やファイルシステムの挙動には違いがあります。 

スクロールできます
項目WindowsMac / Linux
パス区切り文字\/
パス例C:\project\src/project/src

クロスプラットフォームで開発する場合、CLAUDE.mdやスクリプト内でパスを記述する際は、スラッシュ(`/`)に統一しておくと、OS間の互換性が保てます

また、環境によってはファイル名の大文字・小文字が区別されないケースがあります。そのため、命名規則を統一し、似た名前のファイルを作成しないよう注意しましょう。

まとめ

本記事では、Claude Codeのおすすめフォルダ構成と整理のコツを解説しました。

フォルダ構成は、プロジェクトの管理しやすさや保守性に大きく影響します。小規模なプロジェクトであればシンプルな構成から始め、規模の拡大に合わせてモジュール型やモノレポ型などへ発展させるのがおすすめです。

まずはシンプルな小規模構成を試し、プロジェクトが成長してきたタイミングでより複雑なパターンへ移行することで、Claude Codeへの指示精度をさらに高められます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

【プロフィール】
Webライター8年目。IT企業でPM(プロジェクトマネージャー)として複数プロジェクトの管理を行う傍ら、2017年からWebライター活動を開始。IT分野を中心に、オウンドメディアの記事執筆を担当。2021年から侍エンジニアブログの記事制作を務めており、現役エンジニアならではの視点を意識し、読者に有益な情報提供を心掛けています。
【専門分野】
Web開発/プロジェクトマネジメント
【保有資格】
基本情報技術者試験
応用情報技術者試験
AWS Certified Developer - Associate認定

目次