UStackUStack
agentmemory icon

agentmemory

agentmemoryはAIコーディングエージェント向けのローカルメモリ。セッションを記録し、外部DBなしで高速なハイブリッド検索・再呼び出しを実現。

agentmemory

agentmemoryとは?

agentmemoryはAIコーディングエージェント向けのローカル「メモリレイヤー」です。エージェントのセッション活動を記録し、後続のステップで高速に再呼び出しできます。1つのNodeプロセスとしてマシン上で動作し、状態をJSON形式でディスクに保存します。外部データベースは不要です。

システムは自動キャプチャフックを通じてツール呼び出しとプロンプトを記録し、観測データを意味的なメモリに統合します。検索はハイブリッドパイプライン(BM25 + ベクトル + ナレッジグラフ)とオンデバイスリランキングで提供されます。

主な機能

  • ローカル実行とJSONディスク保存(外部DB不要): 1つのNodeプロセスで動作し、データをJSON形式でディスクに永続化します。Redis、Kafka、Postgres、Qdrant、Neo4jは必要ありません。
  • エージェント活動の自動キャプチャフック: PreToolUse、PostToolUse、SessionStart、Stopなどのイベントがインストール後に追加コードなしでメモリパイプラインに取り込まれます。
  • ハイブリッド検索とオンデバイスリランキング: BM25、ベクトル、ナレッジグラフの3系統を組み合わせた検索結果をオンデバイスでリランキングします(ページでは「ノートPCでP50 20ms未満」と記載)。
  • 自動統合と保持動作: 1時間ごとに生の観測データを意味的なメモリに統合し、重複をマージ、保持スコアリングで古い行を減衰させ、削除時にバッチ化された監査行を出geben.
  • MCPサーバーと定義されたツールセット: MCPツールとして memory_savememory_recallmemory_smart_searchmemory_sessionsgovernanceauditexport を公開し、それぞれのREST対応版を /agentmemory/* で提供します。
  • JSONLインポートによるセッション再生: Claude Code JSONLトランスクリプトからセッションを再構築し、観achtungen, tool uses, and timelineをストアに取り込みます。
  • ナレッジグラフ圧縮とクエリリング: 圧縮時にエンティティとリレーションを抽出し、/agentmemory/graph経由でグラフクエリとビューアでの可視化をサポートします。
  • ノード間フェデレーション同期(認証済みHTTPS): bearer-token認証付きの認証済みHTTPSでagentmemoryノード間でメモリをプッシュ/プルします。ページでは「サイレント同期なし」と記載。
  • ローカルビューアとオブザーバビリティ出力: ライブ観測ストリームビューア(ポート3113)と「OTEL observability worker」を提供し、OTLPエクスポートでJaeger/Honeycomb/Tempoなどのトレースバックエンドに接続できます。

agentmemoryの使い方

  1. インストール: npm install -g @agentmemory/agentmemory を実行して agentmemory をPATHに追加します。
  2. サーバー起動: agentmemory を起動します(サーバーは :3111、ビューアは :3113 で動作)。
  3. ローカル検証: http://localhost:3113 を開いてライブ観測ストリームとダッシュボードを確認します。
  4. MCP経由でエージェントを接続: エージェントをagentmemory MCP JSON設定に接続します(サイトでは「1つのMCP JSONでほぼすべて対応」と記載)。
  5. 過去セッションのインポート(任意): 提供されたJSONLセッションインポート機能で過去のエージェント実行をストアに取り込みます。

ユースケース

  • 複数セッション間の継続性を実現: 各セッションのプロンプトとツール使用を記録し、後のエージェント行動が関連する過去観測を迅速に検索できます。
  • 「エージェントがなぜその行動をとったか」監視: 削除時の監 audit出力とオブザーバビリティ/トレース出gabeで、メモリ操作とセッション処理の過程を検査できます。
  • 混合クエリでの検索品質を改善: クエリが一部レキシカル、一部意味的、または抽出されたリレーションに依存する場合は、ハイブリッド検索(BM25 + ベクトル + ナレッジグラフ)とオンデバイスリランキングを活用します。
  • トランスクリプトを再利用可能なメモリに変換: Claude Code JSONLトランスクリプトをインポートして完全なセッションタイムラインを再構築し、クエI laterで検索できます。
  • 複数エージェントマシン間の調整: authenticated HTTPSによるpeer-to-peer syncでagentmemoryノード間でメモリをプッシュ/プルします。

FAQ

  • agentmemoryは外部データベース(PostgresやQdrantなど)が必要ですか? いいえ。ページには「ZERO EXTERNAL DATABASES」と記載されており、システムは単一プロセスで状態をディスク上のJSONに保存すると説明されています。

  • メモリの保存と再呼び出し用のツールはどのようにアクセスできますか? agentmemoryはMCPサーバーを公開しており、memory_savememory_recallなどのツールを提供します。また、各ツールのRESTエンドポイントが/agentmemory/*配下に存在することも記載されています。

  • サーバーが何をキャプチャしているか確認するには? ポート3113でビューアが自動起動し、ライブ観測ストリーム、セッションエクスプローラー、メモリブラウザ、ナレッジグラフの可視化、ヘルスダッシュボードが表示されます。

  • 既存のコーディングトランスクリプトをインポートできますか? はい。ページには、Claude CodeのJSONLトランスクリプトを取り込み、observations、tool uses、timelineを再構築するJSONLセッションインポートワークフローが記載されています。

  • agentmemoryはメモリデータを別のマシンへ移動できますか? ページには、認証済みHTTPS経由のピアツーピア同期が記載されており、bearer-tokenの要件があり(サイレント同期は行われません)。

代替手段

  • 汎用ベクトルデータベース+カスタムエージェントメモリレイヤー: エンベディングを保存し、検索を実<|eos|>