Bot Builder
Create AI-powered chatbots without writing a single line of code. cachly handles sessions, semantic cache, and LLM cost optimization — you define the persona and knowledge.
How it works — 5 steps
📋 Pick a template
Start with Customer Support, Restaurant, E-Commerce, Personal AI, Onboarding Guide, or Internal Wiki — or build from scratch.
💬 Choose a channel
Web Widget, WhatsApp, Telegram, Slack, Discord, or REST API. Your bot speaks the same language as your users.
🎭 Define the persona
Name, role, tone, system instructions, and LLM model (gpt-4o-mini by default). cachly pre-fills sensible defaults per template.
📚 Add knowledge
Paste FAQ pairs, a URL, or raw text. cachly stores it in Semantic Cache (pgvector) so your bot can answer domain-specific questions instantly.
🚀 Deploy
Get a ready-to-run deploy package: .env, Dockerfile, docker-compose.yml. Works on Docker, Railway, or Vercel. cachly powers sessions and cache.
docker compose up -d
What cachly provides
Valkey Sessions
Every conversation is stored in your cachly Valkey instance. Sessions survive restarts and scale horizontally.
Semantic Cache
Repeated or similar questions are answered from cache — no LLM call, instant response. Saves cost, speeds up UX.
GDPR-compliant
All data stays in your cachly instance (Germany, Hetzner). No third-party data sharing. Full DPA available.
Embeddable Widget
One <script> tag embeds a floating chat button on any website. Configurable color, position, and bot name.
Self-hosted bot
You host the bot logic. cachly provides the backend. No vendor lock-in for your business logic.
Bring your own LLM key
Supply your OpenAI API key. cachly doesn't proxy LLM calls — you have full cost control.
Embed on any website
Add a floating chat widget to any website with a single <script> tag. No iframe. No React. No build step.
<script src="https://bot.cachly.dev/widget.js"></script>
<script src="https://bot.cachly.dev/widget.js" data-color="#7c3aed" data-position="left" data-name="My Bot" ></script>
Supported data-* attributes: data-color, data-name, data-position (right|left), data-bot-id
Environment variables
| Variable | Required | Description |
|---|---|---|
| CACHLY_URL | Yes | Redis/Valkey connection URL from your cachly instance dashboard |
| OPENAI_API_KEY | Recommended | Your OpenAI API key. Without it, the bot uses rule-based FAQ matching. |
| BOT_NAME | No | Display name of the bot (default: Support Agent) |
| BOT_PERSONA_ROLE | No | Role description used in system prompt |
| BOT_PERSONA_TONE | No | Tone: friendly, professional, warm, etc. |
| BOT_LLM_MODEL | No | OpenAI model (default: gpt-4o-mini) |
| BOT_SYSTEM_PROMPT | No | Full system prompt override |
| BOT_TEMPERATURE | No | Sampling temperature 0.0–1.0 (default: 0.3) |
| BOT_MAX_TOKENS | No | Max tokens per response (default: 512) |
| PORT | No | HTTP port (default: 3003) |
Deploy targets
Docker
Recommendeddocker compose up -d
Railway
1-clickrailway up
Vercel
Serverlessvercel deploy
Ready to build your bot?
Open the Bot Builder in your dashboard. Your first bot takes less than 5 minutes.
🤖 Open Bot Builder