Sales-Catalyst is a next-generation, hyper-efficient AI sales assistant built around the Catalyst Agent. It automates sales workflows, streamlines meeting prep and follow-up, and delivers actionable insights—all via a conversational interface powered by advanced LLMs and Retrieval-Augmented Generation (RAG).
- Key Technical Highlights
- Layman-Friendly Explanation
- Project Structure
- Tech Stack
- Environment Variables
- Running Locally
- Using Docker
- Deploying with deploy.sh
- Endpoints
- Catalyst Agent Workflow (User Journey)
- What is RAG?
- Security & Privacy
- Contributing
- License
- Catalyst Agent Orchestration: The core
agents/catalyst_agent.pyorchestrates all workflows: meeting briefing, product recommendation, competitor comparison, recap, invite/email creation, and technical Q&A. - Retrieval-Augmented Generation (RAG): Sales-Catalyst uses RAG for deep document search and context injection, leveraging a FAISS vector store built from PDFs and knowledge sources.
- Vision-to-RAG: Supports workflows from images/diagrams to product recommendations and comparisons.
- Strict Workflow Automation: Pre-meeting, in-meeting, and post-meeting flows are step-by-step and stateful.
- Natural Language Interaction: Friendly, concise, and always professional—never raw data or code.
- Sales-Specific Tools: Modular tools for meeting briefing, competitor analysis, recap, and action automation.
- Data Handling: Never exposes raw JSON; always interprets tool output into natural language.
- Cloud-Ready: Designed for scalable, cloud-native deployment.
Sales-Catalyst is like having a sharp, always-on sales coordinator. It prepares you for meetings, analyzes competitor info, recommends products from diagrams, and handles your post-meeting follow-ups. Just chat or share a photo—Catalyst handles the rest, including calendar invites and emails, always using your latest sales knowledge base.
Sales-Catalyst/
├── agents/
│ └── catalyst_agent.py # Core Catalyst Agent orchestration (LLM, tools, workflow logic)
├── tools/
│ └── sales_tools.py # Modular tools for briefing, comparison, recap, invites, emails, and RAG integration
├── create_index.py # Script to build FAISS index from PDFs for RAG
├── docs/ # Place your PDFs here to build the knowledge base
├── faiss_index/ # Local FAISS vector store (created by create_index.py)
├── frontend/
│ ├── static/
│ │ ├── index.html # Main UI
│ │ ├── js/ # Chat, audio, workflow logic
│ │ └── styles/ # CSS styles
│ └── assets/ # Images, icons, etc.
├── requirements.txt # Python dependencies
├── Dockerfile # Container build instructions
├── deploy.sh # Deployment script
├── .env # Environment variables (not committed)
├── README.md
└── LICENSE
- Python (Catalyst Agent, tool APIs, RAG)
- LangChain, FAISS, VertexAI (for RAG and LLM integration)
- JavaScript, HTML5, CSS3 (Modern frontend)
- FastAPI (API server, WebSockets)
- Google ADK (LLM, vision, agent toolkit)
- Docker & Shell (DevOps, deployment)
Create a .env file as needed:
GOOGLE_API_KEY='your-google-api-key'
GOOGLE_PROJECT_ID='your-gcp-project'
CRM_API_KEY='your-crm-api-key'
EMAIL_SERVICE_KEY='your-email-key'
LOCATION='us-central1'
STAGING_BUCKET='gs://your-staging-bucket'
GCP_BUCKET_NAME='your-gcp-bucket'Never commit
.envor secrets to source control.
-
Build your knowledge base:
- Place your PDFs inside the
docs/folder. - Run:
python create_index.py
- This builds a FAISS vector store (
faiss_index/) for RAG-based search.
- Place your PDFs inside the
-
Python backend:
python -m venv venv source venv/bin/activate pip install -r requirements.txt # Add your credentials to .env uvicorn agents.catalyst_agent:app --host 0.0.0.0 --port 8000 --reload
-
Frontend:
- Open
frontend/static/index.htmlin your browser, or run a simple HTTP server:cd frontend/static python -m http.server 8080
- Open
docker build -t sales-catalyst .
docker run -p 8000:8000 --env-file .env sales-catalystTo deploy Sales-Catalyst to a cloud environment (such as Google Cloud Run), use the provided deploy.sh script. This script automates the build and deployment process, ensuring all necessary environment variables and containers are configured for production.
Typical usage:
./deploy.sh- Ensure you have set up your cloud credentials and your
.envfile is present with all necessary variables. - The script will build the Docker image, push it to your configured container registry, and deploy it to the specified cloud service.
- Modify
deploy.shas needed for your cloud provider or deployment preferences.
GET /— Main UI (chat, workflow triggers)/static/*— Static assets (HTML, JS, CSS, images)- WebSocket:
ws://<host>/ws/{session_id}- All agent conversations (chat, audio, images) occur here.
- Greeting: Catalyst greets Alex professionally.
- Briefing: On request, Catalyst fetches and summarizes a full meeting briefing (contacts, history, opportunity, painpoints) using RAG.
- Visual Prompt: Immediately prompts Alex to share technical details or diagrams.
- Visual Intake: Waits for Alex to upload/share an image/diagram.
- Image Analysis: Catalyst analyzes the shared image/diagram to infer customer needs and formulate a product search.
- Product Recommendation: Calls product info tool (backed by RAG), recommends the right product based on RAG search, and explains why based on retrieved context.
- Comparison Offer: Proactively asks if Alex wants a competitor comparison.
- Comparison Delivery: If confirmed, provides a concise, factual, RAG-backed comparison.
- Recap Initiation: On "recap" request, asks Alex for notes or images.
- Recap Analysis: Extracts and summarizes discussion points, action items, and follow-up date from shared notes/images.
- Recap Delivery: Reads back the summary conversationally.
- Invite Creation: Offers to create a calendar invite; if confirmed, creates and reports result.
- Email Draft: Offers to draft a follow-up email; if confirmed, creates and reports result.
- Technical/Product Questions: Answers using RAG-powered product info retrieval.
- Graceful Exit: Friendly, succinct sign-off when finished.
At every step, the Catalyst agent interprets tool outputs to natural language, never reveals raw data, and never deviates from these workflows.
RAG (Retrieval-Augmented Generation) is an AI architecture that supercharges language models by giving them access to an external knowledge base. Instead of relying only on what the model “remembers,” RAG retrieves the most relevant documents (from PDFs, web pages, or databases) and injects this context into the model’s response, resulting in:
- Accurate, up-to-date answers beyond the model’s training cutoff.
- Grounded, reference-backed responses—ideal for sales, technical, or enterprise use cases.
- In Sales-Catalyst, your PDFs are converted into vector embeddings (using VertexAI and FAISS), enabling the agent to search, summarize, and reason over your real knowledge base on every question.
- Never commit
.envor secrets. - Use HTTPS/TLS in production.
- Minimize logging of PII.
- Add authentication and RBAC before production.
- Restrict tool/API access with IAM/API keys.
- Fork the repo, create a feature branch, and open a Pull Request.
- Keep changes modular and update documentation as needed.
- Run linters/tests before submitting.
- Open issues for feature requests or improvements.
MIT — see LICENSE.