Files
openclaw/extensions/memory-wiki/openclaw.plugin.json
Peter Steinberger 98b8c8c4ae feat(memory-wiki): isolate vaults per agent (#103349)
* feat(memory-wiki): isolate per-agent vaults

Refs #63829.

Co-authored-by: SunnyShu <shu.zongyu@xydigit.com>

* fix(memory-wiki): scope agent status metadata

Refs #103088 and #103196.

Co-authored-by: SunnyShu <shu.zongyu@xydigit.com>

---------

Co-authored-by: SunnyShu <shu.zongyu@xydigit.com>
2026-07-10 05:19:13 +01:00

236 lines
6.1 KiB
JSON

{
"id": "memory-wiki",
"activation": {
"onStartup": true
},
"name": "Memory Wiki",
"description": "Persistent wiki compiler and Obsidian-friendly knowledge vault for OpenClaw.",
"contracts": {
"tools": ["wiki_apply", "wiki_get", "wiki_lint", "wiki_search", "wiki_status"]
},
"skills": ["./skills"],
"uiHints": {
"vaultMode": {
"label": "Vault Mode",
"help": "Choose isolated, bridge, or unsafe-local mode for the wiki vault."
},
"vault.path": {
"label": "Vault Path",
"help": "Exact vault path in global scope, or the parent directory for per-agent vaults."
},
"vault.scope": {
"label": "Vault Scope",
"help": "Use one global vault or a separate child vault for each agent."
},
"vault.renderMode": {
"label": "Render Mode",
"help": "Render markdown in native OpenClaw format or Obsidian-friendly format."
},
"obsidian.useOfficialCli": {
"label": "Use Obsidian CLI",
"help": "Probe and use the official Obsidian CLI when available."
},
"bridge.enabled": {
"label": "Enable Bridge Mode",
"help": "Read public memory artifacts and events from the active memory plugin in bridge mode."
},
"bridge.readMemoryArtifacts": {
"label": "Read Memory Artifacts",
"help": "Enable bridge reads from the active memory plugin's public artifact export."
},
"unsafeLocal.allowPrivateMemoryCoreAccess": {
"label": "Allow Private Memory Access",
"help": "Experimental same-repo escape hatch for reading memory-core private paths."
},
"context.includeCompiledDigestPrompt": {
"label": "Include Compiled Digest In Prompt",
"help": "Append a compact compiled wiki digest snapshot to memory prompt sections for context engines and legacy prompt assembly."
}
},
"configSchema": {
"type": "object",
"additionalProperties": false,
"allOf": [
{
"not": {
"required": ["vaultMode", "vault"],
"properties": {
"vaultMode": {
"const": "unsafe-local"
},
"vault": {
"required": ["scope"],
"properties": {
"scope": {
"const": "agent"
}
}
}
}
}
},
{
"not": {
"required": ["vault", "obsidian"],
"properties": {
"vault": {
"required": ["scope"],
"properties": {
"scope": {
"const": "agent"
}
}
},
"obsidian": {
"required": ["useOfficialCli"],
"properties": {
"useOfficialCli": {
"const": true
}
}
}
}
}
}
],
"properties": {
"vaultMode": {
"type": "string",
"enum": ["isolated", "bridge", "unsafe-local"]
},
"vault": {
"type": "object",
"additionalProperties": false,
"properties": {
"scope": {
"type": "string",
"enum": ["global", "agent"]
},
"path": {
"type": "string"
},
"renderMode": {
"type": "string",
"enum": ["native", "obsidian"]
}
}
},
"obsidian": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": {
"type": "boolean"
},
"useOfficialCli": {
"type": "boolean"
},
"vaultName": {
"type": "string"
},
"openAfterWrites": {
"type": "boolean"
}
}
},
"bridge": {
"type": "object",
"additionalProperties": false,
"properties": {
"enabled": {
"type": "boolean"
},
"readMemoryArtifacts": {
"type": "boolean"
},
"indexDreamReports": {
"type": "boolean"
},
"indexDailyNotes": {
"type": "boolean"
},
"indexMemoryRoot": {
"type": "boolean"
},
"followMemoryEvents": {
"type": "boolean"
}
}
},
"unsafeLocal": {
"type": "object",
"additionalProperties": false,
"properties": {
"allowPrivateMemoryCoreAccess": {
"type": "boolean"
},
"paths": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"ingest": {
"type": "object",
"additionalProperties": false,
"properties": {
"autoCompile": {
"type": "boolean"
},
"maxConcurrentJobs": {
"type": "number",
"minimum": 1
},
"allowUrlIngest": {
"type": "boolean"
}
}
},
"search": {
"type": "object",
"additionalProperties": false,
"properties": {
"backend": {
"type": "string",
"enum": ["shared", "local"]
},
"corpus": {
"type": "string",
"enum": ["wiki", "memory", "all"]
}
}
},
"context": {
"type": "object",
"additionalProperties": false,
"properties": {
"includeCompiledDigestPrompt": {
"type": "boolean"
}
}
},
"render": {
"type": "object",
"additionalProperties": false,
"properties": {
"preserveHumanBlocks": {
"type": "boolean"
},
"createBacklinks": {
"type": "boolean"
},
"createDashboards": {
"type": "boolean"
}
}
}
}
},
"configContracts": {
"compatibilityMigrationPaths": ["plugins.entries.memory-wiki.config.bridge.readMemoryCore"]
},
"commandAliases": [{ "name": "wiki" }]
}