This guide walks you through everything you need to run the Agentic Sales & Marketing pipeline for the first time. By the end, the system will discover leads in your target industry, research and qualify them, generate outreach and proposals, and write all results to a Google Sheet — all from a singleDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/vrashmanyu605-eng/Agentic_Sales-Markerting/llms.txt
Use this file to discover all available pages before exploring further.
python main.py command.
Install dependencies
Install all required Python packages using pip.Key packages the workflow depends on:
| Package | Purpose |
|---|---|
langgraph | Multi-agent graph orchestration |
langchain-openai | LLM client (connects to LM Studio) |
ddgs | DuckDuckGo web search for lead discovery |
requests | HTTP requests for website scraping |
beautifulsoup4 | HTML parsing for company research |
lxml | Fast XML/HTML parser used with BeautifulSoup |
google-auth | Google API authentication |
google-api-python-client | Google Sheets API client |
pymupdf | PDF text extraction from your sales deck (provides the fitz module) |
Configure LM Studio
The LLM client in If you use a different port or model, update
llm.py connects to a locally running LM Studio instance. You must have LM Studio installed and serving the model before running the workflow.- Download and install LM Studio.
- Download the gemma-3-4b-it model from within LM Studio.
- Start the local server. By default LM Studio listens on
http://localhost:1234/v1. - Confirm the server is running — the base URL in
llm.pymust match exactly:
llm.py accordingly before proceeding.Set up Google Sheets credentials
The CRM update agent writes lead data to a Google Sheet using a service account. You need a
credentials.json file in the project root directory.- Create a Google Cloud project and enable the Google Sheets API.
- Create a service account and download the JSON key file.
- Rename the file to
credentials.jsonand place it in the project root (next tomain.py). - Share your target Google Sheet with the service account email address, granting Editor access.
Prepare your input files
The workflow reads two files at startup:Sales deck PDF — Your company’s credentials deck. Place it in the project root and update the
jd.txt — Client requirements document. Write a plain-text description of what the target client is looking for. The discovery and research agents use this to find and evaluate matching leads.sales_deck_path variable in main.py to match the file name. The proposal generation agent extracts text from this PDF to build proposals.Configure main.py
Open At minimum, update
main.py and update the initial_state dictionary with your company and campaign details. The fields you most commonly need to change are highlighted in the comments below.target_industry, sender_name, company_services, ideal_customer_profile, pricing_information, case_studies, and spreadsheet_id to match your business.Next steps
Configuration reference
Full documentation of every field in the workflow state and LLM settings.
Agent reference
Understand what each agent does and how to extend or replace one.
Google Sheets setup
Detailed guide for creating service account credentials and sharing your sheet.
Architecture overview
Deep dive into the LangGraph graph structure, supervisor logic, and state flow.