Cursor Rulesの書き方:プロジェクト規則ファイルとAgentの使い方
.cursor/rules に .mdc を置き、適用方法を選び、実行可能な本文を書く。一致した規則は文脈の先頭に入る。
Cursor Agent はチャットをまたいで口頭の制約を記憶しない。「ルーターを書き換えるな」を三度貼るなら、プロジェクト規則に置き、次の会話の冒頭から効かせる。
公式はこの仕組みを Cursor Rules と呼ぶ。プロジェクト規則は .cursor/rules に置き、拡張子は .mdc 必須。同フォルダの素の .md は無視される。編集器の手順であり、ブレインストーム製品の説明ではない。
プロジェクト規則とは
cursor.com/docs/context/rules を対照する。四つの出所のうち、入門はリポジトリ内のファイルで足りる。適用時、本文はモデル文脈の先頭に出る。
| 出所 | 置き場所 | 文脈に入るとき |
|---|---|---|
| Project Rules | .cursor/rules/*.mdc | frontmatter に従う |
| User Rules | Customize → Rules | Agent(Chat)、全プロジェクト |
| Team Rules | ダッシュボード(Team / Enterprise) | 全リポジトリ。強制可 |
| AGENTS.md | ルートまたは下位 | 素の Markdown。frontmatter なし |
最初の規則を四手順で書く
- 1
ファイルを作る
リポジトリに
.cursor/rules/your-name.mdcを置く。Agent で/create-ruleと打つか、Customize → Rules → Add Rule でもよい。フォルダ分けは可。拡張子は.mdc必須。 - 2
適用モードを選ぶ
alwaysApply: trueは毎回。globsは一致ファイルが文脈にあるとき。description のみなら Agent が判断。いずれも空ならチャットで@規則名のときだけ。 - 3
実行可能な本文を書く
内部文書として書く。禁止、命名、ディレクトリ境界。
@filename.tsで例を指し、ファイル全文は貼らない。公式は 500 行未満。 - 4
コミットして確認する
git に入れ、チームで同じ制約を共有する。Customize で状態を見る。まだ漏れるなら会話でその規則を
@する。
本文に書くこと
リンタが拾えない約束
生成物を編集しない、新サービスは構造化エラー、など。よくあるスタイルは ESLint / rustfmt に任せる。ガイド全文は貼らない。
アーキテクチャ境界
どの層が DB に触れるか、どのフォルダ同士を import しないか。Agent は git と npm を既に知っている。日常コマンドは不要。
リポジトリ内の例を指す
@ で既存テンプレートを参照する。コードが変わっても規則は短いまま。同じ失敗が繰り返されたら一条足す。最初から二十ファイルは置かない。
---
description: TypeScript conventions for this repo
globs: **/*.{ts,tsx}
alwaysApply: false
---
# TypeScript
- Prefer named exports
- Do not edit files under dist/
- New API clients follow @src/api/client.tsAgent が規則を使う仕方
一致後、本文は文脈先頭に入り、コード生成・差分説明・作業手順に使われる。衝突時の公式順は Team Rules → Project Rules → User Rules。先の出所が優先。Rules は Cursor Tab に影響しない。User Rules は Inline Edit(Cmd/Ctrl+K)に使われない。
AGENTS.md との使い分け
読めるメモだけでよければ、ルートまたは下位に AGENTS.md。入れ子は、その木を触るとき親と合わさり、より具体的な方が優先。glob や手動 @ が必要なら .mdc を使う。
規則を置いたあと短いスケッチが必要なら wbstorm の部屋 ID で足りる。部屋の作成と参加とホワイトボードの基礎も参照。
規則が効かないのはなぜか。
種類を確認する。Apply Intelligently には description が要る。ファイル対象は、文脈内のパスに glob が当たる必要がある。.cursor/rules の素の .md は無視される。
Tab 補完に効くか。
公式 FAQ:Rules は Cursor Tab や Agent 以外の機能に影響しない。User Rules も Inline Edit には使われない。
他ファイルを参照できるか。
できる。本文に @filename.ts と書く。チャットで規則名を @ して手動適用もできる。
wbstorm の機能説明か。
違う。本稿は Cursor のプロジェクト規則だけを扱う。wbstorm はブラウザのブレインストーム部屋であり、規則ファイルとは無関係。