Skip to content

Commit 18fc675

Browse files
committed
feat: Add Weather example and workspace filesystem cleanup
Add a Weather example project that exercises a richer SwiftUI app surface for XcodeBuildMCP workflows. Centralize workspace-scoped filesystem cleanup so log retention, daemon files, and simulator OSLog helpers are managed through multi-process-safe paths and locks. This keeps active workspace artifacts protected while pruning stale XcodeBuildMCP-owned files consistently.
1 parent b390867 commit 18fc675

193 files changed

Lines changed: 7984 additions & 558 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

AGENTS.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,15 @@ When reading issues:
8080
- When working on skill sources in `skills/`, use the `skill-creator` skill workflow.
8181
- After modifying any skill source, run `npx skill-check <skill-directory>` and address all errors/warnings before handoff.
8282
-
83+
## Multi-process filesystem state
84+
- XcodeBuildMCP explicitly supports multiple concurrent MCP server, daemon, CLI, test, and helper processes for the same or different workspaces.
85+
- Shared filesystem state under `~/Library/Developer/XcodeBuildMCP` must be multi-process safe.
86+
- Use workspace-key scoped directories for workspace-owned state.
87+
- Do not store runtime state under `~/.xcodebuildmcp`; `.xcodebuildmcp/config.yaml` is only project configuration.
88+
- Use shared lock and atomic-write helpers for mutable shared files.
89+
- Prefer one-record-per-file registries over shared aggregate files.
90+
- Cleanup must verify ownership before deleting shared artifacts.
91+
8392
## Style
8493
- Keep answers short and concise
8594
- No emojis in commits, issues, PR comments, or code

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111
- Fixed simulator OSLog helper cleanup so server and daemon startup reconcile same-workspace orphaned log streams without stopping helpers owned by live sessions in other workspaces ([#382](https://github.com/getsentry/XcodeBuildMCP/issues/382)).
1212
- Fixed Weather example test discovery and made CLI test progress visible while tests are running instead of leaving the last build phase displayed.
1313

14+
### Changed
15+
16+
- Centralized workspace log retention and startup/shutdown filesystem cleanup so XcodeBuildMCP-owned logs are pruned consistently while preserving active daemon and simulator OSLog outputs.
17+
1418
## [2.5.0-beta.1]
1519

1620
### Breaking

CLAUDE.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,15 @@ When reading issues:
2121
- When working on skill sources in `skills/`, use the `skill-creator` skill workflow.
2222
- After modifying any skill source, run `npx skill-check <skill-directory>` and address all errors/warnings before handoff.
2323
-
24+
## Multi-process filesystem state
25+
- XcodeBuildMCP explicitly supports multiple concurrent MCP server, daemon, CLI, test, and helper processes for the same or different workspaces.
26+
- Shared filesystem state under `~/Library/Developer/XcodeBuildMCP` must be multi-process safe.
27+
- Use workspace-key scoped directories for workspace-owned state.
28+
- Do not store runtime state under `~/.xcodebuildmcp`; `.xcodebuildmcp/config.yaml` is only project configuration.
29+
- Use shared lock and atomic-write helpers for mutable shared files.
30+
- Prefer one-record-per-file registries over shared aggregate files.
31+
- Cleanup must verify ownership before deleting shared artifacts.
32+
2433
## Style
2534
- Keep answers short and concise
2635
- No emojis in commits, issues, PR comments, or code
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
schemaVersion: 1
2+
enabledWorkflows:
3+
- simulator
4+
- ui-automation
5+
debug: false
6+
sentryDisabled: false
7+
setupPreferences:
8+
platforms:
9+
- iOS
10+
sessionDefaults:
11+
projectPath: Weather.xcodeproj
12+
scheme: Weather
13+
simulatorId: A2C64636-37E9-4B68-B872-E7F0A82A5670
14+
simulatorName: iPhone 17 Pro

example_projects/Weather/AGENTS.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# AGENTS.md
2+
3+
- If using XcodeBuildMCP, use the installed XcodeBuildMCP skill before calling XcodeBuildMCP tools.

0 commit comments

Comments
 (0)