Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/debugswift/xcodebazelmcp/example-projectnpx skills add DebugSwift/XcodeBazelMCP --skill example-projectgit clone --depth 1 https://github.com/DebugSwift/XcodeBazelMCPWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00049 | $0.01171 |
| Opus 5 | $0.00024 | $0.00585 |
| Sonnet 5 | $0.00010 | $0.00234 |
| Haiku 4.5 | $0.00005 | $0.00117 |
Grade A, and why
example-project scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 126 lines — stays where its author put it; the contents beside it link to each section on GitHub.
BazelApp Example Project
Location: example_projects/BazelApp/
Quick Reference
| Target | Label | Type | Platform |
|---|---|---|---|
| iOS app | //app:app |
ios_application |
iPhone + iPad |
| macOS app | //mac:mac |
macos_application |
macOS 14+ |
| API tests | //modules/API:APITests |
ios_unit_test |
Simulator |
| Models tests | //modules/Models:ModelsTests |
ios_unit_test |
Simulator |
| macOS tests | //mac:MacTests |
macos_unit_test |
macOS |
App Identity
Defined in tools/shared.bzl:
- Bundle ID:
com.example.SwiftUIApp - Bundle Name:
SwiftUIApp - Minimum iOS: 18.0
- macOS Bundle ID:
com.example.SwiftUIMacApp - Minimum macOS: 14.0
XcodeBazelMCP Config
example_projects/BazelApp/.xcodebazelmcp/config.yaml defines profiles:
| Profile | Target | Platform | Build Mode |
|---|---|---|---|
app |
//app:app |
simulator | debug |
mac |
//mac:mac |
macos | debug |
models |
//modules/Models:ModelsLib |
simulator | none |
mac-tests |
//mac:MacTests |
macos | debug |
Testing Workflows
Simulator (iOS)
bazel_ios_build_and_run target=//app:app
bazel_ios_test target=//modules/API:APITests
bazel_ios_test target=//modules/Models:ModelsTests
Device (physical iPhone/iPad)
bazel_ios_device_build_and_run target=//app:app deviceName=iPad
bazel_ios_device_test target=//modules/API:APITests deviceId=<UDID>
Device builds use --ios_multi_cpus=arm64. The families field in the iOS target includes both iphone and ipad.
macOS
bazel_macos_build target=//mac:mac
bazel_macos_test target=//mac:MacTests
bazel_macos_run target=//mac:mac
Setting Workspace
Before running any build/test tool, set the workspace:
bazel_ios_set_workspace workspacePath=<absolute_path>/example_projects/BazelApp
Or use the CLI:
xcodebazelmcp mcp --workspace <path>/example_projects/BazelApp
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 126 lines · 49 tokens per session scan A 0a4a40e4f7f9
example-project is a skill published in the GitHub repository DebugSwift/XcodeBazelMCP (7 stars, last pushed 1mo ago), licensed MIT. It adds 49 tokens to every session and 1,171 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
test
Run tests. Use after code changes to validate. Arguments: unit (default, no GPU), e2e (with models), filter name, or all.
boutique-store
Create and use Boutique Store for Swift data persistence, including initialization, @Stored controllers, CRUD operations, operation chaining, and granular event monitoring. Use when persisting arrays of items, building data controllers, or working with Boutique's Store type.
boutique-stored-values
Persist individual values with Boutique's @StoredValue (UserDefaults) and @SecurelyStoredValue (Keychain), including set, reset, toggle, bindings, keypath setters, array and dictionary helpers, and async observation. Use when storing preferences, settings, feature flags, or sensitive data like auth tokens.
boutique-swiftui
Integrate Boutique with SwiftUI views using onChange, onStoreDidLoad, bindings, and preview stores. Use when building SwiftUI views that display or react to Boutique-persisted data.
analyze-db-logs
Analyze Drift / SQLite slow-query and super-slow-query logs against this app's known stall patterns (read waves, N+1, transaction scoping, MultiExecutor contention, WAL/OS factors).
review-comments
Fetch PR review comments, address each one in code, and post resolution replies.