Open source, all the way down.
Embedabot isn't an open-core teaser. The full platform, from agents and channels to CRM, campaigns, compliance and white-label, is in the repository, and you can run it on your own server today.
$git clone https://github.com/embedabot/embedabot$cd embedabot$npm install && npm run setupWhy open source
Trust you can verify.
An AI employee sees your customers' messages. You should be able to see exactly what it does with them.
Verify the privacy claims yourself
“Private AI” shouldn't be a slogan. Read exactly where your data goes and which model sees it, line by line.
Own your data and your stack
Your contacts and conversations sit in your database. Export, back up or migrate whenever you want.
No vendor lock-in
Switch models or carriers with a settings change. Fork the project if you ever need to.
Extend it
Add a channel, a tool or an industry pack, and share it back so everyone benefits.
The license, in plain language
Embedabot is released under the GNU Affero General Public License v3.0. It's a strong copyleft license designed for software that runs on a server, and it keeps improvements open for everyone.
This summary isn't legal advice. The license text governs.
You can
- Use it commercially
- Self-host it for your business or your clients
- Modify it however you need
- Charge for services built on it
If you modify it and offer it over a network
- Make your modified source code available to the people using it
- Keep it under the same license
- Preserve copyright and license notices
Requirements
Runs on a modest server.
A small Linux VM is enough to get started. Scale up the database and worker as your volume grows.
- Node.js 20+
- Runs the web app and the background worker.
- PostgreSQL 16
- Stores contacts, conversations, knowledge and settings.
- Redis
- Powers the message queue, campaigns and rate limits.
- A language model
- The Claude Code CLI on the server, an Anthropic API key, or any OpenAI-compatible endpoint (hosted or self-hosted).
- A public HTTPS URL
- So your carrier and website visitors can reach your installation.
- Optional: Twilio or Telnyx
- For SMS, MMS and missed-call text-back.
- Optional: an IMAP/SMTP mailbox
- For the email channel.
Quick start
From clone to first conversation.
The README in the repository has the full guide, including production tips.
- 1
Clone and install
Grab the source and install dependencies.
Terminal$git clone https://github.com/embedabot/embedabot$cd embedabot$npm install - 2
Configure your environment
Copy the example file and fill in your database, Redis and model settings. Generate a random secret for APP_SECRET.
Terminal$cp .env.example .env# DATABASE_URL, REDIS_URL, APP_SECRET# plus ANTHROPIC_API_KEY or OPENAI_BASE_URL / OPENAI_API_KEY - 3
Run setup
Prepares the database so the app is ready to use.
Terminal$npm run setup - 4
Build and start
Start the web app, and run the background worker alongside it to send queued messages and campaigns. See the README for process-manager examples.
Terminal$npm run build$npm start - 5
Create your workspace
Open your installation in a browser, sign up, build your first AI employee and connect a channel.
Contributing
Build it with us.
Whether you fix a typo or add a whole channel, contributions make the platform better for everyone who runs it.
Report bugs and request features
Open an issue with steps to reproduce or the problem you're trying to solve.
Send pull requests
Fixes, channels, AI tools and docs improvements are all welcome. Small, focused PRs are easiest to review.
Build solution packs
Know an industry well? Contribute a persona, knowledge prompts, pipeline stages and campaign templates.
Report security issues privately
Please email hello@embedabot.com instead of opening a public issue, so we can fix the problem before it's disclosed.
Run your own AI workforce
Clone it, connect your model and your carrier, and your first AI employee is answering in minutes.