> ## Documentation Index
> Fetch the complete documentation index at: https://docs.windsurf.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Memories とルール

> グローバルルール、ワークスペースルール、および Enterprise 向けのシステムレベルのルールを使って Cascade の Memories とルールを設定し、会話間でコンテキストを保持します。

`Memories` は、会話間でコンテキストを共有・保持するためのシステムです。

Cascade にはこれを実現するための 2 つの仕組みがあります。Cascade によって自動生成される Memories と、ローカルおよびグローバルの両レベルでユーザーが手動で定義するルールです。

<div id="how-to-manage-memories">
  ## メモリの管理方法
</div>

メモリとルールは、Cascade の右上にあるスライダーメニュー内の `Customizations` アイコンから、いつでも参照・設定できます。既存のメモリを編集するには、対象を開いてから `Edit` ボタンをクリックします。

<Frame>
  <img src="https://mintcdn.com/codeium/d8O4q6w3H2CjrirL/assets/managing-memories-jb.gif?s=364abea59051eb01f19dbe91ba7bcf35" width="800" height="506" data-path="assets/managing-memories-jb.gif" />
</Frame>

<div id="memories">
  ## メモリ
</div>

会話中、Cascade は有用だと判断したコンテキストに出会うと、自動的にメモリを生成して保存します。

また、いつでも Cascade にメモリの作成を依頼できます。Cascade に「…のメモリを作成して」とプロンプトしてください。

Cascade が自動生成したメモリは作成元のワークスペースに関連付けられ、関連があると判断されたときに Cascade が参照します。あるワークスペースで生成されたメモリは、別のワークスペースでは利用できません。

<Tip>自動生成されたメモリの作成と使用ではクレジットは消費されません</Tip>

<div id="rules">
  ## ルール
</div>

ユーザーは、Cascade が従う独自のルールを明示的に定義できます。

ルールは、グローバルレベルまたはワークスペースレベルで定義できます。

`global_rules.md` - すべてのワークスペースに適用されるルール

`.windsurf/rules` - glob パターンまたは自然言語の記述に紐づくルールを格納するワークスペースレベルのディレクトリ。

<div id="rules-discovery">
  ## ルールの検出
</div>

Windsurf は柔軟に整理できるよう、複数の場所からルールを自動的に検出します:

* **現在のワークスペースとサブディレクトリ**: 現在のワークスペースおよびそのサブディレクトリ内にあるすべての `.windsurf/rules` ディレクトリ
* **Git リポジトリ構造**: Git リポジトリでは、親ディレクトリ内のルールを見つけるために、Git のルートディレクトリまで遡って検索します
* **複数ワークスペースのサポート**: 同一ワークスペースで複数のフォルダを開いている場合、ルールは重複が除去され、最短の相対パスで表示されます

<div id="rules-storage-locations">
  ### ルールの保存場所
</div>

ルールは次のいずれの場所にも保存できます:

* 現在のワークスペース ディレクトリ内の `.windsurf/rules`
* ワークスペース内の任意のサブディレクトリにある `.windsurf/rules`
* 親ディレクトリ（git リポジトリの場合は git ルートまで）の `.windsurf/rules`

新しいルールを作成すると、必ずしも git ルートではなく、現在のワークスペースの `.windsurf/rules` ディレクトリに保存されます。

Rules を使い始めるには、Cascade の右上のスライダーメニューにある `Customizations` アイコンをクリックし、`Rules` パネルに移動します。ここで、`+ Global` または `+ Workspace` ボタンをクリックして、グローバルまたはワークスペースレベルで新しいルールを作成できます。

<Tip>Windsurf チームが厳選したルールのサンプル テンプレートは [https://windsurf.com/editor/directory](https://windsurf.com/editor/directory) で確認できます。導入の参考にしてください。</Tip>

Rules ファイルは各 12,000 文字に制限されています。

<div id="best-practices">
  ### ベストプラクティス
</div>

Cascade があなたのルールに適切に従えるよう、次のベストプラクティスに従ってください。

* ルールはシンプルで、簡潔かつ具体的にしましょう。長すぎたり曖昧だったりするルールは、Cascade を混乱させる可能性があります。
* 一般的なルール（例: "write good code"）を追加する必要はありません。これらはすでに Cascade の学習データに組み込まれています。
* ルールは箇条書き、番号付きリスト、Markdown を使って記述してください。長い段落よりも、その方が Cascade は従いやすくなります。

例えば:

```
# コーディングガイドライン
- このプロジェクトのプログラミング言語はPythonです
- 可能な限り早期リターンを使用してください
- 新しい関数やクラスを作成する際は必ずドキュメントを追加してください
```

* XML タグは、類似するルールを伝え、まとめて整理するのに有効です。例えば：

```
<coding_guidelines>
- 私のプロジェクトのプログラミング言語はPythonです
- 可能な限りearly returnを使用してください
- 新しい関数やクラスを作成する際は必ずドキュメントを追加してください
</coding_guidelines>
```

<div id="system-level-rules-enterprise">
  ## システムレベルのルール (Enterprise)
</div>

Enterprise プランの組織は、すべてのワークスペースに一律で適用され、管理者権限がないエンドユーザーは変更できないシステムレベルのルールを導入できます。これは、組織全体のコーディング標準、セキュリティポリシー、コンプライアンス要件を徹底するのに最適です。

システムレベルのルールは、OS 固有のディレクトリから読み込まれます:

**macOS:**

```
/Library/Application Support/Windsurf/rules/*.md
```

**Linux/WSL：**

```
/etc/windsurf/rules/*.md
```

**Windows：**

```
C:\ProgramData\Windsurf\rules\*.md
```

ルールファイル（`.md` ファイル）を、使用しているオペレーティングシステムに応じたディレクトリに配置してください。システムは、これらのディレクトリ内のすべての `.md` ファイルを自動的に読み込みます。

<div id="how-system-rules-work">
  ### システムレベルルールの仕組み
</div>

システムレベルルールはワークスペースおよびグローバルルールと統合され、ユーザー定義ルールを上書きすることなく Cascade に追加のコンテキストを提供します。これにより、組織は共通のベースラインとなる標準を確立しつつ、各チームがプロジェクト固有のカスタマイズを追加することも可能になります。

Cascade の UI では、システムレベルルールは「System」というラベル付きで表示され、エンドユーザーが削除することはできません。

<Note>
  **重要**: システムレベルルールは IT 部門またはセキュリティチームが管理する必要があります。社内チームが、組織のポリシーに従ってデプロイ、更新、およびコンプライアンス対応を行うようにしてください。そのためには、Mobile Device Management (MDM) や Configuration Management などの標準的なツールやワークフローを利用できます。
</Note>
