retellai-core-workflow-b
Manages voice agent phone calls, campaigns, and transcript retrieval via Retell AI.
Install
mkdir -p .claude/skills/retellai-core-workflow-b && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/7096" && unzip -o skill.zip -d .claude/skills/retellai-core-workflow-b && rm skill.zipInstalls to .claude/skills/retellai-core-workflow-b
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Retell AI core workflow b \u2014 AI voice agent and phone call automation.\n\Key capabilities
- →Execute outbound call campaigns with rate limiting
- →Retrieve call status and duration data
- →Access call recordings and transcripts
- →Manage concurrent voice agent calls
How it works
The workflow iterates through a list of phone numbers to initiate calls via the Retell AI API, applying a delay between requests to respect rate limits. It then provides methods to list call statuses and retrieve specific recording or transcript details by ID.
Inputs & outputs
When to use retellai-core-workflow-b
- →Launching outbound call campaigns
- →Filtering and sorting call data
- →Retrieving call recordings and transcripts
- →Managing concurrent voice agent calls
About this skill
Retell AI Core Workflow B
Overview
Manage phone calls: outbound campaigns, call transfers, recordings, and concurrent call handling.
Prerequisites
- Completed
retellai-core-workflow-a
Instructions
Step 1: Outbound Call Campaign
const phoneNumbers = ['+14155551001', '+14155551002', '+14155551003'];
for (const number of phoneNumbers) {
try {
const call = await retell.call.createPhoneCall({
from_number: process.env.RETELL_PHONE_NUMBER!,
to_number: number,
override_agent_id: agentId,
metadata: { campaign: 'appointment-reminder', date: '2026-04-01' },
});
console.log(`Called ${number}: ${call.call_id}`);
} catch (err) {
console.error(`Failed to call ${number}: ${err.message}`);
}
// Rate limit: space calls apart
await new Promise(r => setTimeout(r, 2000));
}
Step 2: List and Filter Calls
const calls = await retell.call.list({
sort_order: 'descending',
limit: 20,
});
for (const call of calls) {
console.log(`${call.call_id}: ${call.call_status} — ${call.end_timestamp - call.start_timestamp}ms`);
}
Step 3: Get Call Recording and Transcript
const callDetail = await retell.call.retrieve(callId);
if (callDetail.recording_url) {
console.log(`Recording: ${callDetail.recording_url}`);
}
if (callDetail.transcript) {
console.log(`Transcript:\n${callDetail.transcript}`);
}
Output
- Outbound call campaign with rate limiting
- Call listing with status and duration
- Recordings and transcripts retrieved
Error Handling
| Error | Cause | Solution |
|---|---|---|
| Call fails immediately | Bad phone number format | Use E.164 format |
| No recording | Recording not enabled | Enable in agent settings |
| Concurrent limit | Too many active calls | Upgrade plan or queue calls |
Resources
Next Steps
Handle call events: retellai-webhooks-events
When not to use it
- →When call recording is not enabled in agent settings
- →When using phone number formats other than E.164
Prerequisites
Limitations
- →Concurrent call limits require plan upgrades or queuing
- →Immediate call failures occur with incorrect phone number formats
How it compares
Unlike manual call management, this workflow automates the entire lifecycle from campaign initiation to data retrieval with built-in rate limiting.
Compared to similar skills
retellai-core-workflow-b side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| retellai-core-workflow-b (this skill) | 1 | 27d | Caution | Intermediate |
| telegram-bot-builder | 106 | 6mo | Review | Intermediate |
| mcp-integration | 21 | 9mo | Review | Intermediate |
| n8n-workflow-patterns | 16 | 2mo | No flags | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
telegram-bot-builder
davila7
Expert in building Telegram bots that solve real problems - from simple automation to complex AI-powered bots. Covers bot architecture, the Telegram Bot API, user experience, monetization strategies, and scaling bots to thousands of users. Use when: telegram bot, bot api, telegram automation, chat bot telegram, tg bot.
mcp-integration
anthropics
This skill should be used when the user asks to "add MCP server", "integrate MCP", "configure MCP in plugin", "use .mcp.json", "set up Model Context Protocol", "connect external service", mentions "${CLAUDE_PLUGIN_ROOT} with MCP", or discusses MCP server types (SSE, stdio, HTTP, WebSocket). Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.
n8n-workflow-patterns
czlonkowski
Proven workflow architectural patterns from real n8n workflows. Use when building new workflows, designing workflow structure, choosing workflow patterns, planning workflow architecture, or asking about webhook processing, HTTP API integration, database operations, AI agent workflows, or scheduled tasks.
n8n-code-javascript
czlonkowski
Write JavaScript code in n8n Code nodes. Use when writing JavaScript in n8n, using $input/$json/$node syntax, making HTTP requests with $helpers, working with dates using DateTime, troubleshooting Code node errors, or choosing between Code node modes.
n8n-expression-syntax
czlonkowski
Validate n8n expression syntax and fix common errors. Use when writing n8n expressions, using {{}} syntax, accessing $json/$node variables, troubleshooting expression errors, or working with webhook data in workflows.
n8n-node-configuration
czlonkowski
Operation-aware node configuration guidance. Use when configuring nodes, understanding property dependencies, determining required fields, choosing between get_node_essentials and get_node_info, or learning common configuration patterns by node type.