Azzor summons isolated, full-stack environments for every ticket. Ten agents. Ten realms. Zero conflicts. Each with its own branch, database, SSL, and live URL — orchestrated through Laravel Forge or Kubernetes.
From ticket to living realm in under two minutes. Azzor auto-detects your stack, provisions infrastructure, and hands your agent the keys.
Link a GitHub repository and configure your orchestrator — Laravel Forge for real servers or Kubernetes for containers. Azzor auto-detects Laravel, Rails, and Next.js stacks, or define a custom .azzor.yml for anything else.
services:
app: { type: php, version: "8.3" }
database: { type: mysql }
cache: { type: redis }
Create environments from the dashboard, via the REST API, or through webhooks. Each realm gets its own branch, database, Cloudflare DNS record, SSL certificate, and live URL. Connect GitHub, Jira, or Linear for automatic provisioning on PR or ticket creation.
POST /api/v1/environments
{ "ticket_id": "PROJ-42" }
✔ https://proj-42.preview.app.com
Dispatch agent jobs into any environment — run tests, lint code, execute migrations, or launch a full AI coding session. Track job status, batch results, and durations from the dashboard. When the PR merges, the realm dissolves.
POST /api/v1/agent-jobs
{ "command": "claude 'Fix PROJ-42'" }
✔ Agent working autonomously...
Azzor bends to your will — whether you command one agent or ten.
Assign five tickets to five AI agents. Each receives an isolated realm — its own branch, database, and runtime. No file conflicts. No shared state. Pure parallel throughput. This is what Azzor was built for.
Every ticket manifests a live portal with its own URL. Share with clients, PMs, and QA. No more "pull the branch and run it locally" — just send the link.
Environments that materialize when a PR opens and dissolve on merge. Full-stack — database, cache, workers, SSL. Connected via GitHub webhooks with automatic status updates on your pull requests.
QA receives their own realm for each ticket. Test against a freshly seeded database. Run automated test suites via agent jobs. No shared state, no "it works on my machine" surprises.
Built for Laravel guilds. Extensible to any stack. Multi-tenant from day one.
Laravel Forge for instant provisioning with real servers, SSL, and domains. Kubernetes for containerized workloads with namespace isolation, resource quotas, and auto-scaling. Swap orchestrators per organization.
Automatic DNS record creation and cleanup via Cloudflare API. Each environment gets a unique subdomain. Records are destroyed when the environment is torn down. Zero manual DNS management.
Project-level and user-level secrets encrypted at rest with AES-256-GCM. Automatically injected into every environment at provisioning time. Never exposed in logs or API responses.
Dispatch commands into any environment via SSH — linting, tests, migrations, or full AI agent sessions. Track individual jobs and batches with status, duration, output, and exit codes from the dashboard.
Add SSH public keys once per team member. They're automatically installed on every new environment. SSH in instantly — no manual server configuration needed.
Step-by-step provisioning logs with timestamps. Track every phase — site creation, git clone, SSL, deployment, SSH key installation. Automatic health checks with azzor:check-health.
First-class multi-tenancy. Create multiple organizations, invite team members via email, switch between orgs seamlessly. Per-org orchestrator configuration, secrets, and usage limits.
TTL enforcement destroys stale environments. Idle scaling powers down unused realms. Auto-destroy on PR merge. Configurable policies — you set the rules, Azzor enforces them.
Full OpenAPI-documented REST API with Sanctum token auth and plan-based rate limiting. Dark wizard dashboard with light/dark themes, contextual help, and real-time environment status.
Every action is logged — environment creates, destroys, secret changes, team updates. Filterable audit trail per organization with configurable retention. API access for compliance needs.
Notify your own systems when environments change state. Configurable webhook endpoints per project with delivery logging, retry logic, and HMAC signature verification.
Azzor speaks the languages of your existing tools. Webhooks in, webhooks out.
Inbound webhooks for PR events — auto-create environments on PR open, destroy on merge. GitHub adapter for ticket context. SSH deploy keys for private repos.
Webhook integration for Jira ticket events. Map issue keys to environments. Automatic provisioning when tickets move to "In Progress" or any configured status.
Linear webhook adapter for issue tracking. Create environments from Linear issue identifiers. Status sync for modern engineering teams.
Automatic DNS management via Cloudflare API. Subdomain creation on provision, cleanup on destroy. SSL certificates via Forge or Let's Encrypt. Zero-touch DNS.
Full orchestration via Forge API — site creation, Nginx configuration, SSL, deployment scripts, daemon management. Real servers with real performance. Production-grade infrastructure.
Namespace-per-environment isolation with resource quotas. Deployment, StatefulSet, Service, Ingress, and NetworkPolicy management. Scale to zero when idle. Bring your own cluster.
Azzor scans your repository and auto-configures the right services. Or define a custom stack with .azzor.yml.
PHP 8.x, MySQL, Redis, Composer, Artisan migrations & seeding. Detected by artisan + composer.json.
Ruby, PostgreSQL, Redis, Bundler, Rails migrations & asset precompilation. Detected by Gemfile + config/routes.rb.
Node.js, npm/yarn, automatic build & start commands. Detected by next.config.js or next.config.ts.
Azzor is licensed under the Business Source License (BSL). Self-host it for your team at no cost. Need managed hosting, priority support, and enterprise features? Azzor Cloud is coming soon.
BSL grants full usage rights for internal and non-competing purposes. The source converts to a permissive license after the change date. Read the full license →
Join the waitlist for Azzor Cloud, or self-host the source from GitHub today.