{"slug": "inbxer-open-source-customer-support-platform-for-b2b-saas", "title": "Inbxer – Open-source customer support platform for B2B SaaS", "summary": "Inbxer, an open-source customer support platform for B2B SaaS, launched under the MIT license, integrating email, Slack, and in-app chat into a unified, account-aware queue. The platform uses six focused AI agents to draft, summarize, and organize support work, with human review before any customer-facing action. Inbxer is self-hostable via Docker Compose, with no per-seat limit, and aims to give teams full control over data and AI assistance.", "body_md": "Bring email, Slack, and in-app chat into one account-aware queue.\n\nLet focused AI agents draft, summarize, and organize the work—while your team stays in control.\n\n**AI drafts. Humans decide. Self-hosted under MIT.**\n\n[Why Inbxer](#why-inbxer) ·\n[AI agents](#ai-that-assists-not-autopilots) ·\n[Features](#features) ·\n[Quick start](#quick-start) ·\n[Architecture](#architecture) ·\n[Contributing](#contributing)\n\nMost helpdesks are built around anonymous tickets. B2B SaaS support is different: customers are named accounts with tiers, history, owners, and promises your team needs to keep.\n\nInbxer keeps the conversation and the customer context together. Messages from every connected channel land in one realtime workspace where support can triage, collaborate, automate repeat work, and stay close to engineering.\n\n**Account-aware by design**— see the company, tier, owner, history, labels, and open work beside each conversation.** One queue across channels**— handle email, Slack, and your embedded chat widget without switching tools.** AI with human control**— receive useful drafts and suggestions; nothing reaches a customer until a person decides.** Open source and portable**— inspect the entire product, run it on your infrastructure, and keep control of your data.\n\nInbxer uses six focused AI agents instead of one generic chatbot. Each agent has a narrow job and produces work your team can review.\n\n| Agent | What it does |\n|---|---|\nSupport Reply |\nDrafts a response grounded in the current conversation. |\nThread Summary |\nCondenses long threads so an agent can catch up quickly. |\nThread Urgency |\nDetects language that may need faster human attention. |\nThread Labeling |\nSuggests or applies useful labels from conversation context. |\nThread Title |\nTurns vague subjects into clear, scannable thread titles. |\nTone Rules |\nHelps keep drafts aligned with your team’s voice and guidelines. |\n\nAI activity is visible and reviewable. Teams can configure knowledge, tone, suggested responses, and automation preferences without giving up control of the final reply.\n\nAI drafts. Humans decide.Inbxer is designed to reduce repetitive work, not remove the person responsible for the customer relationship.\n\n- Unified queues for your threads, unassigned work, labels, tiers, channels, and saved views.\n- Assignment, priorities, internal notes, snippets, tasks, linking, merging, and thread locking.\n- Realtime conversation and assignment updates through Laravel Reverb.\n- Customer and company context available directly beside the conversation.\n\n**Email**— inbound webhook ingestion, threaded replies, and attachments.** Slack**— two-way channel sync with reactions and message permalinks.** Chat widget**— a lightweight, brandable JavaScript embed with live customization.** Extensible adapters**— add more channels without changing the conversation model.\n\n- Rule-based workflows with explicit triggers, conditions, actions, and run history.\n- Account tiers and business-hours-aware SLA targets with breach detection.\n- Auto-responses, away-mode synchronization, labels, snippets, and custom fields.\n- CSAT surveys and reporting for queue volume, response time, and team activity.\n- Roles, invitations, passkeys, auditability, API keys, and a token-authenticated REST API.\n\n- MIT licensed with no per-seat limit in the self-hosted edition.\n- Local or S3-compatible attachment storage.\n- Docker Compose deployment with MySQL, Redis, queues, scheduling, and realtime updates.\n- A public codebase you can inspect, extend, and operate on your own terms.\n\nThe recommended way to run Inbxer is with [Docker](https://docs.docker.com/get-docker/) and the Compose plugin.\n\n```\ngit clone https://github.com/inbxer/inbxer.git\ncd inbxer\n\ncp .env.docker.example .env\ndocker compose up -d --build\ndocker compose logs -f app\n```\n\nOpen ** http://localhost:8080**.\n\nThe first boot generates the application key when needed, runs database migrations, links storage, and caches the application configuration. The stack includes the app, MySQL, Redis, the queue worker, scheduler, and Laravel Reverb.\n\n**Useful Docker commands**\n\n```\n# View all service logs\ndocker compose logs -f\n\n# Run an Artisan command\ndocker compose exec app php artisan tinker\n\n# Run the test suite\ndocker compose exec app php artisan test\n\n# Stop the stack while preserving data\ndocker compose down\n\n# Pull changes and rebuild\ngit pull\ndocker compose up -d --build\n```\n\nInbxer does not expose public registration by default. Create the first account with a seeder or through\n\n`php artisan tinker`\n\n, then invite the rest of your team from the workspace settings.\n\n- PHP 8.3+\n- Composer\n- Node.js 20+\n- SQLite, MySQL, or PostgreSQL\n\n```\ngit clone https://github.com/inbxer/inbxer.git\ncd inbxer\n\ncomposer install\nnpm install\n\ncp .env.example .env\nphp artisan key:generate\ntouch database/database.sqlite\nphp artisan migrate\nphp artisan storage:link\n\ncomposer run dev\n```\n\nThe development command starts the web server, queue listener, log viewer, and Vite together.\n\nCopy `.env.example`\n\nfor local development or `.env.docker.example`\n\nfor Docker. Most installations only need to configure these areas:\n\n| Area | What to set |\n|---|---|\n| Application | Your public `APP_URL` ; keep `APP_DEBUG=false` in production. |\n| Data | Database credentials and Redis for queues, cache, and sessions. |\n| Mail delivery plus an inbound domain and webhook secret. | |\n| Realtime | `REVERB_*` credentials and the public WebSocket host. |\n| Storage | Local storage for one server, or S3-compatible storage when scaling. |\n| Integrations | Add Slack and AI-provider credentials only for the features you enable. |\n\nAll available options are documented in the environment templates. Never commit real credentials.\n\n| Layer | Technology |\n|---|---|\n| Backend | PHP 8.3 · Laravel 13 · Fortify · Reverb |\n| Frontend | React 19 · TypeScript · Inertia.js · Tailwind CSS v4 · shadcn/ui |\n| Data | MySQL or another Laravel-supported database · Redis |\n| Files | Spatie Media Library · local or S3-compatible storage |\n| AI | Laravel AI agents with configurable provider credentials |\n| Testing | Pest 4 · PHPUnit |\n\nBusiness logic is organized by domain under `app/Domain`\n\n, while the focused AI agents live under `app/Ai/Agents`\n\n. Inertia connects the Laravel backend to the React interface without requiring a duplicated application API. Laravel Wayfinder generates typed frontend route helpers directly from backend routes.\n\n```\napp/\n├── Ai/Agents/          # Focused AI agents\n├── Domain/             # Product domains and business logic\nresources/js/\n├── components/         # Shared interface components\n├── pages/              # Inertia pages\n└── routes/             # Generated typed routes\n```\n\nRun the same checks before opening a pull request:\n\n```\n./vendor/bin/pint --test\nnpm run lint:check\nnpm run format:check\nnpm run types:check\nphp artisan test\n```\n\n- Put the application behind a TLS-terminating reverse proxy or load balancer.\n- Proxy Laravel Reverb correctly so browser clients connect over secure WebSockets.\n- Use persistent database and attachment backups.\n- Use S3-compatible storage when running more than one application instance.\n- Keep the queue worker and scheduler running; SLA and automation behavior depends on them.\n- Rotate application, channel, API, and AI-provider credentials through your secret manager.\n\nContributions are welcome—from bug reports and documentation improvements to new channel adapters and product features. Read [CONTRIBUTING.md](/inbxer/inbxer/blob/main/CONTRIBUTING.md) before opening a pull request.\n\nPlease report security vulnerabilities privately using the process in [SECURITY.md](/inbxer/inbxer/blob/main/SECURITY.md), not through a public issue.\n\nInbxer is open source under the [MIT License](/inbxer/inbxer/blob/main/LICENSE). Use it, modify it, self-host it, and build on top of it.", "url": "https://wpnews.pro/news/inbxer-open-source-customer-support-platform-for-b2b-saas", "canonical_source": "https://github.com/inbxer/inbxer", "published_at": "2026-09-04 11:24:42+00:00", "updated_at": "2026-09-04 11:53:48.182030+00:00", "lang": "en", "topics": ["ai-agents", "ai-products"], "entities": ["Inbxer", "Laravel Reverb", "Docker"], "alternates": {"html": "https://wpnews.pro/news/inbxer-open-source-customer-support-platform-for-b2b-saas", "markdown": "https://wpnews.pro/news/inbxer-open-source-customer-support-platform-for-b2b-saas.md", "text": "https://wpnews.pro/news/inbxer-open-source-customer-support-platform-for-b2b-saas.txt", "jsonld": "https://wpnews.pro/news/inbxer-open-source-customer-support-platform-for-b2b-saas.jsonld"}}