CallMineAI Docs
Home
  • Introduction
  • Architecture
  • Installation
  • Web installer
  • Configuration
  • Deployment
  • Customer panel
  • Admin panel
  • Agents & Voices
  • Campaigns & Calls
  • Billing & Credits
  • Telephony (Twilio)
  • Voice & AI
  • SIP trunks
  • Messaging
  • REST API
Home
  • Introduction
  • Architecture
  • Installation
  • Web installer
  • Configuration
  • Deployment
  • Customer panel
  • Admin panel
  • Agents & Voices
  • Campaigns & Calls
  • Billing & Credits
  • Telephony (Twilio)
  • Voice & AI
  • SIP trunks
  • Messaging
  • REST API
  • Getting started

    • Introduction
    • Architecture
    • Installation
    • Web installer
    • Configuration
    • Deployment
  • Using CallMineAI

    • Customer Guide
    • Agents & Voices
    • Campaigns & Calls
    • Billing & Credits
  • Administration

    • Admin Guide
    • Roles & permissions
    • Localization
  • Integrations

    • Telephony (Twilio)
    • Voice & AI
    • SIP trunks
    • Messaging
    • REST API
  • Help

    • FAQ & troubleshooting

Installation

This guide gets CallMineAI running from source. For the full environment reference see Configuration; for production hosting see Deployment.

Prefer a browser-based setup?

Once the files are on your server you can run the guided Web installer at /install instead of the CLI steps below — it checks requirements, tests the database, migrates, seeds, and creates your admin account (with an optional demo-data import).

Requirements

RequirementMinimum
PHP8.2+ (8.3 recommended) with ext-intl, ext-pdo, ext-mbstring, ext-openssl, ext-curl
DatabaseMySQL 8 / MariaDB 10.4+ (SQLite supported for local dev)
Node.js18+ (for building the frontend)
Composer2.x
Web serverNginx or Apache with HTTPS (required for Twilio webhooks)
Queue workerA supervised php artisan queue:work process
CronOne entry running the Laravel scheduler every minute
RedisOptional (recommended for queue/cache at scale)

HTTPS in production

Twilio only calls publicly reachable HTTPS webhook URLs. Local development can place calls only through a tunnel (e.g. ngrok) pointed at your machine.

Install steps

# 1. Dependencies
composer install --optimize-autoloader
npm install

# 2. Environment
cp .env.example .env
php artisan key:generate

# 3. Configure .env (see the Configuration page) — at minimum:
#    APP_NAME, APP_URL, DB_DATABASE, DB_USERNAME, DB_PASSWORD

# 4. Database — create a database named `callmineai`, then migrate + seed
#    (seeds ESSENTIAL data only: RBAC, plans, currencies, locales, templates)
php artisan migrate --seed

#    Optional — load a realistic sample tenant across every module:
#    php artisan db:seed --class="Database\Seeders\DemoSeeder"

# 5. Build the frontend
npm run build

For local development you can run the app and Vite dev server instead of building:

php artisan serve      # http://localhost:8000
npm run dev            # Vite HMR

Queue worker & scheduler (required for calling)

The dialer runs on the queue + scheduler — without them, campaigns will queue calls but nothing will dial.

Add the Laravel scheduler to cron:

* * * * * cd /path/to/callmineai && php artisan schedule:run >> /dev/null 2>&1

Run a supervised queue worker (see Deployment for the full Supervisor config):

php artisan queue:work --tries=1 --timeout=120

The scheduler runs calling:dispatch every minute; it claims due calls (bounded by your ElevenLabs key-pool capacity) and dispatches them onto the queue. See Campaigns & Calls for the full pipeline.

Default accounts

The essential seed (php artisan db:seed) creates the super-admin account. The demo customer is created only when you import demo data (DemoSeeder, or the installer's "Import demo data" option). Change these before production (override with ADMIN_SEED_* / CLIENT_SEED_* in .env before seeding).

PanelSign in atEmailPasswordCreated by
Super admin/admin/loginadmin@callmineai.com123456essential seed
Customer/login (workspace at /app)customer@callmineai.com123456demo data only

When present, the customer demo account is seeded KYC-verified so you can buy numbers and launch campaigns immediately.

Tips

If you use the Web installer, you create your own super-admin in the wizard instead of relying on the default above.

Post-install configuration

Sign in to the admin panel and connect the integrations:

  1. ElevenLabs → /admin/elevenlabs-keys → add an API key, run Health check, then Sync voices. See Voice & AI.
  2. Twilio → set TWILIO_ACCOUNT_SID + TWILIO_AUTH_TOKEN (+ a From number) in .env. See Telephony.
  3. OpenAI → set OPENAI_API_KEY for the agent conversation + call analysis.
  4. Plans & Credit Packages → review the seeded plans and packs. See Billing & Credits.
  5. Payment gateways → enable Stripe / PayPal / Paddle if you want paid subscriptions.

Demo mode

Set APP_DEMO_MODE=true to disable all create/update/delete actions in both panels — ideal for a public live-preview deployment.

Next

Head to Configuration for the complete .env reference, then Deployment to go live.

Last Updated: 7/9/26, 8:33 AM
Prev
Architecture
Next
Web installer