---
slug: "gplay-cli-skills"
source_type: "readme"
source_url: "https://cdn.jsdelivr.net/gh/tamtom/gplay-cli-skills@main/README.md"
repo: "https://github.com/tamtom/gplay-cli-skills"
source_file: "README.md"
branch: "main"
---
# Google Play Console CLI Skills

A collection of Agent Skills for shipping with the [Google Play Console CLI](https://github.com/tamtom/play-console-cli) (`gplay`). These skills are designed for zero-friction automation around Android builds, releases, metadata, in-app purchases, and signing.

Skills follow the Agent Skills format.

## Installation

Install this skill pack:

```bash
npx skills add tamtom/gplay-cli-skills
```

## Updating

Check for updates and pull the latest versions:

```bash
npx skills check          # check for available updates
npx skills update         # update all skills to latest versions
```

## Available Skills

### gplay-cli-usage

Guidance for running `gplay` commands (flags, pagination, output, auth).

**Use when:**
- You need the correct `gplay` command or flag combination
- You want JSON-first output and pagination tips for automation

### gplay-gradle-build

Build, sign, and package Android apps with Gradle before uploading.

**Use when:**
- You need to create an APK or AAB for upload
- You're setting up CI/CD build pipelines
- You need to configure signing configs
- You're troubleshooting ProGuard/R8 issues

### gplay-release-flow

End-to-end release workflows for internal, beta, and production tracks.

**Use when:**
- You want to upload, release, and rollout in one flow
- You need the manual sequence for fine-grained control
- You're releasing to multiple tracks

### gplay-metadata-sync

Metadata and localization sync (including Fastlane format).

**Use when:**
- You are updating Play Store metadata or localizations
- You need to validate character limits before upload
- You need to sync with Fastlane directory structure

### gplay-iap-setup

In-app products, subscriptions, base plans, offers, and bulk subscription localization.

**Use when:**
- You are setting up in-app purchases or subscriptions
- You need to create subscription offers or pricing
- You're managing monetization products
- You need to bulk-localize subscription display names/descriptions across locales

### gplay-review-management

Review monitoring, filtering, and automated responses.

**Use when:**
- You want to monitor and respond to user reviews
- You need to filter reviews by rating or territory
- You're setting up automated review responses

### gplay-rollout-management

Staged rollout orchestration and monitoring.

**Use when:**
- You want to release to a percentage of users first
- You need to halt, resume, or complete rollouts
- You're implementing gradual rollout strategies

### gplay-purchase-verification

Server-side purchase verification for in-app products and subscriptions.

**Use when:**
- You need to verify purchase tokens from your backend
- You're implementing receipt validation
- You need to check subscription status

### gplay-ppp-pricing

Region-specific pricing using purchasing power parity (PPP).

**Use when:**
- You want to set localized prices based on purchasing power per country
- You need PPP multipliers for IAPs or subscriptions across regions
- You're migrating existing subscribers to new regional prices

### gplay-testers-orchestration

Beta testing groups and tester management.

**Use when:**
- You manage multiple testing groups
- You need to add/remove testers
- You're setting up closed testing tracks

### gplay-migrate-fastlane

Fastlane metadata migration to gplay format.

**Use when:**
- You want to migrate from Fastlane supply to gplay CLI
- You need to import existing Fastlane metadata directories

### gplay-preflight

Offline compliance and hygiene scanning of an AAB or APK — no credentials, no
API calls. Nine scanners over a fully decoded `AndroidManifest.xml`.

**Use when:**
- You're about to upload a build and want to catch rejections first
- You need a CI gate that runs before any Play credentials are available
- You're diagnosing an install failure, a Play rejection, or a 16 KB page
  alignment problem

### gplay-submission-checks

Pre-submission validation for Google Play releases.

**Use when:**
- You're preparing a release and want to catch issues before submitting
- You need to validate metadata, screenshots, bundle integrity, or policy compliance

### gplay-screenshot-automation

Upload and validate Play Store screenshots with gplay.

**Use when:**
- You need to upload or replace screenshots across locales and device types
- You need to validate screenshot dimensions before a release

### gplay-user-management

Developer account user and grant management.

**Use when:**
- You need to manage developer account users and permissions
- You need to create, update, or delete app-level permission grants

### gplay-vitals-monitoring

App vitals monitoring for crashes, performance, and errors.

**Use when:**
- You need to check app stability, crash rates, or ANR rates
- You want to monitor startup, rendering, or battery performance metrics

### gplay-reports-download

Financial and statistics report listing and downloading from GCS.

**Use when:**
- You need to list or download financial reports (earnings, sales, payouts)
- You need to download statistics reports (installs, ratings, crashes)
- You want to automate monthly report collection

## Usage

Skills are automatically available once installed. The agent will use them when relevant tasks are detected.

**Examples:**

```
Build and upload my Android app to Google Play internal track
```

```
Release build v1.2.3 to production with 10% staged rollout
```

```
Set up in-app subscription with monthly and yearly base plans
```

```
Sync Fastlane metadata from ./metadata and upload to Play Store
```

```
Respond to all 1-star reviews from the last week
```

```
Download last month's earnings report for my developer account
```

## Skill Structure

Each skill contains:
- `SKILL.md` - Instructions for the agent
- `scripts/` - Helper scripts for automation (optional)
- `references/` - Supporting documentation (optional)

## Development

Every `gplay` command and flag used in a skill is validated against the CLI's
generated command reference (`GPLAY.md`) so the skills can't drift from the real
CLI surface:

```bash
# Validate against the current CLI on main
python3 scripts/check-commands.py

# Or against a local checkout of the CLI
python3 scripts/check-commands.py --reference ../play-console-cli/GPLAY.md
```

CI runs this on every push and pull request (`.github/workflows/check-commands.yml`).

## License

MIT
