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 PollyGlot/google-play-cli-skills --skill gplay-release-flowgit clone --depth 1 https://github.com/PollyGlot/google-play-cli-skillsWrote 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/pollyglot/google-play-cli-skills/gplay-release-flow)<a href="https://agentmods.dev/skills/pollyglot/google-play-cli-skills/gplay-release-flow"><img src="https://agentmods.dev/badge/skills/pollyglot/google-play-cli-skills/gplay-release-flow/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/pollyglot/google-play-cli-skills/gplay-release-flow"><img src="https://agentmods.dev/badge/skills/pollyglot/google-play-cli-skills/gplay-release-flow.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.00074 | $0.01566 |
| Opus 5.5 | $0.00030 | $0.00626 |
| Sonnet 5.5 | $0.00015 | $0.00313 |
| Haiku 4.5 | $0.00007 | $0.00157 |
Grade A, and why
gplay-release-flow 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 13d 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.
How it starts
The opening of the file, as written. The whole thing — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.
gplay release flow
Drive the Google Play release lifecycle with gplay releases: upload a
build to a track, promote it up the ladder, run a staged rollout on
production (halt / resume / complete it), and list what a track
holds.
Shared conventions are in gplay-cli-usage; onboarding auth is gplay-setup.
Mental model: the track ladder + the rollout state machine
A build is uploaded to one track (internal, alpha, beta,
production, or any custom closed-track name) and then promoted up the
ladder: the same versionCode, no AAB re-upload. On a track, the latest
release moves through a small state machine:
draft ──► inProgress (userFraction f) ──► completed (f = 1.0)
│ ▲
halt│ │resume
▼ │
halted (fraction preserved)
rollout sets the fraction, halt freezes it, resume un-freezes it, and
complete ramps to 100%. When a track holds two releases (e.g. inProgress
plus halted), every verb refuses to guess (exit 60): pin one with
--version-code or --release-name.
Upload a build to a track
gplay releases upload ./app.aab --track internal
gplay releases upload ./app.aab --track production --staged 0.1 --confirm
gplay releases upload ./app.aab --track production --complete --confirm
Any string is a valid --track, but the track must already exist (see
Track must exist first below). Flags: gplay releases upload --help.
AAB/APK uploads are resumable: a transient interruption resumes instead of restarting from zero. Automatic, no flag.
upload also takes a legacy .apk ([experimental], same pipeline;
--format apk|bundle overrides an ambiguous extension).
Several artifacts, one release
gplay releases upload phone.aab wear.aab --track beta --retain-version-code 41
Several positional artifacts (per-ABI APKs, a phone plus a Wear bundle) land in
one Edit and one release listing every versionCode, all or nothing: any failure
discards the Edit. --retain-version-code keeps an already-uploaded build
serving alongside them; gplay passes it unchecked, so a wrong code fails with
Google's error. --mapping takes a single artifact: for a multi-artifact
release, attach mappings afterwards with releases mappings upload.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 13d ago Changed · +17 lines d051bf4af0e1
- 27d ago Changed 45cfff8f9315
- 1mo ago Changed · -104 lines · -17 tokens per session 945e2dbcfb19
- 1mo ago Changed · +24 lines 1be188ae95cd
- 1mo ago First seen · 230 lines · 91 tokens per session scan A d8dabba91da8
gplay-release-flow is a skill published in the GitHub repository PollyGlot/google-play-cli-skills (5 stars, last pushed 4d ago), licensed MIT. It adds 74 tokens to every session and 1,566 once invoked, about $0.0003 per session on Opus 5.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
release-new-version
Use when the user wants to release a new Zafiro version — drafting bilingual release notes, deciding the next version number, bumping app/build.gradle.kts, tagging, and publishing to GitHub (main repo, optionally the Xposed repo).
suede-play-release
Suede AI Google Play delivery skill: ship an Android release from the agent interface and prove what is live. Preflight the publishing credential with a real Play API call, upload an AAB to a testing track, promote that exact versionCode, stage or complete a rollout, write per-locale release notes, and read back…
app-store-release-prep
Produce a reproducible signing, versioning, and store-declaration pipeline so an iOS or Android build passes App Store Connect / Play Console submission. Use when building or uploading a distribution .ipa/.aab, fixing signing/provisioning-profile or entitlement errors, bumping CFBundleVersion/versionCode, filling App…
apple-release-ops
The mechanics of shipping Apple apps. Use for ANY code signing error ("no signing certificate", "provisioning profile doesn't include...", "revoked certificate"), provisioning profiles, certificates, entitlements, capabilities, TestFlight (groups, expiry, feedback), App Store Connect, uploading builds, xcodebuild…
ios-app-store-submission
Build and submit iOS apps to App Store Connect using fastlane (match/gym/pilot/deliver) or EAS (eas build / eas submit) for native (Swift/SwiftUI/UIKit), React Native, Expo, Flutter, and Capacitor projects. Use when archiving to .xcarchive, validating, uploading to TestFlight, configuring code signing and…
managing-app-versions
Manages semantic versioning for mobile apps across iOS and Android platforms. Use when the user says "bump version", "increment build number", "set version to", "release patch/minor/major", or "sync build numbers". Single source of truth is .msd/versions/{app-id}/version.json. Syncs to app.json (Expo), Info.plist…