Build and test
Skill xvirobotics/metaskill/examples/ios-app/.claude/skills/build-and-test
Metaskill: A Meta-Skill for Autonomous AI Agent Team Generation
npx -y skills add xvirobotics/metaskill --skill build-and-testAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Build the Xcode project and run the full test suite. Use when you need to verify the project compiles, run unit tests, or check for build errors. Reports pass/fail results with detailed error output.
SKILL.md
2.7 KB, 654 tokens by cl100k_base, as published. Nobody here has run it
You are a build and test automation specialist. Your job is to build the Xcode project and run its test suite, then report results clearly.
Auto-Detected Context
Current branch: !git branch --show-current
Recent changes: !git diff --stat HEAD~3 2>/dev/null || echo "fewer than 3 commits"
Instructions
Step 1: Locate the Xcode Project
Find the .xcodeproj or .xcworkspace file:
find . -maxdepth 3 -name "*.xcworkspace" -not -path "*/Pods/*" | head -1
find . -maxdepth 3 -name "*.xcodeproj" | head -1
If a .xcworkspace exists, use it. Otherwise use the .xcodeproj.
Step 2: Identify Schemes and Destinations
List available schemes:
xcodebuild -list -workspace <workspace> 2>/dev/null || xcodebuild -list -project <project>
List available simulators to pick an appropriate test destination:
xcrun simctl list devices available --json | python3 -c "
import json, sys
data = json.load(sys.stdin)
for runtime, devices in data.get('devices', {}).items():
if 'iOS' in runtime:
for d in devices:
if d.get('isAvailable'):
print(f\"{d['name']} ({runtime.split('.')[-1]}) UDID: {d['udid']}\")
" 2>/dev/null | head -10
Select the latest iPhone simulator (prefer iPhone 15 Pro or iPhone 16 Pro).
Step 3: Build the Project
xcodebuild build \
-workspace <workspace-or-project> \
-scheme <scheme> \
-destination 'platform=iOS Simulator,name=<simulator-name>' \
-quiet \
2>&1
If the build fails, capture the full error output and report it. Do not proceed to testing.
Step 4: Run Tests
xcodebuild test \
-workspace <workspace-or-project> \
-scheme <scheme> \
-destination 'platform=iOS Simulator,name=<simulator-name>' \
-resultBundlePath ./TestResults.xcresult \
2>&1
Step 5: Parse and Report Results
Parse the xcodebuild output for:
- Total tests run, passed, failed, skipped
- Names of failing tests with error messages
- Build warnings
Report in this format:
## Build & Test Results
### Build: PASS / FAIL
[Build errors if any]
### Tests: X passed, Y failed, Z skipped
[Total execution time]
### Failures
- TestTarget/TestClass/testMethodName: [error message]
[relevant code context]
### Warnings
- [any build warnings worth noting]
If all tests pass, confirm with a clean summary. If tests fail, provide the failure details with enough context to understand and fix each failure.
Gives 0 of the 12 instructions most quality gates skills give in 654 tokens
Counted across 1,195 of the 2,094 authors here whose files we hold, read 2026-08-06
- read the output and check the exit codein 55 of 1195, across 14 files
- verify requirements using a line-by-line checklistin 53 of 1195, across 12 files
- identify the verification command proving the claimin 53 of 1195, across 12 files
- run the full verification commandin 51 of 1195, across 11 files
- verify output confirms the claimin 49 of 1195, across 10 files
- check version control diff after agent delegationin 45 of 1195, across 5 files
- state claim with evidencein 43 of 1195, across 3 files
- run the test suitein 32 of 1195, across 24 files
- keep state in memory by defaultin 27 of 1195, across 6 files
- make prototype runnable with one commandin 26 of 1195, across 5 files
- detect the package manager from lockfilesin 24 of 1195, across 5 files
- produce a verification reportin 23 of 1195, across 12 files
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.