4 min read

Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.

Studio command-line interface

Roblox Studio supports command-line arguments that let you launch it with special functionality, such as opening a specific place or script when Studio starts. The Roblox Studio executable is typically installed in the following locations:

OS Location
Windows `%localappdata%\Roblox\Versions\[version]\RobloxStudioBeta.exe`
Mac `/Applications/RobloxStudio.app/Contents/MacOS/RobloxStudio`

When launched from the command line, Studio pipes verbose logs to stdout that are more detailed than what appears in the Output window. Arguments use a double-dash prefix and are case-insensitive. File paths that contain spaces must be quoted.

Note

Any arguments not documented here are for internal use only and are subject to change without notice.

Open a place

To open a published place, specify the place ID, universe ID, and a task.

Required arguments

Argument Description
--placeId <placeId> The numeric ID of the place to open.
--universeId <universeId> The universe that owns the place.
--task <taskName> Specifies how Studio opens the place based on the given task. See the [supported tasks](#supported-tasks) table below for more information.

Supported tasks

Argument Description
EditPlace Opens the latest published version of the place for editing.
EditPlaceRevision Opens a specific previous version of the place. Requires --placeVersion <versionNumber> to specify the version.

Optional arguments

Argument Description
--targetInstanceId <guid> Moves the Studio camera to focus on the instance with this GUID after the place loads.
--annotationId <guid> Opens the annotation with this GUID after the place loads.

Examples

# Open the latest version of a place
RobloxStudio.exe --task EditPlace --placeId 74265016723074 --universeId 7127583708

# Open a specific previous version
RobloxStudio.exe --task EditPlaceRevision --placeId 74265016723074 --universeId 7127583708 --placeVersion 2

Open a local file

To open a local place, use --task EditFile with the following argument.

Argument Description
--localPlaceFile <path> Absolute path to a local .rbxl or .rbxlx place file to open.

You can also open a local place file by passing the file path as the first positional argument without a flag name.

Examples

# Open a local place file
RobloxStudio.exe --task EditFile --localPlaceFile "Projects\MyGame.rbxl"

# Shorthand
RobloxStudio.exe "Projects\MyGame.rbxl"

Open a script

To open a script, specify the place ID, universe ID, and task as described in the open a place section. Then provide one of the following arguments depending on how you want to open the script.

Argument Description
--openScriptPath <path> The path to the script. Must use `/` as separators and follow absolute `require-by-string` semantics.
--openScriptFromId <uniqueId> The unique ID of the script to open.

Optional highlighting

Optionally, highlight specific lines or a character range when opening the script.

Argument Description
--startLine <n> Starting line of the highlight range. 1-based and inclusive.
--endLine <n> Ending line of the highlight range. 1-based and exclusive.
--startCharacter <n> Starting character position within the line. 1-based.
--endCharacter <n> Ending character position within the line. 1-based and exclusive.

Examples

# Open a script by path
RobloxStudio.exe --task EditPlace --placeId 74265016723074 --universeId 7127583708 --openScriptPath Workspace/MyFolder/MyScript

# Open a script by ID
RobloxStudio.exe --task EditPlace --placeId 74265016723074 --universeId 7127583708 --openScriptFromId 604a6aa2-04cc-c820-09b3-a1dc0000537f

# Open a script and highlight specific lines
RobloxStudio.exe --task EditPlace --placeId 74265016723074 --universeId 7127583708 --openScriptPath Workspace/MyFolder/MyScript --startLine 1 --endLine 5

# Open a script and highlight a character range
RobloxStudio.exe --task EditPlace --placeId 74265016723074 --universeId 7127583708 --openScriptPath Workspace/MyFolder/MyScript --startLine 1 --endLine 1 --startCharacter 1 --endCharacter 6

Run a script

Use --task RunScript to execute a Luau script after a place finishes loading. Scripts run at the same permission level as the Studio command bar. You can combine this with --placeId and --universeId to run the script in a specific game, or --localPlaceFile to run the script in a local place file. If those arguments are omitted, Studio opens the default empty baseplate template and runs the script there.

Required arguments

Argument Description
--runScriptFile <path> Absolute path to a .lua or .luau file to execute.

Optional arguments

Argument Description
--outputFile <path> Path to a file where script output is written.
--quitAfterExecution If provided, Studio closes after the script finishes executing.

Examples

# Run a script in a specific game and exit when done
RobloxStudio.exe --task RunScript --placeId 74265016723074 --universeId 7127583708 --runScriptFile smokeTest.luau --outputFile out.log --quitAfterExecution

# Run a script in the default Baseplate
RobloxStudio.exe --task RunScript --runScriptFile smokeTest.luau

Try an asset

Use --task TryAsset to insert a specific asset into a baseplate template and open it for editing.

Required arguments

Argument Description
--assetId <id> The asset ID to insert.

Example

RobloxStudio.exe --task TryAsset --assetId 53326

API dump

Use --api, --fullApi, or --apiV2 to write the Roblox API surface to a file and exit.

Argument Description
--api <path> Writes the Luau scripting API as JSON to the specified file.
--fullApi <path> Writes the full API surface as JSON to the specified file.
--apiV2 <path> Writes the full API as JSON in the V2 schema format to the specified file.

Examples

RobloxStudio.exe --api "Desktop/output.json"

RobloxStudio.exe --fullApi "Desktop/output.json"

RobloxStudio.exe --apiV2 "Desktop/output.json"