memory-wiki es un plugin incluido que compila conocimiento duradero en una
wiki navegable: páginas deterministas, afirmaciones estructuradas con evidencias,
procedencia, paneles y resúmenes legibles por máquinas.
No sustituye al plugin de Active Memory. La recuperación, la promoción, la indexación y
Dreaming siguen siendo responsabilidad del backend de memoria que esté configurado
(memory-core, QMD, Honcho, etc.). memory-wiki se sitúa a su lado y compila
el conocimiento en una capa de wiki mantenida.
Active el plugin antes de usar su CLI, sus herramientas o su integración en tiempo de ejecución:
Regla práctica:
memory_searchpara una única recuperación amplia en todos los corpus configuradoswiki_search/wiki_getcuando se necesiten clasificación específica de la wiki, procedencia o una estructura de creencias a nivel de páginamemory_search corpus=allpara abarcar ambas capas en una sola llamada, cuando el plugin de Active Memory admita la selección de corpus
memory-wiki en modo bridge para páginas sintetizadas duraderas. Consulte el
ejemplo de QMD + modo puente en Configuración.
Si el modo puente informa de cero artefactos exportados, el plugin de Active Memory
no está exponiendo actualmente entradas públicas del puente. Ejecute primero openclaw wiki doctor
y, a continuación, confirme que el plugin de Active Memory admite artefactos públicos.
Modos del almacén
isolated(predeterminado): almacén propio, fuentes propias, sin dependencia del plugin de Active Memory. Úselo para un almacén de conocimiento seleccionado y autocontenido.bridge: lee artefactos públicos de memoria y registros de eventos del plugin de Active Memory mediante interfaces públicas del SDK de plugins. Úselo para compilar los artefactos exportados por el plugin de memoria sin acceder a sus componentes internos privados.unsafe-local: vía de escape explícita en la misma máquina para rutas locales privadas. Es intencionadamente experimental y no portátil; úselo solo cuando comprenda el límite de confianza y necesite específicamente acceso al sistema de archivos local que el modo puente no puede proporcionar.
vaultModeelige de dónde proceden las entradas de la wiki.vault.scopeelige si todos los agentes usan un almacén o si cada agente recibe un almacén secundario.
vault.scope: "global" es el valor predeterminado y conserva el comportamiento existente de un único almacén.
Use vault.scope: "agent" con el modo isolated o bridge cuando
los agentes no deban compartir páginas de la wiki, resúmenes compilados, resultados de búsqueda ni escrituras.
El ámbito de agente no puede combinarse con el modo unsafe-local porque esas rutas
privadas configuradas no son entradas propiedad del agente. La validación de la configuración rechaza esta
combinación.
El modo puente puede indexar, según el selector de configuración bridge.*:
- artefactos de memoria exportados (
indexMemoryRoot) - notas diarias (
indexDailyNotes) - informes de sueños (
indexDreamReports) - registros de eventos de memoria (
followMemoryEvents)
bridge.readMemoryArtifacts está habilitado,
openclaw wiki status, openclaw wiki doctor y openclaw wiki bridge import se enrutan a través del Gateway en ejecución para que vean el mismo contexto del plugin de Active Memory
que la memoria del agente o del tiempo de ejecución. Si el puente está deshabilitado o las lecturas de
artefactos están desactivadas, esos comandos mantienen su comportamiento local/sin conexión.
Diseño del almacén
sources/: material sin procesar importado y páginas respaldadas por el puente o por el modo local no seguroentities/: elementos duraderos, personas, sistemas, proyectos y objetosconcepts/: ideas, abstracciones, patrones y políticas (también el destino de las importaciones de OKF)syntheses/: resúmenes compilados y recopilaciones mantenidasreports/: paneles generados
Importaciones de Open Knowledge Format
memory-wiki
lo convierta en páginas de conceptos nativas de OpenClaw y resúmenes compilados.
- los archivos
.mdno reservados son documentos de conceptos - cada concepto importado requiere un campo de frontmatter
typeno vacío; si faltatype, se genera una advertenciamissing-typey se omite el archivo - los valores
typedesconocidos se aceptan como conceptos genéricos index.mdylog.mdestán reservados y nunca se importan como conceptos- los enlaces Markdown rotos o externos se dejan sin cambios
concepts/ para que los flujos existentes de compilación, búsqueda, obtención y
paneles puedan verlas sin un segundo árbol de wiki. Cada página conserva el
ID original del concepto OKF, la ruta de origen, type, resource, tags, la marca temporal
y todo el frontmatter del productor. Los enlaces internos de OKF se reescriben para que apunten a las páginas
de conceptos generadas de la wiki y también emiten entradas estructuradas relationships con
kind: okf-link.
Afirmaciones estructuradas y evidencias
Las páginas contienen frontmatter estructuradoclaims, no solo texto de formato libre. Cada
afirmación puede incluir id, text, status, confidence, evidence[] y
updatedAt. Cada entrada de evidencia puede incluir kind, sourceId, path,
lines, weight, confidence, privacyTier, note y updatedAt.
Esto hace que la wiki se comporte como una capa de creencias, no como un depósito pasivo de notas.
Las afirmaciones pueden rastrearse, puntuarse, cuestionarse y resolverse consultando las fuentes.
Metadatos de entidades orientados a agentes
Las páginas de entidades contienen metadatos genéricos de enrutamiento que pueden usarse para personas, equipos, sistemas, proyectos o cualquier otro tipo de entidad:entityType: por ejemplo,person,team,system,projectcanonicalId: clave de identidad estable entre alias e importacionesaliases: nombres, identificadores o etiquetas que se resuelven en la misma páginaprivacyTier: cadena de formato libre;publicse trata como sin revisión y cualquier otro valor (por ejemplo,local-private,sensitive,confirm-before-use) se marca enreports/privacy-review.mdbestUsedFor/notEnoughFor: indicaciones compactas de enrutamientolastRefreshedAt: marca temporal de actualización de la fuente, independiente de la hora de edición de la páginapersonCard: tarjeta opcional de enrutamiento específica de una persona (identificadores, redes sociales, correos electrónicos, zona horaria, área, temas de consulta, temas que se deben evitar consultar, confianza y nivel de privacidad)relationships: aristas tipadas hacia páginas relacionadas (destino, tipo, peso, confianza, tipo de evidencia, nivel de privacidad y nota)
reports/person-agent-directory.md y, a continuación, abra
la página de la persona con wiki_get antes de usar datos de contacto o hechos
inferidos.
Ejemplo de página de entidad
Ejemplo de página de entidad
Pipeline de compilación
La compilación lee las páginas de la wiki, normaliza los resúmenes y conserva una instantánea orientada a máquinas en el estado SQLite compartido del plugin de OpenClaw. El código de tiempo de ejecución usa la instantánea del propietario gestionada por el ciclo de vida para cargar SQLite durante la preparación asíncrona de instrucciones; el ensamblaje síncrono de instrucciones nunca extrae información de Markdown ni lee archivos de caché. El resultado compilado también proporciona la indexación inicial de la wiki para búsquedas y obtenciones, la resolución de identificadores de afirmaciones hasta las páginas propietarias, complementos compactos para instrucciones y la generación de informes. Las modificaciones de las fuentes y las restauraciones del almacén solo pasan a estar disponibles para las máquinas después de la siguiente compilación. Al reiniciar o actualizar el ciclo de vida del plugin, se compara la publicación de compilación encadenada causalmente del almacén con SQLite y se rechaza una instantánea de un estado más reciente que se haya revertido. Un compilador iniciado antes de la reversión no puede publicar sobre el predecesor restaurado. La preparación de instrucciones no consulta periódicamente el almacén ni instala observadores de archivos. Tras la cuarentena de una reversión, una compilación en el proceso en ejecución borra de inmediato el estado del propietario; un proceso de compilación independiente requiere actualizar el ciclo de vida del plugin para que el daemon pueda confirmar la nueva publicación duradera. Las cachés compiladas pueden reconstruirse: las filas de caché anteriores a las épocas de publicación se tratan como fallos de caché y se sustituyen en la siguiente compilación; no se migran.Paneles e informes de estado
Cuandorender.createDashboards está habilitado, la compilación mantiene paneles en
reports/:
Búsqueda y recuperación
Dos backends de búsqueda:shared: usa el flujo compartido de búsqueda en memoria cuando está disponiblelocal: busca localmente en la wiki
wiki, memory, all.
wiki_search/wiki_getusan resúmenes compilados como primera pasada cuando es posible- los identificadores de afirmaciones se resuelven en la página propietaria
- las afirmaciones cuestionadas, obsoletas o vigentes influyen en la clasificación
- las etiquetas de procedencia se conservan en los resultados
--mode / mode de la herramienta):
Cuando un resultado coincide con una afirmación estructurada,
wiki_search devuelve
matchedClaimId, matchedClaimStatus, matchedClaimConfidence,
evidenceKinds y evidenceSourceIds en la carga útil de detalles. La salida de texto
incluye líneas compactas de Claim: y Evidence: cuando están disponibles.
Herramientas del agente
El Plugin también registra un complemento no exclusivo del corpus de memoria, por lo que las
funciones compartidas
memory_search y memory_get pueden acceder a la wiki cuando el Plugin de Active Memory
admite la selección de corpus.
Comportamiento del prompt y del contexto
Cuandocontext.includeCompiledDigestPrompt está activado, las secciones de memoria del prompt
añaden una instantánea compilada y compacta del estado del Plugin: solo las páginas
principales, solo las afirmaciones principales, el número de contradicciones, el número de preguntas y
calificadores de confianza/actualidad. Es opcional porque cambia la estructura del prompt; es relevante
principalmente para motores de contexto o el ensamblado de prompts que consumen explícitamente
complementos de memoria.
Configuración
Coloque la configuración enplugins.entries.memory-wiki.config:
Almacenes por agente
Establezcavault.scope en agent para proporcionar una wiki independiente a cada agente configurado.
En este ámbito, vault.path es un directorio principal y OpenClaw añade el
identificador normalizado del agente:
~/.openclaw/wiki/support y
~/.openclaw/wiki/marketing. Si se omite vault.path en el ámbito del agente, el
directorio principal tiene como valor predeterminado ~/.openclaw/wiki. Por tanto, el agente main predeterminado conserva
la ruta ~/.openclaw/wiki/main existente.
Las herramientas del agente, los resúmenes compilados del prompt y el complemento de la wiki expuesto mediante
memory_search / memory_get resuelven el almacén a partir del contexto del agente activo.
Para las llamadas de la CLI y el Gateway en una configuración con varios agentes configurados, proporcione
el agente explícitamente mediante openclaw wiki --agent <agentId> ... o el campo agentId de la
solicitud del Gateway. Un único agente configurado sigue siendo el predeterminado cuando no se
proporciona ningún identificador.
En el modo puente, las importaciones con ámbito de agente aceptan un artefacto público de memoria solo cuando
su agentIds incluye al agente seleccionado. Se omiten los artefactos pertenecientes a otro agente,
sin metadatos de propiedad o con un propietario desconocido. El ámbito global
mantiene el comportamiento existente de artefactos compartidos.
Ejemplo: QMD + modo puente
Use esta configuración cuando desee QMD para la recuperación ymemory-wiki como capa de
conocimiento mantenida. Cada capa conserva un enfoque específico: QMD mantiene disponibles para búsqueda las notas sin procesar, las exportaciones
de sesiones y las colecciones adicionales, mientras que memory-wiki compila
entidades estables, afirmaciones, paneles y páginas de origen.
memory-wiki centrado en
páginas y paneles compilados, y la estructura del prompt sin cambios hasta que se
activen intencionadamente los resúmenes compilados del prompt.
CLI
wiki okf import, wiki apply metadata, wiki unsafe-local import,
wiki chatgpt import / wiki chatgpt rollback y el conjunto completo de subcomandos
wiki obsidian.
Compatibilidad con Obsidian
Cuandovault.renderMode es obsidian, el Plugin escribe Markdown compatible con Obsidian
y puede usar opcionalmente la CLI oficial de obsidian para consultar el estado,
buscar en el almacén, abrir una página, invocar un comando y acceder a la
nota diaria. Esto es opcional; la wiki sigue funcionando en modo nativo sin
Obsidian.
Los almacenes con ámbito de agente pueden seguir usando Markdown compatible con Obsidian, pero la validación de la
configuración rechaza obsidian.useOfficialCli: true con vault.scope: "agent".
La configuración actual de obsidian.vaultName es global y no puede seleccionar un almacén de
Obsidian distinto para cada agente. En su lugar, use las herramientas de la wiki y las operaciones de la CLI,
o mantenga una wiki operada mediante Obsidian en el ámbito global.
Flujo de trabajo recomendado
1
Mantener el plugin de memoria activa para la recuperación
La recuperación, la promoción y Dreaming siguen siendo responsabilidad del backend de memoria configurado.
2
Activar memory-wiki
Comience con el modo
isolated, a menos que quiera explícitamente el modo puente.3
Usar wiki_search / wiki_get cuando la procedencia sea importante
Prefiera estas opciones en lugar de
memory_search cuando quiera una clasificación específica de la wiki o una estructura de creencias a nivel de página.4
Usar wiki_apply para síntesis acotadas o actualizaciones de metadatos
Evite editar manualmente los bloques generados y administrados.
5
Ejecutar wiki_lint después de cambios significativos
Detecta contradicciones, preguntas abiertas y lagunas de procedencia.
6
Activar los paneles para mostrar información obsoleta o contradicciones
Establezca
render.createDashboards: true (valor predeterminado).