Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction.

GPL-2.0Auto-check: notesMobile

Install Verify

skills CLI
$ npx skills add woocommerce/woocommerce-ios --skill verify -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install woocommerce/woocommerce-ios verify --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/woocommerce/woocommerce-ios.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/verify .claude/skills/verify && rm -rf skills-src

Use ~/.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/

Facts

Skill name
verify
GitHub stars
358
Token cost
~1.2k tokens
SKILL.md length
550 words
Files
1
Skills in repo
12
Repo updated
First seen
Licence
GPL-2.0

At a glance

Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction.

  • Works in 8 steps: Assess the Environment → Detect Feature Scope → Start Mock Server (only if needed) → …
  • Mobile work in your project
  • SKILL.md covers Step 1: Assess the Environment, Step 2: Detect Feature Scope, Step 3: Start Mock Server… and Step 4: Build the App, plus 4 more sections
  • Calls xcrun, git and xcodebuild

What it does

Verify is an agent skill from woocommerce/woocommerce-ios. Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Use after making changes to visually confirm they work from a user's perspective.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile. It works with WooCommerce, Model Context Protocol and iOS. The licence is GPL-2.0.

When your agent uses it

  • Mobile work in your project

Example prompts

  • “/verify”

Requirements

  • Pre-approved tools (allowed-tools): Bash, Read, Grep, Glob, mcp__mobile-mcp__*

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Assess the Environment
  2. Detect Feature Scope
  3. Start Mock Server (only if needed)
  4. Build the App
  5. Launch App
  6. Navigate and Verify
  7. Report Results
  8. Cleanup

What it can do on your machine

Read from SKILL.md and the folder at commit b061662. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Grep
    • Glob
    • mcp__mobile-mcp__*

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • xcrun
    • git
    • xcodebuild

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Verify loads about 1.2k tokens when it runs. Until then it costs about 45 tokens; SKILL.md has 550 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~45
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Grep, Glob, mcp__mobile-mcp__*

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from woocommerce/woocommerce-ios at commit b061662, republished under its GPL-2.0 licence (© woocommerce). 550 words, ~1,207 tokens.

Download SKILL.mdSave it as .claude/skills/verify/SKILL.md (or your agent's skills folder).
name
verify
description
Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Use after making changes to visually confirm they work from a user's perspective.
allowed-tools
Bash, Read, Grep, Glob, mcp__mobile-mcp__*
user-invocable
true

E2E Simulator Verification

Build the app, launch it on the iOS simulator, and verify the affected feature areas work correctly by navigating the UI and checking for expected elements.

Read .claude/references/screen-identifiers.md to understand how to identify screens and navigate between them.

Step 1: Assess the Environment

Before setting up anything, determine what's already available:

  1. Simulator: is an iPhone simulator already booted? (xcrun simctl list devices booted | grep iPhone)
  2. App state: is the app already installed? (xcrun simctl listapps <UDID> 2>/dev/null | grep com.automattic.woocommerce)
  3. Session state: launch the app and check the current screen — is the user already logged in (tab bar visible) or on the login screen?

Most verification happens during development where the simulator has a current build and an active session. In this case, you only need to build your changes and re-launch — no mock server or login flow needed.

Use the mocked environment (WireMock + logout-at-launch) only when:

  • There is no existing session / data on the simulator
  • You need deterministic mock data (e.g., verifying specific order states)
  • The user explicitly requests mocked verification

If a mocked environment is not needed, skip Steps 3 and the mock-specific launch args in Step 5.

Step 2: Detect Feature Scope

Determine which features were changed:

bash
git diff --name-only trunk...HEAD

If no diff against trunk, fall back to git diff --name-only HEAD~1.

Read .claude/references/feature-map.json and match changed file paths against pathPatterns for each feature. Collect all matched features. If no features match, skip verification entirely — report which files changed, note that none matched any feature path pattern, and stop (do not proceed to Steps 3-8).

Step 3: Start Mock Server (only if needed)

Use the /mocks skill approach: start WireMock on port 8282 in the background. Verify it's running before proceeding.

Step 4: Build the App

Use the /simulator skill approach to discover a booted simulator UDID.

bash
xcodebuild -workspace WooCommerce.xcworkspace -scheme WooCommerce \
  -destination "platform=iOS Simulator,id=<UDID>" \
  build 2>&1 | tail -30

If the build fails, analyze errors and report. The build must succeed — verification requires the current code.

Show full SKILL.md (231 more words)Show less

Step 5: Launch App

If using mocked environment, collect launch arguments:

  • logout-at-launch, disable-animations, mocked-wpcom-api, -ui_testing, -mocks-port, 8282
  • Append any feature-specific launchArgs from feature-map.json
  • Mock credentials (for login flow): site http://yourwoosite.com, email t@wp.com, password pw

Launch using xcrun simctl launch (supports launch arguments, unlike mobile-mcp's launch_app):

bash
xcrun simctl launch <UDID> com.automattic.woocommerce <all-args-space-separated>

If using existing environment, launch without mock args:

bash
xcrun simctl launch <UDID> com.automattic.woocommerce

Wait 5 seconds for the app to settle.

Step 6: Navigate and Verify

Use mobile-mcp tools (list_elements_on_screen, click_on_screen_at_coordinates, take_screenshot) to interact with the app.

Consult .claude/references/screen-identifiers.md for screen identification, element lookup, and navigation flows (including login flow when using mocked environment).

For each matched feature from the feature map:

  1. Navigate to the feature's screen following the navigation flows in screen-identifiers.md
  2. List elements to confirm you arrived at the right screen (match primary identifier)
  3. Screenshot and visually assess the screen
  4. Verify the feature's verifyElements from feature-map.json are present
  5. Interact if the feature defines interactions — execute each action
Verification Criteria
  • The screen loaded (not blank/empty/error)
  • Expected accessibility elements are present
  • No crash or unexpected error state visible

Step 7: Report Results

Summarize:

  • Features verified: list each feature and pass/fail
  • Screenshots taken: file paths
  • Missing elements: any expected elements not found
  • Visual assessment: brief description of what the UI looks like
  • Issues found: crashes, error states, unexpected behavior

Step 8: Cleanup

bash
xcrun simctl terminate <UDID> com.automattic.woocommerce

If mock server was started, stop it using the /mocks skill approach (kill by port).

© woocommerce, GPL-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/verify of woocommerce/woocommerce-ios.

Open the folder on GitHubat commit b061662

Compare with similar skills

Verify 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.

Verify compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Verify this skillwoocommerce/woocommerce-ios358—~1.2kAutomated safety check: NotesGPL-2.0
Update Swiftui APIsAvdLee/SwiftUI-Agent-Skill3.7k—~1.2kAutomated safety check: PassMIT
iOS Simulator Skillconorluddy/ios-simulator-skill1.3k—~5.7kAutomated safety check: PassMIT
Inspector MCPipedro/Inspector170—~3.4kAutomated safety check: PassMIT
Xcode Buildpzep1/xcode-build-skill138—~1.5kAutomated safety check: NotesMIT
OtakitOtaKit/otakit101—~857Automated safety check: PassMIT

Similar skills

  • Update Swiftui APIs

    AvdLee/SwiftUI-Agent-Skill

    Scan Apple's SwiftUI documentation for deprecated APIs and update the SwiftUI Expert Skill with modern replacements.

    3.7k GitHub stars~1.2k tokensUpdated yesterday
    MobileAuto-check passed
  • iOS Simulator Skill

    conorluddy/ios-simulator-skill

    29 production-ready scripts for iOS app testing, building, and automation.

    1.3k GitHub stars~5.7k tokensUpdated yesterday
    MobileAuto-check passed
  • Inspector MCP

    ipedro/Inspector

    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…

    170 GitHub stars~3.4k tokensUpdated 5 mo ago
    MobileAuto-check passed
  • Xcode Build

    pzep1/xcode-build-skill

    Build and run iOS/macOS apps using xcodebuild and xcrun simctl directly.

    138 GitHub stars~1.5k tokensUpdated 8 mo ago
    MobileAuto-check: notes
  • Otakit

    OtaKit/otakit

    Set up, release, inspect, troubleshoot, or self-host OtaKit for Capacitor OTA updates.

    101 GitHub stars~857 tokensUpdated yesterday
    MobileAuto-check passed
  • Release

    movieclaw/MovieClaw

    发布 movieclaw 新版本。当用户要求发版、发布新版本、打 tag、发布 NER 模型、发布 Docker 镜像,或打包上传 iOS App 到 TestFlight / App Store、补传发版附件(IPA、Mac 转码器、Mac 版 App)时使用。涵盖版本号三处同步、应用/模型/镜像/iOS 的完整流程、可选附件失败补救与检查清单。

    132 GitHub stars~2.3k tokensUpdated today
    MobileAuto-check passed

More from woocommerce/woocommerce-ios

All 12 skills in this repo
  • Auto Login

    woocommerce/woocommerce-ios

    Launch the WooCommerce app on a simulator already authenticated into a given store (site credentials, application password, or WPCom), skipping the manual login UI.

    358 GitHub stars~1.3k tokensUpdated today
    Auto-check: notes
  • Setup Context A8c

    woocommerce/woocommerce-ios

    Set up the ContextA8C MCP server for accessing Automattic internal resources (Slack, Linear, P2s, GitHub Enterprise, etc.)

    358 GitHub stars~627 tokensUpdated today
    Auto-check: notes
  • Snapshot

    woocommerce/woocommerce-ios

    Use swift-snapshot-testing to visually verify SwiftUI views during implementation.

    358 GitHub stars~1.8k tokensUpdated today
    Auto-check: notes
  • Woo AI Smoke

    woocommerce/woocommerce-ios

    Evaluate WooAIAssistant against a structured scenario suite with hard invariants + LLM-as-judge rubric scoring.

    358 GitHub starsUsed in 1 repo~7.4k tokens
    Auto-check: notes
  • Debug

    woocommerce/woocommerce-ios

    Debug a failing test or build error in WooCommerce iOS. An agent skill from woocommerce/woocommerce-ios.

    358 GitHub stars~539 tokensUpdated today
    Auto-check: notes
  • Mocks

    woocommerce/woocommerce-ios

    Start or stop the WireMock API mock server for UI testing and E2E verification.

    358 GitHub stars~291 tokensUpdated today
    Auto-check: notes

Categories

Questions about Verify

What does Verify do?

Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction. Verify is an agent skill from woocommerce/woocommerce-ios. Build the app, launch on simulator, and verify feature behavior via mobile-mcp interaction.

When should I use Verify?

Verify fits situations like: mobile work in your project.

How do I install Verify in Claude Code?

Run `npx skills add woocommerce/woocommerce-ios --skill verify -a claude-code`. Or copy the skill folder (.claude/skills/verify in woocommerce/woocommerce-ios) into .claude/skills/verify in your project. Claude Code loads it when a task matches its description.

How do I install Verify in Codex?

Run `npx skills add woocommerce/woocommerce-ios --skill verify -a codex`. Or copy the skill folder (.claude/skills/verify in woocommerce/woocommerce-ios) into .agents/skills/verify in your project. Codex loads it when a task matches its description.

Can I use Verify in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add woocommerce/woocommerce-ios --skill verify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/verify, .gemini/skills/verify, .github/skills/verify and .opencode/skills/verify in your project.

What does Verify need to run?

Going by SKILL.md and its folder, Verify needs the command-line tools its instructions call (xcrun, git and xcodebuild). Its frontmatter pre-approves these tools: Bash, Read, Grep, Glob, mcp__mobile-mcp__*.

Does Verify access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Verify safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Verify use?

Verify is published under the GPL-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Verify use?

About 1.2k tokens (SKILL.md is roughly 4.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Verify?

Skills that share tags, products or a category with Verify: Update Swiftui APIs (AvdLee/SwiftUI-Agent-Skill, 3.7k stars), iOS Simulator Skill (conorluddy/ios-simulator-skill, 1.3k stars), Inspector MCP (ipedro/Inspector, 170 stars) and Xcode Build (pzep1/xcode-build-skill, 138 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Verify?

woocommerce (a GitHub organization) maintains it in woocommerce/woocommerce-ios, which has 358 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 7, 2026.

Source: woocommerce/woocommerce-ios on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.