cursor-memory-curator について
cursor-memory-curatorは、Cursorの永続的なエージェントコンテキストを監査し、レビュー、配置、整理を提案するスキルです。読み取り専用のレビューと承認済みの変更を分け、ユーザー管理のルールを保護します。
主な機能
- 01Cursorルールとメモリ成果物の監査
- 02コンテキストの主張を個別に分類
- 03古い内容、競合、機密情報を検出
- 04レビュー、計画、整理の各フロー
- 05編集前のバックアップと検証
活用シーン
- 01古くなったCursorプロジェクトルールの確認
- 02配置違いや無視されたルールファイルの発見
- 03競合するコンテキストの整理計画
- 04承認済みコンテキスト変更の安全な適用
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ stark-ai-de/ agent-skills --skill cursor-memory-curatorインストール後、Claude Code で/cursor-memory-curatorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/cleanup-plan-template.mdreview-report-template.mdreferences/classification-rubric.mdconflict-resolution.mdcontext-surface-anatomy.mdexample-review-report.mdplan-lifecycle.mdsafe-editing-procedure.mdscripts/backup-cursor-context.mjsinventory-cursor-context.mjsscan-cursor-context-risks.mjs詳細
Cursor Memory Curator
目標
Cursor の永続コンテキストを、ユーザーが所有するエージェント状態として監査します。古くなった、安全でない、重複している、無視されている、競合している、または配置が不適切なルールを明らかにし、より適切な保存先を提案するとともに、レビュー、計画、永続化、クリーンアップを 1 つの明示的な契約のもとで実行します。
対象は Cursor Project Rules、レガシーな .cursorrules、AGENTS.md、User Rules、Team Rules、およびユーザーが管理する Cursor memory-bank アーティファクトに限定してください。これを Codex のメモリキュレーターとして扱わないでください。
使用する場合
- 説明に記載されている Cursor の永続的な保存先をレビュー、配置、計画、またはクリーンアップする場合に使用します。
- これらの保存先が古くなっている、競合している、機微情報を含んでいる、無視されている、範囲が広すぎる、または Cursor が古いガイダンスを忘れたり再利用したりする原因となっている場合に使用します。
使用しない場合
- Cursor の永続コンテキストを伴わない Codex のメモリ、通常のドキュメント、汎用的なプロンプト作業には使用しないでください。
- レビューの依頼は読み取り専用にしてください。文書化されたファイルベースのアーティファクト、または明示的に承認されたエクスポート経路が対象に含まれる場合を除き、User Rules と Team Rules は手動で管理してください。
ワークフローの選択
以下の 8 つのワークフローを、この固定順序ですべて提示してください。意図が明確な場合は簡潔に提示します。依頼された成果と実行方法に合うルートを推奨してください。何も指定されていない場合は review-chat を推奨し、ユーザーに選択を求めます。
| ワークフロー | 実行方法と結果 |
|---|---|
plan-run-cleanup-file | 1 つの記録:レビュー、承認済み計画、バックアップ、クリーンアップ、検証。 |
review-chat | チャット:読み取り専用のレビューと推奨事項。 |
review-file | 1 つの記録:読み取り専用のレビューと推奨事項。 |
cleanup-chat | チャットとバックアップ:レビュー、確度の高いアトミックなクリーンアップ、検証。 |
cleanup-file | 1 つの記録とバックアップ:レビュー、確度の高いアトミックなクリーンアップ、検証。 |
plan-cleanup-chat | チャット:レビューと承認済み計画。クリーンアップは行いません。 |
plan-cleanup-file | 1 つの記録:レビューと承認済み計画。クリーンアップは行いません。 |
plan-run-cleanup-chat | チャットとバックアップ:レビュー、承認済み計画、クリーンアップ、検証。 |
auto ワークフローを追加せず、意図に基づいてルートを選択してください。
- 直接的なレビュー依頼では
review-chatを既定とし、永続化が明示されている場合はreview-fileを選択します。 - 実行方法の希望を伴わない明示的なクリーンアップ依頼では、
plan-run-cleanup-fileを選択します。 - 実行方法と実行意図が明確な直接的な依頼では、要件に合う別のルートを選択してもかまいません。
- エージェントが自発的に有効化する場合は、関連する読み取り専用ルートのみ選択できます。既存のタスクで永続化がすでに求められている場合に限り
review-fileを使用してください。クリーンアップを推測してはなりません。 - 何も指定されていない場合、手掛かりが矛盾する場合、またはレビューかクリーンアップか、チャットかファイルか、実行の有無、対象パス、変更権限が曖昧な場合は、表を提示してユーザーに選択を求めます。
- 変更を伴うルートを選択できるのは、ユーザーが対象の Cursor コンテキスト範囲のクリーンアップをすでに依頼している場合に限ります。
詳細な調査を始める前に、選択可能なすべての選択肢を一度だけ提示し、Selected、Reason、対象パス、書き込み範囲、想定される成果物、保護対象の状態、Plan モードの利用可否、未解決の承認事項を明示してください。タスクですでに確定している事実と権限を再利用し、判明している項目を短い説明にまとめてください。選択が明確な場合は、その内容を伝えて作業を進めます。曖昧な場合は、一覧の調査を始める前に停止し、未解決の選択事項だけを尋ねてください。選択肢を再提示したり、変更されていない選択について再度尋ねたりしてはなりません。
ワークフローの選択によって、ファイル全体の削除、破壊的な復旧、User/Team の設定変更、有料または外部の操作、デプロイ、公開、範囲の拡大が許可されるわけではありません。
調査する入力
- リポジトリと、該当する
.cursor/rules、.cursorrules、AGENTS.md、提供された User/Team Rule のエクスポート、および提供されたメモリーバンクのパスのみを特定します。 - 異議のある主張を検証する必要がある場合に限り、現在のリポジトリの証拠を調査します。
- 以下の配置、分類、競合、安全な編集に関するリファレンスは、その判断が必要になった場合に限り読み込みます。レポートまたは計画のアセットを作成する場合は、必ず読み込みます。
ワークフロー
どのルートでも、計画や整理に着手する前に、明示的に依頼された範囲について同じ品質でレビューを行います。1つのファイルや主張に関する依頼は、ストア全体を調査する許可ではありません。ルート全体の一覧表示やスキャナーのコマンドではなく、対象を絞って読み込み、範囲内の競合を解決する場合に限り、他の証拠を参照します。納品方法によってレビューの品質を下げてはいけません。
-
選択されたルート、対象リポジトリとコンテキストのパス、該当する場合は保存先のパス、および保護対象の状態を特定します。
-
Cursor のコンテキストを、内容を出力せずに一覧化します。
node scripts/inventory-cursor-context.mjs --repo .メモリーバンクのアーティファクトを明示的に指定する場合は、
--memory-bank PATHを追加します。構造化された証拠が役立つ場合は、--jsonを使用します。 -
機密情報、古い情報、範囲が広すぎるもの、無視されるもの、レガシーなもの、ローカルなもの、または競合しやすいルールを探す場合は、秘匿化されたリスクスキャナーを実行します。
node scripts/scan-cursor-context-risks.mjs --repo . --json終了コード
1は検出事項が見つかったことを示し、スキャンの失敗を意味するものではありません。ペイロード全体を貼り付けるのではなく、件数と、秘匿化された検出事項のうち最も重要度の高いものを要約します。 -
Cursor の動作に影響する
.mdcのフロントマター項目を解析します:description、globs、alwaysApply。 -
.cursor/rules配下の通常の.mdファイルは、Cursor Project Rules のメタデータによって無視されることを指摘し、.mdcへの変換またはAGENTS.mdへの移動を提案します。 -
User Rules と Team Rules は、設定上の証拠、またはユーザー提供のエクスポートとして扱います。ただし、現在の文書化されたファイルシステムのパスを利用できる場合を除きます。
-
コンテキストファイルは範囲を区切って読み込み、機密情報を秘匿化します。
-
主張を1つずつ行に分けます。分類の前に、複合ルールを分割します。
-
異議のある主張は、異議の解決に必要なリポジトリのファイルのみを参照して検証します。優先順位が不明確な場合は、
references/conflict-resolution.mdを読み込みます。 -
各主張に、主要な分類を必ず1つだけ割り当てます:
KEEP、KEEP BUT REWRITE、MOVE TO CURSOR PROJECT RULE、MOVE TO AGENTS.md、MOVE TO REPO DOCS、MOVE TO CURSOR USER RULES、MOVE TO CURSOR TEAM RULES、MOVE TO SKILL、MOVE TO CONFIG、DELETE、またはASK USER。 -
高リスクの項目には、有用なコンテキストとしてのみ次のタグを付けます:
stale、duplicated、too-broad、too-specific、repo-specific、workflow、config、sensitive、conflicting、ignored、legacy、またはuseful。 -
すべての項目に、確信度(
high、medium、またはlow)と推奨アクションを付けます。 -
計画または編集の前に、レビューを完全に実施します。ルートの納品方法によってレビューの品質を下げたり、依頼された範囲を広げたりしてはいけません。
ルートの実行
review-chat:レビューをチャットに返し、永続的なキュレーションレポートは作成しません。review-file:キュレーション記録を1件保存し、コンテキストは変更しません。cleanup-chat:完了したレビューから確信度の高いアトミックなアクションのみを導き出し、変更対象のファイルをすべて正確にバックアップしてから適用し、変更したセクションを再読み込みして、検証結果をチャットで報告します。永続的なキュレーションレポートは作成しません。cleanup-file:変更前にキュレーション記録を作成します。保存に失敗した場合は停止します。その後、対象ファイルを正確にバックアップし、確信度の高いアトミックなアクションのみを適用して、同じ記録に実行内容と検証結果を追記します。plan-cleanup-chatとplan-cleanup-file:Plan ライフサイクルに入り、ユーザーとクリーンアップ計画を確定します。承認後は、Cursor コンテキストを変更せずに停止します。plan-run-cleanup-chatとplan-run-cleanup-file:Plan ライフサイクルに入り、クリーンアップ計画全体を確定して承認を得て、状態を再確認し、Plan モードを終了してから対象ファイルを正確にバックアップし、変更されていない計画のみを実行して検証します。計画の承認後に、一般的なクリーンアップの確認を再度求めてはいけません。
直接のクリーンアップ(cleanup-chat または cleanup-file)で許可されるのは、既存の編集可能なランタイム所有の Cursor コンテキストに対する、確信度の高いアトミックな編集、移動、または項目削除に限られます。ファイル全体の削除、新しいコンテキストファイルの作成、設定、User Rules、Team Rules、AGENTS.md、リポジトリのドキュメント、スキル、不確かなメモリバンクのスキーマ、確信度が中程度または低い変更、適用範囲の拡大は対象外とします。plan-run ルートでより広範なキュレーション変更を実行できるのは、承認された計画に各保存先、書き込みパス、バックアップ、ロールバック、個別の承認境界が明記されている場合に限ります。文書化された編集可能なエクスポートが明示的に対象範囲に含まれていない限り、User Rules と Team Rules は手動で変更します。
Plan ライフサイクル
すべてのルートで、アクティブな、または要求されたネイティブの Plan モードと、実際の書き込み権限を確認してください。Plan がアクティブな間、または権限が不明な場合は、レポート、バックアップ、クリーンアップのいずれも書き込んではいけません。手動でモードを切り替えなくても、読み取り専用で計画を続行できます。plan-* ルートまたは未解決の重要な質問がある場合は、references/plan-lifecycle.md を読みます。変更のない承認は再利用できます。モードを終了しただけでは承認にならず、未回答の質問は何の権限も与えません。書き込み前に状態を再確認し、重要な変更があった場合のみ再確認を求めます。Plan のみのルートでは、クリーンアップは許可されません。
このキュレーションワークフロー内では cursor-spec-interviewer を呼び出してはいけません。調査結果から、より広範で永続的なルール、リポジトリの仕様、または未解決の製品上の判断が必要と分かった場合は、選択されたキュレーションルートを完了してから、別のフォローアップとしてインタビュアーを提案してください。
ファイル納品の契約
ファイルルートでは、秘匿情報を除去したキュレーション記録を正確に1件保存します。既存のリポジトリ標準のレポート保存場所があればそれを優先します。なければ、<repo>/.agent-reports/cursor-memory-curation/<UTC timestamp>-<selection-id>.md を使用します。既存ファイルを上書きせず新しいパスを作成し、ルートの出力をすべてその記録にまとめます。
記録には Review、Plan、Execution Receipt、Deferred Work、Backup、Verification を含めます。ルートで実施しないフェーズには、理由を添えて not applicable と記載します。cleanup-file と plan-run-cleanup-file では、変更前に記録を作成します。保存に失敗した場合、クリーンアップは実行できません。チャットルートではレポートファイルを作成しません。バックアップディレクトリは必須の安全保護用成果物であり、キュレーションレポートには数えません。
--backup-root を明示的に指定する場合は、安定した非機密の --backup-root-alias が必要です。ファイルルートでは、スクリプトが報告する可搬性のある保存場所ロケーターと <storage-locator>/backup-manifest.json を保存します。正確な絶対パスのバックアップ先とマニフェストのパスは、永続化されないチャットでのみ報告し、リポジトリ成果物には記載しないでください。
安全ルール
- ルートが未解決の場合は調査しないでください。また、選択されたルートとユーザーの依頼によって、対象範囲が正確に指定されたクリーンアップが許可されていない限り、変更を加えないでください。
- Cursor のコンテキストファイルを、通知なく削除、書き換え、切り詰め、移動しないでください。
- 承認された編集の前に、対象ファイルを正確にバックアップし、バックアップパスを報告してください。
- シークレット、トークン、認証情報、顧客データ、非公開の識別子、機密性の高い個人データをそのまま出力しないでください。
- シークレットらしきデータが見つかった場合は、出力内で値を伏せ、可能な場合はファイルと行を特定し、削除を推奨してください。実際の認証情報の場合は、ローテーションも推奨してください。
- memory-bank のスキーマが不明確な場合は、直接編集しないでください。現在の記録またはチャット結果で保留にしてください。
- チャットのみの要約に基づいて User Rules または Team Rules を編集しないでください。代わりに、手動での対応を推奨してください。
- リポジトリ固有の前提を全体に適用しないでください。リポジトリのルールには、
AGENTS.md、Cursor Project Rules、またはリポジトリのドキュメントを優先してください。 - 広範囲にわたる破壊的なコマンドを実行しないでください。
参考資料
必要な場合にのみ読み込んでください。
- 配置と分類:
references/context-surface-anatomy.md、references/classification-rubric.md。 - 競合と安全な変更:
references/conflict-resolution.md、references/safe-editing-procedure.md。 - 例と出力成果物:
references/example-review-report.md、assets/review-report-template.md、assets/cleanup-plan-template.md。
スクリプト
必要な場合にのみ使用してください。すべてのスクリプトは非対話型で、Node.js 標準ライブラリのみを使用し、--help を受け付けます。
node scripts/inventory-cursor-context.mjs [--repo PATH] [--memory-bank PATH] [--json]
node scripts/scan-cursor-context-risks.mjs [--repo PATH] [--memory-bank PATH] [--json] [--max-findings N]
node scripts/backup-cursor-context.mjs [--repo PATH] [--memory-bank PATH] [--backup-root PATH --backup-root-alias NAME] [--include PATH ...]
- インベントリ作成は読み取り専用です。スキャナーも読み取り専用で、デフォルトで値を伏せ、検出結果数に上限を設けています。また、実行失敗ではなく検出結果がある場合に終了コード
1を返します。 backup-cursor-context.mjsは、ソースを編集せずに、既存のファイルを上書きしないバックアップとbackup-manifest.jsonを作成します。伏せ字のないバックアップデータとマニフェストは、Git のワークツリーの外に保管してください。事前チェックでは、安全でないルートとすべてのシンボリックリンクのパス構成要素を拒否します。トラバーサルエラーが発生した場合、ルートを作成する前に処理が失敗します。編集には正確な--includeパスを使用してください。include がゼロの場合は、従来の検出処理が維持されます。実行前に、ルートの安全性、事前チェック、マニフェストの照合、復旧についてreferences/safe-editing-procedure.mdを読んでください。
出力形式
上記のワークフロー告知を使用し、未解決の承認ゲートのみを報告してください。
レポートを作成する前に、assets/review-report-template.md を読み込み、正規の見出しおよびフィールド仕様として従ってください。ファイルルートでは、このテンプレート全体を1つのキュレーション記録にコピーしてください。チャットルートでは、該当するセクションのみをチャットに表示し、レポートファイルは作成しないでください。該当するすべてのフィールドを記入し、省略したフェーズには理由を添えて not applicable と記入し、機密情報の値は伏せてください。
編集前に、レビュー表と判断表を完成させてください。編集後は、同じ記録の受領記録も完成させてください。受領記録には、マニフェストの照合と不一致のパス、新規パス(created-no-preimage)とロールバック、バックアップモードとマニフェストパス、バックアップの整合性確認結果、および次の行スキーマを含めてください:| Changed path | Backup destination | Bytes | SHA-256 | Verification |。
完了条件
- 明確な権限、または解決済みの曖昧さに基づいて、8つの正規ワークフローのうち1つが選択されていること。エージェントの有効化を、クリーンアップの許可と推測しないこと。
- 該当するコンテキストと
.mdcメタデータがインベントリ化されているか、見つからなかったと報告されていること。User Rules/Team Rules は、サイレント編集ではなく、証拠または承認済みエクスポートとして扱われていること。 - すべての原子的な主張に、分類、リスクタグ、確信度、対応、および該当する場合は優先順位がより高い競合の証拠がそれぞれ1つずつ付与されていること。
- 計画と直接クリーンアップの境界が守られていること。
- チャット/ファイルでの提供が正規テンプレートの仕様に合致し、許可されたすべての編集について、正確なファイルのバックアップ、マニフェストの照合、再読み込み、整合性の確認結果が揃っていること。
障害モード
- サーフェスまたは設定エクスポートが見つからない場合:利用できない内容を報告し、必要に応じて手動でのユーザー/チームルールの推奨を提示します。
.cursor/rules内の通常の.mdファイル、または不明なメモリバンクのスキーマ:黙って編集せず、問題を明示して対応を保留します。該当する場合は、.mdcへの変換またはAGENTS.mdの移動を推奨します。- 機密情報または競合する内容:内容を伏せ、該当箇所と優先される情報源を示し、削除/ローテーションを推奨するか、書き換え、移動、削除、またはユーザーの判断が必要なものとして分類します。
- 永続化、バックアップ、または承認済み状態の再確認に失敗した場合:変更を加える前(またはさらなる変更を加える前)に停止し、失敗を報告します。ドリフトが生じた場合は、計画の策定に戻ります。