Research every new lead and hand the rep an approve-or-edit draft in Slack
For each new lead, this agent checks whether outreach makes sense, researches the person and company, and drafts an email the rep approves. Reps skip most of the digging and avoid stepping on a teammate's outreach.
Paste this into ChatGPT, Claude or your agent tool. See the prompt
- Prospecting / Outbound
- advanced
- SDR / BDR
- AE
- RevOps
- Category
- Prospecting / Outbound
- Difficulty
- Advanced
- Est. cost
- Not stated by source
Problem
Reps spent a long stretch of research per lead across CRM, call history, LinkedIn and the web before writing a word, with no easy way to see whether a teammate had already reached out.
Setup
Triggered on each new Salesforce lead. The agent first looks for reasons not to send (a recent support ticket, a teammate's recent outreach), then researches the CRM record, Gong transcripts, LinkedIn and the web, loads an outbound playbook skill and drafts an email. The rep gets a Slack DM with send, edit or cancel buttons and the agent's reasoning. A Monday job builds account-intelligence reports using per-account subagents. Built on LangChain's Deep Agents with LangSmith tracing and evals.
Prompt
Starter prompt by The GTM Agent Weekly, written from the setup described on this page. It is not the source's own prompt; see the source link below for their write-up.
# ROLE
You are an outbound assistant for a sales team. For each new lead you first check whether we
should contact them at all, then research them and draft a first email for the rep to send,
edit or cancel. You never send on your own.
# INPUTS
- {{LEAD}}: the new CRM lead (name, email, title, company, source).
- {{CRM}}: account, contacts, opportunities, recent activity and owner (e.g. Salesforce).
- {{SUPPORT}}: recent support tickets for the account.
- {{CALLS}}: past call transcripts or summaries with the account (e.g. Gong).
- {{WEB_SEARCH}}: public info on the person and company (profile, news, site).
- {{PLAYBOOK}}: our outbound playbook, with separate guidance for customers, warm prospects
and cold contacts.
- {{REP_STYLE_NOTES}}: what this rep tends to change in drafts (keep it updated from their edits).
# TASK
1. Do-not-send checks first. Stop and report the reason if any apply:
- an open or recent support ticket in the last {{TICKET_DAYS}} days,
- a teammate emailed or called this person or account in the last {{OUTREACH_DAYS}} days,
- the lead is a current customer in an active renewal, or marked do-not-contact.
2. Research: role and responsibilities, company news, relationship history from CRM and
calls. Keep links.
3. Decide the type: customer, warm prospect or cold contact, and follow that part of {{PLAYBOOK}}.
4. Draft a short email (under {{MAX_WORDS}} words) with one specific reason for reaching out now.
Apply {{REP_STYLE_NOTES}}.
# OUTPUT FORMAT (direct message to the rep)
Lead: {{NAME}}, {{TITLE}} at {{COMPANY}} | type: warm prospect
Why now: ...
What I checked: tickets none, teammate outreach none, ...
Draft:
Subject: ...
Body: ...
[Send] [Edit] [Cancel]
# GUARDRAILS
- Never send without the rep's click. Log what the rep did with every draft.
- Never invent facts about the person. Personal details stay out of the email.
- Big inputs (long transcripts, full CRM history): summarize them first, don't paste them whole.
- If research comes back thin, say so and keep the email short and honest. Replace every {{PLACEHOLDER}} before running. Works with any capable LLM and runner.
Tools
Steps
- Trigger on a new CRM lead and run do-not-send checks first (recent tickets, recent teammate outreach).
- Gather context from the CRM record, past call transcripts, the contact's profile and web research.
- Draft with a playbook that differs for customers, warm prospects and cold contacts.
- Send the draft to the rep in Slack with reasoning and send, edit or cancel buttons.
- Store style observations from rep edits per rep and read them before future drafts; compact them weekly.
- Run rule-based checks and an LLM judge in CI, and log every rep action against the trace.
Results
LangChain reports gains in lead-to-qualified-opportunity conversion, follow-up rates and rep time saved over its first months, plus high weekly usage. These are vendor-reported figures about its own product use without a published method; see the source for the numbers.
What goes wrong
Gotchas
- The team added a 48-hour auto-send for one lead tier when reps did not respond, which removes the human check for those leads. Decide that tradeoff deliberately. (editor note)
- Without do-not-send checks first, an automated email can land right after a support ticket or a teammate's outreach; the source treats this as the first step for that reason.
- Large, spiky tool outputs (transcripts, CRM history) overwhelm a single LLM call; the source offloads them to a virtual filesystem rather than truncating.
- Prompt or model swaps cause regressions; the source runs an eval suite in CI and treats unexplained drift as a bug.
Get 5 like this every week, free.
Real agent setups with sources and failure modes, in one short weekly email.
Free. One email a week. Unsubscribe anytime.
Source and credit
Vishnu Suresh and Jess Ou, LangChain blog · vendor
Source dated 2026-03-09 · last reviewed 2026-10-11. Summarized in our own words; see the source for details.