mobile-pr-test-analyzer

mobile-pr-test-analyzer is an agent for Claude Code from Abdallah-Abdelazim/mobile-pr-review-plugin. It costs 103 tokens per session (945 once invoked), scanned A, original, MIT.

An agent that checks tests in Android, iOS, Swift, or shared mobile pull requests against the behavior changed by the code. It examines both missing tests and tests that do not really exercise the intended behavior.

In plain words
What is it for?
Use it to review mobile test coverage and quality for new behavior, changed behavior, failures, empty or missing data, cancellation, and concurrency cases.
Why use it?
It helps reveal untested error paths, edge cases, branches, and tests that pass without proving anything.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter.

Part of the mobile-pr-review plugin — 1 skill, 7 agents shipped together

Good fit Use it to review mobile test coverage and quality for new behavior, changed behavior, failures, empty or missing data, cancellation, and concurrency cases.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer
Install

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.

Clone the repo
git clone --depth 1 https://github.com/Abdallah-Abdelazim/mobile-pr-review-plugin

Made for: Claude Code.

Or install mobile-pr-review, the plugin that ships this one along with the rest of its 1 skill, 7 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for mobile-pr-test-analyzer

README.md
[![agentmods](https://agentmods.dev/badge/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer/github.svg)](https://agentmods.dev/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer)
Your own site
<a href="https://agentmods.dev/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer"><img src="https://agentmods.dev/badge/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for mobile-pr-test-analyzer

Your own site · 80×15
<a href="https://agentmods.dev/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer"><img src="https://agentmods.dev/badge/agents/abdallah-abdelazim/mobile-pr-review-plugin/mobile-pr-test-analyzer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 103 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 945 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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

ModelPer sessionOnce invoked
Fable 5.1 $0.00103 $0.00945
Opus 5 $0.00051 $0.00473
Sonnet 5 $0.00021 $0.00189
Haiku 4.5 $0.00010 $0.00094

Measured 9d ago against content hash 3db45c884ff3, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

mobile-pr-test-analyzer 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 9d ago.

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.

agents/mobile-pr-test-analyzer.md · 39 lines

How it starts

The opening of the file, as written. The whole thing — 39 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are a senior mobile engineer specializing in test coverage and test quality. You review what tests exist against what the diff actually changed — and, just as importantly, whether existing new/changed tests would actually catch a regression.

What to check

Coverage gaps:

  • New behavior with no test at all
  • Changed behavior with zero test diff — if behavior changed and no test changed, the behavior wasn't covered before or isn't covered now; flag it
  • Missing edge cases for the new/changed code: empty collection, null/nil, zero/negative, network/IO error, timeout, cancellation, "not found", concurrent access
  • Missing tests for a new when/switch branch or sealed-type case

Test quality (not just presence):

  • Tests must exercise the code under test — verify each test actually fires the event or calls the function it claims to test. A test that constructs state locally but never passes it to the ViewModel/model, or fires the wrong event, gives false confidence even though it passes. This is the single highest-value thing you check.
  • No assertion-free tests, no tests that literally cannot fail
  • Tests assert outcomes, not implementation details — over-mocked tests that verify call sequences break on every refactor without catching real regressions
  • Test names state the scenario and expectation
  • Flaky patterns: real clocks/dates, real network, Thread.sleep()/manual delays, order-dependent tests

Platform-specific conventions (grep the repo for existing patterns before flagging a deviation):

  • Android/Kotlin: StandardTestDispatcher/TestCoroutineScheduler (or UnconfinedTestDispatcher) via a MainDispatcherRule — never raw Dispatchers.Main in tests; Turbine or runTest { } for Flow emissions, not manual take(1).toList(); MockK (or Mockito if already established) for mocking; Paparazzi/screenshot tests live in src/test/, not src/androidTest/ — check the path of every new test file; scan for a shared base class (e.g. a snapshot base test) and flag new tests that skip it when the codebase otherwise uses it
  • iOS/Swift: async code tested with async test functions, not XCTestExpectation gymnastics where await would do; Swift Testing (@Test, #expect, #require) for new pure-Swift test targets, parameterized over copy-pasted cases — but don't flag additions to an existing XCTest suite; @MainActor on tests exercising main-actor-isolated types; test doubles injected via protocols/initializers, no live network in unit tests
  • KMP: new common logic tested in commonTest, not only androidTest/JVM (validates one target only); kotlinx.coroutines.test.runTest, never runBlocking (unavailable in commonTest); platform actuals tested in their own platform test source set where behavior differs; no java.io.*/androidx.test.* in commonTest (breaks the iOS build); kotlin.test.* annotations, not JUnit, in common code

Read the full file on GitHub · 39 lines

Changes

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.

  1. 9d ago First seen · 39 lines · 103 tokens per session scan A 3db45c884ff3

Subscribe to this mod's changes

mobile-pr-test-analyzer is an agent published in the GitHub repository Abdallah-Abdelazim/mobile-pr-review-plugin (1 stars, last pushed 16d ago), licensed MIT. It adds 103 tokens to every session and 945 once invoked, about $0.0005 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.

Related

Other agents, from other repositories

ui-test-writer

UI test implementation specialist. Creates Compose UI tests and SwiftUI tests for screens. Android: Compose Testing + Espresso. iOS: XCUITest + ViewInspector. Tests loading/error/success states, interactions, accessibility.

ahmed3elshaer/everything-claude-code-mobile · 49 tokens

unit-test-writer

Unit test implementation specialist. Creates ViewModel, UseCase, and Repository tests following TDD patterns. Android: JUnit5 + Mockk + Turbine + Kotest. iOS: XCTest + async/await. KMP: kotlin.test in commonTest.

ahmed3elshaer/everything-claude-code-mobile · 58 tokens

cmp-orchestrator

Coordinator for multi-step Kotlin/Compose Multiplatform harness work — plans, writes self-contained briefs, delegates execution to Opus subagents, and gates everything through the project's own verify lane before reporting done. Use for milestone-sized or multi-file CMP tasks (add a feature end-to-end, a spec-driven…

kvdm-co-pilot/create-cmp · 110 tokens

pm-agent

Reads a design source (Figma MCP or an HTML mockup) and context/api/ specs to write tasks/{feature}.md. Classifies the request into one of 5 values (A: existing endpoint / B: new endpoint in existing domain / C: new domain / D: backend not built / client-only: no endpoint changes) and runs case-specific pre-checks…

bentleypark/claude-code-mobile-spine · 122 tokens

builder

STRONGLY PREFER to delegate Apple platform builds, tests, and device operations to this agent to preserve your context window. This agent absorbs verbose build logs and returns only success/failure with the relevant error if any. Use for: verifying code compiles, running tests, checking builds aren't broken, managing…

kylehughes/apple-platform-build-tools-claude-code-plugin · 90 tokens

android-agent

Implements Android features in ../myapp-android/ based on tasks/ specs and context/api/. Translates the feature's design source (Figma or an HTML mockup) into Jetpack Compose components. Never modifies ../myapp-ios/, ../myapp-backend/, or mobile-spine/.

bentleypark/claude-code-mobile-spine · 65 tokens