Agent skill

Xcode Build Fixer

by omarshahine in omarshahine/HomeClaw

Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement.

MITAuto-check passedMobile

Install Xcode Build Fixer

skills CLI
$ npx skills add omarshahine/HomeClaw --skill xcode-build-fixer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install omarshahine/HomeClaw xcode-build-fixer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/omarshahine/HomeClaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/xcode-build-fixer .claude/skills/xcode-build-fixer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
xcode-build-fixer
GitHub stars
176
Used in
1 other repo
Token cost
~3.1k tokens
SKILL.md length
1,389 words
Files
5 (incl. scripts, references)
Skills in repo
14
Repo updated
First seen
Licence
MIT

At a glance

Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement.

  • Works in 6 steps: Read the approved optimization plan or… → For each approved item, identify the… → Apply the change. → …
  • A developer has an approved optimization plan from xcode-build-orchestrator
  • SKILL.md covers Core Rules, Inputs, Fix Categories and Execution Workflow, plus 5 more sections
  • Runs Python scripts from its folder; calls xcodebuild, python3 and git

What it does

Xcode Build Fixer is an agent skill from omarshahine/HomeClaw. Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement. Use when a developer has an approved optimization plan from xcode-build-orchestrator, wants to apply specific build fixes, needs help implementing build setting changes, script phase guards, source-level compilation fixes, or SPM restructuring that was recommended by an analysis skill.

Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts and reference files (for example `references/build-settings-best-practices.md`, `references/fix-patterns.md` and `references/recommendation-format.md`).

It sits in Mobile, covering iOS development. It works with Xcode. The repository describes itself as: HomeKit smart home control via MCP — lights, locks, thermostats, and scenes for Claude Desktop, Claude Code, and OpenClaw. The licence is MIT.

When your agent uses it

  • A developer has an approved optimization plan from xcode-build-orchestrator
  • Wants to apply specific build fixes
  • Needs help implementing build setting changes
  • Script phase guards

Example prompts

  • “/xcode-build-fixer”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Read the approved optimization plan or developer instruction.
  2. For each approved item, identify the exact files and locations to change.
  3. Apply the change.
  4. Verify the change compiles: run a quick xcodebuild build to confirm no errors were introduced.
  5. After all approved changes are applied, re-benchmark using the same inputs from the original baseline
  6. Compare post-change medians to the baseline and report deltas.

What it can do on your machine

Read from SKILL.md and the folder at commit da69700. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • xcodebuild
    • python3
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Xcode Build Fixer loads about 3.1k tokens when it runs, and up to ~7.4k if it reads all its reference files. Until then it costs about 105 tokens; SKILL.md has 1,389 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~105
When it runs · the whole SKILL.md, loaded when a task matches
~3.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~7.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from omarshahine/HomeClaw at commit da69700, republished under its MIT licence (© omarshahine). 1,389 words, ~3,080 tokens.

Download SKILL.mdSave it as .claude/skills/xcode-build-fixer/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
xcode-build-fixer
description
Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement. Use when a developer has an approved optimization plan from xcode-build-orchestrator, wants to apply specific build fixes, needs help implementing build setting changes, script phase guards, source-level compilation fixes, or SPM restructuring that was recommended by an analysis skill.

Xcode Build Fixer

Use this skill to implement approved build optimization changes and verify them with a benchmark.

Core Rules

  • Only apply changes that have explicit developer approval.
  • Apply one logical fix at a time so changes are reviewable and reversible.
  • Re-benchmark after applying changes to verify improvement.
  • Report exactly what changed, which files were touched, and the measured delta.
  • If a change produces no improvement or causes a regression, flag it immediately.

Inputs

The fixer expects one of:

  • An approved optimization plan at .build-benchmark/optimization-plan.md with checked approval boxes.
  • An explicit developer instruction describing the fix to apply (e.g., "set DEBUG_INFORMATION_FORMAT to dwarf for Debug").

When working from an optimization plan, read the approval checklist and implement only the checked items.

Fix Categories

Build Settings

Change project.pbxproj values to match the recommendations in build-settings-best-practices.md.

Typical fixes:

  • Set DEBUG_INFORMATION_FORMAT = dwarf for Debug
  • Set SWIFT_COMPILATION_MODE = singlefile for Debug
  • Enable COMPILATION_CACHE_ENABLE_CACHING = YES
  • Enable EAGER_LINKING = YES for Debug
  • Align cross-target settings to eliminate module variants

When editing project.pbxproj, locate the correct buildSettings block by matching the target name and configuration name. Verify the change with xcodebuild -showBuildSettings after applying.

Script Phases

Fix run script phases that waste time during incremental or debug builds.

Typical fixes:

  • Add input and output file declarations so Xcode can skip unchanged scripts.
  • Add configuration guards: [[ "$CONFIGURATION" != "Release" ]] && exit 0 for release-only scripts.
  • Move input/output lists into .xcfilelist files when the list is long.
  • Enable Based on dependency analysis when inputs and outputs are declared.
Source-Level Compilation Fixes

Apply code changes that reduce type-checker and compiler overhead. See references/fix-patterns.md for before/after patterns.

Typical fixes:

  • Add explicit type annotations to complex expressions.
  • Break long chained or nested expressions into intermediate typed variables.
  • Mark classes final when they are not subclassed.
  • Tighten access control (private/fileprivate) for internal-only symbols.
  • Extract monolithic SwiftUI body properties into smaller composed subviews.
  • Replace deeply nested result-builder code with separate typed helpers.
  • Add explicit return types to closures passed to generic functions.
SPM Restructuring

Restructure Swift packages to improve build parallelism and reduce rebuild scope.

Typical fixes:

  • Move shared types to a lower-layer module to eliminate circular or upward dependencies.
  • Split oversized modules (200+ files) by feature area.
  • Extract protocol definitions into lightweight interface modules.
  • Remove unnecessary @_exported import usage.
  • Align build options across targets that import the same packages to prevent module variant duplication.
  • Pin branch-tracked dependencies to tagged versions or commit hashes for deterministic resolution.

Before applying version pin changes:

  • Run git ls-remote --tags <url> to confirm tags exist. If the upstream has no tags, pin to a specific revision hash instead.
  • Verify the pinned version resolves successfully with xcodebuild -resolvePackageDependencies before proceeding.

Execution Workflow

  1. Read the approved optimization plan or developer instruction.
  2. For each approved item, identify the exact files and locations to change.
  3. Apply the change.
  4. Verify the change compiles: run a quick xcodebuild build to confirm no errors were introduced.
  5. After all approved changes are applied, re-benchmark using the same inputs from the original baseline:
    bash
    python3 scripts/benchmark_builds.py \
      --project App.xcodeproj \
      --scheme MyApp \
      --configuration Debug \
      --destination "platform=iOS Simulator,name=iPhone 16" \
      --output-dir .build-benchmark
  6. Compare post-change medians to the baseline and report deltas.

Evaluating Regressions

Not every slower number is a true regression. The fixer must evaluate the full picture before recommending a revert.

Compilation caching trade-off

A change like COMPILATION_CACHE_ENABLE_CACHING = YES may make a standard clean build slightly slower (cache population overhead) while making cached clean builds significantly faster. Since cached clean builds reflect the realistic developer workflow (branch switching, pulling changes, Clean Build Folder with a warm cache), a slower standard clean build paired with a faster cached clean build is a net improvement, not a regression. The same logic applies to any change where the first-time cost is higher but subsequent builds benefit.

Compare all build types

Evaluate standard clean, cached clean (when available), and incremental builds together. A change is only a clear regression if it makes the metrics that matter to the developer's daily workflow worse. If only the cold-start clean build is slower but the developer rarely does truly cold builds, that may be acceptable.

Per-change vs. cumulative

A single change that regresses on its own may still be worth keeping if it enables a larger cumulative improvement (e.g., enabling compilation caching makes one build type slower but unlocks cache benefits for everything else).

Best-practice settings are not revert candidates

Some build settings are Apple's recommended modern defaults. These should be applied and kept regardless of whether the immediate benchmark shows a measurable improvement. They are not speculative optimizations -- they align the project with Apple's toolchain direction and will compound in value over future Xcode releases. The fixer must never recommend reverting these settings based on a single benchmark result.

Best-practice settings that should always be kept once applied:

  • COMPILATION_CACHE_ENABLE_CACHING = YES -- Apple is actively investing in this; the cache improves with each Xcode release and compounds across real workflows
  • EAGER_LINKING = YES (Debug) -- allows the linker to overlap with compilation
  • SWIFT_USE_INTEGRATED_DRIVER = YES -- eliminates inter-process scheduling overhead
  • DEBUG_INFORMATION_FORMAT = dwarf (Debug) -- avoids unnecessary dSYM generation
  • SWIFT_COMPILATION_MODE = singlefile (Debug) -- incremental recompilation
  • ONLY_ACTIVE_ARCH = YES (Debug) -- no reason to build all architectures locally

When reporting on these settings, use language like: "Applied recommended build setting. No immediate benchmark improvement measured, but this aligns with Apple's recommended configuration and positions the project for future Xcode improvements."

Show full SKILL.md (520 more words)Show less
When to recommend revert (speculative changes only)

For changes that are not best-practice settings (e.g., source refactors, linkage experiments, script phase modifications, dependency restructuring):

  • If the cumulative pass shows wall-clock regression across all measured build types (standard clean, cached clean, and incremental are all slower), recommend reverting all speculative changes unless the developer explicitly asks to keep specific items for non-performance reasons.
  • For each individual speculative change: if it shows no median improvement and no cached/incremental benefit either, flag it with Recommend revert and the measured delta.
  • Distinguish between "outlier reduction only" (improved worst-case but not median) and "median improvement" (improved typical developer wait).
  • When a change trades off one build type for another (e.g., slower standard clean but faster cached clean), present both numbers clearly and let the developer decide. Frame it as: "Standard clean builds are X.Xs slower, but cached clean builds (the realistic daily workflow) are Y.Ys faster."

Reporting

Lead with the wall-clock result in plain language:

"Your clean build now takes X.Xs (was Y.Ys) -- Z.Zs faster." "Your incremental build now takes X.Xs (was Y.Ys) -- Z.Zs faster."

Then include:

  • Post-change clean build wall-clock median
  • Post-change incremental build wall-clock median
  • Absolute and percentage wall-clock deltas for both
  • Confidence notes if benchmark noise is high
  • List of files modified per fix
  • Any deviations from the original recommendation

If cumulative task metrics improved but wall-clock did not, say plainly: "Compiler workload decreased but build wait time did not improve. This is expected when Xcode runs these tasks in parallel with other equally long work."

If a fix produced no measurable wall-time improvement, note No measurable wall-time improvement and suggest whether to keep (e.g. for code quality) or revert.

For changes valuable for non-benchmark reasons (deterministic package resolution, branch-switch caching), label them: "No wait-time improvement expected from this change. The benefit is [deterministic builds / faster branch switching / reduced CI cost]."

Note: COMPILATION_CACHE_ENABLE_CACHING has been measured at 5-14% faster clean builds across tested projects (87 to 1,991 Swift files). The benefit compounds in real developer workflows where the cache persists between builds -- branch switching, pulling changes, and CI with persistent DerivedData. The benchmark script auto-detects this setting and runs a cached clean phase for validation.

Execution Report

After the optimization pass is complete, produce a structured execution report. This gives the developer a clear summary of what was attempted, what worked, and what the final state is.

Structure:

markdown
## Execution Report

### Baseline
- Clean build median: X.Xs
- Cached clean build median: X.Xs (if applicable)
- Incremental build median: X.Xs

### Changes Applied

| # | Change | Actionability | Measured Result | Status |
|---|--------|---------------|-----------------|--------|
| 1 | Description | repo-local | Clean: X.Xs→Y.Ys, Incr: X.Xs→Y.Ys | Kept / Reverted / Blocked |
| 2 | ... | ... | ... | ... |

### Final Cumulative Result
- Clean build median: X.Xs (was Y.Ys) -- Z.Zs faster/slower
- Cached clean build median: X.Xs (was Y.Ys) -- Z.Zs faster/slower
- Incremental build median: X.Xs (was Y.Ys) -- Z.Zs faster/slower
- **Net result:** Faster / Slower / Unchanged

### Blocked or Non-Actionable Findings
- Finding: reason it could not be addressed from the repo

Status values:

  • Kept -- Change improved or maintained build times and was kept.
  • Kept (best practice) -- Change is a recommended build setting; kept regardless of immediate benchmark result.
  • Reverted -- Change regressed build times and was reverted.
  • Blocked -- Change could not be applied due to project structure, Xcode behavior, or external constraints.
  • No improvement -- Change compiled but showed no measurable wall-time benefit. Include whether it was kept (for non-performance reasons) or reverted.

Escalation

If during implementation you discover issues outside this skill's scope:

Additional Resources

© omarshahine, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts, references) in .claude/skills/xcode-build-fixer of omarshahine/HomeClaw.

  • SKILL.md
  • references/build-settings-best-practices.md
  • references/fix-patterns.md
  • references/recommendation-format.md
  • scripts/benchmark_builds.py

Open the folder on GitHubat commit da69700

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in omarshahine/HomeClaw, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Xcode Build Fixer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Xcode Build Fixer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Xcode Build Fixer this skillomarshahine/HomeClaw1761 repos~3.1kAutomated safety check: PassMIT
macOS Spm App PackagingDimillian/Skills4k5 repos~1.2kAutomated safety check: PassMIT
Orca iOS Simulator Controlstablyai/orca87k1 repos~584Automated safety check: PassApache-2.0
Apple Crash Log .NET Symbolicationdotnet/skills5.6k1 repos~2.4kAutomated safety check: PassMIT
Update Swiftui APIsAvdLee/SwiftUI-Agent-Skill3.7k—~1.2kAutomated safety check: PassMIT
iOS Simulator Skillconorluddy/ios-simulator-skill1.3k—~5.7kAutomated safety check: PassMIT

Similar skills

  • macOS Spm App Packaging

    Dimillian/Skills

    Scaffold, build, and package SwiftPM-based macOS apps without an Xcode project.

    4k GitHub starsUsed in 5 repos~1.2k tokens
    MobileAuto-check passed
  • iOS Simulator control from inside Orca, with the live device view in Orca's emulator pane. Use when driving a booted Apple Simulator on macOS: taps, gestures…

    87k GitHub starsUsed in 1 repo~584 tokens
    MobileAuto-check passed
  • Official

    Resolves .NET runtime frames in Apple .ips crash logs to function names, source files and line numbers using dSYM symbols, atos and the Microsoft symbol server.

    5.6k GitHub starsUsed in 1 repo~2.4k tokens
    MobileAuto-check passed
  • Update Swiftui APIs

    AvdLee/SwiftUI-Agent-Skill

    Scan Apple's SwiftUI documentation for deprecated APIs and update the SwiftUI Expert Skill with modern replacements.

    3.7k GitHub stars~1.2k tokensUpdated 2 days ago
    MobileAuto-check passed
  • iOS Simulator Skill

    conorluddy/ios-simulator-skill

    29 production-ready scripts for iOS app testing, building, and automation.

    1.3k GitHub stars~5.7k tokensUpdated 2 days ago
    MobileAuto-check passed
  • Official

    Update dotnet/macios to a new Xcode beta and validate it end-to-end.

    2.9k GitHub stars~1.8k tokensUpdated today
    MobileAuto-check passed

More from omarshahine/HomeClaw

All 14 skills in this repo
  • Swiftui Expert Skill

    omarshahine/HomeClaw

    A skill your agent uses when writing, reviewing, or refactoring SwiftUI code for iOS or macOS, including state management, view composition, performance, Liquid Glass adoption, or Instruments .trace…

    176 GitHub starsUsed in 4 repos~2.8k tokens
    Auto-check passed
  • Spm Build Analysis

    omarshahine/HomeClaw

    Analyze Swift Package Manager dependencies, package plugins, module variants, and CI-oriented build overhead that slow Xcode builds.

    176 GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Xcode Build Benchmark

    omarshahine/HomeClaw

    Benchmark Xcode clean and incremental builds with repeatable inputs, timing summaries, and timestamped .build-benchmark/ artifacts.

    176 GitHub starsUsed in 1 repo~1.2k tokens
    Auto-check passed
  • Xcode Build Orchestrator

    omarshahine/HomeClaw

    Orchestrate Xcode build optimization by benchmarking first, running the specialist analysis skills, prioritizing findings, requesting explicit approval, delegating approved fixes to…

    176 GitHub starsUsed in 1 repo~2.9k tokens
    Auto-check passed
  • Xcode Compilation Analyzer

    omarshahine/HomeClaw

    Analyze Swift and mixed-language compile hotspots using build timing summaries and Swift frontend diagnostics, then produce a recommend-first source-level optimization plan.

    176 GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed
  • iOS Ettrace Performance

    omarshahine/HomeClaw

    Capture and interpret ETTrace profiles for iOS simulator apps, including symbolicated launch and runtime flamegraphs.

    176 GitHub starsUsed in 1 repo~2.3k tokens
    Auto-check passed

Works with

Categories

Questions about Xcode Build Fixer

What does Xcode Build Fixer do?

Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement. Xcode Build Fixer is an agent skill from omarshahine/HomeClaw. Apply approved Xcode build optimization changes following best practices, then re-benchmark to verify improvement.

When should I use Xcode Build Fixer?

Xcode Build Fixer fits situations like: A developer has an approved optimization plan from xcode-build-orchestrator; wants to apply specific build fixes; needs help implementing build setting changes; script phase guards.

How do I install Xcode Build Fixer in Claude Code?

Run `npx skills add omarshahine/HomeClaw --skill xcode-build-fixer -a claude-code`. Or copy the skill folder (.claude/skills/xcode-build-fixer in omarshahine/HomeClaw) into .claude/skills/xcode-build-fixer in your project. Claude Code loads it when a task matches its description.

How do I install Xcode Build Fixer in Codex?

Run `npx skills add omarshahine/HomeClaw --skill xcode-build-fixer -a codex`. Or copy the skill folder (.claude/skills/xcode-build-fixer in omarshahine/HomeClaw) into .agents/skills/xcode-build-fixer in your project. Codex loads it when a task matches its description.

Can I use Xcode Build Fixer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add omarshahine/HomeClaw --skill xcode-build-fixer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/xcode-build-fixer, .gemini/skills/xcode-build-fixer, .github/skills/xcode-build-fixer and .opencode/skills/xcode-build-fixer in your project.

What does Xcode Build Fixer need to run?

Going by SKILL.md and its folder, Xcode Build Fixer needs Python for the scripts in its folder and the command-line tools its instructions call (xcodebuild, python3 and git). Our summary lists: Python 3.

Does Xcode Build Fixer access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Xcode Build Fixer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Xcode Build Fixer use?

Xcode Build Fixer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Xcode Build Fixer use?

About 3.1k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.4k tokens, read only when the agent opens those files.

What are the alternatives to Xcode Build Fixer?

Skills that share tags, products or a category with Xcode Build Fixer: macOS Spm App Packaging (Dimillian/Skills, 4k stars), Orca iOS Simulator Control (stablyai/orca, 87k stars), Apple Crash Log .NET Symbolication (dotnet/skills, 5.6k stars) and Update Swiftui APIs (AvdLee/SwiftUI-Agent-Skill, 3.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Xcode Build Fixer?

omarshahine (a GitHub user) maintains it in omarshahine/HomeClaw, which has 176 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 8, 2026.

Source: omarshahine/HomeClaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.