Outbound Call

v0.1.5

Make outbound phone calls via ElevenLabs voice agent and Twilio

2· 926·3 current·3 all-time
byhuman jesse@humanjesse
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description, required env vars, SKILL.md, and call.py align: the script posts to an ElevenLabs convai/twilio/outbound-call endpoint using ELEVENLABS_API_KEY, ELEVENLABS_AGENT_ID, and ELEVENLABS_PHONE_NUMBER_ID. No unrelated credentials (e.g., raw Twilio keys or cloud keys) are requested.
Instruction Scope
Runtime instructions are narrowly scoped: run call.py with a phone number and optional message/context. The code only reads the declared env vars, validates E.164 format (US), and sends a JSON payload to the ElevenLabs API. It does not read arbitrary files, other env vars, or contact unexpected external endpoints.
Install Mechanism
There is no install spec (instruction-only with a small included script). The included Python file uses only stdlib modules (urllib, json, re), so nothing is downloaded or installed during runtime by the skill itself.
Credentials
The skill requests three ElevenLabs-specific env vars and declares ELEVENLABS_API_KEY as the primary credential. That is proportionate for a service that delegates Twilio dialing server-side. No additional unrelated secrets are requested.
Persistence & Privilege
always is false and the skill does not modify other skills or system configs. The skill can be invoked by the model (default), which is expected for an agent-capable outbound call skill — not flagged here, but note autonomous invocation allows the agent to place calls if permitted.
Assessment
This skill appears to do what it says, but before installing: (1) confirm you trust ElevenLabs with your API key and that the provided endpoint (api.elevenlabs.io/v1/convai/twilio/outbound-call) is legitimate; (2) be aware calls may incur charges and ensure legal/consent requirements are met; (3) verify the ELEVENLABS_PHONE_NUMBER_ID controls the expected caller number; (4) review the linked GitHub repo/source code if you need provenance (the package lists no homepage); and (5) start by testing with your own number and a scoped/rotatable API key, and consider whether you want the agent allowed to invoke the skill autonomously.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

EnvELEVENLABS_API_KEY, ELEVENLABS_AGENT_ID, ELEVENLABS_PHONE_NUMBER_ID
Primary envELEVENLABS_API_KEY
latestvk97668a564wvnhhdkkqyyrtd2981atbg
926downloads
2stars
6versions
Updated 1mo ago
v0.1.5
MIT-0

Outbound Call

Source code and setup guide: github.com/humanjesse/hostinger-openclaw-guides

Place outbound phone calls using the ElevenLabs voice agent with Twilio. The voice agent on the call uses OpenClaw as its brain — same as inbound calls.

When to use

When the user asks you to:

  • Call someone or phone someone
  • Make a phone call
  • Dial a number
  • Ring someone
  • Place a call to a number

How to use

Run the call script with a phone number in E.164 format:

python3 skills/outbound-call/call.py +1XXXXXXXXXX

With an optional custom first message (what the agent says when the recipient picks up):

python3 skills/outbound-call/call.py +1XXXXXXXXXX "Hi John, I'm calling about your appointment tomorrow."

With optional call context (passed as a dynamic variable to the agent):

python3 skills/outbound-call/call.py +1XXXXXXXXXX "Hi, this is a quick follow-up call." "Customer requested callback about billing issue #4521"

Phone number format

  • US numbers: +1 followed by 10 digits, e.g., +15551234567
  • If the user gives a number like 555-123-4567 or (555) 123-4567, reformat it to +15551234567
  • Always confirm the formatted number with the user before placing the call

Rules

  • ALWAYS confirm the phone number with the user before placing a call
  • NEVER place a call without explicit user consent
  • Report the result back to the user (conversation ID on success, error details on failure)
  • If the call fails, explain the error and suggest fixes

Comments

Loading comments...