Talk To My Agent

Migration Guide

Switch from Vapi, Retell, or Bland in 15 Minutes

Switching voice platforms can feel daunting, but it doesn't have to be. This guide walks you through migrating from Vapi, Retell, or Bland to Talk To My Agent, step by step. Most users are up and running in under 15 minutes.

Why migrate to TTMA

If you're here, you've probably already felt the pain points: unpredictable per-minute bills, audio routing through someone else's servers, or bolting together STT + LLM + TTS pipelines just to get a voice agent that still sounds laggy.

TTMA is different. Your agent runs on your own server with native speech-to-speech (no pipeline), fixed monthly pricing, and a full agent brain with memory, skills, and CRM built in. For a detailed breakdown, see the full comparison.

The good news: your existing work is not wasted. Your prompts, call scripts, and API integrations all carry over. The concepts map cleanly, and TTMA's format is often simpler.

What you'll need

Step 1: Install TTMA (~3 minutes)

SSH into your VPS and run the installer. It sets up the voice gateway, configures a Cloudflare tunnel (no open ports needed), and gets you a working agent in one command.

curl -fsSL https://voice.moltbot.ninja/install | bash

The installer walks you through initial setup interactively. When it finishes, you'll have a running voice gateway ready to accept calls. Visit voice.moltbot.ninja for detailed install docs.

Step 2: Port your prompts

Your agent's personality and call script live in a playbook - a plain-text file that tells the agent how to handle calls. Here is how prompts from each platform map over.

1 From Vapi (system prompt)

// Vapi assistant config (before)
{
  "model": {
    "provider": "openai",
    "systemPrompt": "You are a dental office receptionist named Sarah.
      You help patients schedule appointments.
      Always confirm the date and time before booking."
  }
}
# TTMA playbook (after) - just paste your prompt as plain text
You are a dental office receptionist named Sarah.
You help patients schedule appointments.
Always confirm the date and time before booking.

2 From Retell (agent config)

// Retell agent config (before)
{ "agent_name": "Sarah", "response_engine": { "type": "retell-llm" },
  "general_prompt": "You are a dental office receptionist..." }
# TTMA playbook (after) - same idea, simpler format
You are a dental office receptionist named Sarah.
...your prompt text here...

3 From Bland (Pathways)

Bland Pathways use a visual node graph. In TTMA, the same branching logic goes into your playbook as conditional instructions, without needing explicit graph edges.

# Bland pathway: "Greeting" -> "Qualify" -> "Book" or "Decline"
# becomes playbook instructions like:

Greet the caller warmly and ask how you can help.

If the caller wants to schedule an appointment:
  - Confirm their preferred date and time
  - Use the book_appointment tool to reserve the slot

If the caller is not interested:
  - Thank them for calling and end the conversation politely

Step 3: Connect your tools

If your current platform calls external APIs (booking systems, CRMs, databases), those integrations map to TTMA's voice-tools.json file. Each tool is a JSON object describing the API call and when the agent should use it.

// voice-tools.json - a tool your agent can call mid-conversation
[
  {
    "name": "book_appointment",
    "description": "Book a dental appointment for the caller",
    "endpoint": "https://your-api.com/appointments",
    "method": "POST",
    "parameters": {
      "patient_name": { "type": "string", "required": true },
      "date": { "type": "string", "required": true },
      "time": { "type": "string", "required": true }
    }
  }
]

If you had Vapi "Functions" or Retell "Custom LLM" webhooks, the same logic moves here. The endpoint, method, and parameters translate directly.

Step 4: Port your phone number

TTMA uses a dedicated telephony provider for phone connectivity. You have two options:

Either way, once the number is connected to your TTMA instance, incoming calls route directly to your voice gateway.

Step 5: Test your agent

Place a test call to your TTMA number. Verify that:

If something sounds off, edit the playbook and call again. Changes apply immediately - no redeploy required.

Concept mapping: platform to platform

Use this table as a quick reference when translating your setup.

Vapi / Retell / BlandTTMA equivalentNotes
Assistant / AgentPlaybookPlain-text file with your call script and personality
System promptPlaybook contentPaste your prompt directly into the playbook
Functions / Webhooksvoice-tools.jsonJSON file defining API endpoints the agent can call
Knowledge Basekb_search + voice-context-sources.jsonPoint to docs, URLs, or files for RAG retrieval
STT + LLM + TTS configNot neededThe voice model handles audio end-to-end natively
Voice selectionVoice config in dashboardChoose from available voice options
Call transfertransfer_call toolBuilt-in tool, configured in voice-tools.json
Conversation variablesAgent memory + CRM fieldsPersistent across calls, not just within a session
Analytics dashboardCall log + dashboardTranscripts, recordings, and metrics on your server
Per-minute billingFixed monthly subscriptionNo usage surprises

Frequently asked questions

Can I keep my existing phone number?

Yes. The telephony provider supports porting from all major carriers. Submit a port request and it transfers in 1-2 weeks. Your current service stays active until the port completes - zero downtime.

Do I need to rewrite everything from scratch?

No. System prompts paste directly into the playbook. API integrations translate to voice-tools.json with the same endpoints. You are removing abstraction layers, not adding them.

How long does migration take?

About 15 minutes for the technical setup (install + prompts + tools + test call). Number porting adds 1-2 weeks of carrier processing, but you can run both platforms in parallel.

What about complex branching logic (Bland Pathways)?

TTMA uses natural-language conditional instructions instead of a visual node graph. Most pathway logic becomes a few paragraphs of "If the caller says X, do Y" instructions that the agent follows conversationally.

Ready to make the switch?

Install TTMA on your server in under 3 minutes. Your prompts and tools carry right over.

Start your migration