Sales Team Agent
The Sales Team Agent is responsible for proposal writing, sales pipeline analysis, CRM updates, and customer research. It automates administrative tasks so that sales representatives can focus on conversations with customers.
Sales Agent Implementationโ
// src/agents/sales.ts
import { query } from "@anthropic-ai/claude-agent-sdk";
import { AgentResponse } from "../shared/types";
import { extractText, log } from "../shared/utils";
const SALES_SYSTEM_PROMPT = `You are a B2B SaaS sales strategist.
You understand the customer's business problems and clearly communicate the value of the solution.
You manage the sales pipeline based on data and increase win rates.
Your goal is to build long-term partnerships with a customer-centric mindset.`;
export async function runSalesAgent(task: string): Promise<AgentResponse> {
log("SALES", `Starting task: ${task.slice(0, 40)}...`);
const response = await query({
prompt: `${SALES_SYSTEM_PROMPT}\n\n---\n\n${task}`,
options: {
maxTurns: 10,
tools: ["Read", "Write"]
}
});
const result = extractText(response);
log("SALES", "Task completed");
return {
department: "sales",
result,
confidence: "high",
actionItems: []
};
}
Core Sales Workflowsโ
1. Customized Proposal Writingโ
> Sales Team: Please write a proposal for the AI development tool to submit to Samsung SDS.
Contact: Manager Jeong-ho Lee / IT Infrastructure Team
Key Pain Points: Low developer productivity, difficulty managing code quality
Budget: 500 million KRW annually / Decision Maker: CTO
Agent Response:
## Samsung SDS Customized AI Development Tool Adoption Proposal
### Executive Summary
We propose an AI development platform that can improve the productivity of Samsung SDS's 1,200 developers by an average of 35%
and reduce code quality issues by 70%.
### Current Challenge Analysis
- Time spent on code review: 8 hours per week per developer
- 60% of production bugs are missed during the code review stage
- New developer onboarding period: 3 months on average
### Solution Proposal
...
### ROI Analysis
- Annual savings: Approximately 1.2 billion KRW
- Payback period: 5 months
- 3-year cumulative ROI: 520%
2. Pipeline Analysis and Forecastingโ
async function analyzePipeline(pipelineData: string) {
return runSalesAgent(
`Please analyze the current sales pipeline and forecast the probability of achieving the quarterly goal.
Pipeline Data:
${pipelineData}
Analysis Request:
1. Deal status and conversion rate by stage
2. Expected closed deals this quarter
3. Identify at-risk deals (no progress for more than 30 days)
4. Gap against goal and coverage strategy
5. Deals needing support for each representative`
);
}
3. Customer Research Briefingโ
async function customerResearch(
companyName: string,
meetingPurpose: string
) {
return runSalesAgent(
`Please prepare a research briefing before the meeting with ${companyName}.
Meeting Purpose: ${meetingPurpose}
Briefing Content:
1. Company overview (industry, size, recent trends)
2. Tech stack and digital transformation status
3. Recent issues and public challenges
4. Expected purchasing decision makers and influencers map
5. 3 connection points with our solution
6. 5 recommended questions to ask in the meeting`
);
}
4. Writing Email Sequencesโ
async function createEmailSequence(
prospect: string,
painPoint: string,
sequenceLength: number
) {
return runSalesAgent(
`Please write a ${sequenceLength}-step email sequence targeting ${prospect}.
Key Pain Point: ${painPoint}
Each Email:
- Send timing (e.g., 3 days after first contact)
- Subject (2 for A/B testing)
- Body (within 200 characters)
- CTA (clear and low friction)
Tone: Professional but warm, feeling like you are trying to help rather than trying to sell`
);
}
Sales Agent + CRM Integrationโ
import { runSalesAgent } from "./sales";
// Fetch data from CRM, run agent, and update
async function syncWithCRM(dealId: string) {
// 1. Fetch deal info from CRM
const deal = await crmApi.getDeal(dealId);
// 2. Analyze with Agent
const analysis = await runSalesAgent(
`Please analyze the current status of the following deal and recommend the next action:
Deal Name: ${deal.name}
Stage: ${deal.stage}
Last Activity: ${deal.lastActivity}
Customer Reaction: ${deal.notes}`
);
// 3. Update CRM
await crmApi.updateDeal(dealId, {
aiAnalysis: analysis.result,
nextAction: analysis.actionItems[0],
updatedAt: new Date()
});
}
Maximizing Sales Agent Effectiveness
- Provide the customer company's public financial statements/disclosures as context when writing proposals
- Include proposals from successful deals as Few-shot examples
- Run pipeline analysis automatically every Monday to prepare for weekly meetings
Found an issue on this page? Report it โ