QRev
Open source AI-first sales platform that replaces Salesforce with autonomous agents handling prospecting, outreach, and lead management at scale.
QRev is an open source alternative to Salesforce built from the ground up with AI agents as the core operating layer. Rather than treating AI as a bolt-on feature, QRev architected its entire platform around the premise that sales work—prospect research, email sequencing, lead qualification, and CRM management—should be handled by autonomous agents with humans reviewing outcomes rather than performing the work themselves.
The platform is organized into three interconnected services: a React and TypeScript frontend for the sales interface, a Node.js app server backed by MongoDB for business logic and data persistence, and a Python AI server built with LangChain and ChromaDB for all AI reasoning and vector-based similarity operations. These three components communicate via REST APIs and WebSockets, creating a real-time pipeline from conversation with the Qai agent to executed outreach campaigns.
QRev’s primary interface is Qai, a superagent that coordinates specialized sub-agents internally while presenting a conversational interface to users. Sales reps describe what they want—upload a CSV of prospects, specify campaign parameters—and Qai handles prospect research, email generation tailored to each individual, and campaign scheduling automatically. The system integrates with Gmail via OAuth and Google APIs for actual email delivery, and supports HubSpot and Zoom integrations for broader sales stack connectivity.
Being AGPL-3.0 licensed and fully self-hosted, QRev is designed for organizations that want the economics of open source alongside the power of AI-native sales automation. The modular Poetry workspace in the AI layer allows teams to extend and customize the agent behavior without modifying core platform code.
What You Get
- Qai Superagent Interface - A conversational AI agent that accepts natural language instructions and CSV uploads, then autonomously coordinates prospect research, email generation, and campaign scheduling without requiring manual configuration of each step.
- Multi-Step Email Sequencing - An automated campaign engine that creates, schedules, and sends personalized multi-step email sequences to each prospect based on their profile, company context, and configured timing rules.
- AI-Powered Email Generation - A Python-based email generator using LangChain and LLMs that produces individualized outreach emails from structured prospect data including name, company, job title, and recent signals.
- Full CRM Module (QRM) - A complete CRM system with MongoDB-backed models for contacts, companies, opportunities, and resellers—covering the core data management needs of a sales organization without a separate CRM license.
- Gmail Integration via OAuth - Native integration with Gmail for sending and receiving emails through authenticated Google accounts, including auto-reply drafting for incoming customer responses reviewed before sending.
- ChromaDB Vector Search - A vector database layer for similarity-based prospect matching and AI context retrieval, enabling the agent to find relevant prospect information and context at query time.
- Prospect Verification Pipeline - A dedicated prospect verification subsystem that validates and enriches lead data before campaigns are sent, reducing bounce rates and improving deliverability.
- HubSpot and Zoom Integrations - Pre-built integration routes for HubSpot CRM data sync and Zoom meeting scheduling, enabling QRev to fit into existing sales stack workflows.
Common Use Cases
- Automated outbound campaigns from CSV uploads - A startup’s single SDR uploads a 500-row CSV of target prospects to Qai, which researches each lead, generates personalized emails for all 500, and schedules a 3-step sequence—all within a single conversation.
- Replacing Salesforce for early-stage companies - A Series A company with no existing CRM deploys QRev self-hosted, using the QRM module for contact and opportunity tracking while Qai handles all outbound prospecting, eliminating the need for both a CRM license and a separate email tool.
- Scaling sales operations without headcount - A B2B SaaS company maintains a 2-person sales team but runs outbound volume equivalent to a 10-person team by delegating research and email writing to Qai agents while reps focus on qualified responses and calls.
- Custom agent development for niche industries - A developer extends QRev’s modular Python agent architecture to add industry-specific research sources (trade publications, regulatory databases) without modifying core platform code, using the Poetry workspace structure.
- Auto-draft replies for inbound inquiries - A sales team uses QRev’s auto-reply feature to have Qai draft responses to incoming prospect emails, letting reps review and send with one click rather than writing from scratch.
- Integrated pipeline tracking - A sales manager uses the QRM CRM module alongside campaign analytics to track which email sequences are generating opportunities, correlating outbound activity directly to pipeline movement in a single platform.
Under The Hood
Architecture QRev follows a three-tier service architecture separating client presentation, business orchestration, and AI execution into distinct deployable components. The Node.js app server handles all business logic through a flat but clearly organized utility layer—route handlers delegate to api functions, which call utility modules containing the actual domain logic, with Mongoose models providing the data access layer. This produces readable code paths at the cost of more rigid coupling between layers. The Python AI server uses a Poetry workspace with multiple sub-packages (core, schema, agent, scraper, server, storage) that can be developed and tested independently, enabling the AI layer to evolve separately from the business layer. The two servers communicate over authenticated REST endpoints with a shared token, and the frontend connects to the business server via a React-Redux state layer with code splitting via Loadable components.
Tech Stack The frontend is built with React and TypeScript using Create React App with craco overrides, MUI for component library, React-Redux for state management, and Tailwind for styling. The Node.js business server uses Express with MongoDB via Mongoose, moment-timezone for scheduling, cron jobs for periodic tasks, WebSockets for real-time updates, and AWS SDK for S3 file storage. The Python AI server uses LangChain as the LLM orchestration layer, OpenAI and instructor for structured LLM output, ChromaDB for vector similarity search, Pydantic v2 for data validation, SQLAlchemy with SQLite for relational storage, and a custom scraper module for web data collection. Gmail integration uses the Google API Node.js client with OAuth2 flows.
Code Quality The AI server layer has comprehensive test coverage using pytest, with dedicated test suites for the LLM mock layer, scraper transformations, HTML parsing, server models, and campaign request/response validation. Tests include mock LLM clients that avoid live API calls during CI, and Pydantic v2 models provide strong schema enforcement at service boundaries. The Node.js layer has limited automated test coverage, relying on consistent patterns across utility functions—every function uses a custom functionWrapper that standardizes error handling and a child logger pattern with transaction IDs for distributed tracing. Code quality is uneven between tiers: the Python AI layer shows careful typing and test discipline, while the JavaScript business layer prioritizes pattern consistency over formal verification.
What Makes It Unique QRev’s most distinctive technical choice is the superagent architecture where a single Qai agent coordinates specialized sub-agents (email generator, scraper, prospect researcher) internally rather than exposing multiple named digital workers to users. This reduces cognitive overhead for sales teams while preserving modular extensibility in the AI layer. The email generator uses an abstract base class pattern with concrete LLM implementations, allowing teams to swap underlying models without changing campaign logic. The campaign pipeline combines asynchronous AI processing with callback-based status updates via WebSockets, so the frontend remains responsive during long-running prospect research operations. The ChromaDB integration enables context-aware email personalization that retrieves relevant snippets about a prospect at generation time rather than pre-computing all personalization offline.
Self-Hosting
QRev is released under the GNU Affero General Public License v3.0 (AGPL-3.0), one of the strongest copyleft licenses available. In practical terms, this means you can freely run, modify, and deploy QRev for any purpose—commercial or otherwise—but if you modify the software and provide it as a network service (which includes any web-accessible deployment), you must make the complete modified source code available to users under the same AGPL-3.0 terms. This is a meaningful obligation for companies that build proprietary sales tools on top of QRev and offer them to paying customers, but has no impact on organizations running QRev internally for their own sales teams.
Running QRev yourself requires deploying and operating three separate services simultaneously: the React frontend, the Node.js business server, and the Python AI server. Each has its own dependency management (npm and Poetry), environment configuration, and infrastructure requirements. The business server needs a MongoDB 5.x instance and optionally connects to AWS S3 for file storage. The AI server requires ChromaDB and optionally SQLite or another SQLAlchemy-compatible database. You will also need API credentials for OpenAI (for email generation and LLM reasoning), Google OAuth (for Gmail integration), and any other integrations you enable (HubSpot, Zoom). There are no Dockerfiles for the full stack in the current repository, so you manage orchestration yourself—this is a meaningful operational investment appropriate for teams with engineering capacity to maintain infrastructure.
As an early-stage open source project with a small core team and no formal cloud offering at time of review, QRev does not yet provide a managed SaaS alternative with guaranteed uptime, automated backups, or enterprise support SLAs. The tradeoff is full data ownership and zero per-seat licensing costs versus the operational responsibility of running a multi-service distributed application. Teams evaluating QRev should plan for engineering time to handle upgrades, monitor service health across the three tiers, and manage credentials for the several external API integrations the platform depends on.