Claude-code-plugins-plus-skills retellai-core-workflow-a

install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/retellai-pack/skills/retellai-core-workflow-a" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-retellai-core-workflow-a && rm -rf "$T"
manifest: plugins/saas-packs/retellai-pack/skills/retellai-core-workflow-a/SKILL.md
source content

Retell AI Core Workflow A

Overview

Build and configure voice agents with custom prompts, function calling, and call flow logic.

Prerequisites

  • Completed
    retellai-hello-world

Instructions

Step 1: Agent with Function Calling

const llm = await retell.llm.create({
  model: 'gpt-4o',
  general_prompt: `You are a booking assistant for Dr. Smith's office.
    - Help callers book, reschedule, or cancel appointments
    - Collect: name, phone, preferred date/time
    - Confirm all details before booking`,
  functions: [
    {
      name: 'book_appointment',
      description: 'Book a new appointment',
      parameters: {
        type: 'object',
        properties: {
          patient_name: { type: 'string' },
          phone: { type: 'string' },
          date: { type: 'string', description: 'YYYY-MM-DD format' },
          time: { type: 'string', description: 'HH:MM format' },
        },
        required: ['patient_name', 'phone', 'date', 'time'],
      },
      url: 'https://your-api.com/appointments',
      speak_during_execution: true,
      speak_after_execution: true,
    },
  ],
});

Step 2: Configure Voice and Behavior

const agent = await retell.agent.create({
  response_engine: { type: 'retell-llm', llm_id: llm.llm_id },
  voice_id: '11labs-Rachel',
  agent_name: 'Dr. Smith Booking Agent',
  language: 'en-US',
  opt_out_sensitive_data_storage: false,
  end_call_after_silence_ms: 10000,  // End call after 10s silence
  max_call_duration_ms: 300000,       // 5-minute max
  enable_backchannel: true,           // "mhm", "yeah" responses
  boosted_keywords: ['appointment', 'schedule', 'Dr. Smith'],
});

Step 3: Update Agent Configuration

await retell.agent.update(agent.agent_id, {
  voice_id: '11labs-Dorothy',  // Change voice
  end_call_after_silence_ms: 15000,
});

Output

  • Agent with custom LLM prompt and function calling
  • Voice and behavior configuration
  • Real-time function execution during calls

Error Handling

ErrorCauseSolution
Function not triggeringPrompt doesn't guide to functionInclude function use in prompt
Voice quality issuesWrong voice selectionTest different voices
Call ending too earlyShort silence timeoutIncrease
end_call_after_silence_ms

Resources

Next Steps

Phone call management:

retellai-core-workflow-b