{
  "name": "@openclaw/matrix",
  "version": "2026.7.2",
  "description": "OpenClaw Matrix channel plugin for rooms and direct messages.",
  "repository": {
    "type": "git",
    "url": "https://github.com/openclaw/openclaw"
  },
  "type": "module",
  "dependencies": {
    "@matrix-org/matrix-sdk-crypto-nodejs": "0.6.1",
    "@matrix-org/matrix-sdk-crypto-wasm": "18.3.1",
    "fake-indexeddb": "6.2.5",
    "markdown-it": "14.3.0",
    "matrix-js-sdk": "41.9.0-rc.0",
    "music-metadata": "11.14.0",
    "typebox": "1.3.6",
    "zod": "4.4.3"
  },
  "devDependencies": {
    "@openclaw/plugin-sdk": "workspace:*",
    "openclaw": "workspace:*"
  },
  "peerDependencies": {
    "openclaw": ">=2026.7.2"
  },
  "peerDependenciesMeta": {
    "openclaw": {
      "optional": true
    }
  },
  "openclaw": {
    "extensions": [
      "./index.ts"
    ],
    "setupEntry": "./setup-entry.ts",
    "setupFeatures": {
      "configPromotion": true
    },
    "channel": {
      "id": "matrix",
      "configuredState": {
        "env": {
          "anyOf": [
            "MATRIX_HOMESERVER",
            "MATRIX_USER_ID",
            "MATRIX_ACCESS_TOKEN",
            "MATRIX_PASSWORD",
            "MATRIX_DEVICE_ID",
            "MATRIX_DEVICE_NAME",
            "MATRIX_OPS_HOMESERVER",
            "MATRIX_OPS_ACCESS_TOKEN",
            "MATRIX_OPS_DEVICE_ID",
            "MATRIX_OPS_DEVICE_NAME"
          ]
        }
      },
      "approvalFlags": [
        "native"
      ],
      "label": "Matrix",
      "selectionLabel": "Matrix (plugin)",
      "docsPath": "/channels/matrix",
      "docsLabel": "matrix",
      "blurb": "open protocol; install the plugin to enable.",
      "order": 70,
      "markdownCapable": true,
      "quickstartAllowFrom": true,
      "doctorCapabilities": {
        "dmAllowFromMode": "nestedOnly",
        "groupModel": "sender",
        "groupAllowFromFallbackToAllowFrom": false,
        "warnOnEmptyGroupSenderAllowlist": true
      },
      "setup": {
        "fields": [
          { "key": "homeserver", "kind": "string", "cli": { "flags": "--homeserver <url>", "description": "Matrix homeserver URL" } },
          { "key": "userId", "kind": "string", "cli": { "flags": "--user-id <id>", "description": "Matrix user id" } },
          { "key": "accessToken", "kind": "string", "sensitive": true, "cli": { "flags": "--access-token <token>", "description": "Matrix access token" } },
          { "key": "password", "kind": "string", "sensitive": true, "cli": { "flags": "--password <password>", "description": "Matrix password" } },
          { "key": "deviceName", "kind": "string", "cli": { "flags": "--device-name <name>", "description": "Matrix device name" } },
          { "key": "avatarUrl", "kind": "string", "cli": { "flags": "--avatar-url <url>", "description": "Matrix avatar URL" } },
          { "key": "initialSyncLimit", "kind": "integer", "cli": { "flags": "--initial-sync-limit <n>", "description": "Matrix initial sync room limit" } },
          { "key": "proxy", "kind": "string", "cli": { "flags": "--proxy <url>", "description": "Matrix proxy URL" } },
          { "key": "dangerouslyAllowPrivateNetwork", "kind": "boolean", "cli": { "flags": "--dangerously-allow-private-network", "description": "Allow private-network Matrix homeservers" } },
          { "key": "useEnv", "kind": "boolean", "cli": { "flags": "--use-env", "description": "Use Matrix environment credentials" } }
        ]
      },
      "persistedAuthState": {
        "specifier": "./auth-presence",
        "exportName": "hasAnyMatrixAuth"
      }
    },
    "install": {
      "clawhubSpec": "clawhub:@openclaw/matrix",
      "npmSpec": "@openclaw/matrix",
      "defaultChoice": "clawhub",
      "minHostVersion": ">=2026.4.10",
      "allowInvalidConfigRecovery": true
    },
    "compat": {
      "pluginApi": ">=2026.7.2"
    },
    "build": {
      "openclawVersion": "2026.7.2"
    },
    "release": {
      "publishToClawHub": true,
      "publishToNpm": true
    }
  }
}
