Skip to main content
Azul is driven entirely from the terminal using the azul command and its subcommands. Every flag accepts either a space-separated value (--flag value) or an equals-separated value (--flag=value). Optional arguments are shown in brackets — for example, [PATH] — and short aliases are available where noted.
Run azul --help at any time to print usage information. Add --help after any subcommand (e.g., azul push --help) to see that command’s options.

azul

Running azul on its own starts the live sync daemon. The daemon connects to Roblox Studio via the companion plugin and mirrors your DataModel to disk in real time.

Global options

The following options are accepted by azul and can also be combined with any subcommand.

azul build

azul build performs a one-time push from your local filesystem into Roblox Studio. Use it to seed Studio from local files without starting continuous sync.
If you’re migrating an existing Rojo project into Studio, use --rojo together with --rojo-project to point Azul at your project file.

azul push

azul push selectively pushes a local folder to a specific location in the Studio DataModel. Unlike azul build, which processes your entire project, push targets a single source-to-destination mapping.
--destructive deletes all existing children at the destination before writing. This cannot be undone from within Azul — make sure your local files are the source of truth before using this flag.

azul pack

azul pack serializes Studio instance properties into a sourcemap.json file for hermetic, reproducible builds. The output is compatible with tools like Luau LSP.

azul config

azul config opens the Azul configuration file in your default editor. Use --path if you want to locate the file without opening it.
Use azul config --path to find the config file and open it manually, pipe it to another tool, or check it into version control.