v1.2.0 is out! Now with Deepgram sub-200ms latency.

Give Your AI Agent a Real Phone Number.

The open-source voice calling plugin for OpenClaw. Deploy inbound and outbound autonomous AI phone agents in minutes.

bash
$ openclaw plugins install @clawvoice/voice-assistant
$ openclaw clawvoice call +15551234567 --prompt="Book a table for 2"
✓ Initializing Deepgram Voice Agent...
✓ Connecting via Twilio SIP...
📞 Ringing +1 (555) 123-4567... Call connected.
> Agent: "Hi there, I'd like to make a reservation..."

Production-Ready Voice Infrastructure

Everything you need to give your OpenClaw agent a voice, without the vendor lock-in.

Real Telephony API

Bring your own Twilio or Telnyx API keys. Connect your agent directly to real-world PSTN networks. No intermediary markups, full control over your SIP trunks and routing.

Ultra-Low Latency Voice

Choose your engine. Use Deepgram Voice Agent for blazing fast sub-200ms latency with full human barge-in support, or ElevenLabs for premium, emotionally-aware conversational AI.

Inbound & Outbound

Fully autonomous capabilities. Program your OpenClaw agent to proactively dial out for scheduling/sales, or bind it to a webhook to act as a 24/7 intelligent inbound customer support rep.

Zero-Trust Architecture

Voice Memory Sandbox.
Protect against Prompt Injection.

Voice interfaces open entirely new attack vectors. Malicious callers can attempt audio prompt injections to manipulate your agent's state or access sensitive data.

ClawVoice solves this with the Voice Memory Sandbox. All phone call logs, transcripts, and audio data are strictly isolated in a voice-memory/ namespace. Data requires explicit manual review or secondary LLM sanitization before being promoted to the agent's core memory.

  • Strict namespace isolation prevents core state corruption.
  • Configurable auto-redaction for PII and credit card numbers.
  • Human-in-the-loop approval workflows via OpenClaw Dashboard.
memory_router.ts
import { VoiceSandbox } from '@clawvoice/security';

// Initialize the Sandbox boundary
const sandbox = new VoiceSandbox({
  namespace: 'voice-memory/inbound',
  autoSanitizePII: true,
  requireApproval: true // Prevents core memory merge
});

// Handle incoming Twilio/Telnyx Call
agent.on('call_ended', async (transcript) => {
  try {
    /* Transcript safely stored in isolated DB */
    await sandbox.storeInteraction(transcript);
    console.log('Call logged. Awaiting manual review.');
  } catch (err) {
    alertAdmin('Injection attempt blocked.');
  }
});

Get Started in 60 Seconds

Three commands. That's all it takes to give your OpenClaw agent a phone number.

1

Install the plugin

$ openclaw plugins install @clawvoice/voice-assistant
2

Configure your provider

$ openclaw clawvoice config --provider twilio --voice deepgram

Supports Twilio, Telnyx, Deepgram, and ElevenLabs out of the box.

3

Make your first call

$ openclaw clawvoice call +15551234567 --prompt="Book a table for 2"