{
  "id": "pug-brain",
  "kind": "memory",
  "name": "PugBrain",
  "description": "PugBrain — Brain-inspired persistent memory for AI agents. Required: set plugins.slots.memory = \"pug-brain\" in openclaw.json to activate PugBrain as the exclusive memory provider.",
  "version": "2.27.1",
  "configSchema": {
    "jsonSchema": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "pythonPath": {
          "type": "string",
          "description": "Path to Python executable with pug-brain installed",
          "default": "python"
        },
        "brain": {
          "type": "string",
          "pattern": "^[a-zA-Z0-9_\\-.]{1,64}$",
          "description": "Brain name to use for this workspace",
          "default": "default"
        },
        "autoContext": {
          "type": "boolean",
          "description": "Inject relevant memory context before each agent run",
          "default": true
        },
        "autoCapture": {
          "type": "boolean",
          "description": "Auto-extract and store memories after each agent run",
          "default": true
        },
        "contextDepth": {
          "type": "integer",
          "minimum": 0,
          "maximum": 3,
          "description": "Recall depth for auto-context: 0=instant, 1=context, 2=habit, 3=deep",
          "default": 1
        },
        "maxContextTokens": {
          "type": "integer",
          "minimum": 100,
          "maximum": 10000,
          "description": "Maximum tokens for auto-context injection",
          "default": 500
        },
        "timeout": {
          "type": "integer",
          "minimum": 5000,
          "maximum": 120000,
          "description": "MCP request timeout in milliseconds",
          "default": 30000
        }
      }
    },
    "uiHints": {
      "_setup": {
        "label": "Required Setup",
        "help": "Add to openclaw.json: { \"plugins\": { \"slots\": { \"memory\": \"pug-brain\" } } } — this disables the default memory-core plugin so agents use PugBrain exclusively."
      },
      "pythonPath": {
        "label": "Python Path",
        "placeholder": "python",
        "help": "Path to Python executable that has pug-brain installed (pip install pug-brain)"
      },
      "brain": {
        "label": "Brain Name",
        "placeholder": "default",
        "help": "Which brain to use — each workspace can have its own brain"
      },
      "autoContext": {
        "label": "Auto-inject Context",
        "help": "Automatically query relevant memories and inject them before each agent run"
      },
      "autoCapture": {
        "label": "Auto-capture Memories",
        "help": "Automatically extract facts, decisions, and insights after each agent run"
      },
      "contextDepth": {
        "label": "Context Depth",
        "help": "How deep to search: 0=instant lookup, 1=contextual, 2=habit patterns, 3=full graph traversal"
      },
      "maxContextTokens": {
        "label": "Max Context Tokens",
        "help": "Maximum tokens to inject as context (higher = more context but uses more prompt space)"
      },
      "timeout": {
        "label": "MCP Timeout (ms)",
        "help": "How long to wait for MCP server responses. Increase if you see timeout errors on slow machines (default: 30000)"
      }
    }
  }
}
