Come costruire un team GTM su Claude Code che puoi gestire da solo

@nifinet
INGLESE4 settimane fa · 18 giu 2026
137K
938
64
83
3.3K

TL;DR

Questa guida spiega nel dettaglio come costruire un'operazione GTM completamente automatizzata utilizzando gli agenti di Claude Code per la prospezione, la ricerca e i follow-up, consentendo a una sola persona di gestire l'intera pipeline tramite un report giornaliero.

Un team GTM sembra un'operazione di invio. La maggior parte del suo vero lavoro è giudizio: quale azienda merita un messaggio questa settimana, cosa dire per dimostrare che hai notato qualcosa, a quale no-show dare seguito, cosa ha effettivamente mosso il pipeline.

L'invio è sempre stato la parte economica. Il giudizio è ciò per cui serviva un team, ed è esattamente ciò che una persona più Claude Code può ora gestire dall'inizio alla fine.

Quindi smetti di pensare in termini di organico e inizia a pensare in termini di mansioni.

Un team GTM è un elenco di queste, e la maggior parte ha la stessa forma: leggere una pila di dati, prendere una decisione, scrivere qualcosa, fare follow-up e ricordare cosa è successo.

Collega ogni mansione a un agente, dagli una memoria condivisa e mettili su un programma. Le persone hanno una UX, il software ha un'API, un agente ha una riga di comando, quindi l'intero team gira da una singola riga cron alle otto del mattino. Ogni mattina fa rapporto, e il tuo lavoro diventa modificare invece di operare.

Qui di seguito c'è la costruzione, posto per posto, con il prompt che incollo in Claude Code per ciascuno.

Nicolas Finet - inline image

La rosa: cinque posti

Decidere chi merita un messaggio

La parte difficile dell'outbound non è mai stata l'invio. Era il giudizio che lo precedeva: tra tutte le aziende del mercato, quale vale la pena contattare questa settimana, e cosa dire per dimostrare che hai notato qualcosa.

Quel giudizio è il primo posto.

Osserva quattro tipi di movimento, i quattro che un decennio di dati di mercato continua a restringere:

  • Un ruolo viene aperto o ripubblicato.
  • Un'azienda ingaggia un concorrente o pubblica qualcosa sul problema che risolvi.
  • Un'azienda lancia, si espande o cambia stack.
  • Il denaro si muove attraverso un round o un'acquisizione.

Valuta ciascuno in base a chi si adatta realmente e a tutto ciò che già sai di quell'account, poi abbozza a partire dal trigger stesso.

La regola che non infrange mai è citare la cosa che si è mossa. "Ho visto che hai ripubblicato il ruolo di Head of RevOps, seconda assunzione operativa del trimestre." Mai "Ciao {{Nome}}." Se il messaggio poteva essere inviato invariato il mese scorso, il trigger è stato saltato e l'account aspetta.

text
1Scrivi team/prospector.py: run(memory, source, delivery, icp, sequences, weights, offline, dry_run).
2Rileva nuovi segnali nei quattro bucket (job, social, company, funding) e scrivili nella memoria
3condivisa. Raggruppa per account. Per ogni account, giudica rispetto all'ICP e alla cronologia completa
4con prompts/judge.md (Claude, temperatura 0), ricadendo su un'euristica a bucket pesata che salta segnali
5deboli e fuori ICP. Per quelli che superano la soglia, abbozza a partire dal trigger più forte con
6prompts/draft.md, passa la bozza a delivery (dry-run di default) e registra il contatto. Restituisci
7righe di standup classificate.

Preparare ogni chiamata prima che inizi

Prima di una prima chiamata, qualcuno passava venti minuti a costruire un one-pager: cos'è questa azienda, cosa si è mosso, cosa gli hai già inviato, dove si è raffreddata l'ultima conversazione.

Affida questo al secondo agente.

Scrive il brief per ogni chiamata prenotata usando la stessa memoria su cui scrive il prospector. Quando la chiamata inizia, la pagina è già lì, con il trigger che li ha portati, la cronologia e l'unica cosa su cui vale la pena aprire.

Nessuno prepara alle 23 per una chiamata delle 9, e nessuno arriva a freddo.

text
1Scrivi team/researcher.py: run(memory, calendar, icp, offline).
2Per ogni chiamata nel calendario di oggi, estrai la cronologia completa dell'account dalla memoria
3condivisa e scrivi un brief di una pagina con prompts/brief.md: cosa si è mosso, cosa abbiamo già inviato
4e come è stato accolto, e la singola cosa migliore su cui aprire la chiamata. Fondamenta ogni riga sulla
5cronologia, mai inventare. Ricadi su un template semplice costruito dall'ultimo segnale quando non c'è
6una chiave API. Restituisci una riga di standup per chiamata.

Lascia che la sequenza faccia il chasing

Un segnale è la linea di partenza. La sequenza è ciò che converte, ed è la parte in cui le persone sono peggiori, perché il follow-up dipende da un umano che si ricorda di seguire. Dimentichiamo, esitiamo, lo facciamo una volta e ci fermiamo.

Quindi l'invio e il chasing girano in Overloop AI come sequenze che si attivano da sole una volta che l'agente le passa. L'agente decide chi e scrive il primo contatto. Overloop porta avanti il resto su un programma, via email e LinkedIn, così la cadenza non vive o muore mai sulla memoria di nessuno.

text
1Scrivi team/sequencer.py: run(memory, delivery, sequences, offline, dry_run, min_age_days, max_age_days).
2Chiedi alla memoria condivisa gli account il cui ultimo contatto ha qualche giorno e che non hanno risposte
3o riunioni in programma. Abbozza un follow-up leggero che aggiunga un angolo genuinamente nuovo, invialo
4nella sequenza follow_up e registra il contatto. Lascia stare i contatti freschi rispettando la finestra
5di min-age. Restituisci una riga di standup per account.

Recuperare i no-show

Un no-show è un lead qualificato che ha avuto un conflitto di calendario. Escono dal pipeline per un motivo: il recupero manuale non avviene mai.

Quindi lo stesso motore esegue una sequenza di recupero per ogni assenza. Quattro contatti in una settimana, due canali, nessun rimprovero in nessuno di essi:

  • Un'ora dopo l'assenza: un link per riprogrammare in due click.
  • Il giorno dopo: la stessa offerta su LinkedIn.
  • Terzo giorno: una cosa utile legata al loro settore, senza richiesta.
  • Settimo giorno: un semplice ultimo avviso.

Toglie l'emotività dal follow-up e recupera circa un terzo dei no-show che prima semplicemente sparivano. Nessuno deve ricordarsi di inviarne nemmeno uno.

text
1Scrivi team/recoverer.py: run(memory, calendar, delivery, sequences, offline, dry_run).
2Per ogni no-show recente dal calendario, iscrivilo nella sequenza no_show_recovery definita in
3config/sequences.yaml (quattro contatti in una settimana, due canali, nessun rimprovero in nessun passo),
4registra il contatto e restituisci una riga di standup. La cadenza vive in config, non nel codice.

Far sì che il report settimanale si sintonizzi da solo

Ogni venerdì qualcuno assemblava il retro: cosa è uscito, cosa è stato prenotato, cosa è bloccato, a che punto è il pipeline. L'ultimo agente lo costruisce dalla stessa memoria, ogni settimana, senza che glielo si chieda.

Poi fa la cosa che un report umano non fa mai.

Valuta le proprie giocate: i segnali che continuano a prenotare riunioni ottengono più peso, i copy che continuano a fallire vengono tagliati. La shortlist del prossimo mese è ordinata da ciò a cui il mercato ha effettivamente risposto, non da ciò che hai indovinato a gennaio. Il report smette di essere una registrazione della scorsa settimana e diventa la cosa che sintonizza la successiva.

text
1Scrivi team/reporter.py: run(memory, weights, days, offline).
2Leggi le statistiche della settimana dalla memoria condivisa. Inizia con il conteggio delle riunioni.
3Ripondera i quattro bucket di segnali in base al tasso di vittoria, contando una riunione più di una
4risposta, con un pavimento in modo che nessun bucket scenda mai a zero. Restituisci le righe di standup
5e i nuovi pesi per la prossima esecuzione. prompts/report.md scrive la versione in prosa quando è
6impostata una chiave.

I due prompt che girano ogni mattina

Ogni prompt di costruzione sopra gira una volta. Questi due girano su ogni account, ogni giorno, quindi sono quelli da conservare e ottimizzare. Il giudizio e la voce vivono qui, in file semplici, non sepolti nel codice.

Il prospector giudica su questo:

text
1RUOLO Sei il livello di giudizio del prospector. Per un account, decidi se un segnale di acquisto vale
2la pena di essere attivato ora e come.
3INPUT { icp, new_signals: [{bucket, summary}], history, days_since_last_touch }
4PUNTEGGIO 80-100 forte aderenza ICP e segnale ad alta intenzione (funding, o due raggruppati); 50-79 buona
5aderenza, un segnale solido; 20-49 debole aderenza o un singolo segnale a bassa intenzione; 0-19 fuori ICP o rumore
6REGOLE Sotto 7 giorni dall'ultimo contatto, preferisci nurture o skip, mai first_touch. Se il segnale è
7debole o fuori ICP, dagli un punteggio basso e salta; dire di no fa parte del lavoro. why_now deve citare
8il trigger effettivo, in parole che un rappresentante potrebbe dire al compratore.
9OUTPUT (solo JSON) { "score": 0-100, "why_now": "...", "play": "first_touch|follow_up|nurture|skip", "rationale": "..." }

E scrive su questo:

text
1RUOLO Scrivi il messaggio di apertura. Il segnale è il motivo per cui ti stai rivolgendo, e il messaggio
2deve dimostrare che lo hai notato.
3INPUT { trigger, bucket, why_now, play, guardrails: {goal, must, never} }
4REGOLE Apri la prima frase sul trigger, mai "Ciao {{Nome}}". Collega il trigger a un problema che risolvi,
5in una singola frase. Chiudi con una richiesta a basso attrito. Frasi semplici, lunghezza mista, nessuna
6falsa urgenza, nessun trattino, nessun buzzword. Se il messaggio poteva essere inviato invariato il mese
7scorso, hai saltato il trigger; ricomincia.
8OUTPUT (solo JSON) { "subject": "6-9 parole", "body": "3-5 frasi" }

Cosa rende cinque agenti una squadra

Nicolas Finet - inline image

Cinque agenti, una memoria condivisa

Cinque script che tengono ciascuno le proprie note non sono una squadra. Ciò che li trasforma in una è una singola memoria condivisa: un record per account che ogni posto legge e scrive.

Il prospector registra un contatto lunedì. Il sequencer lo legge giovedì, vede nessuna risposta e invia il passo successivo. Il reporter lo conta venerdì e ripesca i bucket. Stesso record, un'unica fonte di verità. Costruisci prima quel deposito, mantieni stabili i nomi dei suoi metodi, e ogni posto si basa su di esso invece di indovinare.

Come lo gestisce una persona

Nicolas Finet - inline image

Lo standup mattutino

Non lo operi. Lo modifichi, che è un lavoro più piccolo e molto diverso.

Il team gira su cron prima che tu sia sveglio. Quando ti siedi, lo standup ti aspetta su Slack: chi contattare oggi e perché, un brief per ogni chiamata sul calendario, i no-show seguiti, i numeri della scorsa settimana ripesati in base a cosa ha effettivamente prenotato. Due minuti: approva, modifica o elimina.

Nessuna lista da costruire, nessun oggetto da indovinare, nessuna riunione del lunedì su chi chiamare. L'intero team gira per circa 400 dollari al mese di token, l'intero costo operativo del dipartimento. Ciò che resta è editoriale: avere gusto su ciò che il team mette davanti a te e dire di no alla maggior parte.

Dove gli umani vincono ancora

Nicolas Finet - inline image

Dove restano gli umani

Questo non gestisce l'intero go-to-market, e le parti che salta sono quelle che contano di più. Gli agenti decidono chi contattare e scrivono la prima riga. Non chiudono, e non costruiscono la relazione che fa sì che un compratore ti scelga un anno dopo, quando finalmente arriva il budget.

Quando arriva una risposta con una domanda reale, un'esitazione, un tranquillo "non siamo sicuri che faccia per noi", quella è una conversazione umana, e dovrebbe restare tale. Il sistema è molto bravo a farti entrare nella stanza. Non ha nulla da dire una volta che ci sei dentro.

Quindi le persone che avresti speso per il lavoro di routine vanno dove sono sempre state più utili: la chiamata, la fiducia, la chiusura. Il team riacquista le ore che prima sparivano nel decidere chi meritava una chiamata, e le spende nelle conversazioni che decidono le trattative.

Prendi il team

Ho impacchettato il tutto in un repository che puoi clonare ed eseguire: i cinque posti, la memoria condivisa su cui girano, i prompt che portano il giudizio e la voce, e lo standup che li lega insieme.

text
1gtm-team/
2 team/ prospector · researcher · sequencer · recoverer · reporter
3 core/ memory · models · adapters · llm
4 prompts/ judge · draft · brief · report
5 config/ icp · sequences · signals · team
6 run.py the morning standup

È una build funzionante, non lo stack interno che eseguiamo su Sortlist. Il posto del prospector è il gtm-brain dell'ultimo drop. Questo è il team che lo circonda.

Commenta TEAM e te lo invierò. Seguimi così il DM passa.

Se preferisci che lo esegua per te invece di cablarlo da solo, quello è MAX: la stessa idea con le cuciture nascoste. Un agente con cui parli che osserva i segnali, esegue le sequenze via email e LinkedIn e ti passa lo standup, supportato da dieci anni di dati di matching acquirente-venditore che non puoi estrarre da un'API pubblica. Visita: yourmax.ai

Salva con un clic

Leggi in profondità gli articoli virali con l’AI di YouMind

Salva la fonte, fai domande mirate, riassumi l’argomentazione e trasforma un articolo virale in note riutilizzabili in un unico spazio di lavoro AI.

Scopri YouMind
Per i creator

Trasforma il tuo Markdown in un articolo 𝕏 pulito

Quando pubblichi i tuoi testi lunghi, formattare immagini, tabelle e blocchi di codice per 𝕏 è una seccatura. YouMind trasforma un'intera bozza Markdown in un articolo 𝕏 pulito e pronto da pubblicare.

Prova Markdown verso 𝕏

Altri pattern da decodificare

Articoli virali recenti

Esplora altri articoli virali