Langsung ke konten utama
Halaman ini mencantumkan setiap kenop konfigurasi untuk pencarian memori OpenClaw. Untuk ikhtisar konseptual, lihat:

Ikhtisar memori

Cara kerja memori.

Mesin bawaan

Backend SQLite default.

Mesin QMD

Sidecar yang mengutamakan lokal.

Pencarian memori

Pipeline pencarian dan penyetelan.

Active Memory

Sub-agen memori untuk sesi interaktif.
Semua pengaturan pencarian memori berada di bawah agents.defaults.memorySearch dalam openclaw.json, kecuali dinyatakan lain.
Jika Anda mencari toggle fitur Active Memory dan konfigurasi sub-agen, itu berada di bawah plugins.entries.active-memory, bukan memorySearch.Active Memory menggunakan model dua gerbang:
  1. plugin harus diaktifkan dan menargetkan id agen saat ini
  2. permintaan harus berupa sesi chat persisten interaktif yang memenuhi syarat
Lihat Active Memory untuk model aktivasi, konfigurasi milik plugin, persistensi transkrip, dan pola rollout yang aman.

Pemilihan provider

KunciTipeDefaultDeskripsi
providerstring"openai"ID adaptor embedding seperti bedrock, deepinfra, gemini, github-copilot, local, mistral, ollama, openai, openai-compatible, atau voyage; juga dapat berupa models.providers.<id> yang dikonfigurasi dengan api yang menunjuk ke adaptor embedding memori atau API model kompatibel OpenAI
modelstringdefault providerNama model embedding
fallbackstring"none"ID adaptor fallback ketika yang utama gagal
enabledbooleantrueMengaktifkan atau menonaktifkan pencarian memori
Ketika provider tidak diatur, OpenClaw menggunakan embedding OpenAI. Atur provider secara eksplisit untuk menggunakan Gemini, Voyage, Mistral, DeepInfra, Bedrock, GitHub Copilot, Ollama, model GGUF lokal, atau endpoint /v1/embeddings yang kompatibel dengan OpenAI. Konfigurasi lama yang masih menyatakan provider: "auto" diselesaikan menjadi openai.
Mengubah provider embedding, model, pengaturan provider, sumber, cakupan, chunking, atau tokenizer dapat membuat indeks vektor SQLite yang ada tidak kompatibel. OpenClaw menjeda pencarian vektor dan melaporkan peringatan identitas indeks alih-alih secara otomatis membuat ulang embedding untuk semuanya. Bangun ulang saat Anda siap dengan openclaw memory status --index --agent <id> atau openclaw memory index --force --agent <id>.
Ketika provider tidak ditetapkan, provider: "auto" lama ada, atau provider: "none" sengaja memilih mode hanya FTS, recall memori masih dapat menggunakan peringkat FTS leksikal saat embedding tidak tersedia. Provider non-lokal eksplisit gagal secara tertutup. Jika Anda mengatur memorySearch.provider ke provider konkret yang didukung jarak jauh seperti OpenAI, Gemini, Voyage, Mistral, Bedrock, GitHub Copilot, DeepInfra, Ollama, LM Studio, atau provider kustom yang kompatibel dengan OpenAI, dan provider tersebut tidak tersedia saat runtime, memory_search mengembalikan hasil tidak tersedia alih-alih diam-diam menggunakan recall hanya FTS. Perbaiki konfigurasi provider/auth, beralih ke provider yang dapat dijangkau, atau atur provider: "none" jika Anda menginginkan recall hanya FTS secara sengaja.

ID provider kustom

memorySearch.provider dapat menunjuk ke entri models.providers.<id> kustom untuk adaptor provider khusus memori seperti ollama, atau untuk API model kompatibel OpenAI seperti openai-responses / openai-completions. OpenClaw menyelesaikan pemilik api provider tersebut untuk adaptor embedding sambil mempertahankan ID provider kustom untuk penanganan endpoint, auth, dan prefiks model. Ini memungkinkan setup multi-GPU atau multi-host mendedikasikan embedding memori ke endpoint lokal tertentu:
{
  models: {
    providers: {
      "ollama-5080": {
        api: "ollama",
        baseUrl: "http://gpu-box.local:11435",
        apiKey: "ollama-local",
        models: [{ id: "qwen3-embedding:0.6b" }],
      },
    },
  },
  agents: {
    defaults: {
      memorySearch: {
        provider: "ollama-5080",
        model: "qwen3-embedding:0.6b",
      },
    },
  },
}

Resolusi kunci API

Embedding jarak jauh memerlukan kunci API. Bedrock menggunakan rantai kredensial default AWS SDK sebagai gantinya (peran instance, SSO, kunci akses).
ProviderEnv varKunci konfigurasi
BedrockRantai kredensial AWSTidak perlu kunci API
DeepInfraDEEPINFRA_API_KEYmodels.providers.deepinfra.apiKey
GeminiGEMINI_API_KEYmodels.providers.google.apiKey
GitHub CopilotCOPILOT_GITHUB_TOKEN, GH_TOKEN, GITHUB_TOKENProfil auth melalui login perangkat
MistralMISTRAL_API_KEYmodels.providers.mistral.apiKey
OllamaOLLAMA_API_KEY (placeholder)
OpenAIOPENAI_API_KEYmodels.providers.openai.apiKey
VoyageVOYAGE_API_KEYmodels.providers.voyage.apiKey
OAuth Codex hanya mencakup chat/completions dan tidak memenuhi permintaan embedding.

Konfigurasi endpoint jarak jauh

Gunakan provider: "openai-compatible" untuk server /v1/embeddings generik yang kompatibel dengan OpenAI dan tidak boleh mewarisi kredensial chat OpenAI global.
remote.baseUrl
string
URL dasar API kustom.
remote.apiKey
string
Menimpa kunci API.
remote.headers
object
Header HTTP tambahan (digabungkan dengan default provider).
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "openai-compatible",
        model: "text-embedding-3-small",
        remote: {
          baseUrl: "https://api.example.com/v1/",
          apiKey: "YOUR_KEY",
        },
      },
    },
  },
}

Konfigurasi khusus provider

KunciTipeDefaultDeskripsi
modelstringgemini-embedding-001Juga mendukung gemini-embedding-2-preview
outputDimensionalitynumber3072Untuk Embedding 2: 768, 1536, atau 3072
Mengubah model atau outputDimensionality mengubah identitas indeks. OpenClaw menjeda pencarian vektor sampai Anda secara eksplisit membangun ulang indeks memori.
Endpoint embedding yang kompatibel dengan OpenAI dapat memilih untuk menggunakan bidang permintaan input_type khusus provider. Ini berguna untuk model embedding asimetris yang memerlukan label berbeda untuk embedding kueri dan dokumen.
KunciTipeDefaultDeskripsi
inputTypestringtidak disetelinput_type bersama untuk embedding kueri dan dokumen
queryInputTypestringtidak disetelinput_type saat kueri; menimpa inputType
documentInputTypestringtidak disetelinput_type indeks/dokumen; menimpa inputType
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "openai-compatible",
        remote: {
          baseUrl: "https://embeddings.example/v1",
          apiKey: "${EMBEDDINGS_API_KEY}",
        },
        model: "asymmetric-embedder",
        queryInputType: "query",
        documentInputType: "passage",
      },
    },
  },
}
Mengubah nilai-nilai ini memengaruhi identitas cache embedding untuk pengindeksan batch provider dan sebaiknya diikuti dengan reindeks memori ketika model upstream memperlakukan label tersebut secara berbeda.

Konfigurasi embedding Bedrock

Bedrock menggunakan rantai kredensial default AWS SDK — tidak perlu kunci API. Jika OpenClaw berjalan di EC2 dengan peran instance yang mengaktifkan Bedrock, cukup atur provider dan model:
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "bedrock",
        model: "amazon.titan-embed-text-v2:0",
      },
    },
  },
}
KunciTipeDefaultDeskripsi
modelstringamazon.titan-embed-text-v2:0ID model embedding Bedrock apa pun
outputDimensionalitynumberdefault modelUntuk Titan V2: 256, 512, atau 1024
Model yang didukung (dengan deteksi family dan default dimensi):
ID ModelPenyediaDimensi DefaultDimensi yang Dapat Dikonfigurasi
amazon.titan-embed-text-v2:0Amazon1024256, 512, 1024
amazon.titan-embed-text-v1Amazon1536
amazon.titan-embed-g1-text-02Amazon1536
amazon.titan-embed-image-v1Amazon1024
amazon.nova-2-multimodal-embeddings-v1:0Amazon1024256, 384, 1024, 3072
cohere.embed-english-v3Cohere1024
cohere.embed-multilingual-v3Cohere1024
cohere.embed-v4:0Cohere1536256-1536
twelvelabs.marengo-embed-3-0-v1:0TwelveLabs512
twelvelabs.marengo-embed-2-7-v1:0TwelveLabs1024
Varian dengan sufiks throughput (misalnya, amazon.titan-embed-text-v1:2:8k) mewarisi konfigurasi model dasar.Autentikasi: autentikasi Bedrock menggunakan urutan resolusi kredensial AWS SDK standar:
  1. Variabel lingkungan (AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY)
  2. Cache token SSO
  3. Kredensial token identitas web
  4. Kredensial bersama dan file konfigurasi
  5. Kredensial metadata ECS atau EC2
Region diselesaikan dari AWS_REGION, AWS_DEFAULT_REGION, baseUrl penyedia amazon-bedrock, atau default ke us-east-1.Izin IAM: peran atau pengguna IAM memerlukan:
{
  "Effect": "Allow",
  "Action": "bedrock:InvokeModel",
  "Resource": "*"
}
Untuk hak akses paling minimal, batasi cakupan InvokeModel ke model spesifik:
arn:aws:bedrock:*::foundation-model/amazon.titan-embed-text-v2:0
KunciTipeDefaultDeskripsi
local.modelPathstringdiunduh otomatisJalur ke file model GGUF
local.modelCacheDirstringdefault node-llama-cppDirektori cache untuk model yang diunduh
local.contextSizenumber | "auto"4096Ukuran jendela konteks untuk konteks embedding. 4096 mencakup chunk umum (128–512 token) sambil membatasi VRAM non-weight. Turunkan ke 1024–2048 pada host terbatas. "auto" menggunakan maksimum terlatih model — tidak direkomendasikan untuk model 8B+ (Qwen3-Embedding-8B: 40 960 token → ~32 GB VRAM vs ~8,8 GB pada 4096).
Instal penyedia llama.cpp resmi terlebih dahulu: openclaw plugins install @openclaw/llama-cpp-provider. Model default: embeddinggemma-300m-qat-Q8_0.gguf (~0,6 GB, diunduh otomatis). Checkout sumber tetap memerlukan persetujuan build native: pnpm approve-builds lalu pnpm rebuild node-llama-cpp.Gunakan CLI mandiri untuk memverifikasi jalur penyedia yang sama dengan yang digunakan Gateway:
openclaw memory status --deep --agent main
openclaw memory index --force --agent main
Tetapkan provider: "local" secara eksplisit untuk embedding GGUF lokal. Referensi model hf: dan HTTP(S) didukung untuk konfigurasi lokal eksplisit, tetapi tidak mengubah penyedia default.

Timeout embedding inline

sync.embeddingBatchTimeoutSeconds
number
Timpa timeout untuk batch embedding inline selama pengindeksan memori.Jika tidak disetel, default penyedia digunakan: 600 detik untuk penyedia lokal/di-hosting sendiri seperti local, ollama, dan lmstudio, serta 120 detik untuk penyedia ter-hosting. Tingkatkan ini saat batch embedding lokal yang terikat CPU berjalan sehat tetapi lambat.

Konfigurasi pencarian hibrida

Semuanya berada di bawah memorySearch.query.hybrid:
KunciTipeDefaultDeskripsi
enabledbooleantrueAktifkan pencarian hibrida BM25 + vektor
vectorWeightnumber0.7Bobot untuk skor vektor (0-1)
textWeightnumber0.3Bobot untuk skor BM25 (0-1)
candidateMultipliernumber4Pengali ukuran kumpulan kandidat
KunciTipeDefaultDeskripsi
mmr.enabledbooleanfalseAktifkan pemeringkatan ulang MMR
mmr.lambdanumber0.70 = keragaman maks, 1 = relevansi maks

Contoh lengkap

{
  agents: {
    defaults: {
      memorySearch: {
        query: {
          hybrid: {
            vectorWeight: 0.7,
            textWeight: 0.3,
            mmr: { enabled: true, lambda: 0.7 },
            temporalDecay: { enabled: true, halfLifeDays: 30 },
          },
        },
      },
    },
  },
}

Jalur memori tambahan

KunciTipeDeskripsi
extraPathsstring[]Direktori atau file tambahan untuk diindeks
{
  agents: {
    defaults: {
      memorySearch: {
        extraPaths: ["../team-docs", "/srv/shared-notes"],
      },
    },
  },
}
Jalur dapat berupa absolut atau relatif terhadap workspace. Direktori dipindai secara rekursif untuk file .md. Penanganan symlink bergantung pada backend aktif: mesin bawaan mengabaikan symlink, sementara QMD mengikuti perilaku pemindai QMD yang mendasarinya. Untuk pencarian transkrip lintas agen dengan cakupan agen, gunakan agents.list[].memorySearch.qmd.extraCollections alih-alih memory.qmd.paths. Koleksi ekstra tersebut mengikuti bentuk { path, name, pattern? } yang sama, tetapi digabungkan per agen dan dapat mempertahankan nama bersama eksplisit ketika jalur mengarah ke luar workspace saat ini. Jika jalur terselesaikan yang sama muncul di memory.qmd.paths dan memorySearch.qmd.extraCollections, QMD mempertahankan entri pertama dan melewati duplikat.

Memori multimodal (Gemini)

Indeks gambar dan audio bersama Markdown menggunakan Gemini Embedding 2:
KunciTipeDefaultDeskripsi
multimodal.enabledbooleanfalseAktifkan pengindeksan multimodal
multimodal.modalitiesstring[]["image"], ["audio"], atau ["all"]
multimodal.maxFileBytesnumber10000000Ukuran file maksimum untuk pengindeksan
Hanya berlaku untuk file di extraPaths. Root memori default tetap hanya Markdown. Memerlukan gemini-embedding-2-preview. fallback harus "none".
Format yang didukung: .jpg, .jpeg, .png, .webp, .gif, .heic, .heif (gambar); .mp3, .wav, .ogg, .opus, .m4a, .aac, .flac (audio).

Cache embedding

KunciTipeDefaultDeskripsi
cache.enabledbooleantrueCache embedding chunk di SQLite
cache.maxEntriesnumber50000Embedding cache maksimum
Mencegah embedding ulang teks yang tidak berubah selama pengindeksan ulang atau pembaruan transkrip.

Pengindeksan batch

KunciTipeDefaultDeskripsi
remote.nonBatchConcurrencynumber4Embedding inline paralel
remote.batch.enabledbooleanfalseAktifkan API embedding batch
remote.batch.concurrencynumber2Job batch paralel
remote.batch.waitbooleantrueTunggu penyelesaian batch
remote.batch.pollIntervalMsnumberInterval polling
remote.batch.timeoutMinutesnumberTimeout batch
Tersedia untuk openai, gemini, dan voyage. Batch OpenAI biasanya paling cepat dan paling murah untuk backfill besar. remote.nonBatchConcurrency mengontrol panggilan embedding inline yang digunakan oleh penyedia lokal/self-hosted dan penyedia hosted ketika API batch penyedia tidak aktif. Ollama default ke 1 untuk pengindeksan non-batch agar tidak membebani host lokal yang lebih kecil; tetapkan nilai lebih tinggi pada mesin yang lebih besar. Ini terpisah dari sync.embeddingBatchTimeoutSeconds, yang mengontrol timeout untuk panggilan embedding inline.

Pencarian memori sesi (eksperimental)

Indeks transkrip sesi dan tampilkan melalui memory_search:
KunciTipeDefaultDeskripsi
experimental.sessionMemorybooleanfalseAktifkan pengindeksan sesi
sourcesstring[]["memory"]Tambahkan "sessions" untuk menyertakan transkrip
sync.sessions.deltaBytesnumber100000Ambang byte untuk pengindeksan ulang
sync.sessions.deltaMessagesnumber50Ambang pesan untuk pengindeksan ulang
Pengindeksan sesi bersifat opt-in dan berjalan secara asinkron. Hasil dapat sedikit usang. Log sesi berada di disk, jadi perlakukan akses filesystem sebagai batas kepercayaan.
Hasil transkrip sesi juga mematuhi tools.sessions.visibility. Visibilitas default tree hanya mengekspos sesi saat ini dan sesi yang dibuat olehnya. Untuk memanggil kembali sesi tidak terkait yang dikirim Gateway untuk agen yang sama dari sesi berbeda, seperti DM, perluas visibilitas secara sengaja ke agent (atau all hanya ketika pemanggilan lintas agen juga diperlukan dan kebijakan agen-ke-agen mengizinkannya). Contoh di bawah menempatkan pengaturan ini di bawah agents.defaults. Anda juga dapat menerapkan pengaturan memorySearch yang setara dalam override per agen ketika hanya satu agen yang harus mengindeks dan mencari transkrip sesi. Untuk pemanggilan kembali dari Gateway ke DM pada agen yang sama:
{
  agents: {
    defaults: {
      memorySearch: {
        experimental: { sessionMemory: true },
        sources: ["memory", "sessions"],
      },
    },
  },
  tools: {
    sessions: { visibility: "agent" },
  },
}
Saat menggunakan QMD, agents.defaults.memorySearch.experimental.sessionMemory dan sources: ["sessions"] saja tidak mengekspor transkrip ke QMD. Tetapkan juga memory.qmd.sessions.enabled: true.

Akselerasi vektor SQLite (sqlite-vec)

KunciTipeDefaultDeskripsi
store.vector.enabledbooleantrueGunakan sqlite-vec untuk kueri vektor
store.vector.extensionPathstringdibundelTimpa jalur sqlite-vec
Saat sqlite-vec tidak tersedia, OpenClaw secara otomatis beralih ke kemiripan kosinus dalam proses.

Penyimpanan indeks

Indeks memori bawaan berada di basis data SQLite OpenClaw milik setiap agen di agents/<agentId>/agent/openclaw-agent.sqlite.
KunciTipeDefaultDeskripsi
store.fts.tokenizerstringunicode61Tokenizer FTS5 (unicode61 atau trigram)

Konfigurasi backend QMD

Tetapkan memory.backend = "qmd" untuk mengaktifkannya. Semua pengaturan QMD berada di bawah memory.qmd:
KunciTipeDefaultDeskripsi
commandstringqmdJalur executable QMD; tetapkan jalur absolut ketika PATH layanan berbeda dari shell Anda
searchModestringsearchPerintah pencarian: search, vsearch, query
rerankbooleanTetapkan ke false dengan searchMode: "query" dan QMD 2.1+ untuk melewati reranking QMD
includeDefaultMemorybooleantrueIndeks otomatis MEMORY.md + memory/**/*.md
paths[]arrayJalur tambahan: { name, path, pattern? }
sessions.enabledbooleanfalseEkspor transkrip sesi ke QMD
sessions.retentionDaysnumberRetensi transkrip
sessions.exportDirstringDirektori ekspor
searchMode: "search" hanya leksikal/BM25. OpenClaw tidak menjalankan pemeriksaan kesiapan vektor semantik atau pemeliharaan embedding QMD untuk mode tersebut, termasuk selama memory status --deep; vsearch dan query tetap memerlukan kesiapan vektor dan embedding QMD. rerank: false hanya mengubah mode query QMD dan memerlukan QMD 2.1 atau yang lebih baru. Dalam mode CLI langsung, OpenClaw meneruskan --no-rerank; dalam mode MCP yang didukung mcporter, OpenClaw meneruskan rerank: false ke alat kueri terpadu QMD. Biarkan tidak ditetapkan untuk menggunakan perilaku reranking kueri default QMD. OpenClaw memprioritaskan bentuk koleksi QMD dan kueri MCP saat ini, tetapi tetap membuat rilis QMD lama berfungsi dengan mencoba flag pola koleksi yang kompatibel dan nama alat MCP lama bila diperlukan. Ketika QMD menyatakan dukungan untuk beberapa filter koleksi, koleksi dari sumber yang sama dicari dengan satu proses QMD; build QMD lama tetap menggunakan jalur kompatibilitas per koleksi. Sumber yang sama berarti koleksi memori tahan lama dikelompokkan bersama, sementara koleksi transkrip sesi tetap menjadi grup terpisah sehingga diversifikasi sumber tetap memiliki kedua input.
Override model QMD tetap berada di sisi QMD, bukan konfigurasi OpenClaw. Jika Anda perlu menimpa model QMD secara global, tetapkan variabel lingkungan seperti QMD_EMBED_MODEL, QMD_RERANK_MODEL, dan QMD_GENERATE_MODEL di lingkungan runtime gateway.
KunciTipeDefaultDeskripsi
update.intervalstring5mInterval penyegaran
update.debounceMsnumber15000Debounce perubahan file
update.onBootbooleantrueSegarkan saat manajer QMD berumur panjang dibuka; atur false untuk melewati pembaruan boot langsung
update.startupstringoffInisialisasi QMD saat Gateway dimulai yang opsional: off, idle, atau immediate
update.startupDelayMsnumber120000Penundaan sebelum penyegaran startup: "idle" berjalan
update.waitForBootSyncbooleanfalseBlokir pembukaan manajer hingga penyegaran awalnya selesai
update.embedIntervalstringIrama embed terpisah
update.commandTimeoutMsnumberTimeout untuk perintah QMD
update.updateTimeoutMsnumberTimeout untuk operasi pembaruan QMD
update.embedTimeoutMsnumberTimeout untuk operasi embed QMD
KunciTipeDefaultDeskripsi
limits.maxResultsnumber6Hasil pencarian maksimum
limits.maxSnippetCharsnumberBatasi panjang cuplikan
limits.maxInjectedCharsnumberBatasi total karakter yang diinjeksi
limits.timeoutMsnumber4000Timeout pencarian
Mengontrol sesi mana yang dapat menerima hasil pencarian QMD. Skema yang sama seperti session.sendPolicy:
{
  memory: {
    qmd: {
      scope: {
        default: "deny",
        rules: [{ action: "allow", match: { chatType: "direct" } }],
      },
    },
  },
}
Default yang dikirimkan mengizinkan sesi langsung dan sesi kanal, sambil tetap menolak grup.Defaultnya hanya DM. match.keyPrefix mencocokkan kunci sesi yang dinormalisasi; match.rawKeyPrefix mencocokkan kunci mentah termasuk agent:<id>:.
memory.citations berlaku untuk semua backend:
NilaiPerilaku
auto (default)Sertakan footer Source: <path#line> dalam cuplikan
onSelalu sertakan footer
offHilangkan footer (path tetap diteruskan ke agen secara internal)
Saat inisialisasi QMD ketika Gateway dimulai diaktifkan, OpenClaw memulai QMD hanya untuk agen yang memenuhi syarat. Jika update.onBoot bernilai true dan tidak ada pemeliharaan interval/embed yang dikonfigurasi, startup menggunakan manajer sekali pakai untuk penyegaran boot dan menutupnya. Jika interval pembaruan atau embed dikonfigurasi, startup membuka manajer QMD berumur panjang agar dapat memiliki watcher dan timer interval; update.onBoot: false hanya melewati penyegaran boot langsung.

Contoh QMD lengkap

{
  memory: {
    backend: "qmd",
    citations: "auto",
    qmd: {
      includeDefaultMemory: true,
      update: { interval: "5m", debounceMs: 15000 },
      limits: { maxResults: 6, timeoutMs: 4000 },
      scope: {
        default: "deny",
        rules: [{ action: "allow", match: { chatType: "direct" } }],
      },
      paths: [{ name: "docs", path: "~/notes", pattern: "**/*.md" }],
    },
  },
}

Dreaming

Dreaming dikonfigurasi di bawah plugins.entries.memory-core.config.dreaming, bukan di bawah agents.defaults.memorySearch. Dreaming berjalan sebagai satu sweep terjadwal dan menggunakan fase internal light/deep/REM sebagai detail implementasi. Untuk perilaku konseptual dan perintah slash, lihat Dreaming.

Pengaturan pengguna

KunciTipeDefaultDeskripsi
enabledbooleanfalseAktifkan atau nonaktifkan dreaming sepenuhnya
frequencystring0 3 * * *Irama Cron opsional untuk sweep Dreaming penuh
modelstringmodel defaultOverride model subagen Dream Diary opsional
phases.deep.maxPromotedSnippetTokensnumber160Token estimasi maksimum yang disimpan dari setiap cuplikan ingatan jangka pendek yang dipromosikan ke MEMORY.md; metadata asal-usul tetap terlihat

Contoh

{
  plugins: {
    entries: {
      "memory-core": {
        subagent: {
          allowModelOverride: true,
          allowedModels: ["anthropic/claude-sonnet-4-6"],
        },
        config: {
          dreaming: {
            enabled: true,
            frequency: "0 3 * * *",
            model: "anthropic/claude-sonnet-4-6",
          },
        },
      },
    },
  },
}
  • Dreaming menulis status mesin ke memory/.dreams/.
  • Dreaming menulis keluaran naratif yang dapat dibaca manusia ke DREAMS.md (atau dreams.md yang sudah ada).
  • dreaming.model menggunakan gate kepercayaan subagen Plugin yang sudah ada; atur plugins.entries.memory-core.subagent.allowModelOverride: true sebelum mengaktifkannya.
  • Dream Diary mencoba sekali lagi dengan model default sesi saat model yang dikonfigurasi tidak tersedia. Kegagalan kepercayaan atau allowlist dicatat di log dan tidak dicoba ulang secara diam-diam.
  • Kebijakan dan ambang fase light/deep/REM adalah perilaku internal, bukan konfigurasi yang dihadapkan ke pengguna.

Terkait