Built for Agentic Development

Your Agents Await Conjure Their Realms

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 the Grimoire
The Wizard's Terminal
azzor create PROJ-42

✨ Conjuring environment for PROJ-42...
  → Auto-detected stack: Laravel + MySQL + Redis
  → Provisioning via Forge: proj-42.preview.azzor.com
  → Creating Cloudflare DNS record ✔
  → SSL certificate obtained ✔
  → Running build steps: composer, migrate, seed ✔
  → Installing SSH keys for 3 team members ✔

✔ Realm conjured! (1m 47s)
  Portal: https://proj-42.preview.azzor.com
  SSH: azzor shell PROJ-42

azzor create PROJ-43
azzor create PROJ-44
  ✨ Three realms manifest. Three agents work. The tower holds.

Three Incantations

From ticket to living realm in under two minutes. Azzor auto-detects your stack, provisions infrastructure, and hands your agent the keys.

I

Connect Your Project

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 }
II

Conjure Environments

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
III

Unleash Your Agents

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...
✧ ✦ ✧

What You Can Conjure

Azzor bends to your will — whether you command one agent or ten.

🧙‍♂️

Parallel Agentic Development

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.

🔮

Stakeholder Preview Portals

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.

🏛️

PR Preview Environments

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.

⚗️

Isolated QA & Testing

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.

Your Arcane Arsenal

Built for Laravel guilds. Extensible to any stack. Multi-tenant from day one.

⚔️

Pluggable Orchestrators

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.

🌐

Cloudflare DNS

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.

🗝️

Encrypted Secrets Vault

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.

🤖

Agent Job Engine

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.

🔐

SSH Key Management

Add SSH public keys once per team member. They're automatically installed on every new environment. SSH in instantly — no manual server configuration needed.

📋

Build Logs & Monitoring

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.

🏢

Multi-Organization

First-class multi-tenancy. Create multiple organizations, invite team members via email, switch between orgs seamlessly. Per-org orchestrator configuration, secrets, and usage limits.

Lifecycle Management

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.

💻

REST API & Dashboard

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.

🔍

Audit Logging

Every action is logged — environment creates, destroys, secret changes, team updates. Filterable audit trail per organization with configurable retention. API access for compliance needs.

🔗

Outbound Webhooks

Notify your own systems when environments change state. Configurable webhook endpoints per project with delivery logging, retry logic, and HMAC signature verification.

✦ ✧ ✦ ✧ ✦

Connected to Your Workflow

Azzor speaks the languages of your existing tools. Webhooks in, webhooks out.

💻 GitHub Live

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.

📋 Jira Live

Webhook integration for Jira ticket events. Map issue keys to environments. Automatic provisioning when tickets move to "In Progress" or any configured status.

⚔️ Linear Live

Linear webhook adapter for issue tracking. Create environments from Linear issue identifiers. Status sync for modern engineering teams.

☁️ Cloudflare Live

Automatic DNS management via Cloudflare API. Subdomain creation on provision, cleanup on destroy. SSL certificates via Forge or Let's Encrypt. Zero-touch DNS.

🔨 Laravel Forge Live

Full orchestration via Forge API — site creation, Nginx configuration, SSL, deployment scripts, daemon management. Real servers with real performance. Production-grade infrastructure.

⚙️ Kubernetes Live

Namespace-per-environment isolation with resource quotas. Deployment, StatefulSet, Service, Ingress, and NetworkPolicy management. Scale to zero when idle. Bring your own cluster.

Drop In Your Repo

Azzor scans your repository and auto-configures the right services. Or define a custom stack with .azzor.yml.

🧩

Laravel

PHP 8.x, MySQL, Redis, Composer, Artisan migrations & seeding. Detected by artisan + composer.json.

💎

Ruby on Rails

Ruby, PostgreSQL, Redis, Bundler, Rails migrations & asset precompilation. Detected by Gemfile + config/routes.rb.

Next.js

Node.js, npm/yarn, automatic build & start commands. Detected by next.config.js or next.config.ts.

✦ ✧ ✦ ✧ ✦

Self-Host Free. Scale with Cloud.

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 →

Ready to Conjure?

Join the waitlist for Azzor Cloud, or self-host the source from GitHub today.