ルールは、Agent と Inline Edit に対するシステムレベルの指示だよ。プロジェクトにおける永続的なコンテキスト、設定、ワークフローだと思ってOK。 Cursor は 4 種類のルールをサポートしてる:

Project Rules

.cursor/rules に保存され、バージョン管理され、コードベース単位で適用される。

User Rules

Cursor 環境全体で有効。設定で定義され、常に適用される。

AGENTS.md

Agent 向けのマークダウン形式の指示。.cursor/rules のシンプルな代替。

.cursorrules (Legacy)

まだサポートされてるけど非推奨。代わりに Project Rules を使ってね。

ルールの仕組み

大規模言語モデルは、補完ごとにメモリを引き継がない。ルールはプロンプトレベルで、永続的かつ再利用可能なコンテキストを提供する。 ルールを適用すると、その内容がモデルのコンテキスト先頭に含まれる。これによって、AIはコード生成、編集の解釈、ワークフロー支援で一貫したガイダンスに基づいて動ける。
チャットのコンテキストに適用されたルール
ルールは ChatInline Edit に適用される。アクティブなルールは Agent サイドバーに表示される。

プロジェクトルール

プロジェクトルールは .cursor/rules に置くよ。各ルールは個別ファイルで、バージョン管理される。パスパターンでスコープしたり、手動で呼び出したり、関連性に応じて自動で取り込んだりできる。サブディレクトリにも、そのフォルダにスコープされた独自の .cursor/rules を用意できる。 プロジェクトルールの用途:
  • コードベースに関するドメイン知識を明文化する
  • プロジェクト特有のワークフローやテンプレートを自動化する
  • スタイルやアーキテクチャの判断を標準化する

ルール構造

各ルールファイルは MDC (.mdc) で記述され、メタデータと本文を持てる。descriptionglobsalwaysApply のプロパティは、タイプのドロップダウンからの選択で適用方法を制御できる。
Rule TypeDescription
Alwaysつねにモデルのコンテキストへ含める
Auto Attachedグロブに一致するファイルが参照されたときに含める
Agent RequestedAI が必要に応じて取り込む。description が必須
Manual@ruleName を明示したときだけ含める
---
description: RPC Service boilerplate
globs:
alwaysApply: false
---

- Use our internal RPC pattern when defining services
- Always use snake_case for service names.

@service-template.ts

ネストされたルール

プロジェクト内の各所に .cursor/rules ディレクトリを配置して整理しよう。ネストされたルールは、そのディレクトリ配下のファイルが参照されたときに自動でアタッチされる。
project/
  .cursor/rules/        # プロジェクト全体のルール
  backend/
    server/
      .cursor/rules/    # バックエンド固有のルール
  frontend/
    .cursor/rules/      # フロントエンド固有のルール

ルールの作成

New Cursor Rule コマンドを使うか、Cursor Settings > Rules から作成できる。これで .cursor/rules に新しいルールファイルができる。設定画面では、すべてのルールとそのステータスを確認できるよ。
短いルールと長いルールの比較

ルールの生成

会話内で /Generate Cursor Rules コマンドを使って、ルールを直接生成できる。エージェントの挙動について決めた方針を、使い回したいときに便利だよ。

ベストプラクティス

良いルールは、フォーカスが明確で、実行可能で、スコープが適切だよ。
  • ルールは500行未満に収める
  • 大きなルールは複数の組み合わせ可能なルールに分割する
  • 具体的な例や参照ファイルを用意する
  • あいまいな指示は避けよう。社内ドキュメントのように明確に書く
  • チャットで同じプロンプトを繰り返すときはルールを再利用する

プロバイダーやフレームワークから多くの例が公開されてるよ。コミュニティ提供のルールは、クラウドソースのコレクションやオンラインのリポジトリで見つかる。

AGENTS.md

AGENTS.md はエージェントの指示を定義するためのシンプルな Markdown ファイルだよ。シンプルなユースケースなら、プロジェクトのルートに置いて .cursor/rules の代わりとして使える。 Project Rules と違って、AGENTS.md はメタデータや複雑な設定のないプレーンな Markdown ファイル。構造化されたルールのオーバーヘッドなしで、シンプルで読みやすい指示が欲しいプロジェクトにぴったり。
# Project Instructions

## Code Style
- Use TypeScript for all new files
- Prefer functional components in React
- Use snake_case for database columns

## Architecture
- Follow the repository pattern
- Keep business logic in service layers

現在の制限

  • ルートレベルのみ: AGENTS.md はプロジェクトのルートに配置する必要がある(v1.5)
  • スコープなし: 指示はプロジェクト全体にグローバルに適用される
  • 単一ファイル: .cursor/rules と違い、指示を複数ファイルに分割できない
サブディレクトリでのネストされた AGENTS.md のサポートは v1.6 で予定してるよ。

User Rules

User rulesは、すべてのプロジェクトに適用されるグローバルな設定で、Cursor Settings → Rules で定義する。プレーンテキストで、好みのコミュニケーションスタイルやコーディング規約を設定するのに最適だ:
Please reply in a concise style. Avoid unnecessary repetition or filler language.

.cursorrules(レガシー)

プロジェクトのルートにある .cursorrules ファイルは引き続きサポートされるけど、今後は非推奨になる予定。より細かな制御、柔軟性、可視性のために、Project Rules への移行をおすすめするよ。

FAQ