Appearance
Installation
System Requirements
- macOS on Apple Silicon (arm64) or Intel (x64)
- A Cloudflare Workers or Pages project with a
wrangler.tomlorwrangler.json
Corral bundles its own Wrangler and can manage Node.js for you — no global installs of either are required.
Installing
Download the macOS App
Download Corral.dmg and drag it to your Applications folder. The app includes the CLI and will set it up automatically on first launch.
Install Script
CLI only:
sh
curl -fsSL https://pub-9395b27a167942ca9fa9ac795d0d1ac2.r2.dev/releases/install.sh | shCLI + macOS app:
sh
curl -fsSL https://pub-9395b27a167942ca9fa9ac795d0d1ac2.r2.dev/releases/install.sh | sh -s -- --appInstalling the App After the CLI
If you already have the CLI, you can install the macOS app from the terminal:
sh
corral install appThis downloads Corral.app to /Applications and repoints the CLI symlink to the app-bundled binary.
The Privileged Helper
Corral needs elevated privileges to:
- Write the DNS resolver file to
/etc/resolver/ - Run dnsmasq for local DNS resolution
- Run Caddy on ports 80 and 443 for HTTPS
On first launch, the app shows a setup wizard prompting you to approve the helper installation through a standard macOS authorization dialog. You can skip this step and install it later from Settings, but domain routing won't work until the helper is installed.
TIP
The helper runs only when Corral's infrastructure is active. You can uninstall it at any time from the app's Settings.
CLI Availability
When the macOS app launches from /Applications, it automatically creates a symlink at /usr/local/bin/corral pointing to the CLI binary inside the app bundle. If /usr/local/bin isn't writable, it falls back to ~/.corral/bin/corral.
You can check the CLI status in the app under Settings → General.
Verifying Your Installation
sh
corral statusYou should see the infrastructure state (DNS and proxy) and an empty project list. If the privileged helper is installed, you can start infrastructure:
sh
corral upUpdating
Self-update the CLI:
sh
corral updateCheck for updates without installing:
sh
corral update --checkTIP
If your CLI is part of the macOS app bundle, corral update will tell you to update the app instead — the CLI and app should stay in sync.
Data Directory
Corral stores all its data in ~/.corral/. This includes project registrations, settings, installed Node.js versions, logs, and infrastructure configuration. You can override this location with the CORRAL_DATA_DIR environment variable.
See Configuration for the full directory layout.
Uninstalling
The fastest way to remove Corral completely:
sh
corral uninstallThis removes the CA certificate, kills orphaned processes, removes the DNS resolver file, uninstalls the privileged helper, deletes ~/.corral/, clears app preferences, removes shell shims, and removes the CLI symlink. You'll be prompted for confirmation first.
See corral uninstall for details.
Manual uninstall (if the CLI isn't available):
- Quit Corral from the menu bar
- Uninstall the privileged helper from Settings
- Remove the app from Applications
- Delete
~/.corral/to remove all data - Remove
/usr/local/bin/corralif it exists