OpenClaw

Overview

The Ravi OpenClaw plugin gives your agent real-time email and SMS channels plus 19 tools for managing Identities, inboxes, passwords, and vault secrets. It's a drop-in replacement for the combination of 1Password + AgentMail.

Why Ravi over 1Password + AgentMail?

1Password + AgentMail Ravi
Plugins to install 2 (+ tmux plugin) 1
Setup steps ~10+ 2 (install + login)
Requires desktop app Yes No
Requires tmux workaround Yes No
Session expires mid-task Yes No
Email AgentMail Built in
Credentials 1Password Built in
Fully autonomous Barely Yes

Install

openclaw plugins install @ravi-hq/ravi
openclaw ravi login

The login command:

  1. Opens a browser for device-code authentication (copy-paste friendly for headless VMs)
  2. Sets up E2E encryption (6-digit PIN)
  3. Selects an Identity
  4. Auto-configures OpenClaw

No manual config editing needed.

Real-time channels

The plugin provides two real-time messaging channels powered by Server-Sent Events:

Email channel

  • Each email thread maps 1:1 to an OpenClaw session
  • New threads create new sessions; replies resume existing ones
  • DM policy controls: allowlist or open

SMS channel

  • All messages from one phone number form a single session
  • Only active when the Identity has a provisioned phone number
  • DM policy controls: allowlist or open

Agent tools

The plugin registers 19 tools:

Category Tools
Identity List Identities, create Identity, get info
Email List threads, read thread, compose, reply
SMS List conversations, read conversation, send SMS
Passwords List, get, create, delete
Vault List secrets, get, set, delete
Feedback Submit feedback

Secrets provider

The plugin includes a ravi-secrets binary that implements the OpenClaw exec secrets protocol. Use the Ravi vault as a secrets provider:

secrets:
  providers:
    ravi:
      source: exec
      command: ravi-secrets

Then reference vault secrets anywhere:

{ source: "exec", provider: "ravi", id: "my-api-key" }

Configuration

Authentication is stored in ~/.ravi/auth.json (written by openclaw ravi login). The Identity UUID is set automatically during login.

Manual configuration is only needed for multi-agent setups or to customize DM policies:

plugins:
  ravi:
    identityUuid: "identity-uuid-here"
    channels:
      ravi-email:
        accounts:
          "identity-uuid-here":
            identityUuid: "identity-uuid-here"
            identityName: "My Agent"
            email: "agent@in.ravi.app"
            dm:
              policy: "allowlist"
              allowFrom:
                - "you@gmail.com"
      ravi-sms:
        accounts:
          "identity-uuid-here":
            identityUuid: "identity-uuid-here"
            identityName: "My Agent"
            phone: "+15551234567"
            dm:
              policy: "allowlist"
              allowFrom:
                - "+15559876543"

CLI commands

Command Description
openclaw ravi login Authenticate, set up PIN, select Identity
openclaw ravi status Show auth status and available Identities
openclaw ravi setup Alias for login

Next steps