Skip to content

Configuration

Azul has two configuration layers:

  1. CLI user config (on your machine): default daemon behavior.
  2. Per-place config (inside Studio): project-specific overrides and push mappings.

Use:

Terminal window
azul config

to open your config file in your default editor, or:

Terminal window
azul config --path

to print its location.

Common fields:

FieldTypeDescription
daemonPathstringPath to the Desktop Daemon executable.
portnumberPort used for communication between the Desktop Daemon and Studio Plugin.
syncDirstringDirectory where the DataModel will be mirrored.
sourcemapPathstringPath for the generated sourcemap.json file.
scriptExtensionstringScript extension (.luau by default).
fileWatchDebouncenumberDelay used for local file watcher events.
deleteOrphansOnConnectbooleanDelete unmapped files on full snapshot.
suffixModuleScriptsbooleanSuffix ModuleScripts with .module.
checkForUpdatesbooleanWhether to check for updates on the NPM registry.
debugModebooleanEnable verbose daemon logs.

Plugin settings are edited in the plugin UI in Studio.

  • Debug Mode: Extra plugin-side logging.
  • Silent Mode: Reduces non-error plugin logs.
  • Scope: Apply as global defaults or per-place settings.
  • WebSocket URL: Usually ws://localhost:<port> and should match daemon port.
  • Service List + Service List Type: Include/exclude root services.
  • Excluded Parents: Exclude paths (for example plugin-managed folders).

Per-place daemon config (ServerStorage.Azul.Config)

Section titled “Per-place daemon config (ServerStorage.Azul.Config)”

For team workflows, you can store daemon overrides and pushMappings inside the place.

See Advanced Usage for a full example table and Lua config snippet.