プログラミング 完全ガイド

【2026年最新】CursorとClaude Codeの設定ファイル完全ガイド|AIが生成するコード品質を劇的に向上させる方法

約18分で読了

CursorやClaude Codeを使ってコードを書いていて、「なぜかPages Routerのコードが出てくる」「SQLAlchemy 1.xの古い書き方が生成される」「型注釈が抜けている」と感じたことはありませんか? その原因は設定ファイルの不在にあります。

AIコーディングツールは非常に強力ですが、プロジェクトの文脈を知らなければ汎用的で古いパターンのコードを生成します。この問題を解決するのが、Cursorの.cursorrules/.mdcルールとClaude CodeのCLAUDE.mdです。本記事では、これらの設定ファイルの仕組みから書き方、さらに即戦力になるおすすめの設定ファイル集まで、実践的に解説します。

1. なぜAIツールは「微妙な」コードを生成するのか

CursorもClaude Codeも、基盤となる大規模言語モデル(LLM)は膨大な量のコードで学習されています。しかし、学習データには古いバージョンのコードも大量に含まれており、明示的な指示がなければAIは「最も一般的なパターン」を採用しがちです。

設定なしで起きる典型的な問題

  • Next.js: App Routerではなく廃止予定のPages Router + getServerSidePropsを生成
  • SQLAlchemy: 2.0の非同期パターンではなく1.xの同期パターンを使用
  • Pydantic: v2ではなくv1のclass Configパターンを生成
  • TypeScript: strictモードの型注釈が抜ける、any型を多用
  • Stripe: Webhook署名検証やべき等性キーの実装が欠落
  • Supabase: RLSポリシーの考慮が漏れ、セキュリティホールが発生

これらは単にコードが動かないという問題ではなく、一見動くが本番では問題になるコードが生成されるという、より厄介な問題です。AI生成コードの修正に毎回時間を取られるのは、設定ファイルの不備が原因かもしれません。

2. 設定ファイルがAI出力を変える仕組み

設定ファイルは、AIに対して「このプロジェクトではこのルールに従ってコードを書け」と事前に伝えるシステムプロンプトのようなものです。CursorとClaude Codeでは、それぞれ異なる仕組みで設定を読み込みます。

項目 Cursor Claude Code
設定ファイル .cursorrules + .cursor/rules/*.mdc CLAUDE.md
読み込みタイミング リクエスト時に自動付加 起動時に自動読み込み
適用範囲 グローバル / ファイルパターン別 プロジェクト全体
形式 YAML + Markdown(.mdc) Markdown
バージョン管理 Git対応(チーム共有可) Git対応(チーム共有可)

ポイント

どちらのツールも、設定ファイルをGitで管理してチーム全員が同じルールでAIを使える点が大きな強みです。チーム全体のコード品質とスタイルの一貫性を高いレベルで維持できます。

3. Cursor設定ファイル徹底解説|.cursorrules・.mdcルール

.cursorrules(グローバルルール)

.cursorrulesはプロジェクトルートに配置するファイルで、全てのAIリクエストに自動的に付加されます。プロジェクトの技術スタック、アーキテクチャルール、コーディング規約などを定義します。

# .cursorrules の例

You are an expert in Next.js 15, TypeScript, Supabase, Tailwind CSS.

Key Principles:
- Always use App Router (app/, never pages/)
- Use Server Components by default
- TypeScript strict mode, no any types
- All database queries must respect RLS policies

.mdcルール(Project Rules)

.cursor/rules/ディレクトリに配置するモジュール式のルールファイルです。YAML形式のメタデータ(フロントマター)とMarkdown形式の本文を組み合わせたハイブリッド形式で記述されます。

# .cursor/rules/supabase.mdc の例
---
description: Supabase database and auth rules
globs: **/*.{ts,tsx}
alwaysApply: false
---

# Supabase Rules
- Use createServerClient for server-side operations
- Always implement RLS policies for every table
- Use supabase.auth.getUser() not getSession()

.mdcルールの3つの適用モード

  • alwaysApply: true - 全てのリクエストに常に適用
  • globs指定 - 特定のファイルパターンにマッチした場合のみ適用
  • description指定 - AIが関連性を判断して自動的に適用

Cursorは今後.cursorrulesから.mdcベースのProject Rulesへの移行を推奨しています。.mdcルールはファイルパターンごとに適用を制御できるため、必要なルールだけをコンテキストに含め、不要なルールでAIを混乱させないメリットがあります。

4. Claude Code設定ファイル徹底解説|CLAUDE.md

CLAUDE.mdはClaude Codeが起動時に自動的に読み込む設定ファイルです。プロジェクトの文脈をAIに伝え、毎回の説明を不要にする「プロジェクトメモリ」として機能します。

CLAUDE.mdに書くべき内容

技術スタック定義

使用するフレームワーク、言語バージョン、ORM、認証方式、決済システムを明記。

アーキテクチャルール

ディレクトリ構成、レイヤー構成、依存性注入パターン、エラーハンドリング方針。

コーディング規約

命名規則、型注釈ルール、インポート順序、禁止パターン(anyの使用禁止など)。

よく使うコマンド

テスト実行、ビルド、マイグレーション、デプロイのコマンドを記載しておくとAIが自動実行可能に。

注意: 書きすぎない

CLAUDE.mdに何でも詰め込むと、記載事項が多すぎてAIがコンテキストを無視してしまう可能性があります。必要な情報を端的に書くことが品質向上の鍵です。プロジェクトに直接関係ない一般的なベストプラクティスは省略してください。

スラッシュコマンドの活用

Claude Codeでは、.claude/commands/ディレクトリにMarkdownファイルを配置することで、カスタムスラッシュコマンドを定義できます。頻繁に行う操作をコマンド化しておくと、1回の入力で複雑なタスクを実行可能です。

# .claude/commands/add-auth.md の例

Supabase Authを使用した認証機能を追加してください。

要件:
- サーバーサイドミドルウェアでセッション検証
- getUser()を使用(getSession()は使わない)
- 保護ルートへの自動リダイレクト
- RLSポリシーの追加

5. Before/After実例|設定ファイルでコードがこう変わる

実際に設定ファイルの有無でAIの出力がどう変わるか、具体例で見てみましょう。

例1: Next.jsのデータフェッチ

設定なし(Before)

// Pages Router + getServerSideProps
export async function getServerSideProps() {
  const res = await fetch('...')
  return { props: { data } }
}

設定あり(After)

// App Router + Server Component
export default async function Page() {
  const supabase = await createClient()
  const { data } = await supabase
    .from('posts').select('*')
}

例2: FastAPIのエンドポイント

設定なし(Before)

# 同期 + 型注釈なし
@app.get("/users")
def get_users(db = Depends(get_db)):
  return db.query(User).all()

設定あり(After)

# 非同期 + Pydantic v2 + 型注釈
@router.get("/users")
async def get_users(
  session: AsyncSession = Depends(get_session),
) -> list[UserResponse]:
  result = await session.execute(select(User))
  return result.scalars().all()

ポイント

設定ファイルがあるだけで、AIは最新バージョンのAPI適切な非同期パターン正しい型注釈を自動的に使用するようになります。手動修正にかかる時間が大幅に削減されます。

6. 自作 vs 既製品|どちらが効率的か

設定ファイルは自作することも可能ですが、フレームワークのベストプラクティス、セキュリティパターン、エッジケースを網羅した設定を一から作るには相当な時間と知識が必要です。

比較項目 自作 既製品を活用
初期コスト 無料(時間コスト大) $19〜$29(即日利用)
構築時間 数日〜数週間 数分(ドロップイン)
網羅性 知識に依存 実プロジェクトで検証済み
セキュリティ考慮 見落としのリスク Webhook検証・RLS等カバー
メンテナンス 自己責任 フレームワーク更新時に無料アップデート
カスタマイズ性 完全に自由 土台として活用 + 追記可能

おすすめのハイブリッドアプローチ

最も効率的なのは、既製の設定ファイル集を土台として導入し、その上にプロジェクト固有のルール(API設計方針、命名規則、特殊な要件など)を追記する方法です。フレームワークのベストプラクティスは既製品に任せ、自分はプロジェクト固有のカスタマイズに集中できます。

8. よくある質問(FAQ)

Q. 既存のプロジェクトにも使えますか?

はい、設定ファイルは既存プロジェクトにドロップイン(ファイルを配置するだけ)で使えます。コードの変更は不要で、次のAIリクエストから即座に効果が反映されます。

Q. CursorとClaude Code両方で使えますか?

AI Dev Config Kit(Next.js / Python両エディション)はCursorとClaude Codeの両方に対応したファイルを収録しています。Cursor Rules Mega PackはCursor専用です。

Q. フレームワークのバージョンが上がったらどうなりますか?

いずれの製品もフレームワークのメジャーバージョンアップ時に無料アップデートが提供されます。Gumroad経由で最新版をダウンロード可能です。

Q. 商用利用(クライアントワーク)はできますか?

はい、全ての製品で個人・商用プロジェクトでの無制限利用が許可されています。ただし、設定ファイル自体の再配布・転売は禁止されています。

9. まとめ

CursorやClaude Codeの設定ファイルは、AIコーディングツールの出力品質を劇的に向上させる最もコスパの高い投資です。適切な設定があるだけで、古いパターンやセキュリティの考慮漏れといった問題が解消され、手動修正の時間を大幅に削減できます。

この記事のポイント

  • AIツールが古いコードを生成するのは設定ファイルの不在が原因
  • Cursorは.cursorrules.mdcルール、Claude CodeはCLAUDE.mdで制御
  • .mdcルールはファイルパターン別に適用を制御でき、今後の推奨形式
  • 既製の設定ファイル集を土台にカスタマイズするハイブリッドアプローチが最も効率的
  • 設定ファイルはGitで管理し、チーム全体のコード品質を統一できる

AIコーディングツールの活用方法やキャリアへの影響についてさらに詳しく知りたい方は、以下の関連記事もご覧ください。

この記事に関連するおすすめ書籍

ChatGPT最強の仕事術

ビジネスでのAI活用を実践的に学ぶ

ChatGPTを業務で最大限活用するための具体的なテクニックとプロンプト例を豊富に収録した実践ガイド。

Amazonで詳細を見る

この一冊で全部わかる ChatGPT & Copilotの教科書

生成AIツールを使いこなす

ChatGPTとCopilotの基本から応用まで、ビジネスパーソン向けに分かりやすく解説した入門書。

Amazonで詳細を見る

※ 上記はAmazonアソシエイトリンクです

メニュー