Skip to main content

Documentation Index

Fetch the complete documentation index at: https://openclaw-simplex.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

The plugin reads configuration from channels.openclaw-simplex.

Minimal config

{
  "channels": {
    "openclaw-simplex": {
      "enabled": true,
      "connection": {
        "wsUrl": "ws://127.0.0.1:5225"
      }
    }
  }
}

Single-account config

If accounts is not set, the root channels.openclaw-simplex object acts as the default account config.
{
  "channels": {
    "openclaw-simplex": {
      "enabled": true,
      "name": "SimpleX",
      "actions": {
        "reactions": true,
        "polls": true
      },
      "reactionLevel": "minimal",
      "dmPolicy": "pairing",
      "allowFrom": ["*"],
      "groupPolicy": "allowlist",
      "groupAllowFrom": [],
      "mediaMaxMb": 5,
      "connection": {
        "wsUrl": "ws://127.0.0.1:5225",
        "connectTimeoutMs": 15000
      }
    }
  }
}

Multi-account config

If accounts is set, each account entry can override the shared root config. This is the model to use when different SimpleX identities or runtimes should map to different OpenClaw channel accounts.
{
  "channels": {
    "openclaw-simplex": {
      "enabled": true,
      "dmPolicy": "pairing",
      "groupPolicy": "allowlist",
      "connection": {
        "wsUrl": "ws://127.0.0.1:5225"
      },
      "accounts": {
        "ops": {
          "name": "Ops",
          "enabled": true,
          "reactionLevel": "extensive",
          "allowFrom": ["alice", "bob"],
          "connection": {
            "wsUrl": "ws://127.0.0.1:7777"
          }
        }
      }
    }
  }
}

Field reference

FieldMeaning
enabledMaster toggle for the channel or account.
nameOptional display name for an account.
actions.reactionsEnable or disable agent reaction actions for this channel/account.
actions.pollsEnable or disable poll-style message actions for this channel/account.
reactionLevelAgent reaction behavior: off | ack | minimal | extensive.
dmPolicyDirect-message policy: open | allowlist | pairing | disabled. Effective default: pairing.
allowFromDM allowlist entries.
dmHistoryLimitOptional per-DM history limit.
dmsPer-DM config overrides using OpenClaw’s shared DM config schema.
groupPolicyGroup-message policy: open | allowlist | disabled.
groupAllowFromGroup allowlist entries.
groups.<groupId>.requireMentionWhether a group message must mention the bot before it is handled.
groups.<groupId>.toolsPer-group tool policy using OpenClaw’s shared tool policy schema.
mediaMaxMbMaximum accepted/uploaded media size in MB.
markdownMarkdown rendering config from OpenClaw’s shared channel schema.
blockStreamingIf true, buffer the response instead of streaming partial output.
blockStreamingCoalesceOptional response coalescing behavior for blocked streaming.
connection.modeConnection mode. Only external is supported.
connection.wsUrlWebSocket URL for the running simplex-chat WebSocket API. If set, this wins over wsHost/wsPort.
connection.wsHostOptional host fallback when wsUrl is not set. Default: 127.0.0.1.
connection.wsPortOptional port fallback when wsUrl is not set. Default: 5225.
connection.autoAcceptFilesWhether incoming file transfers should be auto-accepted by the SimpleX runtime.
connection.connectTimeoutMsWebSocket connection timeout in milliseconds.
accounts.<accountId>Per-account overrides for the same schema.
A channel/account is considered configured only when connection.wsUrl, connection.wsHost, or connection.wsPort is present. If none of those are set, OpenClaw will not treat the channel as startup-ready.

What belongs in plugin config vs runtime startup

This plugin talks to an already running external simplex-chat process. That means the OpenClaw config only models settings the plugin can truthfully use at runtime.

Good fit for plugin config

  • connection.wsUrl, wsHost, wsPort
  • connection.connectTimeoutMs
  • connection.autoAcceptFiles
  • OpenClaw policy and UX settings such as dmPolicy, allowFrom, groupPolicy, actions, and reactionLevel

Intentionally not mirrored into plugin config

These are primarily simplex-chat startup or environment flags, so they belong in the host-managed service command line, not in channels.openclaw-simplex:
  • transport/bootstrap: —server, —xftp-server, —socks-proxy, —socks-mode, —host-mode, —required-host-mode, —smp-proxy, —smp-proxy-fallback, —smp-web-port
  • local process/file layout: -d/—database, -k/—key, —files-folder, —temp-folder, —log-file
  • runtime process behavior: —device-name, —maintenance, —mute, —mark-read, —reactions, —create-bot-display-name
Those flags can still be valuable, but the right place to set them is the supervised simplex-chat service definition described in Runtime Setup.