Post-Install Configuration
After the installer finishes, the application still needs runtime configuration before it is production-ready. This page covers workspace setup, settings, mail, queues, storage, AI provider configuration, and the operational checks that should be completed before embedding the widget on a public site.
The application is shipped as a shared Laravel 12 installation with database queue support, workspace-aware settings, and OpenAI-only AI provider support.
Complete settings, verify SMTP, start queue workers, create departments, configure the primary widget, and then enable AI.
1) Workspace and Access Model
The system uses a platform/workspace split. Platform administrators can create workspaces and switch context between them. Workspace admins and agents are scoped to a single workspace and only see that tenant's settings, inbox, knowledge, leads, and reports.
| Role scope | Typical use | Primary screens |
|---|---|---|
| Platform Admin | Create workspaces, verify license, check updates, import demo data. | Platform > Workspaces, Platform Ops |
| Workspace Admin | Manage settings, widget builder, AI, automations, reports, leads, and integrations. | Dashboard, Settings, Chat menu |
| Agent | Work the inbox, update status, notes, tags, replies, tickets, and follow-ups. | Chat > Inbox, Tickets, Leads |
2) Settings You Should Complete
The Settings module remains the main runtime configuration area for each workspace. Most buyers can finish the first production setup from there without editing `.env` again after installation.
| Section | What to configure | Why it matters |
|---|---|---|
| General | App name, app URL, timezone, locale. | Used by dashboard copy, generated links, and workspace defaults. |
| Company | Business name, email, website, legal/public identity. | Appears in widget messages, notification emails, and help center branding. |
| Branding | Logo, brand colors, sidebar look, login assets. | Makes the admin and widget feel productized for buyers or end clients. |
| Channels | SMTP plus optional Twilio-related channel settings. | Required for password reset, alerts, and reply-by-email. |
| Widget | Primary widget defaults, greeting text, AI toggle, and front-end behavior. | Controls the default deployment path for the first chat widget. |
| OpenAI | API key, model defaults, persona, token and prompt settings. | Required for AI replies, summaries, training, retrieval, and suggestions. |
3) Queue, Storage, and Mail
This build relies on queues for background work. File processing, attachments, AI generation, knowledge ingestion, and training are all safer when the queue worker is running.
php artisan storage:link
php artisan migrate --force
php artisan optimize:clear
php artisan queue:work --queue=default --tries=1
- Run
php artisan storage:linkso chat attachments and uploaded knowledge files are publicly reachable when needed. - Keep
QUEUE_CONNECTION=databaseunless you intentionally switch to another supported Laravel queue backend. - Verify SMTP before enabling password reset, OTP by email, notification alerts, or reply-by-email.
- Use a real
APP_URLin production so embed code, emails, and help-center links resolve correctly.
4) OpenAI and AI Defaults
OpenAI is the only built-in AI provider in this release. The provider is still wrapped behind service classes so the codebase stays extensible, but the admin UI assumes OpenAI credentials and models.
- API key
- System instruction
- Model or persona defaults
- Max token budget
- Debug logging posture
- AI widget replies
- Conversation summaries
- Agent suggestions
- Embedding generation
- Knowledge retrieval prompts
5) Operational Baseline Before Go-Live
Before adding the widget to a real website, create a baseline support desk shape. This reduces the amount of "empty state" configuration buyers have to discover later.
- Create at least one department and one reply template.
- Review roles and permissions so agents only see what they need.
- Create the first widget and whitelist the real customer domain.
- Upload at least one FAQ or document source if AI is enabled.
- Create one webhook endpoint or API token if the buyer needs external automations.
- Import demo data from Platform Ops if you need screenshot-ready sample content.
Production sign-off check
| Check | Expected result |
|---|---|
| Queue worker | No stuck training or AI jobs. |
| SMTP | Password reset and notification emails deliver successfully. |
| Widget domain | Bootstrap succeeds from the intended public site only. |
| OpenAI | Replies and embeddings process without provider errors. |
| Storage | Chat attachments and uploaded documents are accessible. |