Một đội GTM trông giống như một chiến dịch gửi đi. Nhưng phần lớn công việc thực sự của nó lại nằm ở khâu phán đoán: công ty nào đáng để gửi tin nhắn trong tuần này, nên nói gì để chứng tỏ bạn đã để ý đến họ, khách hàng nào không đến mà cần phải chạy theo, và điều gì thực sự đã thúc đẩy pipeline.
Việc gửi tin luôn là phần rẻ nhất. Khâu phán đoán mới là thứ bạn từng cần cả một đội ngũ để làm, và đó chính xác là thứ mà một người duy nhất cùng với Claude Code có thể vận hành từ đầu đến cuối.
Vì vậy, hãy ngừng suy nghĩ theo số lượng nhân sự và bắt đầu suy nghĩ theo các công việc cần làm.
Một đội GTM là một danh sách những công việc đó, và hầu hết chúng đều có cùng một hình dạng: đọc một đống dữ liệu, đưa ra quyết định, viết gì đó, theo dõi, và ghi nhớ những gì đã xảy ra.
Kết nối mỗi công việc với một agent, cho chúng một bộ nhớ dùng chung, và đặt chúng vào một lịch trình. Con người có giao diện người dùng (UX), phần mềm có API, còn agent có dòng lệnh, vì vậy toàn bộ đội ngũ chạy từ một dòng cron duy nhất lúc tám giờ sáng. Mỗi sáng, nó báo cáo kết quả, và công việc của bạn chuyển từ vận hành sang chỉnh sửa.
Dưới đây là cách xây dựng, từng vị trí một, cùng với prompt mà tôi dán vào Claude Code cho mỗi vị trí.

Danh sách: năm vị trí
Quyết định ai đáng để gửi tin nhắn
Phần khó nhất của outbound chưa bao giờ là việc gửi tin. Đó là khâu phán đoán đằng sau nó: trong số tất cả các công ty trên thị trường, công ty nào đáng để tiếp cận trong tuần này, và bạn sẽ nói gì để chứng tỏ bạn đã để ý.
Khâu phán đoán đó là vị trí đầu tiên.
Nó theo dõi bốn loại thay đổi, bốn loại mà dữ liệu thị trường hàng thập kỷ liên tục thu hẹp danh sách lại:
- Một vị trí được mở ra, hoặc được đăng lại.
- Một công ty tương tác với đối thủ cạnh tranh, hoặc đăng bài về vấn đề mà bạn giải quyết.
- Một công ty ra mắt, mở rộng, hoặc thay đổi stack công nghệ.
- Tiền di chuyển qua một vòng gọi vốn hoặc thương vụ M&A.
Nó chấm điểm từng thay đổi dựa trên mức độ phù hợp thực tế và mọi thứ bạn đã biết về tài khoản đó, sau đó soạn thảo nội dung dựa trên chính sự kiện kích hoạt đó.
Nguyên tắc nó không bao giờ phá vỡ là trích dẫn điều đã thay đổi. "Thấy bạn đã đăng lại vị trí Head of RevOps, nhân sự vận hành thứ hai trong quý này." Không bao giờ là "Chào {{firstName}}." Nếu tin nhắn có thể được gửi đi mà không thay đổi từ tháng trước, thì sự kiện kích hoạt đã bị bỏ qua và tài khoản đó phải chờ.
1Viết team/prospector.py: run(memory, source, delivery, icp, sequences, weights, offline, dry_run).2Phát hiện các tín hiệu mới và phân loại vào bốn nhóm (job, social, company, funding) và ghi chúng vào bộ nhớ3dùng chung. Gom nhóm theo tài khoản. Với mỗi tài khoản, đánh giá nó dựa trên ICP và toàn bộ lịch sử bằng4prompts/judge.md (Claude, temperature 0), dự phòng bằng heuristic nhóm trọng số để bỏ qua các tín hiệu yếu,5không phù hợp ICP. Với những tài khoản vượt qua ngưỡng, soạn thảo từ tín hiệu mạnh nhất bằng prompts/draft.md,6chuyển bản nháp cho hệ thống gửi (dry-run theo mặc định), và ghi lại lần tương tác. Trả về các dòng standup đã xếp hạng.
Tóm tắt mọi cuộc gọi trước khi nó bắt đầu
Trước một cuộc gọi đầu tiên, ai đó từng dành hai mươi phút để xây dựng một trang tổng quan: công ty này là gì, điều gì đã thay đổi, bạn đã gửi gì cho họ trước đây, và cuộc trò chuyện cuối cùng đã nguội lạnh ở đâu.
Hãy giao việc đó cho agent thứ hai.
Nó viết bản tóm tắt cho mọi cuộc gọi đã lên lịch dựa trên cùng bộ nhớ mà prospector ghi vào. Vào thời điểm cuộc gọi bắt đầu, trang tóm tắt đã sẵn sàng, với sự kiện kích hoạt đã đưa họ đến, lịch sử, và một điều đáng giá để mở đầu cuộc trò chuyện.
Không ai phải chuẩn bị lúc 11 giờ tối cho một cuộc gọi lúc 9 giờ sáng, và không ai bước vào cuộc gọi mà không có thông tin.
1Viết team/researcher.py: run(memory, calendar, icp, offline).2Với mỗi cuộc gọi trên lịch hôm nay, lấy toàn bộ lịch sử của tài khoản từ bộ nhớ dùng chung và viết một trang3tóm tắt bằng prompts/brief.md: điều gì đã thay đổi, chúng ta đã gửi gì và nó được đón nhận thế nào, và một4điều tốt nhất để mở đầu cuộc gọi. Mọi dòng đều phải dựa trên lịch sử, không được bịa đặt. Dự phòng bằng5một mẫu đơn giản được xây dựng từ tín hiệu mới nhất khi không có API key. Trả về một dòng standup cho mỗi cuộc gọi.
Để cho sequence tự động chạy theo
Một tín hiệu là vạch xuất phát. Sequence là thứ chuyển đổi, và đó là phần mà con người làm tệ nhất, vì việc theo dõi phụ thuộc vào việc con người nhớ phải theo dõi. Chúng ta quên, chúng ta do dự, chúng ta làm một lần rồi dừng.
Vì vậy, việc gửi và chạy theo được vận hành trong Overloop AI dưới dạng các sequence tự động kích hoạt khi agent bàn giao. Agent quyết định ai và viết lần tương tác đầu tiên. Overloop đảm nhận phần còn lại theo một lịch trình, qua email và LinkedIn, để nhịp độ không bao giờ phụ thuộc vào trí nhớ của bất kỳ ai.
1Viết team/sequencer.py: run(memory, delivery, sequences, offline, dry_run, min_age_days, max_age_days).2Hỏi bộ nhớ dùng chung về các tài khoản có lần tương tác cuối cách đây vài ngày và chưa có phản hồi hoặc cuộc họp3trong sổ sách. Soạn một tin nhắn follow-up nhẹ nhàng, bổ sung một góc nhìn thực sự mới, gửi nó vào sequence4follow_up, và ghi lại lần tương tác. Bỏ qua các tương tác gần đây bằng cách tôn trọng cửa sổ min_age. Trả về5một dòng standup cho mỗi tài khoản.
Giành lại những khách hàng không đến cuộc hẹn
Khách hàng không đến là một lead đã đủ điều kiện nhưng gặp xung đột lịch. Họ rò rỉ ra khỏi pipeline vì một lý do: việc phục hồi thủ công không bao giờ xảy ra.
Vì vậy, cùng một công cụ chạy một sequence phục hồi cho mỗi lần vắng mặt. Bốn lần tương tác trong một tuần, hai kênh, không có lời đổ lỗi nào trong đó:
- Một giờ sau khi vắng mặt: một liên kết đặt lại lịch chỉ với hai cú nhấp chuột.
- Ngày hôm sau: cùng một lời đề nghị trên LinkedIn.
- Ngày thứ ba: một điều hữu ích liên quan đến ngành của họ, không yêu cầu gì.
- Ngày thứ bảy: một lời kêu gọi cuối cùng đơn giản.
Nó loại bỏ cảm xúc khỏi việc theo dõi, và mang về khoảng một phần ba số khách hàng vắng mặt thường biến mất. Không ai phải nhớ gửi một tin nhắn nào.
1Viết team/recoverer.py: run(memory, calendar, delivery, sequences, offline, dry_run).2Với mỗi lần vắng mặt gần đây từ lịch, đăng ký nó vào sequence no_show_recovery được định nghĩa trong3config/sequences.yaml (bốn lần tương tác trong một tuần, hai kênh, không đổ lỗi ở bước nào), ghi lại lần4tương tác, và trả về một dòng standup. Nhịp độ nằm trong config, không phải trong code.
Biến báo cáo hàng tuần thành công cụ tự điều chỉnh
Mỗi thứ Sáu, ai đó từng tổng hợp báo cáo tổng kết: những gì đã gửi đi, những gì đã đặt lịch, những gì đang bị kẹt, pipeline đang ở đâu. Agent cuối cùng xây dựng nó từ cùng bộ nhớ, mỗi tuần, mà không cần ai yêu cầu.
Sau đó, nó làm một điều mà báo cáo của con người không bao giờ làm.
Nó tự đánh giá các chiến thuật của chính mình: những tín hiệu liên tục mang lại cuộc họp sẽ được tăng trọng số, những nội dung liên tục thất bại sẽ bị loại bỏ. Danh sách rút gọn của tháng sau được sắp xếp theo những gì thị trường thực sự phản hồi, chứ không phải theo những gì bạn đoán là quan trọng vào tháng Giêng. Báo cáo không còn là bản ghi chép của tuần trước nữa, mà trở thành thứ điều chỉnh cho tuần tiếp theo.
1Viết team/reporter.py: run(memory, weights, days, offline).2Đọc số liệu thống kê trong tuần từ bộ nhớ dùng chung. Mở đầu bằng số lượng cuộc họp. Tính lại trọng số cho bốn3nhóm tín hiệu dựa trên tỷ lệ thắng, coi trọng một cuộc họp hơn một phản hồi, với một mức sàn để không nhóm nào4bị giảm xuống 0. Trả về các dòng standup và trọng số mới cho lần chạy tiếp theo. prompts/report.md viết phiên5bản văn xuôi khi có key.
Hai prompt chạy mỗi sáng
Mọi prompt xây dựng ở trên chỉ chạy một lần. Hai prompt này chạy trên mọi tài khoản, mỗi ngày, vì vậy chúng là những thứ cần giữ lại và tinh chỉnh. Khả năng phán đoán và giọng văn nằm ở đây, trong các tệp đơn giản, không bị chôn vùi trong code.
Prospector đánh giá dựa trên prompt này:
1VAI TRÒ Bạn là lớp phán đoán của prospector. Với một tài khoản, hãy quyết định xem một tín hiệu mua hàng có đáng2để hành động ngay lúc này hay không, và hành động như thế nào.3ĐẦU VÀO { icp, new_signals: [{bucket, summary}], history, days_since_last_touch }4CHẤM ĐIỂM 80-100 phù hợp ICP mạnh và tín hiệu có ý định cao (gọi vốn, hoặc hai tín hiệu kết hợp); 50-79 phù hợp tốt,5một tín hiệu vững chắc; 20-49 phù hợp yếu hoặc một tín hiệu ý định thấp đơn lẻ; 0-19 không phù hợp ICP hoặc nhiễu6QUY TẮC Dưới 7 ngày kể từ lần tương tác cuối, ưu tiên nurture hoặc bỏ qua, không bao giờ first_touch. Nếu tín hiệu7yếu hoặc không phù hợp ICP, chấm điểm thấp và bỏ qua; nói không là một phần của công việc. why_now phải trích dẫn8sự kiện kích hoạt thực tế, bằng lời lẽ mà một rep có thể nói với người mua.9ĐẦU RA (chỉ JSON) { "score": 0-100, "why_now": "...", "play": "first_touch|follow_up|nurture|skip", "rationale": "..." }
Và nó viết dựa trên prompt này:
1VAI TRÒ Bạn viết tin nhắn mở đầu. Tín hiệu là lý do bạn liên hệ, và tin nhắn phải chứng tỏ bạn đã để ý đến nó.2ĐẦU VÀO { trigger, bucket, why_now, play, guardrails: {goal, must, never} }3QUY TẮC Mở đầu câu đầu tiên bằng sự kiện kích hoạt, không bao giờ "Chào {{firstName}}". Kết nối sự kiện kích hoạt4với một vấn đề bạn giải quyết, trong một câu duy nhất. Kết thúc với một yêu cầu ít rào cản. Câu văn đơn giản,5độ dài hỗn hợp, không có sự khẩn cấp giả tạo, không có em dash, không có buzzword. Nếu tin nhắn có thể được gửi6đi mà không thay đổi từ tháng trước, bạn đã bỏ qua sự kiện kích hoạt; hãy bắt đầu lại.7ĐẦU RA (chỉ JSON) { "subject": "6-9 từ", "body": "3-5 câu" }
Điều gì biến năm agent thành một đội ngũ

Năm agent, một bộ nhớ dùng chung
Năm script mà mỗi cái tự ghi chú riêng không phải là một đội ngũ. Điều biến chúng thành một đội là một bộ nhớ dùng chung duy nhất: một bản ghi cho mỗi tài khoản mà mọi vị trí đều đọc và ghi.
Prospector ghi lại một lần tương tác vào thứ Hai. Sequencer đọc nó vào thứ Năm, thấy không có phản hồi, và gửi bước tiếp theo. Reporter đếm nó vào thứ Sáu và tính lại trọng số cho các nhóm. Cùng một bản ghi, một nguồn sự thật duy nhất. Hãy xây dựng kho lưu trữ đó trước, giữ cho tên phương thức của nó ổn định, và mọi vị trí sẽ dựa vào nó thay vì phải phỏng đoán.
Một người vận hành nó như thế nào

Báo cáo sáng hàng ngày
Bạn không vận hành việc này. Bạn chỉnh sửa nó, một công việc nhỏ hơn và rất khác.
Đội ngũ chạy trên cron trước khi bạn thức dậy. Vào lúc bạn ngồi vào bàn làm việc, báo cáo sáng đã chờ sẵn trong Slack: hôm nay nên liên hệ với ai và tại sao, một bản tóm tắt cho mọi cuộc gọi trên lịch của bạn, những khách hàng vắng mặt đang được chạy theo, số liệu tuần trước đã được tính lại trọng số dựa trên những gì thực sự đã đặt lịch. Hai phút: phê duyệt, chỉnh sửa, hoặc hủy bỏ.
Không phải xây dựng danh sách, không phải đoán chủ đề email, không có cuộc họp thứ Hai về việc gọi cho ai. Toàn bộ đội ngũ chạy với chi phí khoảng 400 đô la mỗi tháng cho token, toàn bộ chi phí vận hành của bộ phận. Những gì còn lại là công việc biên tập: có gu thẩm mỹ về những gì đội ngũ đưa ra trước mặt bạn, và nói không với hầu hết chúng.
Nơi con người vẫn chiến thắng

Nơi con người ở lại
Điều này không vận hành toàn bộ quá trình go-to-market, và những phần nó bỏ qua lại là những phần quan trọng nhất. Các agent quyết định ai cần liên hệ và viết dòng đầu tiên. Chúng không chốt sale, và chúng không xây dựng mối quan hệ khiến người mua chọn bạn một năm sau đó, khi ngân sách cuối cùng được phê duyệt.
Khi một phản hồi quay lại với một câu hỏi thực sự, một sự do dự, một lời thì thầm "chúng tôi không chắc điều này dành cho chúng tôi", đó là một cuộc trò chuyện của con người, và nó nên được giữ như vậy. Hệ thống rất giỏi trong việc đưa bạn vào phòng. Nó không có gì để nói khi bạn đã ở trong đó.
Vì vậy, những con người mà bạn từng dành cho công việc nhàm chán sẽ đi đến nơi họ luôn có giá trị hơn: cuộc gọi, lòng tin, và sự chốt sale. Đội ngũ mua lại những giờ đồng hồ từng biến mất vào việc quyết định ai xứng đáng nhận một cuộc gọi, và dành chúng cho những cuộc trò chuyện quyết định các thương vụ.
Nhận lấy đội ngũ
Tôi đã đóng gói toàn bộ vào một repo mà bạn có thể clone và chạy: năm vị trí, bộ nhớ dùng chung mà chúng chạy trên đó, các prompt mang khả năng phán đoán và giọng văn, và báo cáo sáng kết nối chúng lại với nhau.
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 báo cáo sáng hàng ngày
Đây là một bản build có thể chạy được, không phải stack nội bộ mà chúng tôi chạy tại Sortlist. Vị trí prospector là gtm-brain từ lần ra mắt trước. Đây là đội ngũ xung quanh nó.
Hãy comment TEAM và tôi sẽ gửi nó cho bạn. Nhớ follow để tin nhắn được gửi thành công.
Nếu bạn muốn nó chạy cho bạn thay vì tự cài đặt, đó là MAX: cùng một ý tưởng nhưng các đường nối được ẩn đi. Một agent bạn nói chuyện, nó theo dõi các tín hiệu, chạy các sequence qua email và LinkedIn, và đưa cho bạn báo cáo sáng, được hỗ trợ bởi mười năm dữ liệu ghép nối người mua-người bán mà bạn không thể lấy từ API công cộng. Truy cập: yourmax.ai





