Memory Store にエントリが蓄積していくと、重複・古い情報・抜け漏れが生じる可能性があります。Dreams は非同期のメモリ整理機能です。専用の Agent が直近の Session を見直し、Memory Store のマージ・削減・補完を行います。
完了後、
Q: Dream は元の Memory Store を変更しますか?
A: いいえ。Dream は常にクローンされたコピー上で動作し、元の Memory Store は一切影響を受けません。
Q: Dream はどれくらい時間がかかりますか?
A: Memory Store のサイズと振り返る Session 数によりますが、通常 1〜5 分です。
コアコンセプト
| 概念 | 説明 |
|---|---|
| Dream | 非同期のメモリ整理ジョブ |
| Input Memory Store | データソース。変更されません |
| Output Memory Store | 自動でクローンされたコピー。整理結果はこちらに書き込まれる |
| Dreaming Session | Dream 実行中に作成される内部 Session。通常の Session 一覧には表示されない |
ワークフロー
API エンドポイント一覧
| メソッド | パス | 説明 |
|---|---|---|
| POST | /dreams | Dream を作成 |
| GET | /dreams | Dream 一覧を取得 |
| GET | /dreams/{id} | Dream を取得 |
| POST | /dreams/{id}/cancel | 実行中の Dream をキャンセル |
| POST | /dreams/{id}/archive | 完了した Dream をアーカイブ |
クイックスタート
1. メモリ整理をトリガー
2. 進捗を確認
3. 結果を確認
完了後、outputs フィールドに整理後の Memory Store ID が含まれます:
オプションパラメータ
| パラメータ | 説明 |
|---|---|
model | モデル選択: auto(デフォルト)、lite、ultimate |
instructions | カスタム指示(例: 「Python プロジェクトの規約を重視」)、最大 4096 文字 |
inputs[].type: "sessions" | 優先する Session ID を指定(最大 100 件) |
安全設計
- コピーオンライト: 入力 Memory Store は変更されず、書き込みはすべてクローンされた出力に対して行われる
- 最小権限: Dreaming Agent は
memory、session_list、session_readの 3 つのツールのみ使用可能。コード実行やネットワークアクセスはできない - Single-flight: 1 ユーザーあたり同時に 1 件のアクティブな Dream(pending または running)のみ。重複作成は 409 を返す