【AI開発体験向上】CursorのProject Rulesとは?Rules周りの機能について徹底解説
「もっとスムーズにNext.jsの開発を進めたい」「AIエージェントが思い通りに開発を進めてくれたら/規約を守ってくれればいいのに」——こんな思いを抱えたことはありませんか?
CursorのProject Rulesなら、あなたのプロジェクト固有のスタイルやタスクをAIに“覚え込ませる”ことで、面倒な手順を自動化し、チーム全員の作業を一貫性のあるものへと導いてくれます。
ビルドのやり忘れやテストコマンドの入力ミス、Pull Request時の手順漏れなど、従来は「人間が気をつけないと起こるトラブル」も、ルールとして明記しておくだけでCursorが率先してサポート。
プロジェクトの規模が小さくても大きくても、必要な作業が抜け落ちることを最小限にし、結果的に品質とスピードの両方を引き上げます。
ここでは、そんなProject Rulesを最大限に活用するための方法を、従来のRules for AIや .cursorrules との違いも含めて解説していきます。
Next.jsプロジェクトでの実践例もご紹介しますので、「エンジニアの最強アシスタント」を手に入れたい方は、ぜひ最後までご覧ください。
1. ルール設定の全体像
1.1 ルールの種類
-
Rules for AI
グローバルルール。Cursorアプリ全体に適用される。 -
.cursorrules
プロジェクト単位で1ファイルにまとめる旧方式。 -
Project Rules (v0.45〜)
推奨されるプロジェクト単位のルール。
.cursor/rules/
フォルダに.mdc
ファイルとして保存し、フォルダや拡張子ごとに細かく指定可能。
1.2 選び方・使い分け
Rules for AI | .cursorrules | Project Rules | |
---|---|---|---|
適用範囲 | Cursor全体(ユーザーの全プロジェクトで共通) | プロジェクト全体(1ファイルに集約) | プロジェクト内の特定ファイル・フォルダ単位で細かく |
設定場所 | Settings > General > Rules for AI | プロジェクトルート直下 .cursorrules
|
.cursor/rules/*.mdc |
主な用途 | 文体や敬語、言語スタイルなど個人設定 | チーム全体の方針やコーディング規約の大枠 | フォルダ/拡張子ごとにルールを細分化し自動適用 |
2. Rules for AI
Cursorアプリ自身に設定するため、どのプロジェクトを開いても常に適用されます。
例として、コードスタイルや敬語設定、ReactではなくNext.jsを推奨するかなど、個人的な好みをまとめるのに最適です。
ワンポイントコメント
「プロジェクト固有のルール」というより、「自分がCursorをどう扱いたいか」を書きます。
他のチームメンバーと共有するものではないので、個人の開発環境に合わせて自由にカスタムして問題ありません。
2.1 設定場所
Cursor > Settings > General > Rules for AI
で設定可能。
2.2 サンプル
- 全文体を「ですます調」で統一
- 提案時にはReactではなくNext.jsの最新機能を積極的に案内
- 英語と日本語が混在しないように注意
3. .cursorrules
.cursorrules はプロジェクトのルート直下に配置する旧来の形式です。
1つのファイルにチーム内のコーディング規約や方針をまとめて書くことが多いですが、今後はProject Rulesへの移行が推奨されています。
ワンポイントコメント
手軽に1ファイルで管理できるメリットはありますが、複数のルールを細かく書きたい場合にはやや煩雑になります。
既存プロジェクトをすぐに対応させたい場合に、とりあえず .cursorrules を置く…というケースはアリです。
3.1 サンプル
# .cursorrules
このプロジェクトでのルール:
- Next.js 14 以上を利用します。App Routerを使用します
- ESLint + Prettier を必須
- テストフレームワークはJestを使用
コミットルール:
- Conventional Commitsを採用
- 1コミット1修正を心がける
4. Project Rules (v0.45〜)
.cursor/rules/ 以下に .mdc ファイルを複数作成でき、ファイルパターン (globs) や説明、具体的なルールを粒度細かく設定できます。
これは最も推奨される方式で、Next.jsなどのフロントエンド開発でも、pages/ や app/、components/ ディレクトリごとに最適化したルールを作りやすい点が魅力です。
ワンポイントコメント
たとえば「pages/*.tsx に適用するルール」と「components/ 配下のファイルに適用するルール」を分けることが可能。
ルールが増えても1ファイルに詰め込まず、目的別に .mdc ファイルを増やせば管理しやすくなります。
4.1 特徴
-
フォルダ/拡張子単位での自動適用
- globsを活用し、例えば pages//*.tsx や components//*.tsx などを指定。
-
複数ファイルに細分化
- .cursorrules のように1ファイルで管理する必要がないため、ルールを用途ごとに分割可能。
-
メンテナンスしやすい
- 新しい機能を追加するときは、新しい .mdc ファイルを作ればOK。
4.2 作成方法
- コマンドパレットから
CMD+SHIFT+P → New Cursor Rule → ファイル名を指定
- メニューから
- Cursor > Settings > General > Project Rules > Add new rule
→ ファイル名を指定すると、.cursor/rules/xxx.mdc が生成されます。
5. Project Rules の具体例 (Next.js向け)
ここでは、Next.jsでよく使われるディレクトリ構成を例に、Project Rulesのサンプルをいくつか紹介します。
5.1 ESLintルール・スタイルガイド(例)
---
description: "Next.jsのeslint設定に準拠したスタイルガイド"
globs: "pages/**/*.tsx"
---
## Next.js ESLint 規約
1. `eslint-config-next` を使用し、不要なimportやLinkコンポーネントの警告を管理
2. ページコンポーネントはデフォルトエクスポートを使用
3. styled-jsx ではなくCSS ModulesやSassを推奨
pages/**/*.tsx に限定して適用。
ページコンポーネント固有のルール(デフォルトエクスポート必須など)を記述。
5.2 テスト実行ルール(Jest想定)
---
description: "Jestテストの実行ルール"
globs: "**/*.test.{ts,tsx}"
---
# Jest テスト実行のガイド
- **基本コマンド**
npm run test
or
yarn test
ファイル命名ルール
.test.ts / .test.tsx を使う
1ファイル1機能単位でテストを分割し、カバレッジを上げる
Snapshotテストを利用する場合は __snapshots__ フォルダに保存
対象: //*.test.{ts,tsx}**
AIに対して「テストファイルを実行して」と言えば、ここで定義したコマンドやガイドが提案される。
5.3 Pull Request 作成ルール(GitHub CLIの例)
---
description: "GitHub Pull Request作成ガイド"
globs: ""
---
# Pull Requestの作成手順
1. **ブランチをプッシュする**
```bash
git push origin HEAD
2. PRを作成する
gh pr create --title "feat: 変更内容" --body "概要や背景" --web
3. レビュー完了後
- Squash Mergeを推奨
4. 実行前の確認
- ローカルで必ずテストが通ることを確認
6. ルール作成・改善のポイント
どこまで細かく書くか決める
- ルールが細かすぎるとメンテナンスが大変になる。
- 必要最低限+αで始め、足りない部分は後から追記するのがコツ。
実際に試しつつブラッシュアップ
Chat/Composerで「pages/index.tsxを編集してnpm run build後に動作確認して」と指示し、思ったとおりにAIがルールを参照するか確認する。
うまく働かない場合は、globsの設定を見直す。
チームメンバーとの共有
Project RulesはGitリポジトリ内で管理されるため、Pull Requestなどで更新内容を共有すると良い。
7. ComposerやAgentモードとの連携
ComposerのAgentモードで指示を行うと、Cursorが参照するファイルに合わせて該当するルールを自動で組み合わせます。 例えば、「components/Header.tsxを修正してテストを実行し、PRを作成してほしい」と依頼すると、
-
components/**/*.tsx
→ Next.jsコーディング規約のRule -
**/*.test.{ts,tsx}
→ JestのRule - Pull Request作成 → PR作成ガイド
が統合され、スムーズに作業が進行します。
8. まとめ
- Rules for AI: 個人設定としてCursor全体に適用。
- .cursorrules: 旧来の単一ファイル方式。簡単だが今後は非推奨。
-
Project Rules (v0.45〜):
.cursor/rules/*.mdc
で細分化できる最新方式。
Next.jsのようにフォルダ構造がはっきりしたプロジェクトでこそ、最も威力を発揮。
一度ルールを整備してしまえば、「あれ?どのコマンドでビルドするんだっけ?」という初歩的なつまずきや、Pull Request時の情報漏れ をAIがカバーしてくれるようになります。
無駄な時間を削減し、チームや個人の作業効率を大幅に向上させるためにも、ぜひProject Rulesを活用してみてください.
Discussion