{"slug": "closiq-discord-agent-an-ai-customer-support-monolith", "title": "Closiq Discord Agent: An AI Customer Support Monolith 🚀", "summary": "A developer built the Closiq Discord Agent, a full-stack modular monolith that transforms a Discord channel into an automated AI customer support and lead management system. The system captures conversations, retrieves context from a self-hosted Qdrant vector database indexing knowledge base documents in MinIO, and uses OpenRouter or OpenAI-compatible models to generate accurate responses via a Discord bot. The project, which stalled during initial development, was revived with a focus on stability and maintainability, incorporating a React dashboard, MongoDB for metadata, and a modular architecture with separate domains for messages, knowledge base, agent, and infrastructure.", "body_md": "*This is a submission for the GitHub Finish-Up-A-Thon Challenge*\n\nI built the ** Closiq Discord Agent**, a full-stack modular monolith engineered to transform a Discord channel into an automated, AI-driven customer support inbox and lead management system.\n\nWhen a customer messages your Discord support channel, the backend captures the conversation, handles data persistence, and fetches highly relevant context from a self-hosted Qdrant vector database (which indexes knowledge base documents stored in MinIO). It then leverages OpenRouter or OpenAI-compatible models to dynamically draft and deliver accurate, context-aware responses right back to the customer via a Discord bot.\n\n`http://localhost:5173`\n\n*(Tip: Insert a GIF or a couple of screenshots here showing off your React dashboard interface, your MongoDB message log view, or the Discord bot replying live in a channel!)*\n\n## Tech Stack At A Glance\n\nFrontend:React + ViteBackend:Node.js + Express + TypeScriptDatabases & Storage:MongoDB (Metadata), Qdrant (Vector Embeddings), and MinIO (Object Storage)Integrations:`discord.js`\n\n& OpenRouter / OpenAI SDK\n\nThis project started as an ambitious idea but quickly stalled out. Before dusting it off for this challenge, it was just a loose collection of database models, basic tools, and a primitive, unoptimized LangChain loop sitting in a graveyard of unfinished local folders. It completely lacked a front-end management layer, and the architecture was fragile.\n\nTo bring this project to life and cross the finish line, I focused heavily on stability, user experience, and structural boundaries:\n\n`messages`\n\n, `knowledgebase`\n\n, `agent`\n\n, `infrastructure`\n\n) to make the codebase highly maintainable.GitHub Copilot acted as an invaluable pair-programmer during this sprint, especially when it came to tying multiple disjointed storage microservices together.\n\n`docker-compose.yml`\n\n, getting MongoDB, Qdrant, and MinIO talking to each other effortlessly.`shared/errors`\n\nor `config/logging`\n\n) without muddying up the structural boundaries I put in place.", "url": "https://wpnews.pro/news/closiq-discord-agent-an-ai-customer-support-monolith", "canonical_source": "https://dev.to/er0r/closiq-discord-agent-an-ai-customer-support-monolith-51nn", "published_at": "2026-05-28 01:08:53+00:00", "updated_at": "2026-05-28 01:22:37.868892+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-agents", "ai-products", "ai-tools", "large-language-models"], "entities": ["Closiq", "Discord", "Qdrant", "MinIO", "MongoDB", "OpenRouter", "OpenAI", "LangChain"], "alternates": {"html": "https://wpnews.pro/news/closiq-discord-agent-an-ai-customer-support-monolith", "markdown": "https://wpnews.pro/news/closiq-discord-agent-an-ai-customer-support-monolith.md", "text": "https://wpnews.pro/news/closiq-discord-agent-an-ai-customer-support-monolith.txt", "jsonld": "https://wpnews.pro/news/closiq-discord-agent-an-ai-customer-support-monolith.jsonld"}}