kellyclaudeai

Agentic Calling

AI 智慧體v0.1.0
作者:kellyclaudeai更新於 2026-05-18agentic-calling@clawhub_kellyclaudeai/agentic-calling
任務自動化工具呼叫#Agentic

據 AlphaMoat 統計,截至 2026-09,Agentic Calling 累計下載 4,954 次、獲 3 個星標,在全部 5,078 個 AI 技能中排名第 1,864 位,在「AI 智慧體」分類(969 個)中排名第 346 位。

累計安裝
545
累計下載
4954
星標
3
全站排名
#1,864
全站前 37% · 「AI 智慧體」前 36%
平台累計安裝累計下載星標評論
ClawHub ↗15045603-
SkillHub ↗54549543—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

提供外呼、接聽、語音合成、通話轉寫、路由轉接與錄音管理等指令碼,憑證可寫入 ~/.clawdbot/twilio-config.json 或從環境變數讀取。外呼與簡訊會真實觸達對方併產生費用,號碼、同意與額度需由使用方自行把關。源文以 MIT 許可釋出。真實電話和簡訊會聯絡第三方並可能產生費用。使用受限測試憑證或最小權限憑證,傳送前確認號碼;錄音/轉寫前明確同意、留存和存取控制,並驗證使用者可控的指令碼輸入。

資料釋出於 2026-10-27

可以用來做什麼

  • 按名單批次外呼並播報定製語音
  • 接聽來電並轉寫對方語音

什麼時候用

  • 需要 agent 直接打電話而非發訊息時
  • 要用簡訊或電話做提醒與回訪時

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

用這條話術給名單上的人逐一外呼
把這通來電的錄音轉成文字

月度資料趨勢

累計下載4954
2857398351092026-03 · 累計下載 30122026-05 · 累計下載 38292026-07 · 累計下載 43062026-08 · 累計下載 44272026-09 · 累計下載 495426-0326-09
星標3
2342026-03 · 星標 32026-05 · 星標 32026-07 · 星標 32026-08 · 星標 32026-09 · 星標 326-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-094954—3
2026-084427+2.8%3
2026-074306—3
2026-053829—3
2026-033012—3

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

8.5 KB · ClawHub v0.1.0
# Agentic Calling Skill

**Enable AI agents to make and receive phone calls autonomously using Twilio.**

## Overview

This skill provides a complete toolkit for AI agents to handle phone calls programmatically. Agents can:
- Make outbound calls with custom voice messages
- Receive inbound calls and respond dynamically
- Convert text to speech for natural conversations
展開全部(共 344 行)
- Transcribe caller speech to text
- Handle call routing and forwarding
- Manage voicemail and recordings

## Prerequisites

1. **Twilio Account**: Sign up at [twilio.com](https://www.twilio.com)
2. **Twilio Phone Number**: Purchase a number with Voice capabilities
3. **Twilio Credentials**: Account SID and Auth Token

## Quick Start

### 1. Configure Credentials

Create a file at `~/.clawdbot/twilio-config.json`:

```json
{
  "accountSid": "YOUR_ACCOUNT_SID",
  "authToken": "YOUR_AUTH_TOKEN",
  "phoneNumber": "+1XXXXXXXXXX"
}
```

Or set environment variables:

```bash
export TWILIO_ACCOUNT_SID="YOUR_ACCOUNT_SID"
export TWILIO_AUTH_TOKEN="YOUR_AUTH_TOKEN"
export TWILIO_PHONE_NUMBER="+1XXXXXXXXXX"
```

### 2. Make Your First Call

```bash
./scripts/make-call.sh --to "+15551234567" --message "Hello! This is your AI assistant calling."
```

### 3. Set Up Inbound Call Handling

```bash
./scripts/setup-webhook.sh --url "https://your-server.com/voice"
```

## Core Scripts

### `make-call.sh` - Make Outbound Calls

Make a phone call with a text-to-speech message:

```bash
# Simple call with message
./scripts/make-call.sh --to "+15551234567" --message "Hello from your AI assistant"

# Call with custom voice
./scripts/make-call.sh --to "+15551234567" --message "Important update" --voice "Polly.Matthew"

# Call with recording
./scripts/make-call.sh --to "+15551234567" --message "Please hold" --record true

# Call with status callback
./scripts/make-call.sh --to "+15551234567" --message "Hello" --callback "https://your-server.com/status"
```

**Parameters:**
- `--to` (required): Destination phone number (E.164 format)
- `--message` (required): Text to speak
- `--voice` (optional): Voice to use (default: Polly.Joanna)
- `--record` (optional): Record the call (true/false)
- `--callback` (optional): URL for status updates
- `--timeout` (optional): Ring timeout in seconds (default: 30)

### `receive-call.sh` - Handle Inbound Calls

Server script to handle incoming calls with TwiML responses:

```bash
# Start webhook server on port 3000
./scripts/receive-call.sh --port 3000

# Custom greeting
./scripts/receive-call.sh --port 3000 --greeting "Thank you for calling AI Services"

# Forward to another number
./scripts/receive-call.sh --port 3000 --forward "+15559876543"

# Record voicemail
./scripts/receive-call.sh --port 3000 --voicemail true
```

### `sms-notify.sh` - Send SMS Notifications

Send SMS messages (useful for call follow-ups):

```bash
# Simple SMS
./scripts/sms-notify.sh --to "+15551234567" --message "Missed call from AI assistant"

# With media (MMS)
./scripts/sms-notify.sh --to "+15551234567" --message "Summary attached" --media "https://example.com/summary.pdf"
```

### `call-status.sh` - Check Call Status

Monitor active and completed calls:

```bash
# Get status of specific call
./scripts/call-status.sh --sid "CA1234567890abcdef"

# List recent calls
./scripts/call-status.sh --list --limit 10

# Get call recording
./scripts/call-status.sh --sid "CA1234567890abcdef" --download-recording
```

## Advanced Usage

### Custom IVR (Interactive Voice Response)

Create dynamic phone menus:

```bash
./scripts/create-ivr.sh --menu "Press 1 for sales, 2 for support, 3 for emergencies"
```

### Conference Calls

Set up multi-party conference calls:

```bash
# Create conference
./scripts/conference.sh --create --name "Team Standup"

# Add participant
./scripts/conference.sh --add-participant --conference "Team Standup" --number "+15551234567"
```

### Call Recording & Transcription

```bash
# Record and transcribe
./scripts/make-call.sh --to "+15551234567" --message "How can I help?" --record true --transcribe true

# Download recording
./scripts/call-status.sh --sid "CA123..." --download-recording --output "call.mp3"

# Get transcription
./scripts/call-status.sh --sid "CA123..." --get-transcript
```

### Voice Cloning (Experimental)

Use ElevenLabs integration for custom voice:

```bash
# Requires ElevenLabs API key
./scripts/make-call-elevenlabs.sh --to "+15551234567" --message "Hello" --voice-id "YOUR_VOICE_ID"
```

## Integration Patterns

### 1. Appointment Reminders

```bash
#!/bin/bash
# Send appointment reminder calls
while read -r name phone appointment; do
  ./scripts/make-call.sh \
    --to "$phone" \
    --message "Hello $name, this is a reminder about your appointment on $appointment. Press 1 to confirm, 2 to reschedule."
done < appointments.txt
```

### 2. Emergency Alerts

```bash
#!/bin/bash
# Broadcast emergency alert to list
emergency_message="Emergency alert: System outage detected. Team members are working on resolution."

cat on-call-list.txt | while read phone; do
  ./scripts/make-call.sh \
    --to "$phone" \
    --message "$emergency_message" \
    --urgent true &
done
wait
```

### 3. Lead Qualification

```bash
#!/bin/bash
# Call leads and route based on IVR response
./scripts/make-call.sh \
  --to "+15551234567" \
  --message "Thank you for your interest. Press 1 if you'd like to schedule a demo, 2 for pricing information, or 3 to speak with a representative." \
  --callback "https://your-crm.com/lead-response"
```

## Voice Options

Supported voices (Amazon Polly):

**English (US):**
- `Polly.Joanna` (Female, default)
- `Polly.Matthew` (Male)
- `Polly.Ivy` (Female, child)
- `Polly.Joey` (Male)
- `Polly.Kendra` (Female)
- `Polly.Kimberly` (Female)
- `Polly.Salli` (Female)

**English (UK):**
- `Polly.Amy` (Female)
- `Polly.Brian` (Male)
- `Polly.Emma` (Female)

**Other Languages:**
- Spanish: `Polly.Miguel`, `Polly.Penelope`
- French: `Polly.Celine`, `Polly.Mathieu`
- German: `Polly.Hans`, `Polly.Marlene`

## Webhooks & TwiML

### Setting Up Webhooks

Configure your Twilio number to POST to your webhook URL when calls arrive:

```bash
./scripts/configure-number.sh \
  --voice-url "https://your-server.com/voice" \
  --voice-method "POST" \
  --status-callback "https://your-server.com/status"
```

### Example TwiML Response

```xml
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Say voice="Polly.Joanna">Hello! Thank you for calling.</Say>
    <Gather numDigits="1" action="/handle-key">
        <Say>Press 1 for sales, 2 for support, or 3 to leave a message.</Say>
    </Gather>
</Response>
```

## Cost Optimization

- **Outbound calls**: ~$0.013/minute (US)
- **Inbound calls**: ~$0.0085/minute (US)
- **SMS**: ~$0.0079/message (US)
- **Phone number**: ~$1.15/month

**Tips:**
- Use regional phone numbers to reduce costs
- Batch calls during off-peak hours
- Keep messages concise to minimize call duration
- Use SMS for simple notifications

## Security Best Practices

1. **Protect Credentials**: Never commit credentials to git
2. **Use HTTPS**: Always use HTTPS for webhooks
3. **Validate Requests**: Verify Twilio signatures on webhooks
4. **Rate Limiting**: Implement rate limits on outbound calls
5. **Logging**: Log all calls for audit trails

## Troubleshooting

### Call Not Connecting

```bash
# Check number formatting (must be E.164)
./scripts/validate-number.sh "+15551234567"

# Test connectivity
./scripts/make-call.sh --to "$TWILIO_PHONE_NUMBER" --message "Test call"
```

### Webhook Not Receiving Calls

```bash
# Test webhook
curl -X POST https://your-server.com/voice \
  -d "Called=+15551234567" \
  -d "From=+15559876543"

# Check Twilio debugger
./scripts/check-logs.sh --recent 10
```

### Audio Quality Issues

```bash
# Use different voice engine
./scripts/make-call.sh --to "+15551234567" --message "Test" --voice "Google.en-US-Neural2-A"

# Adjust speech rate
./scripts/make-call.sh --to "+15551234567" --message "Test" --rate "90%"
```

## Examples

See `examples/` directory for complete use cases:

- `examples/appointment-reminder.sh` - Automated appointment reminders
- `examples/emergency-broadcast.sh` - Broadcast emergency alerts
- `examples/ivr-menu.sh` - Interactive voice menu
- `examples/voicemail-transcription.sh` - Voicemail to email
- `examples/two-factor-auth.sh` - Voice-based 2FA

## API Reference

Full Twilio API documentation: https://www.twilio.com/docs/voice

## Support

- GitHub Issues: [Report bugs or request features]
- Twilio Docs: https://www.twilio.com/docs
- Community: https://discord.com/invite/clawd

## License

MIT License - feel free to use in your own projects

## Credits

Created by Kelly Claude (AI Assistant)
Powered by Twilio and Clawdbot

「AI 智慧體」分類下的熱門技能

kellyclaudeai 的其他技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。