What is an AI chatbot builder, and how is Aerostack different from Botpress or Dify? expand_more
An AI chatbot builder lets you create conversational bots without writing a messaging integration from scratch. Aerostack goes further: its bots are not chatbots in the traditional sense but AI agents that orchestrate your services. The platform normalizes inbound messages across WhatsApp, Telegram, Discord, and Slack so you write one bot definition and it runs on every channel, rendering buttons, carousels, media, and forms in the format each channel expects. Where Botpress and Dify treat tool integrations as add-ons, Aerostack bots are powered by the same engine as agentic workflows — auth gates, human-approval handoffs, MCP tool calls, and bot-to-bot delegation are built-in primitives, not plugins. The result is a bot that can verify identity, call your Stripe or Notion workspace mid-conversation, pause for a human decision, and hand off to a specialist bot, all from one visual definition.
Which channels can I build AI bots for with Aerostack? expand_more
Aerostack bots run on WhatsApp (via the WhatsApp Business API), Telegram, Discord, and Slack from a single bot definition. You do not maintain four separate codebases or conversation flows — the platform normalizes inbound messages from every channel into a unified format, then renders outbound responses in the rich format each channel supports: interactive buttons and carousels on WhatsApp, slash-command replies on Discord, threaded messages on Slack. Adding a new channel to an existing bot is a configuration step, not a rebuild. This matters in practice because your users are spread across channels, and a bot that only covers one forces you to choose between reach and maintainability.
How do Aerostack bots call external tools and MCP servers mid-conversation? expand_more
Every bot has access to the full MCP tool workspace you configure for your project. When a user asks a question that needs live data — an order status from your database, a ticket from Stripe, a record from Notion, or a result from your own API — the bot calls the relevant MCP tool mid-conversation, folds the structured result into the LLM context, and replies with a grounded answer rather than a hallucination. Because the workspace composes many MCP servers behind one authenticated URL, a single bot can read from your CRM, write to your database, and post to an internal Slack channel in one turn — without you wiring three separate integrations. The MCP tool call is a first-class node in the workflow, not a webhook bolt-on.
What is a human approval handoff, and when does a bot need one? expand_more
A human approval handoff pauses a running bot conversation and routes a decision to a designated person before any sensitive step executes — issuing a refund, sending a bulk message, writing to a system of record, or escalating a high-value support request. The bot holds its state on the edge and resumes exactly where it left off once the reviewer approves or rejects, with the decision logged. You approve from the Aerostack dashboard or from the OpenClaw mobile app, so a bot can run fully unattended and still never take an irreversible action without a human in the loop. This is the same approval primitive used across workflows and direct agent calls — every surface in the platform shares it.
What is a multi-agent bot team, and how does bot-to-bot delegation work? expand_more
A bot team groups several bots into a manager-and-specialists structure. The manager bot fronts the conversation and routes each query to the specialist best suited to handle it, and bot-to-bot delegation is how that handoff executes at runtime. A general customer-support bot, for example, can detect a billing query and delegate it to your billing bot, which has the right MCP tools, the right tone, and the right approval rules for financial actions, rather than trying to handle everything in one monolithic definition. Routing rules match on keyword, regex, intent, or always, with a priority order, optional conversation-history forwarding, and an optional custom prompt prefix per rule. Delegation runs through the delegate_to_bot workflow node, not a webhook redirect, so the handoff carries conversation context, supports up to 3 hops, and every event is recorded in a delegation log with caller, specialist, cost, latency, and depth. You build bots with narrow, well-tested responsibilities and compose them at scale instead of one bot that does everything and becomes impossible to maintain.
Can Aerostack bots send proactive messages on a schedule or via webhook? expand_more
Yes. A bot does not have to wait to be messaged first. You can schedule outbound messages on a cron schedule, at a one-shot future time, or after a delay, all timezone-aware and targeted to a specific user or channel per platform, with manual fire, pause, and resume controls. You can also trigger messages from your own backend: your system POSTs to the bot webhook with a shared X-Aerostack-Secret and the bot delivers the message to the right user on the right channel, which is useful for reminders, follow-ups, and alerts. The secret is symmetric and the endpoint is rate-limited. Every proactive trigger is recorded in a delivery log with its status of sent, failed, or skipped, a message preview, cost, and any error. Under the hood these are the schedule_message and send_proactive workflow nodes.
Does Aerostack support deterministic button routing and rich message types? expand_more
Yes. Aerostack bots support deterministic button routing, which means a button tap in a WhatsApp or Telegram message triggers a specific, predictable workflow branch rather than being re-interpreted by the LLM each time. This is essential for transactional flows — booking confirmations, yes/no approvals, menu navigation — where you need reliability, not probability. On top of button routing, bots can send carousels, images, forms, and media in whatever format the channel supports. The bot definition uses rendering hints that the platform translates per channel, so you do not hard-code WhatsApp-specific template syntax for every message type.
Where do Aerostack bots run, and what does the free tier include? expand_more
Bots run on Cloudflare Workers at the edge: no servers to provision, no containers to keep warm, and near-zero cold start so a message is processed in milliseconds from the location nearest to your user. Every bot inherits the same edge runtime as Aerostack workflows — persistent conversation state, per-thread memory, and image input are all available without extra infrastructure. The free tier includes 500K AI tokens per month, which covers a meaningful volume of daily conversations at no cost. If you bring your own model API key via BYOK model routing, the platform markup drops to zero, and you pay only your provider directly — useful once a bot is generating real traffic.
Does Aerostack support RAG, memory, and image / vision input for bots? expand_more
Yes — all three are built in, not add-ons. RAG (retrieval-augmented generation) is enabled per-bot with the enable_rag flag: the bot searches your configured knowledge base and grounds its answers in your actual documents instead of hallucinating. Memory works at two levels: per-thread memory keeps context within a single conversation, and cross-session memory (via the memory_store node) lets the bot recall facts about a user across separate conversations — useful for personalisation, support history, and preference tracking. Vision input (vision_analyze) lets the bot accept images from any channel that supports photo uploads — Telegram, WhatsApp, Discord — and pass them to a vision-capable model (GPT-4o, Gemini, or Workers AI) for analysis. Receipts, screenshots, product photos, and documents can all flow into the conversation as first-class input.
What are WhatsApp Flows, and how do Aerostack bots use them? expand_more
WhatsApp Flows are native interactive forms that render inside the WhatsApp chat — text inputs, email fields, date pickers, and dropdown selects — collected without the user ever leaving the app. Aerostack bots can trigger a Flow mid-conversation to gather structured data: booking details, support ticket information, onboarding answers, or any multi-field form. The submitted data is returned to the bot as a structured payload and can be passed directly into a workflow node, an MCP tool call, or a database write. WhatsApp Flows require Meta Business Verification and are toggled per-bot with the whatsapp_flows_enabled flag. They are unavailable on the free sandbox number — you need a registered WhatsApp Business API phone number.
When is building an AI bot the wrong choice? expand_more
When users do not actually need a conversational interface. A bot adds value when the interaction is genuinely open-ended — users ask questions in their own words, the path branches on context, or a human escalation is sometimes needed. If every user interaction follows the same two or three steps and the answers are always the same, a well-designed FAQ page or a deterministic form will serve users faster and more reliably than routing every query through an LLM. Similarly, if you only need to push notifications or send broadcast messages without expecting replies, a direct messaging integration without a bot definition is simpler. Build a bot when the conversation is the product; use something simpler when the conversation is just overhead.