Ctrl K
ComunidadGuías…

README.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
<p align="center">
  <a href="https://github.com/ChatbotXIO/ChatbotX" target="_blank" rel="noopener">
    <picture>
      <source media="(prefers-color-scheme: dark)" srcset=".github/assets/readme/chatbotx-logo-dark.svg">
      <source media="(prefers-color-scheme: light)" srcset=".github/assets/readme/chatbotx-logo-light.svg">
      <img alt="ChatbotX Logo" src=".github/assets/readme/chatbotx-logo-light.svg" width="280">
    </picture>
  </a>
</p>

<p align="center">
  <a href="https://opensource.org/license/mit">
    <img alt="License" src="https://img.shields.io/badge/license-MIT-blue?labelColor=111827">
  </a>
</p>

<h3 align="center"><strong><a href="https://chatbotx.io/lifetime/?ref=github">NEW: Get a Lifetime Deal on ChatbotX Cloud</a></strong></h3>
<h3 align="center"><strong><a href="https://github.com/ChatbotXIO/chatbotx-agent">NEW: get 500+ MCP and CLI Tools for Your AI Agents</a></strong></h3>

<p align="center">
  <strong>Agentic chat marketing platform built for OpenClaw, Hermes, and Claude</strong>
  <br>
  An alternative to ManyChat, Chatfuel, Wati, Respond, etc...
</p>

<p align="center">
  <a href="https://chatbotx.io/">Website</a>
  |
  <a href="https://chatbotx.canny.io/">Roadmap</a>
  |
  <a href="https://chatbotx.io/docs" rel="dofollow">Docs</a>
  |
  <a href="https://discord.chatbotx.io/">Discord</a>
</p>

<p align="center">
  <img alt="TypeScript" src="https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white">
  <img alt="Next.js" src="https://img.shields.io/badge/Next.js-111827?logo=nextdotjs&logoColor=white">
  <img alt="Turborepo" src="https://img.shields.io/badge/Turborepo-EF4444?logo=turborepo&logoColor=white">
  <img alt="pnpm" src="https://img.shields.io/badge/pnpm-F69220?logo=pnpm&logoColor=white">
  <img alt="PostgreSQL" src="https://img.shields.io/badge/PostgreSQL-4169E1?logo=postgresql&logoColor=white">
  <img alt="Redis" src="https://img.shields.io/badge/Redis-DC382D?logo=redis&logoColor=white">
  <img alt="Docker" src="https://img.shields.io/badge/Docker-2496ED?logo=docker&logoColor=white">
  <img alt="MCP" src="https://img.shields.io/badge/MCP-111827">
</p>

<p align="center">
  <img alt="WhatsApp" src=".github/assets/readme/whatsapp.svg" width="32">
  <img alt="Messenger" src=".github/assets/readme/messenger.svg" width="32">
  <img alt="Instagram" src=".github/assets/readme/instagram.svg" width="32">
  <img alt="Telegram" src=".github/assets/readme/telegram.svg" width="32">
  <img alt="Zalo" src=".github/assets/readme/zalo.svg" width="32">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset=".github/assets/readme/tiktok-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset=".github/assets/readme/tiktok-light.svg">
    <img alt="TikTok" src=".github/assets/readme/tiktok-light.svg" width="32">
  </picture>
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset=".github/assets/readme/threads-dark.svg">
    <source media="(prefers-color-scheme: light)" srcset=".github/assets/readme/threads-light.svg">
    <img alt="Threads" src=".github/assets/readme/threads-light.svg" width="32">
  </picture>
  <img alt="Email" src=".github/assets/readme/email.svg" width="32">
  <img alt="Website" src=".github/assets/readme/website.svg" width="32">
</p>

<p align="center">
  <a href="https://youtube.com/@chatbotxofficial" rel="dofollow"><strong>Watch the YouTube Tutorials»</strong></a>
  <br />
</p>

<p align="center">
  <a href="https://app.chatbotx.io">Register</a>
  ·
  <a href="https://chatbotx.io/docs/cli/introduction">CLI</a>
  ·
  <a href="https://chatbotx.io/docs/mcp/introduction">MCP</a>
  ·
  <a href="https://chatbotx.io/docs/api-reference/api-overview">Public API</a><br />
</p>

<p align="center">
  <a href="https://chatbotx.io/docs/integrations/n8n">N8N custom node</a>
  ·
  <a href="https://chatbotx.io/docs/integrations/make">Make.com integration</a>
</p>

<p align="center">
  <a href="https://youtu.be/lB2MRuWoiKI" target="_blank">
    <img alt="ChatbotX Omnichannel" src=".github/assets/readme/chatbotx-hero.png?v=1786238500653">
  </a>
</p>

## ✨ Features

- **Omnichannel:** WhatsApp, Facebook, Instagram, Threads, TikTok, Telegram, Zalo, Email, API, and Webchat
- **Visual Flow Builder:** Drag-and-drop chatbot builder with 15+ node types
- **AI Agents:** OpenAI, Claude, Gemini, DeepSeek, OpenRouter, NVIDIA NIM, and Local LLMs
- **Live Chat Inbox:** Real-time inbox with human takeover and conversation assignment
- **Contact CRM:** Manage contacts with tags, custom fields, and segmentation
- **Broadcasting:** Send targeted messages to specific contact segments
- **Sequences:** Automate drip campaigns with scheduled messages and auto-enrollment
- **Team Management:** Invite team members, assign roles, and manage permissions
- **Rich Messaging:** Media, files, buttons, quick replies, catalogs, locations, and carousel cards
- **Comment-to-DM:** Automatically message users who comment with specific keywords
- **Comment Automation:** Auto-reply, like, and hide comments on Messenger, Instagram, Threads, and TikTok posts (on Threads: public reply and hide only — it has no DM or like API)
- **A/B Testing:** Test and optimize different message flows
- **Triggers:** Execute actions based on events within your bot
- **Webhooks & HTTP:** Integrate external APIs directly into your flows
- **Growth Tools:** Generate conversation starter links for each platform
- **Analytics:** Track performance metrics, user engagement, and campaign results
- **APIs, CLI, and MCP:** Build advanced agent workflows with MCP-compatible clients

| ![AI Agents and Flows](.github/assets/readme/1-ai-agents-and-flows.webp) | ![Live Chat and Team](.github/assets/readme/2-live-chat-and-team.webp) |
| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| ![Broadcast and Sequence](.github/assets/readme/3-broadcast-and-sequence.webp) | ![Growth Tools](.github/assets/readme/4-growth-tools.webp) |
| ![Import Contacts](.github/assets/readme/5-import-contacts.webp) | ![OpenClaw and Hermes](.github/assets/readme/6-openclaw-hermes.webp) |

## Why ChatbotX?

| Feature | ManyChat | ChatbotX |
|---|---:|---:|
| Self-Hosted | ❌ | ✅ |
| White Label | ❌ | ✅ |
| CLI & MCP | ❌ | ✅ |
| Cost Growth | ✅ | ❌ |
| Public API | Limited | ✅ |
| Omnichannel | Limited | ✅ |
| AI Agents | Limited | ✅ |
| AI Credits | Add-on | BYOK |

## Tech Stack

- Node.js 24
- TypeScript 5
- pnpm 10 workspaces
- Turborepo
- Next.js 16 and React 19 for `apps/builder`
- uWebSockets.js gateway with Redis Streams for realtime messaging
- Drizzle ORM with PostgreSQL and pgvector
- Redis and BullMQ for queues and worker coordination
- RustFS / S3-compatible storage for uploaded assets
- Docker Compose for local infrastructure

## Quick Start

To have the project up and running, please follow the [Quick Start Guide](https://chatbotx.io/docs/quickstart).

**Self-hosting ChatbotX without developing on it?** Use **[chatbotx-docker-compose](https://github.com/ChatbotXIO/chatbotx-docker-compose)** — a standalone repo that runs the pre-built `ghcr.io` images with `docker compose up`, no local checkout of this monorepo required. The compose files in this repository (`docker-compose.yml`, `docker-compose.dev.yml`) provision local infrastructure only and expect the apps to run from source via `pnpm dev`.

## Project Structure

```text
.
|-- apps/
|   |-- builder/       # Next.js web app and product builder
|   |-- worker/        # background workers for chat, AI, triggers, webhooks, analytics, sequences
|   |-- realtime/      # realtime server
|   |-- cli/           # ChatbotX command line client
|   `-- mcp-server/    # MCP server backed by public APIs
|-- integrations/
|   |-- whatsapp/
|   |-- messenger/
|   |-- instagram/
|   |-- threads/
|   |-- telegram/
|   |-- zalo/
|   |-- tiktok/
|   |-- webchat/
|   |-- smtp/
|   |-- openai/
|   |-- google-sheets/
|   `-- ...           # email/CRM: mailchimp, klaviyo, active-campaign, drip, get-response, mailer-lite, moosend, sendgrid
|-- packages/
|   |-- database/
|   |-- ai/
|   |-- auth/
|   |-- business/
|   |-- automated-response/
|   |-- analytics/
|   |-- event-bus/
|   |-- mail/
|   |-- imports/
|   |-- flow-config/
|   |-- variables/
|   |-- sdk/
|   |-- scheduler/
|   |-- sequence-scheduler/
|   |-- ui/
|   `-- worker-config/
|-- docker-compose.yml
|-- pnpm-workspace.yaml
`-- turbo.json
```

## Development Commands

```bash
pnpm dev              # run turbo dev
pnpm build            # build all packages/apps through Turborepo
pnpm lint             # run Ultracite lint
pnpm fix              # run Ultracite fix
pnpm check:circular   # check circular dependencies
pnpm check:unused     # check unused files and dependencies
```

Useful package-level commands:

```bash
pnpm --filter builder dev
pnpm --filter worker dev
pnpm --filter realtime dev
pnpm --filter chatbotx dev:cli
pnpm --filter chatbotx-mcp dev:mcp
pnpm --filter @chatbotx.io/database db:studio
```

### Worker process modes

The worker image defaults to `worker standalone`: core queues, schedule, and
sequence workers share one Node process so common application code is loaded
once. Use `worker core` for local development without schedules, or `worker
<name>` to isolate a workload such as `heavy`.

`worker all` remains available for one process per worker. It caps each child
heap at `WORKER_MAX_OLD_SPACE_MB` only when it is set (there is no default);
size it so the host has enough memory for every child. The `standalone` process retains
the normal V8 heap limit.

### Database pool sizing

`DATABASE_POOL_MAX` defaults to `10` connections per process. In the worker
Docker image, consolidated `worker standalone` and `worker core` modes default
to `80` (`SHARD_POOL_MAX` to `40`); set the variables explicitly to override.
Keep `replicas × (DATABASE_POOL_MAX + shards × SHARD_POOL_MAX)` at or below
PostgreSQL `max_connections`. The consolidated process runs about 350
concurrent job slots (trigger 100, sequence 100, webhook 50, …) over these pools.

## Services

The default Docker Compose stack includes:

- PostgreSQL with pgvector on `5432`
- Redis on `6379`
- RedisInsight on `5540`
- RustFS object storage on `9000` and console on `9001`
- MailHog SMTP on `1025` and UI on `8025`
- Adminer on `8080`

## Support

If ChatbotX helps you avoid expensive chatbot automation tools, please give us a ⭐ on GitHub.
We're also working hard to bring open-source mobile apps to **iOS and Android** this year

## License

ChatbotX' Community Edition is released as open source under the [MIT License](https://github.com/ChatbotXIO/ChatbotX/blob/main/LICENSE) and enterprise features are released under [Commercial License](https://github.com/ChatbotXIO/ChatbotX/blob/main/apps/builder/src/enterprise/LICENSE)