実際に移行できるもの
ほぼ変更なしで移行できるスキル。 これが最大のポイントです。Manus のスキルは、SKILL.md に加えて「Pythonスクリプト、参照ドキュメント、テンプレートなどのオプションのバンドルリソース」で構成されており、Manus はこれらを「.skill ファイル、.zip アーカイブ、または直接の GitHub リポジトリリンク」としてエクスポートします。Cursor は起動時に、プロジェクトスコープの .agents/skills/ および .cursor/skills/、ユーザースコープの ~/.agents/skills/ および ~/.cursor/skills/ という4つのディレクトリからスキルを自動検出します。さらに、Cursor のドキュメントには知っておくべき一文があります。「互換性のために、Cursor は Claude および Codex のディレクトリ(.claude/skills/、.codex/skills/、~/.claude/skills/、~/.codex/skills/)からもスキルを読み込みます。」
そのため、解凍作業はフォルダへのコピーだけで済みます。両者とも、読み込みの挙動について同じように説明しています。Manus のスキルは「エージェントのコンテキストウィンドウを効率的に管理するために『段階的開示(Progressive Disclosure)』」を使用し、Cursor のスキルプロパティ一覧には「Progressive: スキルはオンデマンドでリソースを読み込み、コンテキストの使用効率を維持する」と記載されています。
コンテンツとしてのプロジェクト指示。 Manus のプロジェクトレベルのガイダンスに記述していた内容は、リポジトリルートの AGENTS.md または .cursor/rules ファイルになります。Cursor のルールは、フロントマターによって適用タイミングを決定する .mdc ファイルですが、ドキュメントでは AGENTS.md を「.cursor/rules のシンプルな代替手段」と説明しています。
リポジトリファイルとしてのファイル。 Manus がプロジェクトファイルとして保持していた、コードベースに属するものはすべてコミットするだけです。これは移行の中で最も面白みのない部分であり、同時に人々が最も時間を費やしてしまう部分でもあります。
それ以外は何も移行できません。具体的なリストは以下の通りです。
ナレッジベースを受け入れるコンテナが Cursor には存在しません。 Manus はこれを厳しく制限しています。「ユーザーナレッジベースは、Pro ユーザーは100件、Free ユーザーは50件に制限されています。」Cursor には、エントリー形式のナレッジストアが一切ありません。Cursor の永続化メカニズムはルールとスキル、つまり常にオンになっているか呼び出されるファイルであり、クエリ可能な事実のセットではありません。つまり、蓄積した40件や80件のエントリーは、ルールの文章に平坦化されるか、あるいは移行を諦めるしかありません。
この制限は二度読み返す価値があります。なぜなら、Manus がそのコンテナを何のために用意していたかを物語っているからです。制限に達したときの Manus 自身のアドバイスは、「最も重要で最近のニーズに基づいてナレッジベースのエントリーをフィルタリングし、不要なエントリーを削除すること」であり、「エントリーが多すぎるとシステムの応答品質に影響を与える可能性がある」と警告しています。100件のエントリーとは、厳選されたセットであり、アーカイブではありません。
タスク履歴は移行できません。 タスクデータバックアップは、過去の実行履歴であり、数十ギガバイトに及ぶ可能性があります。Cursor にはこれをインポートするパスはなく、仮にあったとしても有用な形にはなりません。それはコンテキストではなく、単なる記録です。
MCP コネクタとプロジェクトの資格情報は移行できません。 Manus は「共有プロジェクトレベルの資格情報」を持つコネクタをサポートしています。Cursor にも MCP はありますが、これらは移行するのではなく再構築するツールごとの設定であり、資格情報はどこかにコピーするのではなく再発行する必要があります。
自律的な呼び出しの形が変わります。 Manus において、スキルは「エージェントを汎用アシスタントから専門的なエキスパートに変える」ための手段でした。Cursor では、エージェントに「利用可能なスキルが提示され、コンテキストに基づいてそれらが関連しているかどうかをエージェントが判断」します。また、/ を入力して手動で呼び出すこともできます。計画しておくべき詳細として、「この方法で呼び出されたスキルは1つのメッセージに添付されます。セッション全体でスキルをオンにしておくには、Option+Enter (Mac) または Alt+Enter (Windows) でカスタムモードとして使用してください」とあります。最初から最後まで実行されていた Manus のワークフローは、コーディングエージェントがタスクの途中で採用するかどうかを判断するスキルへと変化します。
アカウントレベルの事項は個別に処理する必要があります。 Manus は「サービス変更後、Facebook でのログインは利用できなくなります」とし、一部のユーザーは「将来アカウントを復元するためにこのファイルを使用する必要がある」と述べています。これらはアカウントの管理作業であり、コンテキストではないため、移行作業と同じセッションで行うべきではありません。
手動での移行手順
ステップ 1: アーカイブに含まれる3つの要素に分類する
何かをコピーする前に、まず分類しましょう。ほとんどの人がアーカイブを一つの単位として移行しようとして行き詰まります。なぜなら、その3分の2には移行先がないからです。
エクスポートデータを開き、次の3つに分割します。スキル(.skill ファイル、.zip アーカイブ、またはプッシュ先の GitHub リポジトリ)、ナレッジベースのエントリー(あなた自身、あなたの仕事、制約に関する短い事実の記述)、そしてタスク履歴(それ以外のすべて、つまり大半の容量を占めるデータ)。
まだスキルをきれいに取り出していない場合、Manus には便利なショートカットがあります。「このワークフローをスキルとしてパッケージ化する」と指示すると、「必要な SKILL.md ファイルと関連スクリプトが生成」されます。何度も繰り返していた会話としてしか存在しなかったワークフローがある場合、この方法を使えば、手動で打ち直す必要のないポータブルなファイルに変換できます。
大容量のエクスポートについては、Manus が推奨するルートを使用してください。「メールやブラウザのダウンロード経由で数十ギガバイトを移動させるのではなく、OAuth 認証を介して Google Drive または OneDrive に直接エクスポートすることを強くお勧めします。」
ナレッジベースのエントリーをどうするか決める前に、まずは目を通してください。Pro でも最大100件なので、15分もあれば十分に読み通せるリストです。そして、この15分こそが移行プロセス全体の中で最も価値のある時間になります。また、この部分は他のツールが理解できるファイル形式になっていない唯一の部分でもあります。
ステップ 2: スキルを配置し、ナレッジの移行先を決める
Cursor が読み込むディレクトリにスキルを配置します。 特定のリポジトリに属するスキルの場合は、.agents/skills/<name>/SKILL.md に配置してコミットします。すべての場所で使用したいスキルの場合は、~/.agents/skills/ に配置します。Cursor は起動時にこれらを検出するため、コピーした後に再起動してください。
エクスポートによってファイルではなく GitHub のリンクが提供された場合でも問題ありません。Cursor のスキルは「ファイルとして保存され、リポジトリで追跡することも、GitHub リポジトリのリンクを介してインストールすることも可能」です。
各スキルのフロントマターの記述(description)を確認してください。 Cursor はこれに基づいて関連性を判断します。汎用エージェントを想定した説明(「リサーチ要求を処理する」など)が書かれた Manus のスキルは、コーディングセッションではほとんど起動しません。実際に行う作業の語彙を使って説明を書き直してください。
プロジェクトの指示を変換し、フォーマットを1つ選択します。 AGENTS.md を維持するのが最も手間のない選択肢であり、通常はこれで十分です。条件付きで読み込みたい場合にのみ .cursor/rules に変換してください。.mdc のフロントマターを使用すると、「常に適用(Always Apply)」、「インテリジェントに適用(Apply Intelligently:説明に基づいてエージェントが関連すると判断したとき)」、「特定のファイルに適用」、「手動で適用」を設定できます。
作業中は拡張子に注意してください。「.cursor/rules 内のプレーンな .md ファイルは、description、globs、alwaysApply を指定するフロントマターがないため、ルールシステムによって無視されます。プレーンな Markdown を好む場合は、代わりに AGENTS.md を使用してください。」Manus の指示を .md としてそのフォルダに貼り付けるのは、何も移行されないまま終わる最も静かな方法です。
And then the knowledge base entries, which is where people get stuck. Cursor 自身のガイダンスは、安易な移行方法に警鐘を鳴らしています。ルールで避けるべきことのリストには「コードベースにすでに存在するものを重複させること」が含まれており、ベストプラクティスでは「コンテンツをコピーする代わりにファイルを参照すること。これによりルールを短く保ち、コードの変更に伴ってルールが古くなるのを防ぐ」とされています。常にオンになっているルールに80件のナレッジエントリーを貼り付けると、すべてのリクエストにそのドキュメントが添付されて送信されることになります。Cursor はルールを500行未満に抑えることを推奨しています。
必要なものが数件だけであれば、それらはルールとして扱えます。しかし、本格的なナレッジベースを持っていたのであれば、それには適切なコンテナが必要です。ルールを確実に定着させる仕組みについては セッション間で Cursor のコンテキストを維持する で解説しています。また、その逆方向、つまり Cursor 向けの設定を外部に移行する方法は Claude Code から Cursor への移行 で紹介しています。
より良い方法:ナレッジベースをナレッジベースとして維持する
今起こったことを見てみましょう。スキルが移行できたのは、両方のツールが同じファイルフォーマットをサポートしていたからです。ナレッジベースが移行できなかったのは、Cursor にそのコンテナがないためです。そして、Manus 自身の100件という制限が示すように、それは最初からアーカイブとして設計されたものではありませんでした。
これこそが、今回の移行における本当の教訓です。手順(スキル)はポータブルになりました。Agent Skills 標準がそれを解決したからです。しかし、事実(ナレッジ)はポータブルではありません。ツールごとに異なる形式で保持され、異なる上限が設けられ、ツールを離れると失われてしまいます。
それこそが MemoryLake が提供するものです。あなたの永続的なナレッジを、閲覧、修正、削除可能なエントリーとして保持し、ツールがリクエストごとに送信するファイルではなく、ツールがクエリするレイヤーとして機能させます。セットアップは3つのステップで完了します。
ステップ 1: API キーを作成する
MemoryLake にサインインし、API キーを作成します。接続するすべてのツールで共通して使用できる1つの資格情報です。

ステップ 2: 最初の記憶(メモリー)をアップロードする
1つの主張につき1つの短いエントリー。Manus のナレッジベースがソース素材となり、すでにほぼ適切な形になっています。

理由が紐付けられた制約。 「水曜の夜に財務締めが行われるため、レポートは木曜に送信する」。指示には締め切りだけが書かれますが、誰かがその理由を疑問視したときに生き残るのは、この理由付きの制約だけです。
すでに除外されたアプローチとその理由。 どのルールファイルにも収まらず、新しいエージェントが登場するたびに再提案されてしまうカテゴリーです。
誰も教えてくれない環境の事実。 ドキュメントに記載されていないしきい値でレート制限がかかる API、2日間の遅延があるデータセット、PDF を受け付けないクライアントなど。
あなた自身の作業コンテキスト。 役割、技術スタック、慣習など、かつて汎用エージェントがあなたについて知っていたものの、新しいコーディングエージェントは知らないエントリーです。
ステップ 3: AI とエージェントを接続する
使用しているツールを接続します。MemoryLake は MCP および API 経由でアクセスできるため、Claude Code、Codex、OpenClaw などの MCP ネイティブエージェントは MCP サーバーを指定することで接続でき、他のアシスタントは API を介して同じ記憶を読み取ることができます。これにより、次にツールを切り替えるときは、ナレッジの移行ではなく、単なる設定変更で済むようになります。

3つの率直な制限事項があります。MemoryLake は Manus のバックアップアーカイブを読み込まず、タスク履歴もインポートしません。 ステップ1の手動分類は必要であり、アーカイブは安全な場所に保管すべき記録です。MemoryLake はあなたやエージェントが入力したものだけを保持するため、ステップ2は手動で行う必要があります。また、資格情報のストアではないため、コネクタやプロジェクトレベルの資格情報はコピーするのではなく、新しいツールで再発行する必要があります。
実務における変化
アーカイブが障害にならなくなります。 アーカイブの3分の2に移行先がないと分かれば、移行作業は午後の時間を丸ごと潰す混乱ではなく、15分の分類作業で終わります。
スキルが特定のツール専用の作業ではなくなります。 同じ SKILL.md が Cursor、Claude Code、Codex で読み込まれます。一度作成したワークフローは、あなたの資産になります。
エントリーの上限がボトルネックにならなくなります。 Pro の100件という制限は、ストレージの都合ではなく、厳選を強制するための機能でした。厳選された状態は維持しつつ、上限を取り払いましょう。
新しいツールでもルールファイルを短く保てます。 ルールが肥大化する理由は、「指示」と「記憶」という2つの役割を同時に担っているからです。これらを分離すれば、Cursor の500行というガイドラインを気にする必要はなくなります。
「エージェントがまだ私の仕事を理解していない」に対する本当の解決策が得られます。「ルールをさらに書く」のではなく、「事実は最初からルールの中にはなかった」ということです。これについては なぜ RAG は記憶ではないのか で詳しく解説しています。
Manus から Cursor への移行ベストプラクティス
何よりも先に、スキルをファイルとしてエクスポートします。 これらは確実な移行先がある部分であり、.skill、.zip、GitHub リンクのいずれも機能します。
大容量のエクスポートには、Google Drive または OneDrive への OAuth ルートを使用します。 タスクデータが数十ギガバイトに達することがあるため、Manus が特に推奨している方法です。
ナレッジベースのエントリーは手動で確認します。 最大100件なので十分に読めるリストであり、ファイルフォーマットが存在しない唯一の部分です。
新しいコンテキストに合わせてスキルの説明を書き直します。 Cursor は説明に基づいてスキルを選択します。汎用エージェント向けに書かれた説明は、コーディングセッションでは起動しません。
.cursor/rules 内にプレーンな .md を放置しないでください。 暗黙的に無視されます。フロントマター付きの .mdc を使用するか、AGENTS.md を使用してください。
ポータビリティのために .agents/skills/ を優先します。 Cursor、Claude Code、Codex はすべて重複するディレクトリからスキルを読み込みます。共有ディレクトリを選択することで、二重にコピーする手間を省けます。
スキルをコピーした後は Cursor を再起動します。 スキルの検出は起動時に行われます。
資格情報は移行するのではなく再発行します。 離脱するプラットフォームのコネクタ資格情報は、移動させるのではなくローテーション(再発行)すべきです。
事実はルールファイルの外に置きます。 ルールは方向性とポインタであり、推論こそが、あなたが記述しなかったケースをエージェントに処理させる鍵となります。この仕組みについては なぜエージェントはあなたが書いた指示ファイルを無視するのか で説明しています。
結論
Manus から Cursor への移行は、多くの人が作業の途中で気づく明確な境界線で分かれています。スキルは、両方のツールが Agent Skills 標準を実装し、SKILL.md を読み込むため移行可能です。Cursor は互換性のために .claude/skills/ や .codex/skills/ からも読み込むため、フォルダのコピーと再起動が作業の大部分を占めます。プロジェクトの指示は、フォーマットの決定と拡張子の罠に注意すれば、AGENTS.md または .cursor/rules に変換できます。
移行できないのはナレッジベースです。Manus は Pro で100件、Free で50件に制限し、増やすのではなく削減することを推奨していました。Cursor にはこれに相当するコンテナが一切なく、ドキュメントでもそのコンテンツを常にオンのルールに貼り付けることに反対しています。タスク履歴も移行できず、移行すべきでもありません。
したがって、何かをコピーする前に、アーカイブをスキル、エントリー、履歴に分類してください。スキルを .agents/skills/ に配置し、指示を変換し、エントリー(制約、除外されたアプローチ、誰も教えてくれない事実)をツールがクエリできる場所に置きます。そうすれば、次の移行はディレクトリのコピーと設定変更だけで済むようになります。それこそが、今回の移行があるべき姿だったのです。