Claude CodeとCursorの「記憶」は別物だった——混乱した話と対応表

「あれ、Cursorにも記憶させられる?」

Claude Codeをメインで使い始めて半年ほど。ある日、Cursorでも似たようなことができると知った。

1
2
Claude Code: CLAUDE.md に書けばAIが覚える
Cursor: .cursor/rules/ に書けばAIが覚える

「ほぼ同じじゃん」と思ったのが間違いの始まりだった。

実際に両方を並行して使い込んでみると、記憶の仕組みがかなり違うことに気づく。特に「スキル」の扱いと「どこに何を書くか」が混乱した。

この記事では、整理した対応表と、今日実際にやった設定の話をまとめる。

問題の発端:ドキュメントを読み忘れるAI

複数のサービスを1つのリポジトリで管理している。

1
2
3
4
5
myproject/
├── service-blog/    # ブログサービス
├── service-stock/   # データ分析サービス
├── service-video/   # 動画メディアサービス
└── ...

それぞれに専用のドキュメントがある。

  • ブログ → GUIDELINES.md(記事の書き方・タグルール)
  • データ分析 → SPEC.md(モデルのバージョンルール)
  • 動画メディア → BRAND.md(ブランド方針)

問題は、AIがこれらを読み忘れることだった。

service-stock/ で作業しているのに、「あ、SPEC.md のバージョンルール確認してなかった」となる。v1〜v3は変更禁止なのに、うっかり既存バージョンを触りそうになったこともある。

Claude Codeなら /memory で対処できる。では Cursor は?

Claude Code の「記憶」の仕組み

Claude Code には4つの記憶レイヤーがある。

1. CLAUDE.md(ルールファイル)

セッション開始時に毎回読み込まれる指示書。置き場所によってスコープが変わる。

1
2
3
./CLAUDE.md                  # プロジェクト共有(git で管理)
~/.claude/CLAUDE.md          # 個人設定(全プロジェクト共通)
CLAUDE.local.md              # 個人用・git管理外(.gitignore 推奨)

さらに .claude/rules/*.md にトピック別で分割できる。paths: フロントマターを付けると、該当ファイルを開いたときだけ読まれる。

1
2
3
4
5
---
paths:
  - "service-stock/**"
---
モデルは v1〜v3 を変更禁止。新機能は v4 以降で実装すること。

2. スキル(.claude/skills/)

SKILL.md を置くと /skill-name で手動呼び出し、または description を元に AI が自動判断して読み込む。旧 .claude/commands/ もスキルに統合された。

1
2
3
.claude/skills/
└── load-service-docs/
    └── SKILL.md
1
2
3
4
5
---
name: load-service-docs
description: ディレクトリに応じたサービスドキュメントを読み込む。
             service-stock での作業開始時に使う。
---

3. Auto memory(AI が自動で書くメモ)

Claude Code 独自の機能。セッション中に学んだことを Claude 自身が ~/.claude/projects/<project>/memory/MEMORY.md に書き込む。次回セッションから自動的に読み込まれる。

1
2
3
4
~/.claude/projects/<project>/memory/
├── MEMORY.md          # セッション開始時に読まれるインデックス
├── debugging.md       # デバッグパターンのメモ
└── api-conventions.md # API設計の決定事項

Cursor にはこれに相当する機能はない。

4. /memory コマンド(記憶の確認・管理)

/memory を実行すると、現在セッションで読み込まれている CLAUDE.md・rules ファイル・auto memory の一覧が表示される。ファイルを選ぶとエディタで開ける。

1
2
/memory
# → 読み込み済みルールと auto memory フォルダのリンクを表示

Cursor の「記憶」の仕組み

Cursor は Claude Code とほぼ同じ概念を持つが、設定の粒度と適用タイミングの制御方法が違う

1. .cursor/rules/*.mdc(ルールファイル)

.cursor/rules/ に置く .mdc ファイル。フロントマターで適用タイミングを制御する。

alwaysApply: true — 常時適用

1
2
3
4
5
---
alwaysApply: true
---
git add -A は使わない。
デプロイは明示的な指示があるときのみ実行する。

プロジェクト横断のルール(コミット規則・デプロイ制御など)はここに書く。

globs — 特定パスに紐づけ

1
2
3
4
---
globs: "service-stock/**"
---
モデルは v1〜v3 を変更禁止。新機能は v4 以降で実装すること。

service-stock/ のファイルを開いているときだけ読まれる。

alwaysApplyglobs も指定しないと一貫して読み込まれない。どちらかを必ず設定すること。

2. .cursor/skills/SKILL.md(スキルファイル)

Claude Code のスキルと同じ Agent Skills オープン標準。description を元に AI が自動判断、または /skill-name で手動呼び出し。

1
2
3
.cursor/skills/
└── load-service-docs/
    └── SKILL.md
1
2
3
4
5
---
name: load-service-docs
description: ディレクトリに応じたサービスドキュメントを読み込む。
             service-stock での作業開始時に使う。
---

Cursor は .claude/skills/.agents/skills/.codex/skills/ も読むため、他ツール向けに書いたスキルがそのまま使える。

3. ~/.cursor/rules/(グローバルルール)

1
2
~/.cursor/rules/
└── my-global-rules.mdc  # 全プロジェクト共通ルール

Claude Code の ~/.claude/CLAUDE.md に相当する。

対応表:Claude Code ↔ Cursor(公式ドキュメント準拠)

Claude CodeCursor説明
./CLAUDE.md(プロジェクト).cursor/rules/*.mdcalwaysApply: true常時読まれるプロジェクトルール
~/.claude/CLAUDE.md(ユーザー)~/.cursor/rules/*.mdc全プロジェクト共通ルール
.claude/rules/*.mdpaths: なし).cursor/rules/*.mdcalwaysApply: true起動時に常時読み込み
.claude/rules/*.mdpaths: あり).cursor/rules/*.mdcglobs: "pattern"特定ファイルを開いたときのみ読み込み
CLAUDE.local.md(個人・git管理外).gitignore 除外した .mdc ファイルで代用個人設定・チームに共有しない
.claude/skills/<name>/SKILL.md.cursor/skills/<name>/SKILL.mddescription で自動判断 or /name で手動呼び出し
~/.claude/skills/<name>/SKILL.md~/.cursor/skills/<name>/SKILL.md個人スキル(全プロジェクト共通)
Auto memory(~/.claude/projects/*/memory/なしClaude が自動で書く記憶(Cursor に相当機能なし)
/memory(記憶の確認・管理コマンド)なし(ルールファイルを直接編集)読み込み中ファイルの確認・編集
--add-dir フラグ(ファイルアクセス拡張)@ファイル 参照セッション中のコンテキスト追加(記憶とは別概念)

実際にやった:スキルを作って、すぐルールに移行した話

最初、「ドキュメント読み忘れ問題」を解決するためにスキルを作った。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
---
name: load-service-docs
description: ディレクトリに応じたサービスドキュメントを読み込む。
             service-blog, service-stock, service-video での作業開始時に使う。
---

## ディレクトリ → ドキュメントマッピング

### ブログサービス(service-blog/)
→ GUIDELINES.md, README.md を読む

### データ分析サービス(service-stock/)
→ README.md, SPEC.md を読む

service-stock/ の作業をします。ドキュメントを読んでから始めて」と一言添えると読んでくれる。動作はする。

でも、すぐ気づいた。これはスキルじゃなくてルールの仕事だ。

スキルは description で AI が「使うかどうか」を判断する。外れることがある。しかも確認したら、すでに同じ目的のルールが存在していた。

1
2
3
.cursor/rules/
├── stock-design-doc.mdc    ← globs: "service-stock/**" で stock 作業中のみ読む
└── video-media-docs.mdc    ← globs: "service-video/**"

ルールは globs: で指定したファイルを開いた瞬間に確実に読まれる。description の自動判断も、「忘れず一言添える」も不要。スキルを作ったときよりずっと確実だ。

結局、スキルは削除して、ルールに統一した。ブログサービス用のルールだけ欠けていたので追加した。

1
2
3
4
5
6
7
# .cursor/rules/blog-docs.mdc
---
globs: "service-blog/**"
alwaysApply: false
---
service-blog/ で作業するときは GUIDELINES.md と README.md を読む。
slug 必須・カテゴリは「マイブログ」のみ・文字数最低4,000字。

これで3サービスすべてが globs: ルールでカバーされた。

学んだこと:「ドキュメントを読ませる」は制約であってワークフローではない。制約はルールに書く。

description の書き方が全て

Cursor のスキルで重要なのは description だ。

エージェントはdescription だけを毎回チェックして、「このスキルを使うべきか」を判断する。本文は判断後にはじめて読まれる。

だから description には「いつ使うか(When)」と「何をするか(What)」を具体的に書く必要がある。

悪い例:

1
description: ドキュメントを読む

良い例:

1
2
3
4
5
description: ディレクトリに応じたサービスドキュメントを読み込む。
             service-blog, service-stock, service-video のいずれかで
             作業する際に自動的に適用する。
             「ドキュメントを読んで」「コンテキスト確認」「どのサービス?」と
             聞かれたときにも使う。

トリガーキーワードが多いほど自動判断の精度が上がる。

どちらが「確実」に記憶されるか

確実性はこの順番だと感じている。

確実性の序列(公式ドキュメント + 体感):

1
2
3
4
Claude Code Auto memory(Claude が自動で書く)← Cursor に相当機能なし
  ≈ Claude Code CLAUDE.md / Cursor .cursor/rules/ (alwaysApply: true)
  > Claude Code .claude/rules/ (paths:) / Cursor .cursor/rules/ (globs)
  > Claude Code .claude/skills/ / Cursor .cursor/skills/ (description 自動判断)

Claude Code が Cursor より優れている点は Auto memory だ。Claude が自分で学習してメモを書いてくれるので、ユーザーが何もしなくても記憶が蓄積される。

一方 Cursor の優位点は ルールの細かい制御alwaysApplyglobs を使い分けることで、コンテキスト消費を最小限に抑えながら必要なルールだけ読ませられる。

重要なルールは alwaysApply: true に書き、手順書・コンテキスト読み込みはスキルに分ける——これが両ツール共通のベストプラクティスだと感じている。

まとめ

Claude CodeCursor
常時ルールCLAUDE.md.cursor/rules/ (alwaysApply: true)
パス指定ルール.claude/rules/ (paths:).cursor/rules/ (globs:)
スキル(手動 or 自動).claude/skills/SKILL.md.cursor/skills/SKILL.md
グローバルルール~/.claude/CLAUDE.md~/.cursor/rules/
AI が書く記憶Auto memory(あり)なし
ルール確認コマンド/memoryなし(直接ファイル編集)
スキルの互換性Agent Skills 標準同じ標準(.claude/skills/ も読む)

両ツールの設計思想は近づいてきている。特にスキルは同じオープン標準に対応しているため、1つ書けば両方で動く。

Auto memory は Claude Code の強みだが、Cursor のルール制御の細かさも魅力だ。どちらを使うにしても「AIに何をどう記憶させるか」を意識して設計することが、作業効率に直結するようになってきていると感じる。

参考リンク:

📚 関連書籍

PR: 本セクションにはアフィリエイトリンクが含まれています。

Claude Code をさらに活用したい方におすすめの一冊です。

この記事をシェアX Facebook はてブ
技術ネタ、趣味や備忘録などを書いているブログです
Hugo で構築されています。
テーマ StackJimmy によって設計されています。