Dt Setup iOS
Dynatrace/dynatrace-for-ai
Set up the Dynatrace iOS SDK (OneAgent) in an iOS project using Swift Package Manager.
A skill your agent uses when an agent needs to inspect a live iOS app through the Inspector MCP bridge, register or troubleshoot InspectorMCPServer for a consumer Xcode project, or query, resolve…
$ npx skills add ipedro/Inspector --skill inspector-mcp -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ipedro/Inspector inspector-mcp --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .claude/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .claude/skills/inspector-mcp && rm -rf skills-srcUse ~/.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/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .claude/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcpType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ipedro/Inspector --skill inspector-mcp -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ipedro/Inspector inspector-mcp --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .agents/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .agents/skills/inspector-mcp && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .agents/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ipedro/Inspector --skill inspector-mcp -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ipedro/Inspector inspector-mcp --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .cursor/skills/inspector-mcp && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .cursor/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ipedro/Inspector.git --path Plugins/inspector-mcp/skills/inspector-mcp--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ipedro/Inspector --skill inspector-mcp -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ipedro/Inspector inspector-mcp --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .gemini/skills/inspector-mcp && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .gemini/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ipedro/Inspector inspector-mcpInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ipedro/Inspector --skill inspector-mcp -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .github/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .github/skills/inspector-mcp && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .github/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ipedro/Inspector --skill inspector-mcp -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ipedro/Inspector inspector-mcp --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ipedro/Inspector.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/Plugins/inspector-mcp/skills/inspector-mcp .opencode/skills/inspector-mcp && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "inspector-mcp" agent skill from https://github.com/ipedro/Inspector/tree/develop/Plugins/inspector-mcp/skills/inspector-mcp into .opencode/skills/inspector-mcp/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "inspector-mcp", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
inspector-mcpA skill your agent uses when an agent needs to inspect a live iOS app through the Inspector MCP bridge, register or troubleshoot InspectorMCPServer for a consumer Xcode project, or query, resolve…
Inspector MCP is an agent skill from ipedro/Inspector. Use when an agent needs to inspect a live iOS app through the Inspector MCP bridge, register or troubleshoot InspectorMCPServer for a consumer Xcode project, or query, resolve, and snapshot the live UIKit hierarchy on Simulator. Especially useful when Inspector is a SwiftPM dependency of another app and the Inspector package path must be derived from Xcode DerivedData instead of assumed from the current repo.
Its SKILL.md is about 3.4k 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/consumer-app-setup.md`, `references/inspection-patterns.md` and `references/troubleshooting.md`).
It sits in Mobile, covering iOS development. It works with Model Context Protocol, Xcode, iOS and Swift. The repository describes itself as: Inspector is a debugging library written in Swift. The licence is MIT.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit bb220e4. It shows what the files ask for, not the result of running them.
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.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
swiftpython3xcodebuildcodexclaudexcrunFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Inspector MCP loads about 3.4k tokens when it runs, and up to ~7.3k if it reads all its reference files. Until then it costs about 107 tokens; SKILL.md has 1,246 words of instructions outside code blocks.
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.
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.
The full file from ipedro/Inspector at commit bb220e4, republished under its MIT licence (© ipedro). 1,246 words, ~3,359 tokens.
.claude/skills/inspector-mcp/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Use this skill to set up and use the Inspector MCP bridge against a running iOS Simulator app. Prefer this when the task is live UI inspection, not static source reading.
Do not assume Inspector lives in the current repo. In consumer apps it is often checked out under Xcode DerivedData.
Use the bundled helper first:
python3 "${CLAUDE_PLUGIN_ROOT}/skills/inspector-mcp/scripts/find_inspector_package.py" \
--xcodeproj /absolute/path/to/App.xcodeproj \
--scheme AppSchemeOr for workspaces:
python3 "${CLAUDE_PLUGIN_ROOT}/skills/inspector-mcp/scripts/find_inspector_package.py" \
--workspace /absolute/path/to/App.xcworkspace \
--scheme AppSchemeIf that fails:
--package-path.You need:
Bundle identifier pattern:
xcodebuild -project /absolute/path/to/App.xcodeproj -scheme AppScheme -showBuildSettings \
| awk -F ' = ' '$1 ~ /^[[:space:]]*PRODUCT_BUNDLE_IDENTIFIER$/ { print $2; exit }'Use -workspace instead of -project when appropriate.
The app must opt in before Inspector.start().
Minimum pattern:
var configuration = InspectorConfiguration.config(
enableMCPBridge: true,
snapshotExpiration: 300
)
configuration.snapshotMaxCount = 8
Inspector.setConfiguration(configuration)
Inspector.start()If the app does not enable the bridge, MCP setup is blocked. For full consumer-side wiring, use the sibling inspector-mcp-consumer skill.
Codex:
codex mcp add inspector -- \
swift --package-path /absolute/path/to/Inspector run InspectorMCPServer launch \
--xcodeproj /absolute/path/to/App.xcodeproj \
--scheme AppScheme \
--bundle-id com.example.appClaude Code:
claude mcp add inspector -- \
swift --package-path /absolute/path/to/Inspector run InspectorMCPServer launch \
--xcodeproj /absolute/path/to/App.xcodeproj \
--scheme AppScheme \
--bundle-id com.example.appIf you are inside the Inspector repo itself, you can also point the client at:
<Inspector repo>/Examples/MCP/run-inspector-mcp.sh<Inspector repo>/Examples/MCP/codex-inspector-mcp.json (replace the cwd placeholder).Tool order matters:
queryresolve / refresh_handlesubtree / list_actions / list_propertiessnapshotcapture_state / diff_states / save_scenario / diff_scenario when debugging semantic state driftStart narrow. Prefer:
accessibilityIdentifierEqualsclassNameContainsdisplayNameContainselementNameContainsnodeKindGood first query:
{"accessibilityIdentifierEquals":"Content Stack View"}Avoid broad snapshots first. First get a stable handle with query, confirm the node with resolve, then call snapshot.
For longer exploration sessions, save the node's semanticReference from query/resolve results. If a handle goes stale, prefer:
{"semanticReference":"<semanticReference returned by query or resolve>"}with refresh_handle.
Important semantics:
For depth-limited app-owned tree inspection, use:
{"handle":"<handle returned by query>","maxDepth":2}with subtree.
For interactive sessions, chain query → inspect to open the Inspector UI focused on a view:
{"handle":"<handle returned by query>"}Response: {"handle":"...", "presented": true}. presented: true means the Inspector UI dispatch was accepted — the modal animates in asynchronously. Consecutive inspect calls stack modals; Inspector's native back affordance dismisses them.
For the first write-side app interaction primitive, use query → tap on exact-handle button-like controls:
{"handle":"<handle returned by query>"}Response: {"handle":"...", "dispatched": true}. dispatched: true means Inspector synchronously fired one supported control action for that exact-handle UIControl. This is semantic activation, not synthetic touch injection:
UIViewsMVP limitations:
UIControls wired for .primaryActionTriggered or .touchUpInsidequery before the next action because the UI may have changed and invalidated handlesFor semantic UI operations beyond tap, use query → list_actions → perform_action:
{"handle":"<handle returned by query>"}list_actions returns opaque actionRef values for currently available actions such as:
inspect)showHighlight / hideHighlight)Then call:
{"actionRef":"<actionRef returned by list_actions>"}Response:
{"actionRef":"...","performed":true,"refreshRecommended":true}Because action refs are ephemeral, rediscover them after a successful action before chaining the next semantic operation.
For broader property-driven mutation, use query → list_properties → set_property:
{"handle":"<handle returned by query>","panel":"attributes","includeReadOnly":false}list_properties returns editable descriptors plus opaque propertyRef values. set_property then applies exactly one typed value field:
boolValuenumberValuestringValueselectionIndexExample:
{"propertyRef":"<propertyRef returned by list_properties>","boolValue":true}MVP limitations:
switch, stepper, textField, textView, selection lists/groups)For named semantic baselines, use:
{"name":"quicktype-baseline"}with:
save_scenario → capture the current live hierarchy under a stable namelist_scenarios → enumerate saved baselinesdiff_scenario → compare the current hierarchy against that named baselinedelete_scenario → remove obsolete baselinescapture_state / diff_states are still better for short-lived ad-hoc before/after comparisons inside one session. save_scenario is for longer-lived named references such as “clean screen”, “keyboard shown”, or “quicktype visible”.
Call list_layers to see which built-in highlight layers are populated on the current screen, along with their active state:
{}Response (success envelope):
{"layers":[
{"name":"Wireframes","displayName":"Wireframes","active":false},
{"name":"Controls","displayName":"Controls","active":true}
]}Flip a layer on or off by name — toggle_layer returns the intended post-toggle state immediately (install/remove is async on the UI thread):
{"name":"Wireframes"}Response: {"name":"Wireframes","active":true}. If the name does not match any populated layer, the response is an internalFailure envelope whose details.message names the offending input — call list_layers first to copy the exact name.
Snapshot request:
{"handle":"HANDLE","afterScreenUpdates":true}Response:
{"handle":"HANDLE","mimeType":"image/png","pngPath":"/Users/you/Library/Developer/CoreSimulator/…/tmp/inspector-snapshots/<uuid>.png","size":{"width":402,"height":874},"deviceScale":3,"createdAt":"2026-04-17T13:03:29Z"}After receiving the response, read the PNG with your file-reading tool (Claude Code: Read pngPath). Do not base64-decode — the bytes live on disk, not inline.
There is no host-side auto-recovery.
If you get staleHandle:
queryresolve or snapshotDo not retry the stale handle repeatedly.
Current constraints:
127.0.0.1:49321inspect adds write-side dispatch (presents Inspector UI); all other tools remain non-mutatinglist_layers (read-only) and toggle_layer (write-side) add layer-highlight controltap adds exact-handle semantic activation for button-like UIControlslist_properties + set_property add typed property mutation by reusing Inspector property handlerslist_actions + perform_action add generic semantic action discovery/invocation over Inspector's existing action modelsave_scenario / list_scenarios / delete_scenario / diff_scenario add named semantic baselines on top of state capturerefresh_handle / subtree add stable-enough exploration across time and bulk subtree inspection for app-owned UIIf startup says the endpoint is occupied by the wrong app:
If you are working in the Inspector repo, prefer:
xcodebuild test \
-project <Inspector repo>/Example/Example.xcodeproj \
-scheme Example \
-destination 'platform=iOS Simulator,name=iPhone 17 Pro,OS=26.4' \
-only-testing:InspectorTests/InspectorMCPTransportTestsFor direct package verification of the iOS target:
SDK=$(xcrun --sdk iphonesimulator --show-sdk-path)
swift build --target Inspector --sdk "$SDK" --triple arm64-apple-ios26.4-simulatorFor the host executable:
swift build --product InspectorMCPServerRead these only when needed:
/mcp reports "Failed to reconnect" with the bridge actually up, when Read pngPath returns stale/empty files, or when snapshot fails with captureFailedsnapshot tool response no longer carries pngBase64. It now returns pngPath (absolute host path) and createdAt; scale was renamed to deviceScale. Restart your MCP clients (Codex, Claude Code) after upgrading Inspector — in-flight sessions keep the old schema until reconnected.inspect tool. No breaking changes; additive over v2. Reconnect clients to pick up the refreshed tools/list.list_layers and toggle_layer tools. Additive over v2.1. Reconnect clients to refresh tools/list. /health.operations now includes layers and toggleLayer.tap tool. Additive over v2.2. Reconnect clients to refresh tools/list. tap is semantic UIControl activation, not synthetic touch injection.list_properties and set_property tools. Additive over v2.3. Reconnect clients to refresh tools/list. Property refs are ephemeral and should be rediscovered after successful mutations.list_actions and perform_action tools. Additive over v2.4. Reconnect clients to refresh tools/list. Action refs are ephemeral and should be rediscovered after successful actions.save_scenario, list_scenarios, delete_scenario, and diff_scenario tools. Additive over v2.5. Reconnect clients to refresh tools/list. Named scenarios are in-memory semantic baselines and do not survive bridge restarts.refresh_handle and subtree tools. Additive over v2.6. Reconnect clients to refresh tools/list. Refresh uses best-effort semantic rebinding for exploration only; exact mutation still requires a valid live handle.© ipedro, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files (scripts, references) in Plugins/inspector-mcp/skills/inspector-mcp of ipedro/Inspector.
Open the folder on GitHubat commit bb220e4
Inspector MCP 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Inspector MCP this skillipedro/Inspector | 170 | — | ~3.4k | Automated safety check: Pass | MIT | |
| Dt Setup iOSDynatrace/dynatrace-for-ai | 161 | — | ~3.3k | Automated safety check: Pass | Apache-2.0 | |
| Update Swiftui APIsAvdLee/SwiftUI-Agent-Skill | 3.7k | — | ~1.2k | Automated safety check: Pass | MIT | |
| iOS Simulator Skillconorluddy/ios-simulator-skill | 1.3k | — | ~5.7k | Automated safety check: Pass | MIT | |
| Mlkit Released-date/google-mlkit-swiftpm | 148 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Xcode Buildpzep1/xcode-build-skill | 138 | — | ~1.5k | Automated safety check: Notes | MIT |
Dynatrace/dynatrace-for-ai
Set up the Dynatrace iOS SDK (OneAgent) in an iOS project using Swift Package Manager.
AvdLee/SwiftUI-Agent-Skill
Scan Apple's SwiftUI documentation for deprecated APIs and update the SwiftUI Expert Skill with modern replacements.
conorluddy/ios-simulator-skill
29 production-ready scripts for iOS app testing, building, and automation.
d-date/google-mlkit-swiftpm
A skill your agent uses when triaging incoming issues or PRs for google-mlkit-swiftpm, or when cutting a release.
pzep1/xcode-build-skill
Build and run iOS/macOS apps using xcodebuild and xcrun simctl directly.
conorluddy/xclaude-plugin
Manages iOS Simulator devices and apps through the execute_simulator_command MCP tool instead of raw simctl: boot, create and delete devices, install and launch apps, screenshots and diagnostics.
ipedro/Inspector
A skill your agent uses when an agent needs to implement or modify the Inspector library itself — panel UI, hierarchy/runtime behavior, custom property models, macros, or Example-app dogfooding.
ipedro/Inspector
A skill your agent uses when an agent needs to integrate the Inspector library into an app without focusing on the MCP bridge: startup wiring, configuration/customization, debug-only gating, and…
ipedro/Inspector
A skill your agent uses when an agent needs to patch a consumer iOS app so it exposes the Inspector MCP bridge, add or verify the app-side Inspector startup configuration, or choose the correct…
Works with
Categories
A skill your agent uses when an agent needs to inspect a live iOS app through the Inspector MCP bridge, register or troubleshoot InspectorMCPServer for a consumer Xcode project, or query, resolve…. Inspector MCP is an agent skill from ipedro/Inspector. Use when an agent needs to inspect a live iOS app through the Inspector MCP bridge, register or troubleshoot InspectorMCPServer for a consumer Xcode project, or query, resolve, and snapshot the live UIKit hierarchy on Simulator.
Inspector MCP fits situations like: an agent needs to inspect a live iOS app through the Inspector MCP bridge; troubleshoot InspectorMCPServer for a consumer Xcode project; snapshot the live UIKit hierarchy on Simulator.
Run `npx skills add ipedro/Inspector --skill inspector-mcp -a claude-code`. Or copy the skill folder (Plugins/inspector-mcp/skills/inspector-mcp in ipedro/Inspector) into .claude/skills/inspector-mcp in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ipedro/Inspector --skill inspector-mcp -a codex`. Or copy the skill folder (Plugins/inspector-mcp/skills/inspector-mcp in ipedro/Inspector) into .agents/skills/inspector-mcp in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ipedro/Inspector --skill inspector-mcp -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/inspector-mcp, .gemini/skills/inspector-mcp, .github/skills/inspector-mcp and .opencode/skills/inspector-mcp in your project.
Going by SKILL.md and its folder, Inspector MCP needs Python for the scripts in its folder and the command-line tools its instructions call (swift, python3, xcodebuild, codex, claude and xcrun). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
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.
Inspector MCP is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.4k tokens (SKILL.md is roughly 13k 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 4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Inspector MCP: Dt Setup iOS (Dynatrace/dynatrace-for-ai, 161 stars), Update Swiftui APIs (AvdLee/SwiftUI-Agent-Skill, 3.7k stars), iOS Simulator Skill (conorluddy/ios-simulator-skill, 1.3k stars) and Mlkit Release (d-date/google-mlkit-swiftpm, 148 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ipedro (a GitHub user) maintains it in ipedro/Inspector, which has 170 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on April 19, 2026.
Source: ipedro/Inspector on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.