tameshita新しいツールを実際に動かした記録

agent-memoryとは?使い方・Claude Code連携を実際に使って調べてみた動いた

配布元: https://github.com/tigerless-labs/agent-memory  / 2026-10-09 時点で確認

この日に実際に動かした結果です。内容の誤りに気づかれた場合はお問い合わせください。確認のうえ訂正します。

2026-10-09 の確認以降に本体が更新されています。最終確認: 2026-10-22

使う前に分かること

必要なものuv、Python 3.12 以上、Claude Code
動かした環境クラウドのサンドボックス、Linux、uv 0.11.32(Python 3.13.16を自動取得)、Claude Code 2.1.295。
日本語画面・文書は英語
確認日2026-10-09(この日に実際に動かした)

Claude Code や Codex CLI は、会話(セッション)が終わると、そこで話した内容を全部忘れます。 次に開いたときには前回の話は一切残っていません。agent-memory は、この「毎回ゼロから」を 直すための道具です。会話の中身を Markdown のメモファイルとして手元に残しておき、次のセッションが 始まるときに自動でそのメモを読み込ませます。

今回は、手元の環境に入れてから、CLI だけでメモを書いて・探して・消えても平気なことを確認し、 さらに Claude Code に組み込んで、本当に別のセッション(別のプロセス)になっても前回の話を 思い出せるかまで試しました。Codex CLI・Muse Code との連携や、ベクトル検索の拡張、 記憶を自動で整理する「sleep」機能の細かい挙動までは、今回は踏み込んでいません。

agent-memory というツール

GitHub の説明によると、AI エージェント向けの記憶の作り方には大きく2つの流れがあるとされています。 ひとつは埋め込みやナレッジグラフを使った「検索エンジン型」で、精度は高いもののエージェントが 中身を覗けないブラックボックスになりがちです。もうひとつは「ファイルをそのまま読ませる型」で、 中身は丸見えですが、量が増えると探しにくくなります。agent-memory はその両方を1つにしたという ものです。メモは全部 Markdown ファイルとしてディスク上に残り、検索用の索引(キャッシュ)は いつ消しても作り直せる、という作りになっています。API キーは不要です。

入れてみる

PyPI にはまだ公開されていないため、README はソースから入れる方法を最初に案内しています。 入れるには Python 3.12 以上と uv が要ります。

git clone https://github.com/tigerless-labs/agent-memory.git
cd agent-memory
uv sync --all-packages
Using CPython 3.13.16 interpreter at: /usr/bin/python3
Creating virtual environment at: .venv
Resolved 49 packages in 51ms
...
Installed 20 packages in 32ms

手元の Python は 3.11 でしたが、uv が条件に合う 3.13 を自動で見つけて仮想環境を作ってくれたので、 Python のバージョンを自分で用意し直す手間はありませんでした。最後に、できあがった mem コマンドを 使えるようにします。

export PATH="$PWD/.venv/bin:$PATH"

使ってみる:メモを書いて、探して、索引を消してみる

まず、メモを置く場所(ストア)を作ります。

mem init
store: /tmp/amhome/agent-memory-store
types: ['decision', 'entity', 'event', 'experience', 'fact', 'preference', 'procedure', 'profile', 'reference']

場所を指定しなければ、ホームディレクトリの中の agent-memory-store というフォルダになります (今回は検証用に /tmp/amhome をホームディレクトリ扱いにしているので、上はこの表示です)。

README の最初の例に沿って、1件メモを書いて、それを検索して、見つかるか確かめます。--type が メモの種類(上に出た9種類から選ぶ)、--field が探すときのグループ分け用の値、--abstract が 一言要約、--body が本文です。

mem record --type decision --field project=agent-memory \
  --abstract "Markdown files are the single source of truth" \
  --body "Indexes are rebuildable caches."
name: markdown-files-are-the-single-source-of-truth
path: /tmp/amhome/agent-memory-store/decision/agent-memory/markdown-files-are-the-single-source-of-truth.md
updated: 2026-10-09T07:26:29Z
supersedes: None
mem --json recall "source of truth"
{
  "hits": [
    {
      "abstract": "Markdown files are the single source of truth",
      "name": "markdown-files-are-the-single-source-of-truth",
      "path": "/tmp/amhome/agent-memory-store/decision/agent-memory/markdown-files-are-the-single-source-of-truth.md",
      "score": 7.0588232912094365e-06,
      "type": "decision",
      ...
    }
  ],
  "query": "source of truth"
}

ちゃんと見つかりました。次に、検索用の索引をまるごと消してから作り直し、メモ自体が消えていないか を確かめます。~ は先ほどと同じホームディレクトリ(今回の表示でいう /tmp/amhome)を指します。

rm -rf ~/agent-memory-store/.index && mem rebuild
reindexed: 1
dangling_links: 0

もう一度同じ検索をかけると、さっきと全く同じ結果が返ってきました。索引はあくまでキャッシュで、 本体は Markdown ファイルだという説明どおりの動きです。

Claude Code に組み込む

ここからが agent-memory の本題です。Claude Code が既に使える状態であることを前提に、README の 「Wire it into your agent」が最初に案内しているコマンドで、Claude Code にこの仕組みを組み込みます。

mem setup --host claude-code
status: READY
host: claude-code
version: 2.1.295 (Claude Code)
store: /tmp/amhome/agent-memory-store
settings: /tmp/amhome/.claude/settings.json
installed: /tmp/amhome/.claude/settings.json
provider: host-default
mcp: not requested

これで、Claude Code の設定ファイル(settings.json)に、セッションの開始時・終了時などに mem-hook というプログラムを自動で呼ぶ設定が追加されます。合わせて、Claude Code に 「mem の使い方」を教えるスキルも入ります。読者が自分でメモを書いたり探したりしなくても、 Claude Code が自分の判断で mem コマンドを叩くようになる、という組み込み方です。

別のセッションでも本当に思い出せるかを試す

ここまでの確認だけでは、「同じ会話の中でメモを書いて、同じ会話の中で読み出した」というだけで、 セッションをまたいで思い出せたことにはなりません。そこで、一度 Claude Code を終了し、 別のフォルダに cd して開いたまったく別のプロセスで、もう一度聞き直してみました。

まず1つ目のセッションで、副業のアイデアを一言伝えます。

claude -p "副業のアイデアとして、ラーメン屋の券売機の列整理をロボットで自動化するアイデアを考えている、と覚えておいて。" --allowedTools "Bash"
覚えました。「副業として、ラーメン屋の券売機の列整理をロボットで自動化するアイデアを検討中」
という内容で、2026-10-09 時点の構想段階として記憶ストアに保存してあります。決定事項ではなく、
検討中のアイデアとして書いています。

次に続けるときは、このメモを前提に話を進められます。市場調査や必要なハードウェア、収益モデルの
整理など、進めたいことがあればお知らせください。

このセッションはここで終了(プロセスも終わり)です。続けて、別の作業フォルダで、まったく新しい claude -p を立ち上げ、前回の話を覚えているか聞きます。

claude -p "前回話した副業のアイデアを覚えていますか?内容を教えてください。" --allowedTools "Bash"
はい、メモに残っています。

**副業アイデア:ラーメン屋の券売機前の行列整理をロボットで自動化する**

- 2026-10-09 に「覚えておいて」と依頼がありました。
- まだ構想段階で、決定事項ではありません。

メモにあるのはここまでです。ターゲット店舗、ロボットの仕組み、収益モデルなどの具体的な内容は
残っていません。そこを詰めたい場合は、続きを一緒に考えます。

プロセスも会話の履歴も完全に別物なのに、前回伝えた副業のアイデアをそのまま答えてきました。 セッションが始まるときに、メモの一覧(MEMORY.md)が自動で読み込まれ、そこから本体のメモ ファイルを自分で探して読みにいく、という仕組みが実際に機能していることを確認できました。

しばらく経つと、自動のメモ付けがもう1つ増えている

上の確認を終えたあと、少し時間が経ってからストアの中を見直すと、ファイルが1つ増えていました。

find /tmp/amhome/agent-memory-store -name "*.md"
MEMORY.md
event/2026-10-09/agent-memory-skill-initialization.md
fact/side-business-ramen-ticket-robot/ramen-ticket-machine-queue-robot.md
decision/agent-memory/markdown-files-are-the-single-source-of-truth.md

最後の event/2026-10-09/agent-memory-skill-initialization.md は、こちらが頼んで書かせた ものではありません。セッションが終わるときに裏で自動的に動く「蒸留」という処理が、会話の内容から 自分で判断して、ラーメン屋の件とは別にもう1つメモを作っていました。しかも中身は、会話は最後まで 日本語だったのに、英語で書かれていました。

abstract: Initialized agent-memory skill for persistent project memory management

自分で頼んで書かせたメモ(日本語)とは別に、自動で追加されたメモ(英語)がもう1つ残る形に なります。書き忘れを防ぐための仕組みとしては機能していますが、自分で mem record を使った 直後にも、この自動処理が同じセッションを見て勝手にメモを増やすことがあるので、1つの出来事に ついて複数のメモが散らばることがあります。似たメモをまとめる操作(mem merge)は用意されて いますが、散らばっていることに気づくのは使う側の仕事になります。

なお mem --version のようなよくあるオプションは無く、バージョンを確かめる決まった方法は 見当たりませんでした(uv run mem --help の先頭にコマンド一覧だけが出ます)。

まとめ

agent-memory は、Claude Code などのエージェントに「前回の会話を覚えている」状態を持たせる 仕組みで、実際に別プロセス・別フォルダのセッションでも、前回伝えた内容をそのまま答えられることを 確認できました。メモの本体はただの Markdown ファイルなので、中身をエディタで直接読んだり、 git で管理したりできるのも実用上はうれしいところです。API キーがいらず、無料で最後まで 試せました。

一方で、自動でメモを作る処理と自分で指示して作るメモが両方動くため、同じ話が別名で二重に残る ことがあり、しばらく使うとメモの整理自体が仕事になりそうです。「エージェントに毎回同じ前提を 説明し直すのが面倒」という人には向きますが、今のところ CLI 操作に抵抗がない人向けの道具です。

おすすめのツール・サービス