Xcode Build Benchmark

Måler Xcode rene, hurtigbufrede-rene og inkrementelle byggetider til en JSON-artefakt

av AvdLee · AvdLee/Xcode-Build-Optimization-Agent-Skill

Krever oppsett ★ 7.6/10

Xcode Build Benchmark — Måler Xcode rene, hurtigbufrede-rene og inkrementelle byggetider til en JSON-artefakt

Hva den gjør

Kjører repeterbare xcodebuild-benchmarker for et skjema — 3 rene bygg, 3 null-endringsbygg, valgfri touch-fil inkrementelle bygg, pluss en hurtigbufret-ren fase når COMPILATION_CACHE_ENABLE_CACHING er på — og skriver tidsstemplet JSON pluss rålogger til .build-benchmark/. Rapporterer medianer, min/maks og de dominerende byggetids-sammendragskategoriene i stedet for en enkelt raskeste kjøring. Utløses når en utvikler ber om å måle Xcode-byggetider, ønsker en før/etter-grunnlinje, eller spør om byggene ble raskere eller tregere.

Testrapport

Denne maskinen har kun Command Line Tools (`xcodebuild -version` feil: "requires Xcode"), så ingen ekte iOS-bygg kunne benchmarkes — derav outputMeasured=false. For å verifisere maskineriet uansett la jeg en stub `xcodebuild` på PATH som sender ut en falsk Build Timing Summary og kjørte `scripts/benchmark_builds.py` ende til ende: exit 0, 12 rålogger pluss en tidsstemplet JSON skrevet til utdatamappen, cached-clean-fase autodetektert fra COMPILATION_CACHE_ENABLE_CACHING=YES, medianer/min/maks beregnet per byggetype, og tidsanalyseprogrammet delte korrekt "SwiftCompile (412 tasks) | 128.412 seconds" inn i name/seconds/task_count. En konkret defekt: standardkjøringen (ingen --touch-file) tagger kjøringer `build_type: "zero-change"`, som feiler ferdighetens egne schemas/build-benchmark.schema.json (enum er clean|cached-clean|incremental) — jsonschema avviste den genererte artefakten. Skriptene er nettverksfrie uten curl|sh, base64 eller injeksjonstekst; den eneste fallgruven er `shutil.rmtree` på en brukerlevert --derived-data-path under cached-clean-fasen.

Testet på: 2026-07-21 · Claude Code 2.x (agent harness)

Installer

git clone --depth 1 https://github.com/AvdLee/Xcode-Build-Optimization-Agent-Skill.git /tmp/xcode-build-benchmark-src
mkdir -p ~/.claude/skills
cp -R /tmp/xcode-build-benchmark-src/skills/xcode-build-benchmark ~/.claude/skills/xcode-build-benchmark
# Requires full Xcode (not just Command Line Tools) and an .xcodeproj/.xcworkspace.
# CLI instead: npx skills add https://github.com/AvdLee/Xcode-Build-Optimization-Agent-Skill --skill xcode-build-benchmark
# Plugin instead: /plugin marketplace add AvdLee/Xcode-Build-Optimization-Agent-Skill
# Run from the project directory:
#   python3 ~/.claude/skills/xcode-build-benchmark/scripts/benchmark_builds.py \
#     --workspace App.xcworkspace --scheme MyApp --configuration Debug \
#     --destination "platform=iOS Simulator,name=iPhone 16" --output-dir .build-benchmark

Kommandoer og eksempelprompter

  • /xcode-build-benchmarkMåler Xcode rene, hurtigbufrede-rene og inkrementelle byggetider til en JSON-artefakt

Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):

  • Benchmark our current Xcode build time
  • Compare build times before and after this change
  • Measure how long incremental builds take now