CLI Reference
The current CLI is compact.
lutest install-package [--output <parent-directory>]lutest setuplutest test [paths...] [--runtime lute|roblox]lutest todo [paths...] [--runtime lute|roblox]Version
Section titled “Version”lutest versionlutest helpWhen you pass paths to lutest test or lutest todo, Lutest uses them as discovery inputs. Without --runtime, both commands use lute.
When you do not pass paths to lutest test or lutest todo, Lutest uses roots for the selected runtime from lutest.toml, or . for the local runtime when no config is present.
lutest setup interactively creates an initial lutest.toml. It never overwrites an existing configuration and does not create a .env file or write API keys.
Install Roblox package
Section titled “Install Roblox package”lutest install-package creates a Roblox-ready lutest/ source directory containing init.luau and its internal modules. Move that directory into the game’s source tree; its internal imports use Roblox script paths, so Luau LSP can follow the package.
Use --output <parent-directory> to choose where the command creates lutest/. The parent may already exist; the command never overwrites an existing lutest/ directory.
lutest install-package --output src/ReplicatedStorageAfter the directory is represented in the game under ReplicatedStorage, require it normally:
local ReplicatedStorage = game:GetService 'ReplicatedStorage'local t = require(ReplicatedStorage.lutest)Exit behavior
Section titled “Exit behavior”- exits with
0when all discovered tests pass - exits with
1when discovery finds nothing - exits with
1when any test fails - exits with
1when a Roblox remote execution cannot complete