Skip to content

CLI

Source: github.com/tuist/tuist/tree/main/Tuist and github.com/tuist/tuist/tree/main/cli

The CLI is the heart of Tuist. It handles project generation, automation workflows (test, run, graph, and inspect), and provides the interface to the Tuist server for features like authentication, cache, insights, previews, registry, and selective testing.

  • macOS 14.0+
  • Xcode 26+

The generated project opens automatically. If you need to reopen it later, run open Tuist.xcworkspace.

::: info XED .

If you try to open the project using xed ., it will open the package, not the Tuist-generated workspace. Use Tuist.xcworkspace.

:::

Edit the tuist scheme and set arguments like generate --no-open. Set the working directory to the project root (or use --path).

::: warning PROJECTDESCRIPTION COMPILATION

The CLI depends on ProjectDescription being built. If it fails to run, build the Tuist-Workspace scheme first.

:::

First generate the workspace:

Terminal window
tuist generate --no-open

Then build the tuist executable with Xcode and run it from DerivedData:

Terminal window
tuist_build_dir="$(xcodebuild -workspace Tuist.xcworkspace -scheme tuist -configuration Debug -destination 'platform=macOS' -showBuildSettings | awk -F' = ' '/BUILT_PRODUCTS_DIR/{print $2; exit}')"
"$tuist_build_dir/tuist" generate --path /path/to/project --no-open

Or via Swift Package Manager:

Terminal window
swift build --product ProjectDescription
swift run tuist generate --path /path/to/project --no-open