概念コア概念エージェントのアイデンティティ

Concept

エージェントのアイデンティティ

安定した、秘密ではないagentおよびinstanceのラベルを使い、後続のrecallでも出所のコンテキストを保持します。

アイデンティティのラベルは帰属情報であり、認証ではありません

X-Memory-OS-Agent-IDとXMEMO_AGENT_INSTANCE_IDは、どのclientまたはrunnerがメモリを書き込んだかを識別します。これらがアクセスを認可することはありません。認可を行うのはbearer tokenまたはOAuth grantです。送信すると、Memory Consoleで各エントリのprovenanceを表示できます。

  • 同じローカルインストールまたはrunnerでは、XMEMO_AGENT_INSTANCE_IDを安定して保ちます。
  • 異なるローカルagent profileには、別の値を生成します。
  • 値をgitに入れないでください。秘密ではありませんが、インストールごとの状態です。
  • XMemoは安定した帰属のため、instance idをサーバー側でハッシュします。

tokenと一緒にアイデンティティヘッダーを送信する

アイデンティティヘッダーは、MCP client configurationでAuthorizationの隣に置きます。tokenはenvironmentに保持し、ラベルは通常の値として指定します。

{
  "mcpServers": {
    "XMemo": {
      "type": "http",
      "url": "https://xmemo.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${env:XMEMO_KEY}",
        "X-Memory-OS-Agent-ID": "codex",
        "X-Memory-OS-Agent-Instance-ID": "${env:XMEMO_AGENT_INSTANCE_ID}"
      }
    }
  }
}

安定したinstance idを生成する

SDKにはhelperが用意されているため、setup scriptでlocal profileごとに値を1度作成し、後続の実行で再利用できます。

import {
  XMEMO_AGENT_ID_ENV_VAR,
  XMEMO_AGENT_INSTANCE_ID_ENV_VAR,
  buildMcpIdentityHeaders,
  createAgentInstanceId,
} from '@xmemo/client';

const agentId = 'gemini-cli';
const agentInstanceId = existingStoredValue ?? createAgentInstanceId('gemini-cli');
const headers = buildMcpIdentityHeaders({ agentId, agentInstanceId });

ペルソナフロー

ChatGPT ユーザー

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

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

Copilot / Codex 開発者

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

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

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

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

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

出典: 自律エージェントプリセット