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