openclaw memory
Gestiona la indexación, búsqueda y promoción de memoria semántica a MEMORY.md.
Lo proporciona el plugin incluido memory-core, disponible cuando
plugins.slots.memory selecciona memory-core (el valor predeterminado). Otros plugins de memoria
exponen sus propios espacios de nombres de CLI.
Relacionado: concepto de memoria, Dreaming,
referencia de configuración de memoria, wiki de memoria,
wiki, Plugins.
memory status
--agent, se ejecuta para todos los agentes en agents.list; si no hay una lista de agentes
configurada, recurre al agente predeterminado.
| Marca | Efecto |
|---|---|
--deep | Comprueba la preparación del almacén vectorial, el proveedor de embeddings y la búsqueda semántica (implica llamadas adicionales al proveedor). memory status simple se mantiene rápido y omite esto; un estado vectorial/semántico desconocido significa que no se comprobó. El searchMode: "search" léxico de QMD siempre omite las comprobaciones vectoriales semánticas, incluso con --deep. |
--index | Reindexa si el almacén está sucio. Implica --deep. |
--fix | Repara bloqueos de recuperación obsoletos y normaliza los metadatos de promoción. |
--json | Imprime JSON. |
--verbose | Emite registros detallados por fase. |
Dreaming permanece en off incluso con dreaming.enabled: true, o
los barridos programados nunca parecen ejecutarse, el Cron de Dreaming gestionado depende de que el
Heartbeat del agente predeterminado se active para disparar la reconciliación. Consulta
Dreaming para ver los detalles de programación.
El estado también enumera cualquier ruta de búsqueda adicional de agents.defaults.memorySearch.extraPaths.
memory index
status. --force ejecuta una reindexación completa en lugar de
una incremental. --verbose imprime los detalles por agente de proveedor, modelo, fuentes y
rutas adicionales antes de mostrar el progreso de indexación.
memory search
- Consulta:
[query]posicional o--query <text>. Si ambos están definidos, gana--query. Si ninguno está definido, el comando falla. --agent <id>: usa de forma predeterminada el agente predeterminado (no la lista completa de agentes).--max-results <n>: limita el recuento de resultados (entero positivo).--min-score <n>: filtra las coincidencias por debajo de esta puntuación.
memory promote
Clasifica candidatos a corto plazo de memory/YYYY-MM-DD.md y, opcionalmente, agrega
las entradas principales a MEMORY.md.
| Marca | Predeterminado | Efecto |
|---|---|---|
--limit <n> | Máximo de candidatos que devolver/aplicar. | |
--min-score <n> | 0.75 | Puntuación ponderada mínima de promoción. |
--min-recall-count <n> | 3 | Recuento mínimo de recuperaciones requerido. |
--min-unique-queries <n> | 2 | Recuento mínimo de consultas distintas requerido. |
--apply | solo vista previa | Agrega los candidatos seleccionados a MEMORY.md y los marca como promovidos. |
--include-promoted | Incluye candidatos ya promovidos en ciclos anteriores. | |
--json | Imprime JSON. |
memory promote-explain
Explica el desglose de puntuación de un candidato de promoción.
<selector> coincide con la clave de un candidato (exacta o subcadena), ruta o texto del fragmento.
memory rem-harness
Previsualiza reflexiones REM, verdades candidatas y salida de promoción de fase profunda
sin escribir nada.
--path <file-or-dir>: inicia el arnés desde archivos diarios históricosYYYY-MM-DD.mden lugar del espacio de trabajo activo.--grounded: también renderiza una vista previa fundamentada deWhat Happened/Reflections/Possible Lasting Updatesa partir de las notas históricas.
memory rem-backfill
Escribe resúmenes REM históricos fundamentados en DREAMS.md para revisión en la UI.
Reversible.
--path <file-or-dir>: obligatorio salvo que--rollback/--rollback-short-termesté definido. Archivo(s) o directorio de memoria diaria histórica desde donde rellenar.--stage-short-term: también inicia candidatos duraderos fundamentados en el almacén activo de promoción a corto plazo para que la fase profunda normal pueda clasificarlos.--rollback: elimina deDREAMS.mdlas entradas de diario fundamentadas escritas anteriormente.--rollback-short-term: elimina los candidatos fundamentados a corto plazo preparados anteriormente.
Dreaming
Dreaming es el sistema de consolidación de memoria en segundo plano con tres fases cooperativas, ejecutadas en orden según una programación: ligera (ordena/prepara material a corto plazo), REM (reflexiona y saca a la superficie temas), profunda (promueve hechos duraderos aMEMORY.md). Solo la fase profunda escribe en MEMORY.md.
- Actívalo con
plugins.entries.memory-core.config.dreaming.enabled: true(predeterminadofalse);memory-coregestiona automáticamente el trabajo Cron de barrido, sin necesidad deopenclaw cron addmanual. - Alterna desde el chat con
/dreaming on|off; inspecciona con/dreaming status(o/dreaming//dreaming help).on/offrequiere estado de propietario del canal ooperator.admindel Gateway;statusy la ayuda siguen disponibles para cualquiera que pueda invocar el comando. - La salida de fase legible por humanos va a
DREAMS.md(o a undreams.mdexistente). De forma predeterminada (dreaming.storage.mode: "separate"), cada fase también escribe un informe independiente enmemory/dreaming/<phase>/YYYY-MM-DD.md; definemode: "inline"para incorporar informes en el archivo de memoria diaria en su lugar, o"both"para ambos. - Las ejecuciones programadas y manuales de
memory promotecomparten las mismas señales de clasificación de fase profunda; solo difieren los umbrales predeterminados (consulta la tabla de arriba frente a los valores programados de abajo). - Las ejecuciones programadas se distribuyen por el espacio de trabajo de memoria de cada agente configurado.
plugins.entries.memory-core.config.dreaming):
| Clave | Predeterminado |
|---|---|
frequency | 0 3 * * * |
phases.deep.minScore | 0.8 |
phases.deep.minRecallCount | 3 |
phases.deep.minUniqueQueries | 3 |
phases.deep.recencyHalfLifeDays | 14 |
phases.deep.maxAgeDays | 30 |
phases.deep.maxPromotedSnippetTokens | 160 |
Dependencia de Gateway de SecretRef
Si los campos de clave de API remota de memoria activa están configurados como SecretRefs, los comandos dememory
los resuelven desde la instantánea activa del Gateway; si el Gateway no está
disponible, el comando falla rápido. Esto requiere un Gateway que admita el
método secrets.resolve; los gateways anteriores devuelven un error de método desconocido.