|
1 | 1 | # Changelog |
2 | 2 |
|
3 | | -## [Unreleased] |
| 3 | +## [2.2.0] |
4 | 4 |
|
5 | 5 | ### Added |
6 | 6 |
|
7 | | -- Added support for `customWorkflows` in `.xcodebuildmcp/config.yaml`, so user-defined workflow names can be referenced from `enabledWorkflows` and mapped to explicit tool lists. |
| 7 | +- Added `get_coverage_report` and `get_file_coverage` tools for inspecting code coverage from test results — view per-target summaries or drill into function-level coverage and uncovered line ranges for specific files ([#240](https://github.com/getsentry/XcodeBuildMCP/pull/240) by [@irangareddy](https://github.com/irangareddy)). See [docs/TOOLS.md](docs/TOOLS.md). |
| 8 | +- Added a unified build-and-run command for physical devices, matching the existing simulator workflow so agents can build and launch device apps in a single step. |
| 9 | +- Added an interactive setup wizard via `xcodebuildmcp setup` that walks you through creating or updating `.xcodebuildmcp/config.yaml` — select workflows, pick a simulator, set your scheme and project, and configure debug options without editing YAML by hand. Non-interactive mode remains available for CI and scripting. See [docs/CONFIGURATION.md](docs/CONFIGURATION.md). |
| 10 | + |
| 11 | + ```bash |
| 12 | + xcodebuildmcp setup |
| 13 | + ``` |
| 14 | +- Added `AGENTS.md` generation to the `init` command, providing prescriptive agent workflow instructions for your project. |
| 15 | +- Added support for custom workflows in `.xcodebuildmcp/config.yaml`. Define your own workflow names and map them to an explicit list of tools, then reference them from `enabledWorkflows` like any built-in workflow. This lets you limit the tools your agent sees to exactly the ones you need. See [docs/CONFIGURATION.md](docs/CONFIGURATION.md#custom-workflows). |
| 16 | + |
| 17 | + ```yaml |
| 18 | + enabledWorkflows: ["my-workflow"] |
| 19 | + customWorkflows: |
| 20 | + my-workflow: |
| 21 | + - build_run_sim |
| 22 | + - record_sim_video |
| 23 | + - screenshot |
| 24 | + ``` |
| 25 | +- Added AdaL CLI setup instructions ([#242](https://github.com/getsentry/XcodeBuildMCP/pull/242) by [@Abdulrahmansoliman](https://github.com/Abdulrahmansoliman)). |
| 26 | +
|
| 27 | +### Changed |
| 28 | +
|
| 29 | +- CLI now auto-fills tool arguments from session defaults. If your config file sets a scheme, project path, or simulator, every CLI command picks those up automatically — no need to repeat `--scheme`, `--project-path`, and similar flags on every invocation. See [docs/CLI.md](docs/CLI.md). |
| 30 | + |
| 31 | + ```yaml |
| 32 | + # .xcodebuildmcp/config.yaml |
| 33 | + sessionDefaults: |
| 34 | + scheme: MyApp |
| 35 | + projectPath: ./MyApp.xcodeproj |
| 36 | + simulatorName: iPhone 17 Pro |
| 37 | + ``` |
| 38 | + |
| 39 | + ```bash |
| 40 | + # Before: every command needed explicit flags |
| 41 | + xcodebuildmcp simulator build --scheme MyApp --project-path ./MyApp.xcodeproj |
| 42 | +
|
| 43 | + # Now: flags are filled from session defaults |
| 44 | + xcodebuildmcp simulator build |
| 45 | + ``` |
| 46 | + |
| 47 | + This also works with session defaults profiles, which is especially useful for monorepos. Define a profile per sub-project and the CLI uses the active profile's values. Override the profile for a single command with `--profile`. See [docs/SESSION_DEFAULTS.md](docs/SESSION_DEFAULTS.md#namespaced-profiles). |
| 48 | + |
| 49 | + ```yaml |
| 50 | + # .xcodebuildmcp/config.yaml |
| 51 | + schemaVersion: 1 |
| 52 | + sessionDefaultsProfiles: |
| 53 | + calculator: |
| 54 | + workspacePath: ./iOS_Calculator/CalculatorApp.xcworkspace |
| 55 | + scheme: CalculatorApp |
| 56 | + simulatorName: iPhone 17 Pro |
| 57 | + ios-test: |
| 58 | + projectPath: ./iOS/MCPTest.xcodeproj |
| 59 | + scheme: MCPTest |
| 60 | + simulatorName: iPhone 17 Pro |
| 61 | + spm: |
| 62 | + projectPath: ./spm |
| 63 | + scheme: spm |
| 64 | + activeSessionDefaultsProfile: calculator |
| 65 | + ``` |
| 66 | + |
| 67 | + ```bash |
| 68 | + # Build using the active profile (calculator) |
| 69 | + xcodebuildmcp simulator build-and-run |
| 70 | +
|
| 71 | + # Build a different sub-project without switching the active profile |
| 72 | + xcodebuildmcp simulator build-and-run --profile ios-test |
| 73 | + ``` |
| 74 | +- Default simulator updated from iPhone 16 to iPhone 17. |
| 75 | +- Tool annotations now more accurately classify operations, reducing unnecessary confirmation prompts in MCP clients that respect annotations ([#253](https://github.com/getsentry/XcodeBuildMCP/pull/253) by [@saschagordner](https://github.com/saschagordner)). |
| 76 | +- Improved agent workflow guidance with more prescriptive instructions for common tasks. |
| 77 | +- Bundled AXe updated to 1.5.2. |
8 | 78 |
|
9 | 79 | ### Fixed |
10 | 80 |
|
11 | | -- Fixed `swift_package_build`, `swift_package_test`, and `swift_package_clean` swallowing compiler diagnostics on failure by treating empty stderr as falsy, so stdout diagnostics are included in the error response ([#243](https://github.com/getsentry/XcodeBuildMCP/issues/243)). |
12 | | -- Fixed stderr warnings (e.g. "multiple matching destinations") hiding actual test failures by prioritizing xcresult output when available ([#231](https://github.com/getsentry/XcodeBuildMCP/issues/231)) |
| 81 | +- Fixed Swift Package tools (`swift_package_build`, `swift_package_test`, `swift_package_clean`) hiding compiler diagnostics when stderr was empty ([#255](https://github.com/getsentry/XcodeBuildMCP/pull/255) by [@doovers](https://github.com/doovers)). |
| 82 | +- Fixed stderr warnings (e.g. "multiple matching destinations") hiding actual test failures by prioritizing xcresult output when available ([#254](https://github.com/getsentry/XcodeBuildMCP/pull/254) by [@czottmann](https://github.com/czottmann)). |
| 83 | + |
| 84 | +Various other internal improvements to stability, performance, and code quality. |
13 | 85 |
|
14 | 86 | ## [2.1.0] |
15 | 87 |
|
@@ -318,3 +390,4 @@ Please note that the UI automation features are an early preview and currently i |
318 | 390 | ## [v1.0.1] - 2025-04-02 |
319 | 391 | - Initial release of XcodeBuildMCP |
320 | 392 | - Basic support for building iOS and macOS applications |
| 393 | + |
0 commit comments