ITNSノートの処理
インストール済みのNotion MCPサーバーを使用します。各ノートの表現、書式、リンク、日付、優先度マーカー、ブロックタイプ、順序、ネストされた子要素を保持してください。ユーザーが明示的に要求しない限り、内容の要約、書き換え、分割、結合、重複排除、削除は行わないでください。
ソースページの解決
- ユーザーが指定したページ名を、
~/configs/goromail-categories.csvの最初の列に対して大文字小文字を区別せずに完全一致で照合します。 - 対応する2列目のNotionページIDを使用します。
- 完全一致がない場合、または複数の完全一致がある場合は、処理を停止してユーザーに質問します。似た名前からIDを推測しないでください。
ノートと転送先の発見
- ソースページに対して
notion_list_subpagesを呼び出し、候補となる転送先を収集します。 - ソースページに対して
recursive: trueを指定してnotion_list_blocksを呼び出します。親ブロックとそのすべての子孫を1つの分割不可能なノートツリーとして扱います。 - 隣接するトップレベルの段落、リストアイテム、コードブロック、その他の散文は、その内容が明らかに連続した思考を形成している場合、1つの複合ノートとして扱います。境界が不明確な場合は、その境界を曖昧として分類し、ユーザーに質問します。
- 見出し、子ページブロック、ページメンションリンク、その他のナビゲーションや構造ブロックは除外します。
Repository見出しが存在する場合、その後のルーズなコンテンツをソースノート領域として使用します。信頼できるソースノートの境界が存在しない場合は、移動する前に質問します。 - 関連する転送先の内容を再帰的なブロック一覧で調査します。転送先のタイトルだけでなく、その既存の主題から分類します。
- 不明瞭なリンクや曖昧なラベルの場合は、アクセス可能であればリンク先の内容を調査します。主題が不明確な場合は、推測せずに質問します。
自動判断または質問
以下のすべてが真の場合にのみ、ノートを自動的に移動します:
- 既存のサブページが1つだけ、意味的に強い適合性を持つ場合
- 完全なノートとその境界が理解されている場合
- 移動に書き換え、分割、結合、カテゴリの新規作成が必要ない場合
それ以外のすべてのケースは曖昧として扱います。完全なノートまたは忠実でコンパクトなプレビュー、可能性のある転送先、1つの推奨事項とその簡単な理由を提示します。そのノートを書き込む前に、ユーザーの判断を待ちます。新しいサブページを作成または命名する前に、必ず質問します。
曖昧なノートが判断を待っている間も、明らかなノートの処理は続行します。明らかな配置が、関連する曖昧な配置を黙って決定してしまわないようにしてください。
移動の実行と検証
- 1つのトップレベルノートツリーは
notion_move_blockで移動します。その子孫も一緒に移動します。 - 隣接するトップレベルブロックで構成される複合ノートは
notion_move_blocksで移動します。ブロックIDを元の順序で1回、1つの転送先に渡します。 - ユーザーが承認したカテゴリは
notion_create_subpageで作成し、その後、そのカテゴリに承認されたノートのみを移動します。 - テキスト追加と削除によるロスが発生する移動方法は決してエミュレートしないでください。
- 各バッチの後、転送元と転送先を再度リストします。転送元のすべてのブロックがなくなり、転送先のすべてのブロックが順序どおりに存在し、子カウントが一致し、ブロックタイプとテキストが保持されていることを確認します。
- 操作が部分的に失敗した場合は、それ以上の書き込みを停止し、両方のページを調査し、正確にコピー、アーカイブ、残存、または重複したブロックを報告してから修復を試みます。
- 再帰的なリストや順序付きバッチ移動が利用できない場合は、処理を停止し、複合ノートを安全に処理する前にNotion MCPサーバーをデプロイまたはアップグレードする必要があることを報告します。
自動移動、ユーザー承認による移動、作成されたページ、延期された曖昧なケース、および検証結果の簡潔な記録を最後に出力します。