> ## Documentation Index
> Fetch the complete documentation index at: https://openclaw-simplex.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Why SimpleX

> Discover why SimpleX gives OpenClaw a private, invitation-first messaging channel that needs no phone number, bot username, or hosted platform account.

Most OpenClaw channels start from a registered platform identity: a bot username, a phone number, or an application account that lives inside someone else's platform.

This plugin takes a different shape. With SimpleX, the agent becomes reachable when you hand someone a link. There is no phone-number binding and no hosted bot account to provision before the first conversation starts.

That makes the channel especially useful for OpenClaw deployments where privacy, local control, and explicit network boundaries matter.

The point is not that this channel replaces every platform-backed integration. It adds a different reachability and trust model to OpenClaw's channel set.

<Columns cols={2}>
  <Card title="Invitation-first reachability" icon="key-round">
    Create a one-time connect link or an address link, share it only with intended users, and revoke it when that access should disappear.
  </Card>

  <Card title="No platform account dependency" icon="shield">
    No phone number, no bot username, and no bot registration step before your OpenClaw agent can receive a message.
  </Card>
</Columns>

<Columns cols={2}>
  <Card title="Operator-controlled runtime" icon="server">
    Run <code>simplex-chat</code> yourself, choose where the runtime and relay path live, and keep OpenClaw policy enforcement local.
  </Card>

  <Card title="OpenClaw-native operations" icon="message-circle">
    Pairing approval, exec approvals, allowlists, invite helpers, media support, reactions, polls, and channel status all exist in the plugin, not in ad hoc glue code.
  </Card>
</Columns>

## What the plugin provides

A SimpleX channel backed by a local <code>simplex-chat</code> WebSocket runtime:

* send/receive (text and media)
* pairing with allowlist enforcement and same-chat exec approvals
* shared `message` actions, including `upload-file`, reactions, polls, edits, deletes, and group actions
* plugin tools for invite generation/list/revoke and group administration
* one-time invite link, SimpleX address, group-link, and QR generation
* optional SimpleX-native live assistant text replies
* runtime status, runtime doctor, runtime user visibility, contact verification, contact-request review, group-link lifecycle, moderation, file controls, link onboarding, and heartbeat readiness support
* Control UI configuration

## Why teams choose it

* They want invite-based access instead of a public bot identity.
* They want tighter control over where the runtime and relay path live.
* They want OpenClaw-native policy controls (<code>allowFrom</code>, <code>dmPolicy</code>, group policy) to remain the enforcement point.
* They want to avoid coupling the agent to a hosted bot API or a phone-number-backed account.

## Why this plugin matters

Without this plugin, using SimpleX with OpenClaw usually means custom integration work around event parsing, outbound command translation, pairing state, and invite management. This package turns that into a standard channel implementation.

The contribution is not just “another channel”. It adds a channel model that is structurally different from bot-account integrations:

* no phone number requirement
* no hosted bot account or bot API dependency
* access starts from a one-time invite link or reusable SimpleX address, not a public platform identity

<Note>
  Low risk to existing OpenClaw channels: the implementation stays isolated and is only active when <code>openclaw-simplex</code> is configured and enabled.
</Note>
