Skip to content

feat(tools)!: Standardize launch arguments#403

Merged
cameroncooke merged 1 commit intomainfrom
cameroncooke/feat/launch-args-tools
May 7, 2026
Merged

feat(tools)!: Standardize launch arguments#403
cameroncooke merged 1 commit intomainfrom
cameroncooke/feat/launch-args-tools

Conversation

@cameroncooke
Copy link
Copy Markdown
Collaborator

@cameroncooke cameroncooke commented May 7, 2026

Standardize launch arguments across XcodeBuildMCP tools with a single launchArgs input.

Build-and-run tools now accept launchArgs for app runtime arguments while keeping extraArgs scoped to xcodebuild and build settings. Launch-only tools use launchArgs as their canonical launch-argument input instead of the previous generic args field, avoiding ambiguity between build-time and app runtime argument surfaces.

This is an intentional tool contract change for launch-only tools. The device launch primitive now appends launch arguments after the bundle identifier so they are delivered to the app process rather than the build command.

Docs update: getsentry/xcodebuildmcp.com#14.

Validated with typecheck, focused affected tests, lint, format check, and build.

Add launchArgs to build-and-run tools and use it as the canonical
launch-argument parameter for launch-only tools. Keep extraArgs scoped to
xcodebuild and build settings so app runtime arguments cannot leak into
build commands.

BREAKING CHANGE: launch-only tools now use launchArgs instead of args for
app launch arguments.

Co-Authored-By: Codex <noreply@openai.com>
@cameroncooke cameroncooke marked this pull request as ready for review May 7, 2026 20:23
@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 7, 2026

Open in StackBlitz

npm i https://pkg.pr.new/xcodebuildmcp@403

commit: 402f423

Comment thread CHANGELOG.md
- Added configurable file artifact text rendering with CLI output defaulting to labeled `Files:` lists, MCP text preserving compact trees, and `filePathRenderStyle` / `XCODEBUILDMCP_FILE_PATH_RENDER_STYLE` / `--file-path-render-style` overrides.
- Added workspace-scoped default xcresult bundles for simulator, device, and macOS test tools so test artifacts are available in structured and text output even when callers do not pass `-resultBundlePath`.
- Added opt-in MCP server idle shutdown via `XCODEBUILDMCP_MCP_IDLE_TIMEOUT_MS`, allowing unused MCP server processes to gracefully exit after a configured idle period ([#394](https://github.com/getsentry/XcodeBuildMCP/issues/394)).
- Added canonical `launchArgs` launch-argument input across build-and-run tools (`build_run_sim`, `build_run_device`, `build_run_macos`) and launch-only tools (`launch_app_sim`, `launch_app_device`, `launch_mac_app`) so runtime launch arguments are passed only to app launch steps; `extraArgs` remains build-system-only and launch-only tools no longer use generic `args`.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Breaking removal of args input on launch-only tools not recorded under a Breaking section

The PR title declares a breaking tool contract change (feat(tools)!:) and the entry itself states launch-only tools no longer use generic args, which removes a previously supported input field. The [Unreleased] section only contains Added/Fixed/Changed, while the prior [2.5.0-beta.1] release uses a ### Breaking subsection for analogous tool-contract changes. Release notes generated from this section via scripts/generate-github-release-notes.mjs will not surface this as a breaking change, leaving users unaware that callers passing args to launch_app_sim/launch_app_device/launch_mac_app will break.

Verification

Read CHANGELOG.md lines 1-60 to confirm the [Unreleased] section lacks a ### Breaking subsection and compared against the [2.5.0-beta.1] section which uses ### Breaking for removed tool inputs. Cross-referenced the PR title feat(tools)!: (conventional-commit breaking marker) and the entry text stating launch-only tools no longer use generic args, which is a removal of a previously accepted input.

Identified by Warden xcodebuildmcp-docs-release-review · REY-VM5

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix attempt detected (commit 402f423)

The commit added documentation about the breaking change (removal of generic args from launch-only tools) to the Added section at line 10, but failed to create a dedicated ### Breaking subsection in the [Unreleased] section as required to properly surface this as a breaking change in generated release notes.

The original issue appears unresolved. Please review and try again.

Evaluated by Warden

@cameroncooke cameroncooke merged commit b1188ec into main May 7, 2026
39 checks passed
@cameroncooke cameroncooke deleted the cameroncooke/feat/launch-args-tools branch May 7, 2026 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant