ทีม GTM เหมือนโรงงานส่งของ งานจริงของทีมคือการใช้วิจารณญาณ: บริษัทไหนคุ้มที่จะส่งข้อความถึงสัปดาห์นี้ จะพูดอะไรให้รู้ว่าเราสนใจจริง ใครไม่มาแล้วต้องตาม อะไรที่ขยับ Pipeline ได้จริง
การส่งของเป็นส่วนที่ถูกที่สุดเสมอ ส่วนการใช้วิจารณญาณคือสิ่งที่แต่ก่อนต้องใช้ทีมจัดการ และนี่คือสิ่งที่คนคนเดียวที่ใช้ Claude Code สามารถจัดการได้ตั้งแต่ต้นจนจบ
เพราะฉะนั้น เลิกคิดเรื่องจำนวนคน แล้วเริ่มคิดเรื่องงานที่จะทำดีกว่า
ทีม GTM คือรายการงานเหล่านั้น และส่วนใหญ่มีรูปแบบเดียวกัน: อ่านข้อมูลกองโต ตัดสินใจ เขียนอะไรสักอย่าง ตามผล แล้วจดจำสิ่งที่เกิดขึ้น
เชื่อมงานแต่ละงานเข้ากับ Agent ให้หน่วยความจำร่วมกันหนึ่งชุด แล้วกำหนดตารางเวลา คนมี UX, ซอฟต์แวร์มี API, Agent มี Command Line ทั้งทีมจึงทำงานจาก Cron เดียวตอนแปดโมงเช้า ทุกเช้ามันจะรายงานผล และงานของคุณกลายเป็นการแก้ไขแทนที่จะเป็นการดำเนินการ
ด้านล่างคือโครงสร้าง ทีละตำแหน่ง พร้อม Prompt ที่ฉันวางให้ Claude Code สำหรับแต่ละตำแหน่ง

รายชื่อทีม: ห้าตำแหน่ง
ตัดสินใจว่าใครคุ้มที่จะส่งข้อความถึง
ส่วนที่ยากของ Outbound ไม่เคยอยู่ที่การส่ง แต่อยู่ที่วิจารณญาณเบื้องหน้า: จากทุกบริษัทในตลาด บริษัทไหนคุ้มที่จะติดต่อถึงสัปดาห์นี้ และจะพูดอะไรให้รู้ว่าเราสนใจจริง
วิจารณญาณนั้นคือตำแหน่งแรก
มันคอยจับความเคลื่อนไหวสี่แบบ ซึ่งเป็นสี่แบบที่ข้อมูลตลาดสิบปีช่วยคัดกรองรายชื่อลงมาเรื่อยๆ:
- มีตำแหน่งงานเปิด หรือมีการประกาศรับสมัครใหม่
- บริษัทมีปฏิสัมพันธ์กับคู่แข่ง หรือโพสต์เกี่ยวกับปัญหาที่คุณแก้ได้
- บริษัทเปิดตัว ขยายธุรกิจ หรือเปลี่ยน Tech Stack
- มีเงินทุนเคลื่อนผ่านรอบระดมทุนหรือการซื้อกิจการ
มันให้คะแนนแต่ละอย่างเทียบกับผู้ที่เหมาะสมจริงๆ และเทียบกับทุกสิ่งที่คุณรู้อยู่แล้วเกี่ยวกับบัญชีนั้น จากนั้นจึงร่างข้อความจาก Trigger เอง
กฎที่มันไม่เคยแหกคือต้องอ้างอิงสิ่งที่เคลื่อนไหว "เห็นว่าคุณประกาศรับสมัคร Head of RevOps อีกครั้ง นี่คือการจ้างทีมปฏิบัติการครั้งที่สองในไตรมาสนี้" ไม่ใช่ "สวัสดีคุณ{{firstName}}" ถ้าข้อความสามารถส่งออกไปได้เหมือนเดิมตั้งแต่เดือนที่แล้ว แสดงว่า Trigger ถูกข้ามไป และบัญชีนั้นจะต้องรอต่อไป
1เขียน team/prospector.py: run(memory, source, delivery, icp, sequences, weights, offline, dry_run)2ตรวจจับสัญญาณใหม่ใส่ลงในสี่ถัง (job, social, company, funding) และเขียนลงในหน่วยความจำร่วม3จัดกลุ่มตามบัญชี สำหรับแต่ละบัญชี ประเมินเทียบกับ ICP และประวัติทั้งหมดด้วย4prompts/judge.md (Claude, temperature 0) โดย fallback ไปใช้ weighted-bucket heuristic ที่ข้ามสัญญาณอ่อน5และไม่ตรง ICP สำหรับบัญชีที่ผ่านเกณฑ์ ให้ร่างข้อความจาก Trigger ที่แข็งแกร่งที่สุดด้วย prompts/draft.md6ส่ง Draft ให้ delivery (ค่าเริ่มต้นเป็น dry-run) และบันทึกการติดต่อ คืนค่า ranked standup lines
สรุปทุกการประชุมก่อนเริ่มการโทร
ก่อนการโทรครั้งแรก เคยมีคนใช้เวลายี่สิบนาทีทำเอกสารสรุปหนึ่งหน้า: บริษัทนี้คืออะไร อะไรที่เคลื่อนไหว เราเคยส่งอะไรไปแล้วบ้าง จุดสุดท้ายที่บทสนทนาค้างไว้
ส่งงานนั้นให้ Agent ตัวที่สอง
มันเขียนสรุปสำหรับทุกการประชุมที่ถูกจองไว้ โดยใช้หน่วยความจำเดียวกับที่ Prospector เขียนไว้ เมื่อถึงเวลาประชุม หน้าก็พร้อมแล้ว พร้อม Trigger ที่พาพวกเขาเข้ามา ประวัติ และสิ่งหนึ่งที่คุ้มค่าที่จะเปิดบทสนทนา
ไม่มีใครต้องเตรียมตัวตอนสี่ทุ่มเพื่อประชุมเก้าโมงเช้า และไม่มีใครเดินเข้าประชุมโดยไม่รู้ข้อมูล
1เขียน team/researcher.py: run(memory, calendar, icp, offline)2สำหรับทุกการประชุมในปฏิทินวันนี้ ดึงประวัติทั้งหมดของบัญชีนั้นจากหน่วยความจำร่วม และเขียนสรุป3หนึ่งหน้าด้วย prompts/brief.md: อะไรที่เคลื่อนไหว เราเคยส่งอะไรไปแล้วบ้างและผลตอบรับเป็นอย่างไร4และสิ่งที่ดีที่สุดหนึ่งอย่างที่จะใช้เปิดบทสนทนา ยึดทุกบรรทัดจากประวัติ ห้ามแต่งเติม Fallback ไปใช้5เทมเพลตธรรมดาที่สร้างจากสัญญาณล่าสุดเมื่อไม่มี API key คืนค่า standup line หนึ่งบรรทัดต่อการประชุม
ให้ Sequence จัดการการติดตาม
สัญญาณคือเส้นเริ่มต้น Sequence คือสิ่งที่เปลี่ยนโอกาส และนี่คือส่วนที่คนทำได้แย่ที่สุด เพราะการติดตามผลขึ้นอยู่กับมนุษย์ที่ต้องจำว่าต้องติดตาม เราลืม เราลังเล เราทำครั้งเดียวแล้วหยุด
การส่งและการติดตามจึงทำงานใน Overloop AI เป็น Sequence ที่ทำงานเองเมื่อ Agent ส่งต่องานให้ Agent เป็นคนตัดสินว่าใครและเขียนการติดต่อครั้งแรก Overloop จัดการส่วนที่เหลือตามตารางเวลา ผ่านอีเมลและ LinkedIn เพื่อให้จังหวะการติดต่อไม่ต้องพึ่งพาความจำของใคร
1เขียน team/sequencer.py: run(memory, delivery, sequences, offline, dry_run, min_age_days, max_age_days)2สอบถามหน่วยความจำร่วมสำหรับบัญชีที่มีการติดต่อล่าสุดเมื่อไม่กี่วันก่อน และยังไม่ได้รับการตอบกลับหรือ3มีการนัดหมาย ร่างข้อความติดตามแบบเบาๆ ที่เพิ่มมุมมองใหม่จริงๆ ส่งเข้า sequence follow_up และบันทึก4การติดต่อ ปล่อยการติดต่อที่เพิ่งเกิดขึ้นไว้ตามค่า min-age window คืนค่า standup line หนึ่งบรรทัดต่อบัญชี
เรียกคืนลูกค้าที่ไม่มาเข้าประชุม
การไม่มาเข้าประชุมคือลูกค้าที่ผ่านคุณสมบัติแล้วแต่เจอปัญหาวันเวลาที่ตรงกัน พวกเขาหลุดออกจาก Pipeline ด้วยเหตุผลเดียว: การติดตามด้วยตนเองไม่เคยเกิดขึ้น
ดังนั้นเครื่องมือตัวเดียวกันจึงรัน Recovery Sequence สำหรับทุกครั้งที่พลาด สี่การติดต่อในหนึ่งสัปดาห์ สองช่องทาง ไม่มีข้อความตำหนิใดๆ:
- หนึ่งชั่วโมงหลังจากพลาด: ลิงก์นัดหมายใหม่แบบคลิกสองครั้ง
- วันถัดไป: ข้อเสนอเดียวกันบน LinkedIn
- วันที่สาม: เนื้อหามีประโยชน์หนึ่งอย่างที่เกี่ยวข้องกับอุตสาหกรรมของพวกเขา โดยไม่ขออะไร
- วันที่เจ็ด: ข้อความสุดท้ายธรรมดาๆ
มันดึงอารมณ์ออกจากการติดตามผล และนำลูกค้ากลับมาประมาณหนึ่งในสามของลูกค้าที่ไม่มาเข้าประชุมซึ่งเคยหายไป ไม่มีใครต้องจำต้องส่งข้อความแม้แต่ครั้งเดียว
1เขียน team/recoverer.py: run(memory, calendar, delivery, sequences, offline, dry_run)2สำหรับทุกการไม่มาเข้าประชุมล่าสุดจากปฏิทิน ลงทะเบียนเข้า sequence no_show_recovery ที่กำหนดใน3config/sequences.yaml (สี่การติดต่อในหนึ่งสัปดาห์ สองช่องทาง ไม่มีข้อความตำหนิในทุกขั้นตอน)4บันทึกการติดต่อ และคืนค่า standup line จังหวะการติดต่ออยู่ใน config ไม่ใช่ใน code
ให้รายงานประจำสัปดาห์ปรับแต่งตัวเอง
ทุกวันศุกร์ เคยมีคนรวบรวมรายงาน: ส่งอะไรไปบ้าง จองได้อะไรบ้าง ติดอยู่ที่ไหน Pipeline อยู่จุดไหน Agent ตัวสุดท้ายสร้างรายงานจากหน่วยความจำเดียวกัน ทุกสัปดาห์ โดยไม่ต้องขอ
จากนั้นมันก็ทำสิ่งที่รายงานของมนุษย์ไม่เคยทำ
มันให้คะแนนการเล่นของตัวเอง: สัญญาณที่นำไปสู่การนัดหมายได้มากขึ้นจะได้รับน้ำหนักมากขึ้น ข้อความที่ล้มเหลวซ้ำๆ จะถูกตัดออก รายการเป้าหมายเดือนหน้าถูกจัดลำดับตามสิ่งที่ตลาดตอบสนองจริง ไม่ใช่สิ่งที่คุณเดาว่าสำคัญในเดือนมกราคม รายงานหยุดเป็นแค่บันทึกของสัปดาห์ที่แล้ว และกลายเป็นสิ่งที่ปรับแต่งสัปดาห์ถัดไป
1เขียน team/reporter.py: run(memory, weights, days, offline)2อ่านสถิติของสัปดาห์จากหน่วยความจำร่วม เริ่มต้นด้วยจำนวนการนัดหมาย ปรับน้ำหนักของสี่ถังสัญญาณ3ตามอัตราการชนะ โดยนับการนัดหมายมากกว่าการตอบกลับ โดยมี floor เพื่อไม่ให้ถังใดถังหนึ่งลดลงเป็นศูนย์4คืนค่า standup lines และน้ำหนักใหม่สำหรับการรันครั้งถัดไป prompts/report.md จะเขียนเวอร์ชันร้อยแก้ว5เมื่อมีการตั้งค่า key
สอง Prompt ที่ทำงานทุกเช้า
Prompt การสร้างทั้งหมดข้างต้นทำงานครั้งเดียว แต่สองตัวนี้ทำงานกับทุกบัญชี ทุกวัน ดังนั้นนี่คือตัวที่ต้องเก็บไว้และปรับแต่ง วิจารณญาณและน้ำเสียงอยู่ที่นี่ ในไฟล์ธรรมดา ไม่ได้ฝังอยู่ในโค้ด
Prospector ตัดสินด้วย Prompt นี้:
1บทบาท คุณคือชั้นการตัดสินของ prospector สำหรับหนึ่งบัญชี ตัดสินใจว่าสัญญาณการซื้อคุ้มค่าที่จะ2ลงมือทำตอนนี้หรือไม่ และอย่างไร3อินพุต { icp, new_signals: [{bucket, summary}], history, days_since_last_touch }4การให้คะแนน 80-100 ตรงกับ ICP แข็งแกร่งและมีสัญญาณเจตนาสูง (funding หรือสองอย่างที่ clustered กัน)550-79 ตรงดี มีสัญญาณแข็งหนึ่งอย่าง 20-49 ตรงเล็กน้อยหรือสัญญาณเจตนาต่ำเดี่ยวๆ 0-19 ไม่ตรง ICP หรือเป็น noise6กฎ หากน้อยกว่า 7 วันนับจากการติดต่อครั้งล่าสุด ให้เลือก nurture หรือข้าม ห้ามใช้ first_touch ถ้าสัญญาณ7อ่อนหรือไม่ตรง ICP ให้คะแนนต่ำและข้าม การปฏิเสธเป็นส่วนหนึ่งของงาน why_now ต้องอ้างอิง trigger จริง8ด้วยคำพูดที่พนักงานขายสามารถพูดกับผู้ซื้อได้9เอาต์พุต (JSON เท่านั้น) { "score": 0-100, "why_now": "...", "play": "first_touch|follow_up|nurture|skip", "rationale": "..." }
และมันเขียนด้วย Prompt นี้:
1บทบาท คุณเขียนข้อความเปิด สัญญาณคือเหตุผลที่คุณติดต่อ และข้อความต้องพิสูจน์ว่าคุณสังเกตเห็นมัน2อินพุต { trigger, bucket, why_now, play, guardrails: {goal, must, never} }3กฎ เปิดประโยคแรกด้วย trigger ห้ามใช้ "สวัสดีคุณ{{firstName}}" เชื่อม trigger กับปัญหาหนึ่งที่คุณแก้4ได้ ในหนึ่งประโยค ปิดท้ายด้วยคำขอที่เสียดสีต่ำหนึ่งอย่าง ประโยคธรรมดา ความยาวผสม ไม่มีความเร่งด่วน5ปลอม ไม่มี em dash ไม่มี buzzword ถ้าข้อความสามารถส่งออกไปได้เหมือนเดิมตั้งแต่เดือนที่แล้ว แสดงว่าคุณ6ข้าม trigger ไป ให้เริ่มใหม่7เอาต์พุต (JSON เท่านั้น) { "subject": "6-9 คำ", "body": "3-5 ประโยค" }
อะไรที่ทำให้ห้า Agent เป็นทีม

ห้า Agent หนึ่งหน่วยความจำร่วม
สคริปต์ห้าตัวที่แต่ละตัวจดบันทึกของตัวเองไม่ใช่ทีม สิ่งที่ทำให้พวกเขาเป็นทีมคือหน่วยความจำร่วมชุดเดียว: หนึ่งระเบียนต่อหนึ่งบัญชีที่ทุกตำแหน่งอ่านและเขียน
Prospector บันทึกการติดต่อในวันจันทร์ Sequencer อ่านมันในวันพฤหัส เห็นว่าไม่มีการตอบกลับ และส่งขั้นตอนถัดไป Reporter นับมันในวันศุกร์และปรับน้ำหนักของถัง ระเบียนเดียวกัน แหล่งความจริงเดียว สร้างที่เก็บนี้ก่อน ทำให้ชื่อ method คงที่ และทุกตำแหน่งจะพึ่งพามันแทนการเดา
คนคนเดียวบริหารมันอย่างไร

การรายงานสถานะตอนเช้า
คุณไม่ได้ดำเนินการมัน คุณแก้ไขมัน ซึ่งเป็นงานที่เล็กกว่าและแตกต่างมาก
ทีมทำงานด้วย cron ก่อนที่คุณจะตื่น เมื่อคุณนั่งลง รายงานสถานะก็รอคุณอยู่ใน Slack แล้ว: ใครที่ต้องติดต่อวันนี้และเพราะอะไร สรุปสำหรับทุกการประชุมในปฏิทินของคุณ การติดตามลูกค้าที่ไม่มาเข้าประชุม ตัวเลขสัปดาห์ที่แล้วที่ถูกถ่วงน้ำหนักใหม่ตามสิ่งที่จองจริงๆ สองนาที: อนุมัติ แก้ไข หรือยกเลิก
ไม่มีรายการต้องสร้าง ไม่มีหัวข้ออีเมลต้องเดา ไม่มีการประชุมวันจันทร์ว่าใครควรโทรหา ทั้งทีมทำงานด้วยค่าใช้จ่ายประมาณ $400 ต่อเดือนสำหรับ tokens ซึ่งเป็นต้นทุนการดำเนินงานทั้งหมดของแผนก สิ่งที่เหลือคืองานบรรณาธิการ: มีรสนิยมเกี่ยวกับสิ่งที่ทีมนำเสนอให้คุณ และปฏิเสธส่วนใหญ่ของมัน
ที่มนุษย์ยังคงเหนือกว่า

ที่ที่มนุษย์ยังคงอยู่
สิ่งนี้ไม่ได้จัดการ go-to-market ทั้งหมด และส่วนที่มันข้ามไปคือส่วนที่สำคัญที่สุด Agent ตัดสินใจว่าจะติดต่อใครและเขียนบรรทัดแรก พวกเขาไม่ได้ปิดการขาย และพวกเขาไม่ได้สร้างความสัมพันธ์ที่ทำให้ผู้ซื้อเลือกคุณในอีกหนึ่งปีต่อมา เมื่องบประมาณมาถึงในที่สุด
เมื่อมีการตอบกลับกลับมาพร้อมคำถามจริง ความลังเล หรือคำพูดเบาๆ ว่า "เราไม่แน่ใจว่าสิ่งนี้เหมาะกับเรา" นั่นคือบทสนทนาของมนุษย์ และมันควรเป็นอย่างนั้น ระบบเก่งมากในการพาคุณเข้าห้อง แต่ไม่มีอะไรจะพูดเมื่อคุณอยู่ในนั้นแล้ว
ดังนั้น คนที่คุณเคยใช้ไปกับงานจำเจจะไปที่ที่พวกเขามีค่ามากกว่าเสมอ: การโทร ความไว้วางใจ การปิดการขาย ทีมซื้อเวลาคืนที่เคยสูญเสียไปกับการตัดสินใจว่าใครสมควรได้รับการโทร และใช้เวลานั้นกับบทสนทนาที่ตัดสินดีล
รับทีมไปเลย
ฉัน打包ทุกอย่างเป็น repo ที่คุณสามารถ clone และรันได้: ห้าตำแหน่ง หน่วยความจำร่วมที่พวกมันใช้ Prompt ที่นำพาวิจารณญาณและน้ำเสียง และรายงานสถานะที่เชื่อมทุกอย่างเข้าด้วยกัน
1gtm-team/2 team/ prospector · researcher · sequencer · recoverer · reporter3 core/ memory · models · adapters · llm4 prompts/ judge · draft · brief · report5 config/ icp · sequences · signals · team6 run.py รายงานสถานะตอนเช้า
มันเป็น build ที่ใช้งานได้ ไม่ใช่โครงสร้างภายในที่เราใช้ที่ Sortlist ตำแหน่ง prospector คือ gtm-brain จาก drop ที่แล้ว นี่คือทีมรอบๆ มัน
พิมพ์ TEAM แล้วฉันจะส่งให้ กดติดตามเพื่อให้ DM ถึงคุณได้
ถ้าคุณอยากให้มันทำงานให้คุณแทนที่จะต้องต่อสายเอง นั่นคือ MAX: แนวคิดเดียวกันแต่ซ่อนรอยต่อไว้ Agent ที่คุณคุยด้วยซึ่งคอยดูสัญญาณ รัน sequence ผ่านอีเมลและ LinkedIn และส่งรายงานสถานะให้คุณ พร้อมข้อมูลการจับคู่ผู้ซื้อ-ผู้ขายสิบปีที่คุณไม่สามารถดึงได้จาก API สาธารณะ เยี่ยมชม: yourmax.ai





