new-term-radar
Daily radar for new AI terms: names of new models, products and repos, caught on X, Hugging Face, GitHub and sitemaps before keyword tools list them.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Multi-tenant AI chatbot SaaS platform - Ragbot by CushLabs.AI
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Most website visitors leave without asking the question that would have led to a sale. This is the front desk that asks it for you.
A service business website is a brochure. It answers the questions someone thought to look for, and nothing else.
Everything below is implementation detail. The business case is above.
Multi-tenant SaaS platform for service businesses to deploy a bilingual (EN/ES), on-brand AI assistant that answers questions, qualifies leads, captures booking intent, and escalates high-intent prospects to live agents.
Converso AI is a white-label chatbot platform built for service businesses that operate in bilingual markets. Each tenant gets a fully customizable AI assistant backed by their own knowledge base, with automatic language detection and seamless handoff to human agents when conversations require a personal touch.
The platform combines retrieval-augmented generation (RAG) with a visual playbook builder, giving non-technical business owners the tools to script complex conversational flows without writing code. An embeddable widget drops into any website with a single script tag.
The admin dashboard provides full control over knowledge ingestion, lead management, live chat queues, and billing — all tenant-isolated with role-based access control.
Service businesses in bilingual markets face a common problem: they lose leads outside business hours, can't staff bilingual receptionists around the clock, and generic chatbots give wrong answers because they don't know the business.
Existing solutions either require technical expertise to configure, lack real bilingual support (auto-translate is not the same as native language understanding), or charge enterprise prices that small businesses can't justify.
The platform needed to solve three things simultaneously:
Deterministic RAG architecture ensures every answer traces back to uploaded content. The system retrieves relevant knowledge chunks before the LLM call and injects them into the system prompt, so the model answers from facts rather than imagination. Source URLs are automatically attributed in responses.
Native bilingual design detects the user's language from their first message and maintains that language throughout the conversation. System prompts, starter questions, and playbook flows all support dual-language configuration.
Self-service admin dashboard provides a single interface for knowledge management (file uploads, website scraping, manual entry), conversation playbook design (visual flow builder), lead tracking with scoring, live chat handoff queues, and Stripe-powered billing.
Embeddable widget deploys with one script tag. Widget appearance, behavior, and starter questions are configured from the admin panel — no code changes needed on the host site.
businessId; knowledge, conversations, settings, and billing are fully isolated between tenantsrequirePermission() middleware/monitoring tunnel routenext/dynamic, presentational components converted to server components# Clone and install
git clone https://github.com/RCushmaniii/ai-chatbot-saas.git
cd ai-chatbot-saas
pnpm install
# Run database migrations
pnpm db:migrate
# Seed pricing plans
pnpm seed:plans
# Start development server
pnpm dev
Create a .env.local file at the project root. See .env.example for the full template.
| Variable | Description |
|---|---|
POSTGRES_URL | PostgreSQL connection string with pgvector |
OPENAI_API_KEY | OpenAI API key for GPT-4o and embeddings |
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY | Clerk publishable key |
CLERK_SECRET_KEY | Clerk secret key |
CLERK_WEBHOOK_SECRET | Clerk webhook signing secret |
STRIPE_SECRET_KEY | Stripe secret key |
STRIPE_WEBHOOK_SECRET | Stripe webhook signing secret |
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY | Stripe publishable key |
NEXT_PUBLIC_APP_URL | Public app URL (e.g., https://yourdomain.com) |
UPSTASH_REDIS_REST_URL | Upstash Redis REST URL (rate limiting) |
UPSTASH_REDIS_REST_TOKEN | Upstash Redis REST token |
SENTRY_DSN | Sentry error reporting DSN |
businessId scoping on all queriesPlaywright E2E and route tests cover:
pnpm test # Run all tests
ai-chatbot-saas/
├── app/
│ ├── (auth)/ # Clerk sign-in/sign-up routes
│ ├── (chat)/ # Chat UI, admin dashboard, chat API
│ │ ├── api/chat/ # Streaming chat endpoint
│ │ └── admin/ # Admin panel page
│ ├── api/
│ │ ├── admin/ # 15+ admin CRUD endpoints
│ │ ├── embed/ # Widget embed endpoints
│ │ ├── stripe/ # Checkout + portal
│ │ ├── webhooks/ # Stripe + WhatsApp webhook handlers
│ │ └── clerk/ # Clerk webhook handler
│ └── embed/chat/ # Embeddable widget page
├── components/ # React components
│ ├── admin-*/ # Admin panel modules
│ ├── elements/ # Chat message primitives
│ └── ui/ # shadcn/ui component library
├── lib/
│ ├── ai/ # Models, prompts, providers, tools
│ ├── channels/ # Multi-channel bot (WhatsApp via Chat SDK)
│ ├── db/ # Drizzle schema, queries, migrations
│ ├── i18n/ # Translations and language hooks
│ ├── ingestion/ # CSV and DOCX processors
│ ├── playbook/ # Playbook execution engine
│ ├── env.ts # Runtime env validation (Zod)
│ └── rate-limit.ts # Upstash Redis rate limiter
├── sentry.*.config.ts # Sentry client/server/edge configs
├── instrumentation.ts # OpenTelemetry + Sentry + env validation
├── proxy.ts # Security headers + Clerk auth (Next.js 16)
├── migrations/ # Custom SQL migrations
├── scripts/ # Seed, ingest, and maintenance scripts
├── tests/ # Playwright E2E + route tests
└── docs/ # Architecture and planning docs
The app deploys to Vercel. The build command runs migrations before building:
pnpm build:migrate
Ensure all environment variables are configured in the Vercel dashboard. The Stripe and Clerk webhooks must point to your production URL.
This platform demonstrates end-to-end SaaS product architecture — from multi-tenant data isolation and role-based access control to Stripe billing integration and embeddable widget distribution.
| Capability | Implementation |
|---|---|
| Knowledge ingestion | Website scraping, PDF/DOCX/CSV upload, manual entry |
| Vector search | pgvector with HNSW indexes, cosine similarity |
| Conversation flows | Visual playbook builder with 7 node types |
| Lead management | Contact scoring, activity tracking, CSV import/export |
| Live chat | Agent queue with priority routing and AI summaries |
| Billing | Stripe subscriptions with usage-based metering |
| Widget | One-tag embed with configurable appearance |
| Multi-channel | WhatsApp support via Vercel Chat SDK |
| Monitoring | Sentry error tracking, Vercel Analytics, Speed Insights |
| Rate limiting | Upstash Redis distributed limiter |
Robert Cushman Business Solution Architect & Full-Stack Developer Guadalajara, Mexico
[email protected] GitHub | LinkedIn | Portfolio
(c) 2025 Robert Cushman. All rights reserved. See LICENSE.
Last Updated: 2026-04-05