Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/rojo-rbx/rojo/llms.txt

Use this file to discover all available pages before exploring further.

rojo syncback takes an existing Roblox file and writes its contents into the source tree that your project.json describes. It is the reverse of rojo build: where build turns source files into a Roblox file, syncback turns a Roblox file into source files. This is useful for bootstrapping a Rojo project from a place you already have, or for pulling in changes made directly inside Studio.

Synopsis

rojo syncback [PROJECT] --input <FILE> [OPTIONS]
--input is required.

Arguments and flags

PROJECT
string
Path to the project file or to a directory containing a default.project.json. Defaults to the current directory.
--input, -i
string
required
Path to the Roblox file to read instances from. Accepted extensions are .rbxl, .rbxlx, .rbxm, and .rbxmx.
--list, -l
boolean
Print the list of files and directories that would be added or removed to stdout. Normal progress output still goes to stderr.
--dry-run
boolean
Run the full syncback process but do not write any files. Reports what would be added and removed, then exits. Useful for reviewing changes before committing.
--non-interactive, -y
boolean
Skip the confirmation prompt. By default Rojo asks you to confirm before writing to the filesystem. Pass this flag in scripts or CI environments.

Global flags

--verbose / -v
boolean
Increase log verbosity. Pass multiple times (e.g. -vv) for more detail.
--color
string
default:"auto"
Control color output. Accepted values are auto, always, and never.

Output streams

rojo syncback deliberately separates its output:
  • stderr — all progress messages, confirmations, and diagnostics.
  • stdout — file change list when --list is passed.
This design lets you pipe the file list to another tool (e.g. grep or a script) without mixing it with progress output.

Examples

Basic syncback — review the prompt, then write files:
rojo syncback --input exported-place.rbxl
Preview changes without writing anything:
rojo syncback --input exported-place.rbxl --dry-run
List changed files to stdout, skip the confirmation prompt, and write immediately:
rojo syncback --input exported-place.rbxl --list --non-interactive
Syncback from a model file using an explicit project path:
rojo syncback path/to/my-library.project.json \
  --input exported-model.rbxmx \
  --non-interactive
Run with --dry-run first when syncing back into an existing project. Reviewing what would change before writing helps avoid accidentally overwriting hand-edited source files.

Build docs developers (and LLMs) love