toon-memoryTOON を採用

AIエージェントのための継続性レイヤー

エージェントの知識はセッションを超えて生き続けます — オフライン、プライベート、LLM不要。

~/.toon-memory

$npm install -g toon-memory

なぜエージェントはセッション間でコンテキストを失うのか?

AI コーディングエージェントは毎セッション記憶喪失から始める

コンテキストが毎日リセットされる

新しいセッションごとに、エージェントは昨日学んだ意思決定、パターン、バグを忘れます。同じコンテキストを何度も繰り返し説明する必要があります。

履歴の中を検索

メモリがなければ、エージェントは git 履歴を検索し、ファイルを再読み込みして、なぜそのような方法で構築されたのかを再構築します — トークンと時間を消費します。

コピー&ペーストのメモ

開発者はチャット間で手動でコンテキストを貼り付けます。これは脆く、古くなりやすく、次の自律的な実行には伝わりません。

toon-memory はエージェントに永続的でクエリ可能なメモリを提供します — コンテキストが自動的にすべてのセッションで生存します。

toon-memory を知る

コーディングワークフローのための継続性レイヤー

メモリは事実を保存しますが、継続性レイヤーはプロジェクトの働き方を保存します — 各セッションが前回の終わりから始まるように。

決定

すべての選択の「理由」— フレームワーク、ライブラリ、トレードオフ。必要な時に想起され、再議論されることはありません。

📏

規約

チームが合意した命名、構造、スタイルのルール。言われなくても守られます。

コンテキスト

単一のファイルには存在しない、アーキテクチャ・環境・運用の知識。

🤝

共有された理解

プロジェクト知識とチームの決定が、すべてのエージェントとセッションで利用可能。

toon-memory は継続性レイヤーの概念を導入します:AI セッション間でプロジェクトの知識・決定・コンテキストを保存する軽量システム — クラウドサービスも重いインフラも不要。

開発者が toon-memory を選ぶ理由

プライベート、軽量、ユニバーサル

プロジェクトの記憶を安全に保つための保証。

プライバシー優先

  • 100% ローカル — クラウドなし、サーバーなし、テレメトリなし
  • オプションの AES-256-GCM 暗号化
  • 記憶ファイルはソースファイル同様、あなたのもの

軽量

  • ネイティブ TOON 形式 — JSON より 22% 少ないトークン
  • 依存関係ゼロ、Node.js 18+ で動作
  • 決定論的ロジック — LLM 呼び出しなし、API キー不要
🛰️

ユニバーサル

  • 15+ のエージェントに対応: Claude Code、Codex、Gemini CLI、Cursor、OpenCode など
  • 標準 MCP — コンテキストを失わずにエージェントを変更
  • チーム全員が共有するプロジェクト別メモリ

同じプロジェクト。2つのセッション。

エージェントが覚えていることが結果を変えます。

toon-memory なし
セッション 1
Sequelize を使う。
OK。
セッションのコンテキストに保持 — トークンが蓄積されます。
セッション 2
ORM は何ですか?
セッション間の記憶がありません。
分かりません。
toon-memory あり
セッション 1
Sequelize を使う。
$ memory_remember({ category: "decision", key: "orm:sequelize", content: "Sequelize を ORM として使用" })
OK。
メモリに保存されました。
セッション 2
ORM は何ですか?
メモリから思い出しました。
Sequelize を使っています。

ベンチマーク

推測ではなく実測

実際のセッションで測定したトークンとツール呼び出しの削減

ワークフロー削減
~90%

トークン削減(自動ロード)

25 → 5
80%

ツール呼び出し削減

ワークフロー削減
68%

トークン削減(コンパクト recall)

ワークフロー削減
58%

トークン削減(システム primer)

ワークフロー削減
14%

トークン削減(バッチ圧縮)

TOON フォーマット

TOON フォーマットは人間のためではなく、LLM のために構築された

指標
JSON よりトークン削減22.5%
単一エントリ30.5%
パース速度向上1.3x

JSON 1097TOON 850

gpt-tokenizer(cl100k_base)で 16 件の代表的なメモリエントリを測定。実際の TOON フォーマットとコンパクト JSON を比較。再現可能:npm run bench

ランキング品質

187件の実スナップショットでのLongMemEval式検索 — 42 gold queries

指標線形RRF統合
R@5· goldエントリがトップ5以内0.6430.8610.829
nDCG@5· 順序の品質0.6540.7640.739
MRR@5· 正解の位置0.7760.7880.760
97.6%のクエリがトップ5から回答可能

data.toon スナップショット(187件、2026-08-01)、today で決定論的、読み取り専用・コピーなし;priority メタエントリ2件除外。再現: npm run bench:retrieval

自動ロード:OpenCode プラグインは全エントリをダンプせず、ファイル関連のメモリのみを注入します。フルセッション:開始 → デバッグ → 実装 → レビュー → 終了。再現可能:npm run bench:fullnpm run bench:primernpm run bench:compress-all

どのように機能するのか?

記憶喪失からメモリへの 4 つのステップ

1

インストール

ワンコマンド。15 以上のエージェントにゼロコンフィグ。

npm install -g toon-memory
2

記憶する

作業しながら意思決定、パターン、バグを保存 — 自動タグ推論とオプションの TTL 対応。

memory_remember({
  category: "decision",
  key: "use-zod",
  content: "Use Zod for validation",
  file: "src/types.ts"
})
3

リコール

エージェントがオンデマンドでメモリをクエリ — 再説明不要、トークン浪費なし。

memory_recall({ query: "validation" })
// [decision] use-zod (a1b2c3d4)
//   Use Zod for validation — src/types.ts
4

コンテキスト

1 回の呼び出しでエージェントにすべてを提供:プロジェクト、git、メモリ、セッション。ツール呼び出しを 80% 削減。

context_generate({})
// # Project Briefing (full)
// ## Project — toon-memory v4.3.0
// ## Git — branch: main, 3 commits
// ## Memory — 26 entries, 18 edges
// ## Sessions — 2 active

マルチエージェント

すべての主要 AI コーディングエージェントに対応。OpenCode、VS Code、Claude、Cursor、Windsurf、Cline、Continue — ゼロコンフィグ。

OpenCodeClaudeCursor

TOON フォーマット

JSON より 22% トークン削減(実測)。LLM 理解とトークン効率のために設計されたカスタムエンコーディング。

トークン 22% 削減パース速度 1.3x 向上

スマートリコール

グラフベースのリコールが BM25 関連性とグラフ中心性で再順位付けされます(クエリワードがなくてもハブが浮上)。ホップごとの減衰で遠いコンテキストを低く維持。トークン効率の高い `compact` モードは数字インデックス、スニペット切り詰めの結果を返します。

BM25中心性compact

スマートメモリ

組み込み語彙とプロジェクト依存関係からの自動タグ推論、品質スコア、信頼度スコア、マージ重複排除、関連エントリの提案、メモリ diff、および一時コンテキスト用の設定可能な TTL。

自動タグ品質評価マージ重複排除

暗号化

AES-256-GCM による機密データ保護。古いエントリの自動アーカイブ。Watch モードで N 分ごとに自動バックアップ。

AES-256-GCM自動バックアップ

メモリをグラフで

意思決定を仕様、バグ、アーキテクチャに接続。リコールは正しいコンテキストを返す — 単なるキーワード一致ではない。

  • `links` または `[[key]]` 参照でエントリを接続 — 埋め込み不要、LLM 不要
  • `memory_recall({ mode: "graph" })` がリレーションシップを考慮したサブグラフを展開
standard1097 tokens
memory_recall({ query: "riesgo", mode: "graph" })
[decision] risk-engine-priority (a1b2c3d4)
  The engine prioritizes risk over speed.
  File: spec.md:10 | Tags: risk;spec | Date: 2026-07-01
  links: engine-arch
compact: true~520 tokens
memory_recall({ query: "riesgo", mode: "graph", compact: true })
[1] decision/risk-engine-priority
  The engine prioritizes risk over speed.
  tags: risk;spec · edges: ->2, ->3
ビューア内:
検索パスファインダーPNG / SVG エクスポートダーク&ライトテーマ

メモリグラフビューア

メモリをインタラクティブな力指向グラフとして可視化。エントリ、接続、カテゴリ、アクセスパターンを一目で。

  • CLI ビューア:npx toon-memory viewer が HTTP サーバーを起動
  • インライン MCP Apps ビューア:memory_visualize() を呼び出すと MCP Apps 互換ホストにグラフを直接レンダリング — サーバー不要
  • ノードにホバーするとコンテンツプレビューと品質スコア付きのツールチップ表示
  • クリックで選択・中央表示、ダブルクリックで詳細を開く
  • 検索はエントリをフィルタし、一致ノードを脈動グローでハイライト
  • パスファインダーが2つのエントリ間の最短接続を発見・ハイライト
  • 物理調整、ダーク/ライトテーマ、PNG/SVGエクスポート

メモリツールキット

エージェントが記憶、リコール、推論するために必要なすべて

コアメモリ

memory_remember

メモリに保存

意思決定、パターン、バグ、知識、またはwarning(「これはやらない」否定的メモリ、ブースト付きでリコール)を保存 — 自動品質スコアリング付きでセッション間永続化。

memory_recall

メモリを検索

ファイルを読む前にナレッジグラフをクエリ。品質加重の結果。path_scope と予算制御(tiny/normal/deep)をサポート。explain: true でエントリごとの理由行、budget_tokens で推定トークン数による出力制限。

memory_stats

メモリ統計

品質分布と最もアクセスされたエントリに加え、ヒット率/重複/廃止メトリクスを含むプロジェクトメモリの統計を表示。

検索&インテリジェンス

memory_smart_recall

スマートリコール

BM25 + グラフ中心性 + 品質スコア + 新鮮度を 1 回の呼び出しで統合検索。explain: true(エントリごとの理由)と budget_tokens(出力上限)をサポート。

memory_consolidate

統合

mode パラメータで、同一内容の重複を除去し、近似重複(Jaccard >50%)をマージし、低品質エントリを一括削除し、古いライブラリバージョンのエントリを退役させます(mode: "versions") — 決定的、LLM 不要。

コンテキストブリーフィング

context_generate

完全プロジェクトブリーフィング

1 回呼び出しのブリーフィング:プロジェクト構造 + git 状態 + メモリ + セッション。6 回の手動呼び出しを置換。トークン 93% 節約。

context_health

ヘルス監査

オーファンリンク、重複、壊れたファイル参照、期限切れ TTL、古いセッション。スコア 0–100。

圧縮

memory_compress

LLM 圧縮

LLM 駆動の2段階圧縮:要約 + 上書き。Anthropic/OpenAI CLI が利用可能な場合は使用。

memory_primer

コンテキストプライマー

1 回呼び出しのコンテキストプライマー:主要メモリ + カテゴリ + セッションファイル変更。セッション開始時に自動注入。

セッション

memory_sessions

セッション

アクティブなエージェントセッションを表示し、ソフト衝突を検出。

memory_merge_sessions

セッションマージ

ファイルの並列セッション間でオブザベーションをマージ。重複排除し、自動昇格。

同期&セキュリティ

memory_encrypt

暗号化を有効にする

自動生成キーによる AES-256-GCM 暗号化。

memory_backup

メモリバックアップ

タイムスタンプ付きメモリファイルバックアップを作成。最新 10 件に自動修剪。

リソース:memory-entriesmemory-statsmemory-summariesmemory-viewer (ui://viewer)

15 以上の AI コーディングエージェントに対応

ゼロコンフィグ — toon-memory が自動検出し、各エージェントを設定

OpenCodeOpenCode
VS Code / CopilotVS Code / Copilot
ClaudeClaude
CursorCursor
WindsurfWindsurf
ClineCline
ContinueContinue
CodexCodex
GeminiGemini
ZedZed
AntigravityAntigravity
AiderAider
KiloCodeKiloCode
OpenClawOpenClaw
KiroKiro

よくある質問

エージェントにメモリを与えるために知っておくべきことすべて

toon-memory とは?

35 個の MCP ツールを備えた AI コーディングエージェント向けの永続メモリレイヤー。意思決定、パターン、バグ、コンテキストをコンパクトな TOON フォーマットで保存し、エージェントがセッション間ですべてを記憶 — セッションあたり 80% ツール呼び出し削減。

どのエージェントがサポートされているか?

OpenCode、VS Code、Claude Code、Cursor、Windsurf、Cline、Continue、Codex、Gemini、Zed、Antigravity、Aider、KiloCode、OpenClaw、Kiro — MCP サーバー経由でゼロコンフィグの 15 以上のエージェント。

データはどのように保存されるか?

エントリはローカル TOON ファイル(JSON より約 22% 小さいトークン効率のフォーマット、実測)に書き込まれます。ファイルはあなたのもので、他のソースファイルと同様にコミット、diff、バックアップが可能。

メモリは暗号化されているか?

はい。memory_encrypt ツールで暗号化を有効にし、AES-256-GCM で機密エントリを保護。キーは自動生成され、ローカルに保持。

オフラインで動作するか?

完全に。toon-memory は外部サービスやアカウント不要でローカルで実行。Watch モードではスケジュールに従って自動バックアップも作成。

複数のエージェントが同じメモリを共有できるか?

はい。メモリがプロジェクト内のプレーンファイルに存在するため、そのプロジェクトに設定されたすべてのエージェントが同じコンテキストを読み書き。

メモリのバックアップはどうすればいいか?

Watch モードで定期的な自動バックアップ、または TOON ファイルを git にコミットするだけ。古いエントリは 30 日後に自動アーカイブ。

無料でオープンソースか?

はい。toon-memory は MIT ライセンスで無料使用。ソースは GitHub にあり、パッケージは npm に公開。

エージェントの組み込みメモリとの違いは?

組み込みメモリはエフェメラルまたはベンダー固有の場合が多い。toon-memory はエージェントやプロジェクト全体で完全にコントロールできる、ポータブルで diff 可能、暗号化されたメモリファイルを提供。

一時コンテキストを期限切れにできるか?

はい。任意のエントリに TTL(例:ttl: "7d")を設定すると自動的に期限切れ — スプリント、締め切り、時間制約のあるメモに最適。

スマートリコールとは?

memory_smart_recall は BM25 キーワード検索、グラフ中心性、品質スコアリング、新鮮度の減衰を 1 回の呼び出しで組み合わせ — 手動オーケストレーションなしですべてのランキング戦略の最良を実現。

品質スコアリングはどのように機能するか?

各エントリはタグカバレッジ、リンクの豊かさ、コンテンツの詳細度、新鮮度、特異性に基づいて自動的に品質スコア(0-1)を取得。高品質エントリがリコール結果で最初に表示。

同じキーを 2 回保存するとどうなるか?

システムは属性をマージして置換しない:タグとリンクは和集合、品質と信頼度は最大値、日付は更新。エントリは時間とともに豊かになる。

メモリ圧縮とは?

memory_compressはLLMに関連するエントリを簡潔な要約にまとめるさせます。memory_consolidate(mode: "low-quality")は低品質なエントリ(タグなし、短いコンテンツ)を決定論的に削除します — LLM不要。どちらもトークン数を削減します。

マシン間でメモリを同期できますか?

はい。memory_export_gistでGitHub Gistにエントリをプッシュし、別のマシンでmemory_import_gistを使用します。エントリは自動的にマージされます(タグの和集合、最大信頼度)。

エージェントに継続性を持たせませんか?

数秒でインストール。プロジェクトを再説明する必要はもうありません。