概念コア概念動作原理

Concept

動作原理

信頼できるアーキテクチャと公開境界:サーバー構成、ライフサイクル、サブシステムノード、クラウド境界。

シンプルなアーキテクチャ:7段階のメモリパイプライン

XMemoは、7段階のパイプライン(Capture → Scope → Retrieve → Rerank → Assemble → Govern → Consolidate)を通じてエージェントメモリを処理します。各段階が専用の責務を担い、メモリ操作の高速性、精度、境界分離、検証可能性を保証します:

  • Capture: 標準のModel Context Protocol(MCP)またはREST APIを介してAIクライアントからの書き込み・更新リクエストを受信し、保存前に機密データをサニタイズします。ユーザーにとっての意味: エージェントは標準ツールを通じてシークレットや個人情報を漏洩させることなく、メモ、決定事項、好みを自動的に保存できます。
  • Scope: 呼び出し元のアイデンティティコンテキストを解決し、ユーザー、セッション、エージェント、ワークスペース層にわたる厳格なマルチテナント境界を適用します。ユーザーにとっての意味: 各エージェントは認可された境界内のメモリのみにアクセスするため、個人データとチームデータが安全に隔離されます。
  • Retrieve: ベクトル意味埋め込みとキーワード完全一致検索を組み合わせたハイブリッド検索エンジンを使用して、保存されたメモリを検索します。ユーザーにとっての意味: エージェントはトピックの意味による検索でも、正確なフレーズや識別子の検索でも、適切なファクトを確実に想起できます。
  • Rerank: 意味的関連性、新しさ、重要度ウェイトのバランスを評価して候補メモリをスコアリングします。ユーザーにとっての意味: エージェントは古くなった会話断片や優先度の低い情報ではなく、最も関連性が高く最新のコンテキストを受け取ります。
  • Assemble: 呼び出し元が指定したトークンおよびバイト予算を厳格に適用しながら、想起されたメモリをプロンプト即応のコンテキストにパッケージ化します。ユーザーにとっての意味: 注入されたメモリがモデルのコンテキストウィンドウをオーバーフローさせたり、予期せぬトークンコストを発生させたりすることはありません。
  • Govern: 操作監査ログを記録し、バージョン履歴(memory_versions)を追跡し、キーガード/保管庫モードが有効な場合は暗号化エンベロープを適用します。ユーザーにとっての意味: すべてのメモリ更新は追跡可能、検証可能、復元可能であり、完全な監査説明責任を備えています。
  • Consolidate: メモリ統合(Dream)のプレビューを行い、最近のエピソード的対話を構造化された候補インサイトに統合します(保存前に人間の確認が必要です)。ユーザーにとっての意味: 自動的な予期しない変更を加えたりインタラクティブな対話を遅延させたりすることなく、確認用の有用なインサイトが準備されます。

アーキテクチャ内部構造 / エビデンス

XMemo コードベースに対して直接検証された、信頼できるアーキテクチャ実装の詳細、実行トレース、および実証的コントラクト。以下のセクションでは、具体的なランタイム構成、分離されたサブシステム境界、および正式な検証マトリックスについて説明します。

アーキテクチャ不変条件と中核原則

XMemo は公開クライアントインターフェースと内部サブシステム実行を厳格に分離する不変条件に基づいて設計されています。機能はソースコードの根拠に拘束され、プライベート構成やクラスタキーは平文シークレット露出ゼロの原則下で保護されます。

  • 平文シークレットの露出ゼロ: クライアント設定ファイル、ログ、診断応答に平文 Bearer トークンや DB 接続文字列が含まれることはありません。
  • 検証済みソース出所: 保存されたすべての記憶、バージョン履歴、引用は不変のメタデータと監査証跡を保持します。
  • 決定論的トークン・バイト予算: 呼び出し元が指定した制限を厳格に順守し、LLM コンテキスト溢れを防止します。
  • プランおよび機能ゲートの境界: マルチテナント BYODB、分散同期、およびバックグラウンド Dream スケジューリングは、明示的なワークスペース設定、機能フラグ、およびプラン境界によって制御されます。

サーバー構成とライフサイクルトポロジ

サーバー初期化は、デプロイ時の構成・ツール登録を実行時リクエスト処理から完全に分離します。クライアントがサーバーを直接マウントすることはなく、Starlette/FastAPI サーバーが FastMCP をマウントしてアダプター経由で接続します。

  • Step 1 [HOST_COMPOSITION]: Starlette/FastAPI サーバーが /mcp で FastMCP ASGI アプリをマウント — 関係: SERVER_MOUNTS_APP — サブシステム: ASGI サーバーマウント — 境界: パブリック HTTP イングレス。
  • Step 2 [MOUNT_ADAPTER]: mount_streamable_mcp が streamable_http_app を MemoryOSMcpMountAdapter でラップし CORS やスコープを処理 — 関係: ADAPTS_ASGI_APP — サブシステム: ストリーミングプロトコルアダプター — 境界: プロトコルブリッジ。
  • Step 3 [AUTH_REGISTRATION]: install_mcp_tool_surface が _call_tool_with_oauth_errors をツールハンドラとして登録 — 関係: REGISTERS_TOOL_WRAPPER — サブシステム: 認証・ツールディスパッチゲート — 境界: 認証済みツールサーフェス。
+---------------------------------------------------------------------------------------------------+
| [DEPLOYMENT-TIME SERVER COMPOSITION & TOPOLOGY: 2 INDEPENDENT BRANCHES]                           |
|                                                                                                   |
| [BRANCH 1: SERVER ASGI MOUNT BRANCH]                                                              |
|  +-------------------------------------------------------+                                        |
|  | Host ASGI Server (Starlette / FastAPI)                | [PUBLIC_BOUNDARY]                      |
|  | Role: FastMCP Host Ingress Gateway                    | [PUBLIC_BOUNDARY]                      |
|  +-------------------------------------------------------+                                        |
|                             |                                                                     |
|                             | Relation: SERVER_MOUNTS_APP                                         |
|                             | Status: [PUBLIC_BOUNDARY (VERIFIED)]                                |
|                             v                                                                     |
|  +-------------------------------------------------------+                                        |
|  | mount_streamable_mcp                                  | [INTERNAL_SUBSYSTEM]                   |
|  | Role: Streamable HTTP Application Adapter             | [INTERNAL_SUBSYSTEM]                   |
|  +-------------------------------------------------------+                                        |
|                             |                                                                     |
|                             | Relation: ADAPTS_ASGI_APP                                           |
|                             | Status: [INTERNAL_SUBSYSTEM (VERIFIED)]                             |
|                             v                                                                     |
|  +-------------------------------------------------------+                                        |
|  | MemoryOSMcpMountAdapter                               | [PUBLIC_BOUNDARY]                      |
|  | Role: ASGI Protocol Bridge & Connection Handler       | [PUBLIC_BOUNDARY]                      |
|  +-------------------------------------------------------+                                        |
|                                                                                                   |
| [BRANCH 2: TOOL SURFACE REGISTRATION BRANCH]                                                      |
|  +-------------------------------------------------------+                                        |
|  | install_mcp_tool_surface                              | [INTERNAL_SUBSYSTEM]                   |
|  | Role: MCP Tool Surface Registration Pipeline          | [INTERNAL_SUBSYSTEM]                   |
|  +-------------------------------------------------------+                                        |
|                             |                                                                     |
|                             | Relation: REGISTERS_TOOL_WRAPPER                                    |
|                             | Status: [INTERNAL_SUBSYSTEM (VERIFIED)]                             |
|                             v                                                                     |
|  +-------------------------------------------------------+                                        |
|  | FastMCP Tool Ingress Wrapper (_call_tool_with_oauth)  | [PUBLIC_BOUNDARY]                      |
|  | Role: Authenticated Tool Invocation & Error Handler   | [PUBLIC_BOUNDARY]                      |
|  +-------------------------------------------------------+                                        |
+---------------------------------------------------------------------------------------------------+

実行時トレース

実行時、クライアント要求は 4 つの独立した確定的操作フローに沿って実行されます。すべてのステップが呼び出し関係と明示的なアーキテクチャ境界分類に拘束されます:

  • OP_REMEMBER_WRITE [記憶 / 書き込みトレース: 13 ステップ]: 外部クライアント [PUBLIC_INGRESS] -> MemoryOSMcpMountAdapter [TRANSPORT_ADAPTER] -> FastMCP ASGI ディスパッチ -> ツール認証ゲート -> remember ツール -> セットアップ検証ゲート -> PII 墨消し封筒 -> セキュリティ封筒(Keyguard/Vault モード有効時に暗号化) -> 永続化ストレージエンジン。プロトコル受信から永続化までの検証済み 13 ステップ。
  • OP_RECALL_READ [想起 / 読み取りトレース: 12 ステップ]: 外部クライアント [PUBLIC_INGRESS] -> MemoryOSMcpMountAdapter [TRANSPORT_ADAPTER] -> FastMCP ASGI ディスパッチ -> ツール認証ゲート -> recall ツール -> BoundSpace マルチテナント分離 -> ハイブリッド検索エンジン -> セマンティックリランカー -> コンテキスト予算アセンブラ -> 公開引用フォーマッタ。検索から予算制御までの検証済み 12 ステップ。
  • OP_UPDATE_VERSION [更新 / バージョン管理トレース: 13 ステップ]: 外部クライアント [PUBLIC_INGRESS] -> MemoryOSMcpMountAdapter [TRANSPORT_ADAPTER] -> FastMCP ASGI ディスパッチ -> ツール認証ゲート -> update_memory ツール -> セットアップ検証ゲート -> PII 墨消し封筒 -> セキュリティ封筒(Keyguard/Vault モード有効時に暗号化) -> 永続化エンジン -> 不変バージョン DAG コントローラー。更新と DAG 置き換えの検証済み 13 ステップ。
  • OP_FORGET_LIFECYCLE [忘却 / ライフサイクルトレース: 11 ステップ]: 外部クライアント [PUBLIC_INGRESS] -> MemoryOSMcpMountAdapter [TRANSPORT_ADAPTER] -> FastMCP ASGI ディスパッチ -> ツール認証ゲート -> forget ツール -> セットアップ検証ゲート -> 削除フラグ永続化 -> バックグラウンド保持デーモン -> 検索クエリ除外フィルタ。削除と保持管理の検証済み 11 ステップ。
+------------------------------------------------------------------------------------------------------------------------+
| [RUNTIME EXECUTION TRACES: 4 CANONICAL OPERATION FLOW DIAGRAMS]                                                        |
|                                                                                                                        |
| 1. OP_REMEMBER_WRITE [WRITE INGRESS FLOW: 13 STEPS]                                                                    |
|     Step 1:   External Client --[CLIENT_REQUESTS_ENDPOINT]--> MemoryOSMcpMountAdapter                                  |
|              Boundary: Public Ingress Gateway [PUBLIC_BOUNDARY]                                                        |
|     Step 2:   MemoryOSMcpMountAdapter --[DELEGATES_ASGI_REQUEST]--> FastMCP.streamable_http_app                        |
|              Boundary: ASGI Streamable Mount Adapter [INTERNAL_SUBSYSTEM]                                              |
|     Step 3:   FastMCP --[DISPATCHES_TOOL_INVOCATION]--> _call_tool_with_oauth_errors                                   |
|              Boundary: Tool Surface Ingress Gate [INTERNAL_SUBSYSTEM]                                                  |
|     Step 4:   _call_tool_with_oauth_errors --[DISPATCHES_TOOL]--> remember tool                                        |
|              Boundary: MCP Tool Dispatch Handler [PUBLIC_BOUNDARY]                                                     |
|     Step 5:   remember tool --[CALLS]--> Identity Context Resolver                                                     |
|              Boundary: Identity & Authentication Context [INTERNAL_SUBSYSTEM]                                          |
|     Step 6:   remember tool --[CALLS]--> Workspace Setup Gate                                                          |
|              Boundary: Workspace Initialization Gate [INTERNAL_SUBSYSTEM]                                              |
|     Step 7:   Workspace Setup Gate --[CALLS]--> Initialization Validator                                               |
|              Boundary: Setup Verification Gate [INTERNAL_SUBSYSTEM]                                                    |
|     Step 8:   remember tool --[CALLS]--> Write Preparation Pipeline                                                    |
|              Boundary: Memory Write Preparation [INTERNAL_SUBSYSTEM]                                                   |
|     Step 9:   Write Preparation Pipeline --[CALLS]--> PII Sanitization Envelope                                        |
|              Boundary: Sensitive Data Redaction [INTERNAL_SUBSYSTEM]                                                   |
|     Step 10:  Write Preparation Pipeline --[CALLS]--> Security Envelope (encryption when keyguard/vault mode is active)|
|              Boundary: Cryptographic Security Envelope [INTERNAL_SUBSYSTEM]                                            |
|     Step 11:  remember tool --[CALLS]--> Tenant Isolation Envelope                                                     |
|              Boundary: Multi-Tenant Workspace Binding [INTERNAL_SUBSYSTEM]                                             |
|     Step 12:  remember tool --[CALLS]--> Memory Manager Core Engine                                                    |
|              Boundary: Core Memory Management [INTERNAL_SUBSYSTEM]                                                     |
|     Step 13:  Memory Manager Core Engine --[CALLS]--> Persistence Storage Engine                                       |
|              Boundary: Persistent Storage Engine [INTERNAL_SUBSYSTEM]                                                  |
|                                                                                                                        |
| 2. OP_RECALL_READ [READ RETRIEVAL FLOW: 12 STEPS]                                                                      |
|     Step 1:   External Client --[CLIENT_REQUESTS_ENDPOINT]--> MemoryOSMcpMountAdapter                                  |
|              Boundary: Public Ingress Gateway [PUBLIC_BOUNDARY]                                                        |
|     Step 2:   MemoryOSMcpMountAdapter --[DELEGATES_ASGI_REQUEST]--> FastMCP.streamable_http_app                        |
|              Boundary: ASGI Streamable Mount Adapter [INTERNAL_SUBSYSTEM]                                              |
|     Step 3:   FastMCP --[DISPATCHES_TOOL_INVOCATION]--> _call_tool_with_oauth_errors                                   |
|              Boundary: Tool Surface Ingress Gate [INTERNAL_SUBSYSTEM]                                                  |
|     Step 4:   _call_tool_with_oauth_errors --[DISPATCHES_TOOL]--> recall tool                                          |
|              Boundary: MCP Tool Dispatch Handler [PUBLIC_BOUNDARY]                                                     |
|     Step 5:   recall tool --[CALLS]--> Search Memory Implementation                                                    |
|              Boundary: Search Query Coordinator [INTERNAL_SUBSYSTEM]                                                   |
|     Step 6:   Search Memory Implementation --[CALLS]--> Identity Context Resolver                                      |
|              Boundary: Identity & Authentication Context [INTERNAL_SUBSYSTEM]                                          |
|     Step 7:   Search Memory Implementation --[CALLS]--> BoundSpace Multi-Tenant Isolation                              |
|              Boundary: Scope Isolation Boundary [INTERNAL_SUBSYSTEM]                                                   |
|     Step 8:   Search Memory Implementation --[CALLS]--> Memory Manager Search Service                                  |
|              Boundary: Core Search Controller [INTERNAL_SUBSYSTEM]                                                     |
|     Step 9:   Memory Manager Search Service --[CALLS]--> Hybrid Retrieval Engine                                       |
|              Boundary: Hybrid Vector & Text Retrieval [INTERNAL_SUBSYSTEM]                                             |
|     Step 10:  Hybrid Retrieval Engine --[CALLS]--> Semantic Relevance Reranker                                         |
|              Boundary: Candidate Scorer & Reranker [INTERNAL_SUBSYSTEM]                                                |
|     Step 11:  Hybrid Retrieval Engine --[CALLS]--> Response Budget Assembler                                           |
|              Boundary: Token & Byte Budget Manager [INTERNAL_SUBSYSTEM]                                                |
|     Step 12:  Response Budget Assembler --[CALLS]--> Public Citation & Receipt Formatter                               |
|              Boundary: Provenance Citation Formatter [PUBLIC_BOUNDARY]                                                 |
|                                                                                                                        |
| 3. OP_UPDATE_VERSION [VERSIONING & CORRECTION FLOW: 13 STEPS]                                                          |
|     Step 1:   External Client --[CLIENT_REQUESTS_ENDPOINT]--> MemoryOSMcpMountAdapter                                  |
|              Boundary: Public Ingress Gateway [PUBLIC_BOUNDARY]                                                        |
|     Step 2:   MemoryOSMcpMountAdapter --[DELEGATES_ASGI_REQUEST]--> FastMCP.streamable_http_app                        |
|              Boundary: ASGI Streamable Mount Adapter [INTERNAL_SUBSYSTEM]                                              |
|     Step 3:   FastMCP --[DISPATCHES_TOOL_INVOCATION]--> _call_tool_with_oauth_errors                                   |
|              Boundary: Tool Surface Ingress Gate [INTERNAL_SUBSYSTEM]                                                  |
|     Step 4:   _call_tool_with_oauth_errors --[DISPATCHES_TOOL]--> update_memory tool                                   |
|              Boundary: MCP Tool Dispatch Handler [PUBLIC_BOUNDARY]                                                     |
|     Step 5:   update_memory tool --[CALLS]--> Identity Context Resolver                                                |
|              Boundary: Identity & Authentication Context [INTERNAL_SUBSYSTEM]                                          |
|     Step 6:   update_memory tool --[CALLS]--> Workspace Setup Gate                                                     |
|              Boundary: Workspace Initialization Gate [INTERNAL_SUBSYSTEM]                                              |
|     Step 7:   update_memory tool --[CALLS]--> Scope Validation Gate                                                    |
|              Boundary: Workspace Scope Boundary [INTERNAL_SUBSYSTEM]                                                   |
|     Step 8:   update_memory tool --[CALLS]--> Write Preparation Pipeline                                               |
|              Boundary: Memory Write Preparation [INTERNAL_SUBSYSTEM]                                                   |
|     Step 9:   Write Preparation Pipeline --[CALLS]--> PII Sanitization Envelope                                        |
|              Boundary: Sensitive Data Redaction [INTERNAL_SUBSYSTEM]                                                   |
|     Step 10:  update_memory tool --[CALLS]--> Tenant Isolation Envelope                                                |
|              Boundary: Multi-Tenant Workspace Binding [INTERNAL_SUBSYSTEM]                                             |
|     Step 11:  update_memory tool --[CALLS]--> Memory Manager Core Engine                                               |
|              Boundary: Core Memory Management [INTERNAL_SUBSYSTEM]                                                     |
|     Step 12:  Memory Manager Core Engine --[CALLS]--> Persistence Storage Engine                                       |
|              Boundary: Persistent Storage Engine [INTERNAL_SUBSYSTEM]                                                  |
|     Step 13:  Persistence Storage Engine --[CALLS]--> Immutable Version DAG Controller                                 |
|              Boundary: Version DAG Supersession Engine [INTERNAL_SUBSYSTEM]                                            |
|                                                                                                                        |
| 4. OP_FORGET_LIFECYCLE [RETENTION & LIFECYCLE FLOW: 11 STEPS]                                                          |
|     Step 1:   External Client --[CLIENT_REQUESTS_ENDPOINT]--> MemoryOSMcpMountAdapter                                  |
|              Boundary: Public Ingress Gateway [PUBLIC_BOUNDARY]                                                        |
|     Step 2:   MemoryOSMcpMountAdapter --[DELEGATES_ASGI_REQUEST]--> FastMCP.streamable_http_app                        |
|              Boundary: ASGI Streamable Mount Adapter [INTERNAL_SUBSYSTEM]                                              |
|     Step 3:   FastMCP --[DISPATCHES_TOOL_INVOCATION]--> _call_tool_with_oauth_errors                                   |
|              Boundary: Tool Surface Ingress Gate [INTERNAL_SUBSYSTEM]                                                  |
|     Step 4:   _call_tool_with_oauth_errors --[DISPATCHES_TOOL]--> forget tool                                          |
|              Boundary: MCP Tool Dispatch Handler [PUBLIC_BOUNDARY]                                                     |
|     Step 5:   forget tool --[CALLS]--> Identity Context Resolver                                                       |
|              Boundary: Identity & Authentication Context [INTERNAL_SUBSYSTEM]                                          |
|     Step 6:   forget tool --[CALLS]--> Workspace Setup Gate                                                            |
|              Boundary: Workspace Initialization Gate [INTERNAL_SUBSYSTEM]                                              |
|     Step 7:   forget tool --[CALLS]--> Memory Manager Core Engine                                                      |
|              Boundary: Core Memory Management [INTERNAL_SUBSYSTEM]                                                     |
|     Step 8:   Memory Manager Core Engine --[CALLS]--> Persistence Storage Engine                                       |
|              Boundary: Persistence Tombstone Engine [INTERNAL_SUBSYSTEM]                                               |
|     Step 9:   Background Lifecycle Daemon --[BATCH_POLICY_EVALUATION]--> Retention Policy Evaluator                    |
|              Boundary: Archive Policy Evaluation [INTERNAL_SUBSYSTEM]                                                  |
|     Step 10:  Background Lifecycle Daemon --[BATCH_POLICY_EVALUATION]--> Importance Decay Evaluator                    |
|              Boundary: Importance Decay Engine [INTERNAL_SUBSYSTEM]                                                    |
|     Step 11:  Hybrid Retrieval Engine --[EXCLUDES_AT_QUERY]--> Database Storage Engine                                 |
|              Boundary: Query-Time Tombstone Filter [INTERNAL_SUBSYSTEM]                                                |
+------------------------------------------------------------------------------------------------------------------------+

サブシステム分解と境界分類

システムは 10 個の検証済みサブシステムノードで構成され、各ノードは厳格な境界分類(PUBLIC_BOUNDARY または INTERNAL_SUBSYSTEM)および実証的エビデンス状態(SOURCE_BACKED_PUBLIC_CONTRACT / VERIFIED、CONCEPTUAL_DELEGATED、または NOT_VERIFIED)を保持します:

  • NODE_1_CLIENT_AGENT_LAYER: クライアント・エージェント層 (@xmemo/client, Claude Desktop, Cursor, Codex) — 分類: [PUBLIC_BOUNDARY] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_2_TRANSPORT_ADAPTER: MCP トランスポート・プロトコルアダプタ (MemoryOSMcpMountAdapter, mount_streamable_mcp) — 分類: [PUBLIC_BOUNDARY] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_3_IDENTITY_AUTH_GATE: 身元・認可ゲートウェイ (_call_tool_with_oauth_errors, install_mcp_tool_surface) — 分類: [PUBLIC_BOUNDARY] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_4_SANITIZATION_ENVELOPE: PII 墨消し・暗号封筒 (sanitize_server_write, enforce_memory_write_envelope) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_5_SCOPE_ISOLATION_GUARD: スコープ・マルチテナント分離ガード (BoundSpace, assert_requested_team_matches_bound_space) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_6_SEARCH_TEMPORAL_PARSER: 検索・時間的構文解析器 (TemporalQuerySpec, extract_temporal_context) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_7_CANDIDATE_SCORER: 候補スコアリング・リランカー (SearchEngine.rerank_recall_results) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_8_VERSION_LIFECYCLE_ENGINE: バージョン・ライフサイクル制御器 (VersionController.superseded_snapshot) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_9_CONTEXT_BUDGET_ASSEMBLER: コンテキスト予算アセンブラ (_apply_recall_response_budget) — 分類: [INTERNAL_SUBSYSTEM] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].
  • NODE_10_PUBLIC_RECEIPT_CITATION: 公開受領証・引用フォーマッタ (_public_recall_meta) — 分類: [PUBLIC_BOUNDARY] — エビデンス状態: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)].

オープンソースとマネージドクラウドサービスの境界

公開アーキテクチャの主張はコード契約に対して評価されます。主張は VERIFIED(検証済み)または NOT_VERIFIED(未検証/反論済み)として厳格に分類されます:

  • STMT_01_PROVENANCE_ATTRIBUTION [VERIFIED]: XMemo は操作監査ログを記録し、バージョン履歴(memory_versions)を保持し、キーガード/保管庫モードが有効な場合は暗号化エンベロープを適用します。 アーキテクチャ: 暗号化セキュリティエンベロープ機構。
  • STMT_02_CROSS_CLIENT_CONTINUITY [VERIFIED]: 取得された記憶は標準 JSON-RPC 経由で任意の MCP クライアントから即座に利用可能です。 アーキテクチャ: ストリーミング FastMCP ASGI アダプター。
  • STMT_03_REALTIME_CORRECTION [VERIFIED]: 事実更新は不変の履歴を維持しつつ親ポインタ経由で競合記憶を置き換えます。 アーキテクチャ: 不変バージョン DAG コントローラー。
  • STMT_04_TOKEN_BUDGET_GUARANTEE [VERIFIED]: 想起コンテキスト注入は指定された予算制限を厳格に順守します。 アーキテクチャ: 決定的トークン予算アセンブラ。
  • STMT_05_ZERO_TOKEN_EXPOSURE [VERIFIED]: 未認証リクエストはゲートウェイで直ちに拒否され、トークン漏洩や DB 照会は発生しません。 アーキテクチャ: イングレス認証・スコープ分離ゲート。
  • STMT_06_BACKEND_OPEN_SOURCE_CLAIM [NOT_VERIFIED]: バックエンド全体のオープンソース主張は却下されました。クライアント SDK(@xmemo/client)とローカル MCP アダプタのみがオープンソースです。マルチテナントクラウド基盤は商用サービスです。
  • STMT_07_AUTONOMOUS_CONSENSUS_CLAIM [NOT_VERIFIED]: 組織間の自律的合意機能は却下されました。テナント分離は厳格であり、自動マージ機能は実装されていません。
  • STMT_08_ZERO_LATENCY_REPLICATION_CLAIM [NOT_VERIFIED]: ゼロレイテンシグローバル複製の主張は却下されました。検索はローカル/埋め込みインデックスを使用しており、ゼロ遅延保証はありません。

再現可能なアーキテクチャ・ライフサイクル・ウォークスルー(合成 A/B 例)

完全に決定論的な合成デモデータを使用して、エージェント間のメモリ共有、マルチテナント分離、リアルタイムのユーザー修正、および不変の来歴追跡を段階的に検証します。すべてのステップは、公開契約の下で検証済みのシステム機能および承認されたクレーム ID に直接対応します:

  • Step 1 [AGENT_A_WRITE]: Agent A (ide-assistant-alpha) が remember tool を介してスコープ project:synthetic-demo に合成設定を書き込み — Payload: {'formatting': 'tabs', 'indent': 4} — Claim: [STMT_01_PROVENANCE_ATTRIBUTION] & [STMT_02_CROSS_CLIENT_CONTINUITY] — Receipt: mem-synth-pref-001@v1, digest sha256:7f83b165 — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 2 [AGENT_B_RECALL]: Agent B (terminal-assistant-beta) が承認された同一スコープ project:synthetic-demo 内で recall tool を介して設定を想起 — Query: 'code formatting indent' — Claim: [STMT_02_CROSS_CLIENT_CONTINUITY] & [STMT_04_TOKEN_BUDGET_GUARANTEE] — Receipt: mem-synth-pref-001@v1 cited, score 0.94, bounded budget — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 3 [UNAUTHORIZED_DENIAL]: 未承認 Agent (rogue-guest-gamma) が有効な認証情報なしで project:synthetic-demo へのテナント間アクセスを試行 — Gate: Scope Isolation & Auth Gateway — Claim: [STMT_05_ZERO_TOKEN_EXPOSURE] — Outcome: AUTH_SCOPE_DENIED (HTTP 403), zero data leakage, zero storage mutation verified by database snapshot byte equality — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 4 [USER_CORRECTION]: ユーザーが update_memory tool を介してフォーマット標準を修正 — Payload: {'formatting': 'spaces', 'indent': 2}, reason: 'team style guide update' — Controller: Version DAG Controller — Claim: [STMT_03_REALTIME_CORRECTION] — Receipt: mem-synth-pref-001@v2, supersedes v1, parent_digest sha256:7f83b165 — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 5 [LATER_RECALL_V2]: その後の想起クエリは更新されたバージョン 2 を自動選択し、SearchEngine は候補フィルタリングで置き換えられたバージョン 1 を厳格に除外 — Query: 'indentation preference' — Claim: [STMT_03_REALTIME_CORRECTION] & [STMT_04_TOKEN_BUDGET_GUARANTEE] — Outcome: Active recall context injects only v2 (spaces, 2) — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 6 [PROVENANCE_DAG]: Version Controller を介したバージョン履歴の監査検査 — Chain: v1 (initial write by ide-assistant-alpha) -> v2 (superseded_by user correction) — Claim: [STMT_01_PROVENANCE_ATTRIBUTION] — Verification: バージョン履歴と親ポインタが完全に検証可能 — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Step 7 [STATE_RESET]: リセット可能なサンドボックス制御により合成ワークスペーススコープ project:synthetic-demo をクリーンな初期状態に復元 — Action: 決定論的な破棄と状態パージ — Claim: [STMT_05_ZERO_TOKEN_EXPOSURE] — Receipt: reset_status CLEARED, 0 residual rows, zero persistent side effects — Status: [SOURCE_BACKED_PUBLIC_CONTRACT (VERIFIED)] — Boundary: [DEMO_DATA: SYNTHETIC].
  • Boundary Notice [NOT_VERIFIED]: クラウドマルチテナント課金パイプライン [STMT_06_BACKEND_OPEN_SOURCE_CLAIM]、組織間自律合意 [STMT_07_AUTONOMOUS_CONSENSUS_CLAIM]、およびゼロレイテンシグローバルレプリケーション [STMT_08_ZERO_LATENCY_REPLICATION_CLAIM] は [NOT_VERIFIED] であり、ローカルオープンソース実行時ウォークスルーから除外されています。
+------------------------------------------------------------------------------------------------------------------------+
| [REPRODUCIBLE ARCHITECTURE LIFECYCLE WALKTHROUGH: SYNTHETIC A/B PREFERENCE SHARING & CORRECTION]                       |
|                                                                                                                        |
|  Agent A (IDE)               XMemo Gateway & Engines            Agent B (CLI)              Unauthorized Agent (Guest)  |
|  [ide-assistant-alpha]       [FastMCP / Storage / Scope]        [terminal-assistant-beta]  [rogue-guest-gamma]         |
|         |                               |                              |                              |                |
|  (1) remember(pref: tabs, 4)            |                              |                              |                |
|  -------------------------------------> |                              |                              |                |
|         |                          [Write v1, Hash: 7f83b1]            |                              |                |
|  <------------------------------------- |                              |                              |                |
|    Receipt: mem-001@v1                  |                              |                              |                |
|         |                               |      (2) recall(pref)        |                              |                |
|         |                               | <--------------------------- |                              |                |
|         |                               |  [Scope Match: synth-demo]   |                              |                |
|         |                               | ---------------------------> |                              |                |
|         |                               |   Citation: mem-001@v1       |                              |                |
|         |                               |                              |   (3) recall(foreign tenant) |                |
|         |                               | <---------------------------------------------------------- |                |
|         |                               |                          [BoundSpace Check: MISMATCH]       |                |
|         |                               | ----------------------------------------------------------> |                |
|         |                               |                          DENIED: AUTH_SCOPE_DENIED (Zero Mutation)           |
|         |                               |                              |                              |                |
|  (4) update_memory(pref: spaces, 2)     |                              |                              |                |
|  -------------------------------------> |                              |                              |                |
|         |                          [Write v2, parent: v1]              |                              |                |
|  <------------------------------------- |                              |                              |                |
|    Receipt: mem-001@v2 (supersedes v1)  |                              |                              |                |
|         |                               |      (5) recall(pref)        |                              |                |
|         |                               | <--------------------------- |                              |                |
|         |                               |  [Exclude v1, Select v2]     |                              |                |
|         |                               | ---------------------------> |                              |                |
|         |                               |   Citation: mem-001@v2       |                              |                |
|         |                               |                              |                              |                |
|  (6) inspect_provenance(mem-001)        |                              |                              |                |
|  -------------------------------------> |                              |                              |                |
|  <------------------------------------- |                              |                              |                |
|    DAG: v1 (Hash: 7f83) -> v2 (Hash: 4d82)                             |                              |                |
|         |                               |                              |                              |                |
|  (7) reset_synthetic_state()            |                              |                              |                |
|  -------------------------------------> | [Purge demo scope]           |                              |                |
|  <------------------------------------- | 0 residual rows              |                              |                |
+------------------------------------------------------------------------------------------------------------------------+

詳細な概念とセキュリティナビゲーション

詳細な概念およびセキュリティドキュメントを通じて、特定のアーキテクチャ領域を確認してください:

  • 記憶データモデル (/docs/concepts/memory-model): エンティティ構造、意味カテゴリ、重要度スコア、表現層。
  • 出所と帰属 (/docs/concepts/provenance-attribution): 監査ログと呼び出し元帰属。
  • プロジェクト記憶空間 (/docs/concepts/projects): ワークスペースパスルーティングと個人プロジェクト境界分離による検証済みのプロジェクト関連付け。
  • ドリームと記憶の統合 (/docs/concepts/dream-reflection): 候補プレビュー統合、明示的な宛先レビュー、およびメンテナンスポリシー。
  • 外部ナレッジベース (/docs/concepts/knowledge-bases): ドキュメント索引、チャンク化戦略、参考文献引用。
  • データ境界とセキュリティ (/docs/security/data-boundary): ローカル自己ホスト型機能とクラウド SaaS サービスとの境界明確化。

ペルソナフロー

ChatGPT ユーザー

bearer token をチャットに貼り付けずに、ChatGPT が XMemo の設定、プロジェクト事実、意思決定、TODO に永続的にアクセスできるようにします。

合成の設定またはプロジェクトメモを保存し、新しいチャットを開始してから、作業を続ける前に ChatGPT に XMemo 経由でそれを呼び出させます。

Copilot / Codex 開発者

リポジトリの判断、コーディング規約、バグ修正メモ、タスク履歴を IDE と CLI エージェント間で持ち運べます。

コードベースの判断またはバグ修正を記録し、次の IDE または CLI エージェントに、編集前に関連する XMemo コンテキストを呼び出させます。

チーム / エンタープライズ pilot owner

アカウント制御、ソース attribution、エクスポート/削除ワークフロー、レビュー担当者向けに安全な設定証跡で共有メモリを評価します。

pilot メンバーに合成のチームメモリを保存してもらい、XMemo でソース attribution を確認し、削除/エクスポートとサポート経路をレビューします。

出典: 動作原理