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 skills add kvdm-co-pilot/create-cmp --skill cmp-qa-prepgit clone --depth 1 https://github.com/kvdm-co-pilot/create-cmpWrote 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.
[](https://agentmods.dev/skills/kvdm-co-pilot/create-cmp/cmp-qa-prep)<a href="https://agentmods.dev/skills/kvdm-co-pilot/create-cmp/cmp-qa-prep"><img src="https://agentmods.dev/badge/skills/kvdm-co-pilot/create-cmp/cmp-qa-prep/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.
<a href="https://agentmods.dev/skills/kvdm-co-pilot/create-cmp/cmp-qa-prep"><img src="https://agentmods.dev/badge/skills/kvdm-co-pilot/create-cmp/cmp-qa-prep.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00131 | $0.00827 |
| Opus 5.5 | $0.00052 | $0.00331 |
| Sonnet 5.5 | $0.00026 | $0.00165 |
| Haiku 4.5 | $0.00013 | $0.00083 |
Grade C, and why
cmp-qa-prep scanned grade C with 2 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 23d 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.
Downloads and executes remote codehighSupply chain
curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.
(CLI: `curl -fsSL https://get.maestro.mobile.dev | bash`). Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
(CLI: `curl -fsSL https://get.maestro.mobile.dev | bash`). How it starts
The opening of the file, as written. The whole thing — 53 lines — stays where its author put it; the contents beside it link to each section on GitHub.
cmp-qa-prep — E2E harness bring-up for a CMP app
Current scaffolds ship Maestro flows (qa/e2e/*.yaml). Two ways to bring the harness up; the
first is almost always the one you want:
-
Let the lane do it:
node qa/verify.mjs. With nothing attached it boots the project's AVD headless (CMP_AVDoverrides), installs the debug build, runs every flow inqa/e2e/, writes the receipt, and shuts the emulator down. This is the done-gate; a green run here IS the proof. -
By hand, for an interactive session: check disk first (
df -h ~, ≥ 3 GB free — Gradle fails with "No space left on device"); boot headless —emulator -avd <name> -no-window -no-audio -no-boot-anim -no-snapshot -gpu swiftshader_indirect— then
adb wait-for-device(the AVDcmp-doctorcreated; one AVD per app);./gradlew :composeApp:installDebug;maestro test qa/e2e/smoke.yaml(CLI:curl -fsSL https://get.maestro.mobile.dev | bash). Device proof is a checkpoint, never an inner loop — the project's PreToolUse hook reminds you.
Headless is the rule, not a preference. Those flags are HEADLESS_ARGS in the cmp profile's
device-provider.mjs, and they are what path 1 already uses — so do not hand-boot a windowed
emulator in front of a lane that would have booted its own. A window costs GPU and RAM the build
wants, makes the run depend on a desktop session, and differs from what CI does; -no-snapshot is
there so every lane boots the same cold device rather than inheriting yesterday's state. If a device
is already attached the lane uses it as-is, which is exactly how a windowed emulator quietly becomes
the thing your proof ran on (in create-cmp, node scripts/fleet-check.mjs says so when it finds
one).
Preconditions: toolchain present (JDK, Android SDK + AVD — cmp-doctor heals it); a project
scaffolded with the e2e toggle on (otherwise say so — there is no harness to bring up).
Legacy pre-Maestro scaffolds (qa/appium/, tests/appium/; the toggle was renamed from appium
in 0.3.0) are not covered here — migrate with cmp-upgrade, or see the skill's history.
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.
- 23d ago Changed 527280c1ea7e
- 1mo ago Changed · +15 lines 37a6e00bd28b
- 1mo ago Changed · -23 lines · -51 tokens per session d5b6bfc4632e
- 1mo ago Changed · +2 lines ae4cc9a322fe
- 1mo ago First seen · 59 lines · 182 tokens per session scan C a8796c878232
cmp-qa-prep is a skill published in the GitHub repository kvdm-co-pilot/create-cmp (0 stars, last pushed 6d ago), licensed MIT. It adds 131 tokens to every session and 827 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it C with 2 findings (downloads and executes remote code, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
ios-testing
Testing patterns for Swift and SwiftUI apps.
mobile-testing
Android and JVM testing - JUnit5, MockK, Turbine for Flow, and Compose UI testing for unit, integration, and UI tests; also applies to KMP commonTest running on the JVM/Android target. For iOS/Swift tests (XCTest, Swift Testing, XCUITest) use ios-testing. For TDD methodology and the three-tier test model (fake-first…
noqa-testing
Use this skill when the user wants to boot and interact with iOS or Android devices/simulators — inspect the screen, execute actions, generate or edit test cases, or run UI tests via the noqa platform.
argent-test-ui-flow
Autonomously test an app UI (iOS or Android) by running interact-screenshot-verify loops using argent MCP tools. Use when testing UI flows, verifying login works, testing navigation, running end-to-end UI test scenarios, manual QA steps, visible UI changes, or visual behavior.
mobile-automation
Control Android and iOS devices, emulators and simulators — launch apps, tap, swipe, type, take screenshots, read the accessibility tree. Use when a task involves a mobile device or app, mobile UI testing, or reproducing a bug on a phone.
baguette
Drive iOS simulators programmatically via the baguette CLI — taps, swipes, multi-finger gestures, hardware buttons (Home / Lock / Volume / Action / Power), ASCII keyboard text, and frame capture, all without opening Xcode. Use when: (1) an agent needs to drive a booted iOS simulator from a script — tap a coordinate…