server/priv/docs/en/contributors/code/cli.md
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.
git clone [email protected]:tuist/tuist.gitmise installtuist installtuist generateThe generated project opens automatically. If you need to reopen it later, run open Tuist.xcworkspace.
[!NOTE] Xed .
If you try to open the project using
xed ., it will open the package, not the Tuist-generated workspace. UseTuist.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
ProjectDescriptionbeing built. If it fails to run, build theTuist-Workspacescheme first.
First generate the workspace:
tuist generate --no-open
Then build the tuist executable with Xcode and run it from DerivedData:
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:
swift build --product ProjectDescription
swift run tuist generate --path /path/to/project --no-open