memory-wiki è un plugin incluso che compila conoscenze persistenti in una
wiki navigabile: pagine deterministiche, affermazioni strutturate corredate di prove,
provenienza, dashboard e riepiloghi leggibili dalle macchine.
Non sostituisce il plugin di memoria attiva. Il recupero, la promozione, l’indicizzazione e
il Dreaming restano sotto la responsabilità del backend di memoria configurato
(memory-core, QMD, Honcho e così via). memory-wiki opera al suo fianco e compila
le conoscenze in un livello wiki mantenuto.
Regola pratica:
memory_searchper un’unica ricerca ampia in tutti i corpora configuratiwiki_search/wiki_getquando servono classificazione specifica della wiki, provenienza o struttura delle convinzioni a livello di paginamemory_search corpus=allper includere entrambi i livelli in una sola chiamata, quando il plugin di memoria attiva supporta la selezione del corpus
memory-wiki in modalità bridge per pagine sintetizzate persistenti. Consulta
l’esempio QMD + modalità bridge nella sezione Configurazione.
Se la modalità bridge segnala zero artefatti esportati, il plugin di memoria attiva
non sta attualmente esponendo input bridge pubblici. Esegui prima openclaw wiki doctor,
quindi verifica che il plugin di memoria attiva supporti gli artefatti pubblici.
Modalità del vault
isolated(predefinita): vault e origini propri, senza dipendenze dal plugin di memoria attiva. Usala per un archivio di conoscenze curato e autosufficiente.bridge: legge gli artefatti pubblici della memoria e i registri degli eventi dal plugin di memoria attiva attraverso le interfacce pubbliche dell’SDK dei plugin. Usala per compilare gli artefatti esportati dal plugin di memoria senza accedere ai suoi componenti interni privati.unsafe-local: via di fuga esplicita sulla stessa macchina per percorsi locali privati. Intenzionalmente sperimentale e non portabile; usala solo se comprendi il confine di attendibilità e ti serve specificamente un accesso al file system locale che la modalità bridge non può fornire.
vaultModedetermina la provenienza degli input della wiki.vault.scopedetermina se tutti gli agenti usano un unico vault o se ogni agente dispone di un vault figlio.
vault.scope: "global" è l’impostazione predefinita e mantiene il comportamento
esistente con un singolo vault. Usa vault.scope: "agent" con la modalità
isolated o bridge quando gli agenti non devono condividere pagine wiki,
riepiloghi compilati, risultati di ricerca o scritture.
L’ambito agente non può essere combinato con la modalità unsafe-local, perché i
percorsi privati configurati non sono input di proprietà dell’agente. La convalida
della configurazione rifiuta questa combinazione.
La modalità bridge può indicizzare, in base alle opzioni di configurazione bridge.*:
- gli artefatti di memoria esportati (
indexMemoryRoot) - le note giornaliere (
indexDailyNotes) - i rapporti del Dreaming (
indexDreamReports) - i registri degli eventi della memoria (
followMemoryEvents)
bridge.readMemoryArtifacts è abilitato,
openclaw wiki status, openclaw wiki doctor e openclaw wiki bridge import vengono instradati attraverso il Gateway in esecuzione, affinché vedano lo
stesso contesto del plugin di memoria attiva usato dalla memoria dell’agente/runtime.
Se il bridge è disabilitato o la lettura degli artefatti è disattivata, questi
comandi mantengono il comportamento locale/offline.
Struttura del vault
sources/: materiale grezzo importato e pagine basate su bridge/unsafe-localentities/: elementi persistenti, persone, sistemi, progetti, oggetticoncepts/: idee, astrazioni, schemi, criteri (anche destinazione delle importazioni OKF)syntheses/: riepiloghi compilati e aggregazioni mantenutereports/: dashboard generate
Importazioni Open Knowledge Format
memory-wiki lo trasformi in pagine
di concetti native di OpenClaw e in riepiloghi compilati.
- i file
.mdnon riservati sono documenti di concetti - ogni concetto importato richiede un campo frontmatter
typenon vuoto; setypeè assente, viene generato un avvisomissing-typee il file viene ignorato - i valori
typesconosciuti sono accettati come concetti generici index.mdelog.mdsono riservati e non vengono mai importati come concetti- i collegamenti Markdown non validi o esterni vengono lasciati invariati
concepts/, in modo che i flussi
esistenti di compilazione, ricerca, lettura e dashboard possano utilizzarle senza
un secondo albero wiki. Ogni pagina mantiene l’ID originale del concetto OKF, il
percorso di origine, type, resource, tags, il timestamp e il frontmatter
completo del produttore. I collegamenti OKF interni vengono riscritti verso le
pagine dei concetti wiki generate e producono anche voci relationships
strutturate con kind: okf-link.
Affermazioni strutturate e prove
Le pagine contengono frontmatterclaims strutturato, non soltanto testo libero.
Ogni affermazione può includere id, text, status, confidence, evidence[]
e updatedAt. Ogni voce di prova può includere kind, sourceId, path,
lines, weight, confidence, privacyTier, note e updatedAt.
In questo modo la wiki si comporta come un livello di convinzioni, non come un
deposito passivo di note. Le affermazioni possono essere monitorate, valutate,
contestate e ricondotte alle origini per la risoluzione.
Metadati delle entità destinati agli agenti
Le pagine delle entità contengono metadati generici di instradamento utilizzabili per persone, team, sistemi, progetti o qualsiasi altro tipo di entità:entityType: per esempioperson,team,system,projectcanonicalId: chiave di identità stabile tra alias e importazionialiases: nomi, handle o etichette che rimandano alla stessa paginaprivacyTier: stringa in formato libero;publicè considerato esente da revisione, mentre qualsiasi altro valore (per esempiolocal-private,sensitive,confirm-before-use) viene segnalato inreports/privacy-review.mdbestUsedFor/notEnoughFor: indicazioni compatte per l’instradamentolastRefreshedAt: timestamp di aggiornamento dell’origine, distinto dall’ora di modifica della paginapersonCard: scheda di instradamento facoltativa specifica per una persona (handle, social, email, fuso orario, area, richieste appropriate, richieste da evitare, attendibilità, livello di privacy)relationships: collegamenti tipizzati a pagine correlate (destinazione, tipo, peso, attendibilità, tipo di prova, livello di privacy, nota)
reports/person-agent-directory.md, quindi
apri la pagina della persona con wiki_get prima di usare dati di contatto o
fatti dedotti.
Esempio di pagina di un'entità
Esempio di pagina di un'entità
Pipeline di compilazione
La compilazione legge le pagine della wiki, normalizza i riepiloghi e genera artefatti stabili destinati alle macchine in:.openclaw-wiki/cache/agent-digest.json.openclaw-wiki/cache/claims.jsonl
Dashboard e rapporti sullo stato
Quandorender.createDashboards è abilitato, la compilazione mantiene le
dashboard in reports/:
Ricerca e recupero
Due backend di ricerca:shared: usa il flusso di ricerca condiviso della memoria, quando disponibilelocal: cerca localmente nella wiki
wiki, memory, all.
wiki_search/wiki_getusano, quando possibile, i riepiloghi compilati come primo passaggio- gli ID delle affermazioni rimandano alla pagina proprietaria
- le affermazioni contestate/obsolete/aggiornate influenzano la classificazione
- le etichette di provenienza vengono mantenute nei risultati
--mode / mode dello strumento):
Quando un risultato corrisponde a un’affermazione strutturata,
wiki_search
restituisce matchedClaimId, matchedClaimStatus, matchedClaimConfidence,
evidenceKinds ed evidenceSourceIds nel payload dei dettagli. L’output testuale
include righe compatte Claim: ed Evidence: quando disponibili.
Strumenti per gli agenti
Il plugin registra anche un’integrazione non esclusiva del corpus di memoria, così le funzioni condivise
memory_search e memory_get possono accedere alla wiki quando il plugin di memoria attivo
supporta la selezione del corpus.
Comportamento di prompt e contesto
Quandocontext.includeCompiledDigestPrompt è abilitato, le sezioni del prompt di memoria
aggiungono un’istantanea compilata e compatta da agent-digest.json: solo le pagine
principali, solo le affermazioni principali, numero di contraddizioni, numero di domande,
qualificatori di attendibilità/aggiornamento. Questa funzionalità è facoltativa perché modifica la struttura del prompt; è rilevante soprattutto
per i motori di contesto o per la composizione dei prompt che utilizzano esplicitamente le
integrazioni della memoria.
Configurazione
Inserisci la configurazione inplugins.entries.memory-wiki.config:
Vault per agente
Impostavault.scope su agent per assegnare a ogni agente configurato una wiki separata.
In questo ambito, vault.path è una directory padre e OpenClaw aggiunge l’id
normalizzato dell’agente:
~/.openclaw/wiki/support e
~/.openclaw/wiki/marketing. Se vault.path viene omesso nell’ambito agente, la
directory padre predefinita è ~/.openclaw/wiki. L’agente main predefinito mantiene quindi
il percorso esistente ~/.openclaw/wiki/main.
Gli strumenti dell’agente, i riepiloghi compilati del prompt e l’integrazione wiki esposta tramite
memory_search / memory_get risolvono il vault dal contesto dell’agente attivo.
Per le chiamate CLI e Gateway in una configurazione con più agenti, specifica
esplicitamente l’agente con openclaw wiki --agent <agentId> ... oppure con
agentId nella richiesta Gateway. Quando non viene fornito alcun id, un singolo agente configurato
rimane quello predefinito.
In modalità bridge, le importazioni con ambito agente accettano un artefatto di memoria pubblico solo quando
il relativo agentIds include l’agente selezionato. Gli artefatti appartenenti a un altro agente,
privi di metadati di proprietà o con un proprietario sconosciuto vengono ignorati. L’ambito globale
mantiene il comportamento esistente per gli artefatti condivisi.
Esempio: QMD + modalità bridge
Usa questa configurazione quando vuoi QMD per il recupero ememory-wiki come livello di
conoscenza gestito. Ogni livello rimane focalizzato sul proprio compito: QMD mantiene ricercabili
le note grezze, le esportazioni delle sessioni e le raccolte aggiuntive, mentre memory-wiki compila
entità stabili, affermazioni, dashboard e pagine delle fonti.
memory-wiki concentrato sulle
pagine compilate e sulle dashboard e la struttura del prompt invariata finché non abiliti
intenzionalmente i prompt con riepiloghi compilati.
CLI
wiki okf import, wiki apply metadata, wiki unsafe-local import,
wiki chatgpt import / wiki chatgpt rollback e l’intero insieme di sottocomandi wiki obsidian.
Supporto per Obsidian
Quandovault.renderMode è obsidian, il plugin scrive Markdown compatibile con Obsidian
e può facoltativamente usare la CLI ufficiale obsidian per verificare lo stato,
cercare nel vault, aprire una pagina, richiamare un comando e passare alla
nota giornaliera. Questa funzionalità è facoltativa; la wiki continua a funzionare in modalità nativa senza
Obsidian.
I vault con ambito agente possono comunque usare Markdown compatibile con Obsidian, ma la convalida della
configurazione rifiuta obsidian.useOfficialCli: true con vault.scope: "agent".
L’impostazione attuale obsidian.vaultName è globale e non può selezionare un vault
Obsidian distinto per ciascun agente. Usa invece gli strumenti wiki e le operazioni della CLI,
oppure mantieni nell’ambito globale una wiki gestita tramite Obsidian.
Flusso di lavoro consigliato
1
Mantieni il plugin di memoria attiva per il recupero
Il recupero, la promozione e il Dreaming rimangono sotto la responsabilità del backend di memoria configurato.
2
Abilita memory-wiki
Inizia con la modalità
isolated, a meno che tu non voglia esplicitamente la modalità bridge.3
Usa wiki_search / wiki_get quando la provenienza è importante
Preferiscili a
memory_search quando desideri un ordinamento specifico della wiki o una struttura delle convinzioni a livello di pagina.4
Usa wiki_apply per sintesi mirate o aggiornamenti dei metadati
Evita di modificare manualmente i blocchi generati e gestiti.
5
Esegui wiki_lint dopo modifiche significative
Rileva contraddizioni, domande aperte e lacune nella provenienza.
6
Abilita le dashboard per rendere visibili informazioni obsolete e contraddizioni
Imposta
render.createDashboards: true (predefinito).