analyze-selective-test…
Analyzes Xcode selective testing effectiveness for a test run, showing which test targets…
Debugs issues users encounter with Tuist-generated projects by reproducing the scenario locally, building Tuist from source when needed, and triaging whether it is a bug, misconfiguration, or something that needs team input. Use when users report generation failures, build
$ npx -y skills add tuist/tuist --skill debug-generated-project --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/debug-generated-projectContext preview
The summary Claude sees to decide when to auto-load this skill.
Debugs issues users encounter with Tuist-generated projects by reproducing the scenario locally, building Tuist from source when needed, and triaging whether it is a bug, misconfiguration, or something that needs team input. Use when users report generation failures, build
name: debug-generated-project description: Debugs issues users encounter with Tuist-generated projects by reproducing the scenario locally, building Tuist from source when needed, and triaging whether it is a bug, misconfiguration, or something that needs team input. Use when users report generation failures, build errors after generation, or unexpected project behavior.
1. Ask the user to describe the issue and the project setup (targets, dependencies, configurations, platform). 2. Confirm the issue exists with the latest release by running `mise exec tuist@latest -- tuist generate` against a reproduction project. 3. If confirmed, clone the Tuist repository and build from source to test against main. 4. Triage: fix the bug and open a PR, advise on misconfiguration, or recommend the user files an issue with a reproduction.
Ask the user for:
The answer to "when" determines the verification strategy:
Before investigating the source code, confirm the issue is not already fixed in the latest release.
REPRO_DIR=$(mktemp -d) cd "$REPRO_DIR"
Create minimal `Tuist.swift`, `Project.swift`, and source files that reproduce the user's scenario. Keep it as small as possible while still triggering the issue.
mise exec tuist@latest -- tuist generate --no-open --path "$REPRO_DIR"
If the issue involves dependencies, install them first:
mise exec tuist@latest -- tuist install --path "$REPRO_DIR"
Clone the repository and build the `tuist` executable and `ProjectDescription` library from source to test against the latest code on `main`.
TUIST_SRC=$(mktemp -d) git clone --depth 1 https://github.com/tuist/tuist.git "$TUIST_SRC" cd "$TUIST_SRC" swift build --product tuist --product ProjectDescription --replace-scm-with-registry
The built binary will be at `.build/debug/tuist`. Use it to test the reproduction project:
"$TUIST_SRC/.build/debug/tuist" generate --no-open --path "$REPRO_DIR"
Tell the user the fix is already on `main`, and it hasn't been released, tell them it'll be in the nest release and point them to the relevant commit if you can identify it.
Continue to Step 4.
Investigate the Tuist source code to understand why the issue occurs.
1. Identify the root cause in the source code. 2. Apply the fix. 3. Verify by rebuilding and running against the reproduction project:
cd "$TUIST_SRC" swift build --product tuist --product ProjectDescription --replace-scm-with-registry "$TUIST_SRC/.build/debug/tuist" generate --no-open --path "$REPRO_DIR"
4. Zip the reproduction project and include it in the PR:
cd "$REPRO_DIR" && cd .. zip -r reproduction.zip "$(basename "$REPRO_DIR")" -x '*.xcodeproj/*' -x '*.xcworkspace/*' -x 'Derived/*' -x '.build/*'
5. Open a PR on the Tuist repository with:
Tell the user what is wrong and how to fix it. Common misconfigurations:
Provide the corrected manifest snippet so the user can apply the fix directly.
If you cannot determine whether it is a bug or misconfiguration, recommend the user:
1. Open a GitHub issue at https://github.com/tuist/tuist/issues with:
Provide a summary of what you investigated and what you ruled out, so the user does not have to repeat the triage.
When testing a fix, always verify the full cycle:
# Build the patched tuist cd "$TUIST_SRC" swift build --product tuist --product ProjectDescription --replace-scm-with-registry # Install dependencies if needed "$TUIST_SRC/.build/debug/tuist" install --path "$REPRO_DIR" # Generate the project "$TUIST_SRC/.build/debug/tuist" generate --no-open --path "$REPRO_DIR" # Build the generated project xcodebuild build \ -workspace "$REPRO_DIR"/*.xcworkspace \ -scheme <scheme> \ -destination "platform=iOS Simulator,name=iPhone 16 Pro"
Tuist supercharges your build system, whether you build with Xcode, Gradle, or Bazel.
Analyzes Xcode selective testing effectiveness for a test run, showing which test targets…
Compares two Xcode build runs to identify duration regressions, cache changes, and new…
Compares two app bundles to identify size changes, new or removed artifacts, and platform…
Compares two `tuist cache` runs to identify cache hit rate changes and root-cause analysis of…
Compares two `tuist generate` runs to identify cache hit rate changes and root-cause analysis…
Compares two Gradle build runs to identify duration regressions, cache changes, and task…