Inspiration
Maybe you’ve heard this before: a company sinks a lot of time and money into their CRM elaborate system for storing customer data. A consulting shop promises it’ll be easy. However, the system still needs dedicated training and administrators who come to resent it with a passion. The data processing is rife with human error. Extracting any meaningful insight requires the patience of a SQL saint. Your reps won’t log in. All the while, shadow spreadsheets and alternative dashboards cannot hide the fact that this system of record is universally despised.
This is the current state of CRM in a nutshell.
Enterprise sales today are less about hunting new clients and more about cultivating existing relationships. According to HubSpot, approximately 72% of new revenue originates from current customers.
That is why I am building aCRM
What it does
aCRM is a sophisticated multi-agent CRM system integrated with Elasticsearch and Elastic Agent Builder. Manages customers, sales, support, and marketing through specialized agents leveraging semantic search and RAG capabilities on CRM data stored in Elasticsearch.
This platform uses OpenAI SDK for routing between agents, verifying the user's intent, and delegating the request to the appropriate agent built with Elastic Agent Builder.
aCRM has 3 specialized agents:
- Sales Agent: Lead qualification, opportunity analysis, customer scoring
- Support Agent: Ticket management, knowledge base search, issue resolution
- Marketing Agent: Campaign analysis, customer segmentation, performance metrics
The use cases for this platform are:
- Sales - Lead Qualification
- Support - Ticket Resolution
- Marketing - Campaign Analysis
- Customer 360 View
How we built it
The platform uses Elastic Cloud, specifically with a serverless project, and also utilizes Elastic Agent Builder via API for agent creation and management.
Additionally, the API is used for creating indexes and inserting test data for app use.
Finally, OpenAI is also used as a routing system; that is, a minimalist agent that receives the user's request and routes it to the appropriate Elastic agent (support, sales, or marketing).
Challenges we ran into
First, we understood and validated the need for an agentic CRM, identifying the pain points of users who spend more time cross-referencing data than actually taking action.
Next, we built a compact and self-contained platform, meaning that the creation of agents and indexes in Elastic is handled by the platform itself, rather than manually, to prevent errors and ensure the proper execution of aCRM.
Accomplishments that we're proud of
Create an extensible platform (more specialized agents can be integrated with little code) that leverages Elastic data as a centralized search engine (a kind of Data Warehouse) and where users don't need to switch between agents, but have a central point of contact (the routing agent).
What we learned
I already have experience with AI and Elastic, but this is the first time I've used both in the same project, so my biggest learning experience was creating and managing agents with Elastic Agent Builder, which is essential for simplifying searches without having to do everything from scratch (including vector databases), saving a lot of time.
What's next for aCRM
Build upon the platform's core, adding more indices and agents for other aspects of customer management.
Additionally, build a data ingestion engine to aggregate information from various sources into the indices on Elastic.
Built With
- elastic
- openai


Log in or sign up for Devpost to join the conversation.