π Day 5 β Capstone Finale: Multi-Agent Sales System & Voice Agent CRM β
Week 3 Β· Day 5 Β· 7 Video Topik: Konversi Sub-workflow, Business Development Manager Agent, Account Executive Agent, Deal Recording Sub-agent, Demo Booking Sub-agent, ElevenLabs Voice Agent + Phone Number, Grand Finale Demo
π Daftar Isi β
- Rekap & Persiapan Akhir
- Konversi Sub-agents ke Sub-workflows
- Business Development Manager Agent
- Debugging & End-to-End Test
- Account Executive Agent β Deal Recording Sub-agent
- Demo Booking Sub-agent
- ElevenLabs Voice Agent β Finale
- Grand Finale Demo & Arsitektur Lengkap
- Penutup Kursus
π Rekap & Persiapan Akhir β
Hari terakhir dimulai dengan rekap singkat materi Day 4:
| Konsep | Poin Kunci |
|---|---|
| Context Engineering | Seni mengelola input token agar output konsisten dengan business goal |
| Sub-agents | Reusable, testable, hemat context β tapi batasi kreativitas agent |
| Anti-patterns | Human trap, solution-focused, content-generation-as-goal |
| Evaluasi | Business problem β metrik β testing ketat β R&D empiris |
π Pengingat Terakhir: LLM menghasilkan konten yang plausible β tugas AI engineer adalah membuatnya accurate melalui testing, metrik, dan structured outputs.
π§ Konversi Sub-agents ke Sub-workflows β
Sebelum membangun orchestrator agent, kedua sub-agent dari Day 4 harus dikonversi menjadi sub-workflows yang siap dipanggil.
SDR Sub-agent β
SEBELUM: SESUDAH:
ββββββββββββββββ ββββββββββββββββββββββββββββ
β Manual β β When Executed by Another β
β Trigger β βββΆ Agent β Workflow β βββΆ Agent
β (tombol) β β β
ββββββββββββββββ β Input: Accept All Data β
ββββββββββββββββββββββββββββLangkah:
- Hapus trigger manual
- Tambah trigger β "When executed by another workflow"
- Input Data Mode β Accept All Data
- Save β Publish (wajib agar bisa dipanggil!)
RevOps Sub-agent β
SEBELUM: SESUDAH:
ββββββββββββββββ ββββββββββββββββββββββββββββ
β Chat Messageβ β When Executed by Another β
β Received β βββΆ Agent β Workflow β βββΆ Agent
β β β β
ββββββββββββββββ β Input Schema: β
β βββ field: sales_lead_ β
β β description β
β βββ type: string β
ββββββββββββββββββββββββββββLangkah Tambahan untuk RevOps:
- Tambah Input Schema β field
sales_lead_description(string) - Update AI Agent prompt β expression
{{ $json.sales_lead_description }} - Tambah Sticky Notes untuk dokumentasi visual (Parse Data + Store to Pipedrive)
- Save β Publish
π‘ Sticky Notes adalah praktik baik untuk membuat workflow bisa dibaca oleh orang lain β label setiap section dengan deskripsi singkat.
π€ Business Development Manager Agent β
Agent utama pertama! Ini adalah orchestrator yang mengoordinasi ketiga sub-agent.
Arsitektur Lengkap β
Google Drive: PDF AI Agent Sub-workflows
ICP File Drop Extract (GPT-5.2) ββββββββββββ
βProspectingβ
ββββββββββ ββββββββββ ββββββββββ ββββββββββββββββ βTool β
β Google ββββΆβ Google ββββΆβExtract ββββΆβ AI Agent ββββΆ β(Firecrawlβ
β Drive β β Drive β βfrom PDFβ β β β+Hunter) β
βTrigger β βDownloadβ β β β 3 Tools: β ββββββββββββ
β β βFile β β β β ββProspecting β ββββββββββββ
βFolder: β β β β input: β β ββRevOps ββββΆ β RevOps β
βICP Fileβ β by ID β β "data" β β ββSDR β βTool β
βDrop β β β β β β β β(Pipedriveβ
β β β$json.idβ β β β Structured β β Create) β
βCheck: β β β β β β Output: β ββββββββββββ
βevery β β β β β β {success, β ββββββββββββ
β1 min β β β β β β summary} ββββΆ β SDR β
ββββββββββ ββββββββββ ββββββββββ ββββββββ¬ββββββββ βTool β
β β(Gmail β
ββββββΌβββββ β Draft) β
β IF β ββββββββββββ
βsuccess? β
ββββββ¬βββββ
true ββββββ€βββββΊ false
β β
ββββββΌββββ βββββΌβββββ
βPushoverβ βPushoverβ
β π β β π β
βSuccess!β βFailed β
ββββββββββ ββββββββββKonfigurasi Tools β
| Tool | Type | Deskripsi | Key Setting |
|---|---|---|---|
| Prospecting | Call n8n Workflow | "Call this tool once to retrieve multiple sales prospects" | query β model defines |
| RevOps | Call n8n Workflow | "Call this tool separately for each prospect to be saved in Pipedrive CRM" | sales_lead_description β model defines |
| SDR | Call n8n Workflow | "Call this tool one time to generate all draft emails" | (no params β reads all from Pipedrive) |
System Prompt β
You are the sales manager for an accounting software firm at CTI.
You are provided with the ICP for an ideal prospect.
You must carry out these steps:
1. Use your Prospecting Subagent tool ONCE to search online for leads,
providing a query based on the ICP.
2. For EACH identified prospect, use your RevOps Subagent tool repeatedly
to store the information in the CRM database.
Use the tool ONCE for EACH prospect.
3. Use your SDR Subagent tool ONCE β this tool will retrieve everyone
in Pipedrive and draft an outbound sales email for all of them.
Then reply with a summary of the outcome.Structured Output β
{
"success": true,
"summary": "A concise description of what happened"
}β οΈ Catatan Desain: Data prospect dikembalikan sebagai natural language dari Prospecting, lalu di-parse ulang oleh RevOps ke JSON. Ini sengaja untuk fleksibilitas β banyak sumber data di masa depan bisa menggunakan format berbeda. Pendekatan lebih ketat: buat input terpisah per field (name, company, role, email).
π Debugging & End-to-End Test β
Tiga bug ditemukan saat pengujian pertama:
Bug #1: RevOps Input Field Salah β
β SALAH: Field "sales_lead_description" diisi dengan deskripsi statis
β Agent selalu mengirim teks yang sama ke RevOps
β
BENAR: Field "sales_lead_description" β "Set by model"
β Deskripsi pindah ke field "Description" yang terpisahBug #2: IF Node β Boolean vs String β
β SALAH: String comparison β "is $json.output.success equal to 'true'?"
β Membandingkan boolean dengan string "true" β selalu false!
β
BENAR: Boolean comparison β "is $json.output.success TRUE?"
β Evaluasi boolean yang benarBug #3: RevOps β Email Field Kosong β
β SALAH: Create Person node tidak menyertakan email
β SDR tidak bisa draft email (alamat kosong)
β
BENAR: Tambah field "email" di Create Person
β Expression: {{ $('AI Agent').item.json.output.email }}
β Republish workflow setelah fix!End-to-End Test Berhasil! β β
Alur Lengkap:
βββββββββββββ
1. π Drop PDF ke Google Drive "ICP File Drop"
βββ ICP: "Senior member of finance team at mid-market
consulting firm in US, director level"
2. π Prospecting sub-agent aktif
βββ Firecrawl + Hunter.io menemukan 5 leads
3. πΎ RevOps menyimpan ke Pipedrive (5x call)
βββ 5 Organizations β
βββ 5 People (with emails) β
βββ 5 Leads β
4. π§ SDR membuat draft emails (1x call)
βββ 5 draft emails di Gmail β
5. π± Pushover notification: "SUCCESS!" β
πΌ Account Executive Agent β Deal Recording Sub-agent β
Agent kedua! Account Executive menangani inbound calls dari orang yang merespons outreach campaign.
Arsitektur Deal Recording β
ββββββββββββ ββββββββββββββββββββββββββββββββ βββββββββββ ββββββββββββ
β Webhook ββββΆβ AI Agent (GPT-5.2, low) ββββΆβ IF ββββΆβPipedrive β
β Trigger β β β β found? β βCreate β
β β β Tool: Pipedrive Get Many Person β β β βDeal β
β POST β β β β boolean β β β
β β β Structured Output: β β is true β β title: β
β body: β β {found, id, company, name} β β β β $name β
β name β β β β β β + "deal" β
β β β System: "Find this person in β β β β β
β β β Pipedrive, reply with details" β β β βperson_id:β
ββββββββββββ ββββββββββββββββββββββββββββββββ βββββββββββ β $id β
ββββββββββββMengapa Webhook, Bukan Sub-workflow? β
Berbeda dari sub-agent sebelumnya, kali ini trigger menggunakan Webhook (bukan "When executed by another workflow") karena sub-agent ini akan dipanggil oleh ElevenLabs Voice Agent β yang berkomunikasi via HTTP POST, bukan melalui n8n internal.
Konfigurasi β
| Komponen | Setting |
|---|---|
| Trigger | On Webhook Call β HTTP POST β Respond Immediately |
| Model | GPT-5.2, low reasoning effort |
| Tool | Pipedrive: Person β Get Many (all) |
| Structured Output | {found: boolean, id: number, company: string, name: string} |
| IF Node | $json.output.found β Boolean β is true |
| Create Deal | Title: $json.output.name + " deal", Person ID: $json.output.id |
| Notifications | Pushover on true + false paths |
Pengujian β
Input: "Record that Rob Carter has become a deal"
Hasil:
βββ Agent membaca semua people dari Pipedrive β
βββ Menemukan Rob Carter β
βββ Structured Output: {found: true, id: 123, ...} β
βββ Create Deal: "Rob Carter deal" β
βββ Pushover notification received β
π Demo Booking Sub-agent β
Sub-agent terakhir! Bertugas menegosiasikan jadwal demo dan booking di Google Calendar.
Arsitektur β
ββββββββββββ ββββββββββββββββββββββββββββββββββββ βββββββββββ
β Webhook ββββΆβ AI Agent (GPT-5.2, low) ββββΆβ IF β
β Trigger β β β βsuccess? β
β β β Tools: β β β
β POST β β βββ π
Google Calendar: β β ββββββ
β body: β β β Check Availability β β β
β name β β β (model defines start/end) β βΌ βΌ
β time_ β β β β ββββ ββββ
β slot β β βββ π
Google Calendar: β ββ
β βββ
β β β Create Event β β β β β
β β β (summary, description, location β ββ¬ββ ββ¬ββ
ββββββββββββ β β model defines) β β β
β β βΌ βΌ
β Structured Output: β ββββββββββ
β {success: bool, summary: string} β βRespond β
β β β to β
β System: "Check availability, then β βWebhook β
β book demo, reply with results" β ββββββββββ
ββββββββββββββββββββββββββββββββββββKeamanan: Lethal Trifecta Check β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β π ANALISIS KEAMANAN DEMO BOOKING β
β β
β β
Data Privat: Ya (kalender pribadi) β
β β
Konten Tidak Terpercaya: Ya (input dari caller) β
β β οΈ Komunikasi Eksternal: TERBATAS β
β β
β MITIGASI: β
β β’ Hanya expose AVAILABILITY, bukan detail event β
β β Agent tahu "available/not available" β
β β TIDAK tahu "meeting with CEO at 2pm" β
β β’ Create event TANPA invite ke pihak ketiga β
β β Invitation dilakukan manual oleh manusia β
β β’ Respond to Webhook hanya kirim summary β
β β
β VERDICT: β
Aman β Lethal Trifecta TIDAK terpenuhi β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββKonfigurasi Google Calendar Tools β
| Tool | Operation | Key Fields | Model Defines |
|---|---|---|---|
| Check Availability | Availability | Calendar: primary | Start time, End time |
| Create Event | Create | Calendar: primary, Location: zoom link | Summary, Description, Start, End |
AI Agent Input Expression β
"Please book a demo with {{ $json.body.name }} at timeslot {{ $json.body.time_slot }}"Pengujian β
Input: "Book a demo with Tom Jones at 2pm Eastern on Jan 5, 2026"
Hasil:
βββ Check availability β Available β
βββ Create event β "Account AI Demo with Tom Jones" β
β βββ Location: zoom.us/abcdef
β βββ Time: 2:00 PM EST, Jan 5 2026
βββ Structured Output: {success: true, summary: "..."} β
βββ Respond to Webhook: summary text β
βββ Pushover notification β
ποΈ ElevenLabs Voice Agent β Finale β
Agent terakhir kursus! Voice Agent yang menerima panggilan telepon dan mengoordinasi Deal Recording + Demo Booking secara real-time.
Setup di ElevenLabs β
| Pengaturan | Nilai |
|---|---|
| Nama | Account Executive Agent |
| Template | Blank Agent |
| First Message | "Hi, thanks for calling Account AI. Who am I speaking with, please?" |
| Model | Default ElevenLabs |
System Prompt β
You're an Account Executive (AE) for Account AI.
You're receiving calls from possible clients calling back from
an outreach campaign.
Account AI is software for improving accounting software efficiency.
You are an automated AI agent.
Steps:
1. Find out the caller's name
2. Use your Deal Recording tool immediately after learning their name
3. Get their preference for a demo time slot
(aim for 2pm Eastern on weekdays, or whatever suits them)
4. Use your Demo Booking tool to schedule the demo
5. If booking fails, try again with a different time
6. When booked, thank them and say the company will be in touchKonfigurasi Tools (Webhook) β
| Tool | Type | URL | Timeout | Body Parameters |
|---|---|---|---|---|
| Deal Recording | Webhook POST | n8n production webhook URL | 30s | name (string, LLM prompt) |
| Demo Booking | Webhook POST | n8n production webhook URL | 120s | name (string), time_slot (string) |
Koneksi Phone Number β
βββββββββββββββββββββββββββββββββββββββββββββββββββ
β π THE MASTER PLAN REVEALED β
β β
β Nomor telepon di ElevenLabs = β
β Nomor yang SAMA yang ditulis di outreach emails β
β yang di-draft oleh SDR Sub-agent! β
β β
β Agent 1 (BDM): β
β SDR β Draft email β Include phone number β
β β
β Agent 2 (AE): β
β Voice Agent β Menerima panggilan dari nomor β
β yang ada di email tersebut! β
β β
β π LOOP LENGKAP: Outbound β Inbound β Deal β
βββββββββββββββββββββββββββββββββββββββββββββββββββπ¬ Grand Finale Demo & Arsitektur Lengkap β
Percakapan Telepon (Live Demo) β
π€ Agent: "Hi, thanks for calling Account AI. Who am I speaking with, please?"
π€ Tom: "My name is Tom Jones."
[β‘ Deal Recording tool dipanggil di background]
[π± Push notification: "Created a deal!"]
π€ Agent: "Thanks Tom. I've opened a new deal record for you in our CRM.
What time works best for your demo? We aim for 2pm Eastern
on weekdays."
π€ Tom: "Yes, I'd like 2pm Eastern on Tuesday, January 6th please."
[β‘ Demo Booking tool dipanggil]
[β³ Checking calendar availability...]
[π
Creating calendar event...]
[π± Push notification: "Demo booked! Tuesday Jan 6 with Tom Jones"]
π€ Agent: "Your demo has been booked for Tuesday, January 6th at 2pm Eastern.
You'll receive a calendar invitation shortly. Thank you for
your interest!"
π€ Tom: "Thanks, bye!"Verifikasi Hasil β
| Platform | Hasil |
|---|---|
| Pipedrive | Tom Jones deal created β |
| Google Calendar | Demo event on Jan 6, 2pm EST β |
| Pushover | 2 notifications received during call β |
| ElevenLabs | First-time success, no debugging needed! β |
Arsitektur Keseluruhan β Final β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AMPLIFY YOUR BUSINESS β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β AGENT 1: OUTBOUND SALES β β
β β Business Development Manager (GPT-5.2) β β
β β β β
β β Trigger: Google Drive β PDF drop β β
β β β β
β β ββββββββββββββ ββββββββββββββ ββββββββββββββ β β
β β β Prospectingβ β RevOps β β SDR β β β
β β β β β β β β β β
β β β π Firecrawlβ β πΎ Pipedriveβ β π§ Gmail β β β
β β β π Hunter β β Create β β Create β β β
β β β β β Org+Person β β Draft β β β
β β β β β +Lead β β β β β
β β ββββββββββββββ ββββββββββββββ ββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β AGENT 2: ACCOUNT EXECUTIVE β β
β β ElevenLabs Voice Agent + Phone Number β β
β β β β
β β Trigger: Inbound phone call β β
β β β β
β β ββββββββββββββββββββ ββββββββββββββββββββ β β
β β β Deal Recording β β Demo Booking β β β
β β β β β β β β
β β β π Pipedrive β β π
Google Calendarβ β β
β β β Get People β β Check Avail β β β
β β β πΎ Pipedrive β β π
Google Calendarβ β β
β β β Create Deal β β Create Event β β β
β β β β β β β β
β β β Webhook trigger β β Webhook trigger β β β
β β ββββββββββββββββββββ ββββββββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β π STATISTIK FINAL: β
β βββ 2 Main Agents β
β βββ 5 Sub-agents β
β βββ 6 External Integrations β
β β (Firecrawl, Hunter, Pipedrive, Gmail, Google Calendar, β
β β Google Drive) β
β βββ 7 LLM Calls β
β βββ 1 Voice Agent (ElevenLabs + Phone Number) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββπ Penutup Kursus β
Rekap 3 Minggu β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β WEEK 1: AUTOMATE π§ β
β βββ Fondasi n8n, nodes, credentials β
β βββ Data integrations (Google Sheets, Drive, Gmail) β
β βββ JSON, expressions, HTTP requests β
β βββ π Capstone: Equity Portfolio Rebalancer β
β β
β WEEK 2: ACCELERATE π β
β βββ ElevenLabs Voice Agents (2 cara integrasi) β
β βββ RAG, embeddings, vector databases β
β βββ Supabase, data ingest pipeline β
β βββ π Capstone: Expert Product Voice Agent + Twilio β
β β
β WEEK 3: AMPLIFY π‘ β
β βββ Self-hosting Docker, Ollama lokal β
β βββ OAuth2, Firecrawl, Structured Outputs β
β βββ MCP (Model Context Protocol) β
β βββ Context Engineering, Sub-agents, Lethal Trifecta β
β βββ π Capstone: Multi-Agent Sales + Voice CRM System β
β β
β βββββββββββββββββββββββββββββββββββββ β
β β π₯ BLACK BELT ACHIEVED! π₯ β β
β βββββββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββPesan Penutup dari Instruktur β
"Anda sekarang adalah expert. Anda bisa membangun sistem dengan real, measurable business impact β untuk diri sendiri, klien, atau agency Anda. Yang terpenting: go out there and BUILD!"
Call to Action:
- π Connect di LinkedIn β posting sertifikat
- β Rating kursus di Udemy
- π Eksplorasi kursus AI Engineering untuk level lebih teknis
- ποΈ BUILD, BUILD, BUILD!
π Tabel Terminologi β
| Istilah | Definisi |
|---|---|
| Sub-workflow | Workflow n8n yang dipanggil oleh workflow lain via "When executed by another workflow" trigger |
| Webhook Trigger | Trigger yang aktif saat menerima HTTP request ke URL tertentu |
| Respond to Webhook | Node n8n yang mengirimkan response balik ke webhook caller |
| Orchestrator Agent | Agent utama yang mengoordinasi beberapa sub-agent |
| ICP | Ideal Customer Profile β deskripsi profil pelanggan ideal |
| BDM | Business Development Manager β pengelola outbound sales |
| AE | Account Executive β penangani inbound sales + demos |
| Deal | Record di CRM yang merepresentasikan potensi penjualan |
| Publish | Mengaktifkan workflow di n8n agar bisa dipanggil secara production |
| Production URL | URL webhook yang persisten (berbeda dari test URL) |
π Pencapaian Day 5 β KURSUS SELESAI! β
β
Mengkonversi sub-agents menjadi sub-workflows (SDR + RevOps)
β
Membangun Business Development Manager orchestrator agent
β
Debugging: input field, boolean vs string, missing email field
β
End-to-end test: PDF β Prospects β Pipedrive β Draft Emails β Notification
β
Membangun Deal Recording Sub-agent (Pipedrive deals via webhook)
β
Membangun Demo Booking Sub-agent (Google Calendar via webhook)
β
Mengkonfigurasi ElevenLabs Voice Agent dengan phone number
β
Grand Finale: telepon β deal recorded β demo booked β semua real-time!
β
Menyelesaikan seluruh kursus AI Builder! ππ₯π― 100% COMPLETE! Kursus 3 minggu, 86+ video, 2 main agents, 5 sub-agents, 6+ integrasi β selesai!