play-console-cli
tamtom · tamtom/play-console-cli
This skill provides a comprehensive CLI for Google Play Console, enabling AI agents to manage app releases, in-app products, and monitor performance across 9 Google APIs.
Fast CLI for Google Play Console, for developers optimized for your agentic development flows
Preview
What you can do with it
- Release new Android app versions to the Google Play Store.
- Create and manage in-app products or subscriptions via agent commands.
- Monitor app crashes and user reviews directly through an AI agent.
Safety check
Usable, but read the notes first.
- ●Asks for administrator (sudo) rights.
install.sh - ●Installer downloads a remote script and pipes it to the shell.
README.md
Automated scan of the repo files. Always review code you run.
From the README
gplay — Google Play Console CLI for AI Agents
gplay is a fast, single-binary CLI for Google Play Console, built for AI coding agents — Claude Code, Codex, Cursor, Gemini CLI — and for humans who script. Release Android apps, create subscriptions, in-app products, and one-time purchases, verify purchases server-side, and monitor crashes and reviews through documented Google APIs.
It replaces Play Console clicking for many day-to-day workflows. Most deployment tools only handle standard AAB uploads — gplay supports 250+ commands across 9 official Google APIs: Android Publisher, Play Developer Reporting, Checks, both Play Games admin APIs, Managed Google Play, Play Integrity, Android Developer ID Status, and Cloud Storage for reports. Initial public-app setup, first upload, ordinary Google-managed Play App Signing enrollment, and legal declarations still require a manual Play Console handoff. Enterprise self-hosted Cloud KMS signing is supported through its separate official API. Gplay does not use private Console endpoints or authenticated browser automation.
Table of Contents
- Quick Start
- Highlights
- Use it with your AI agent
- How gplay compares
- Documentation
- Contributing
- License
Quick Start
Install
# Homebrew (recommended)
brew tap tamtom/tap
brew install tamtom/tap/gplay
# Standalone binary — macOS/Linux
curl -fsSL https://raw.githubusercontent.com/tamtom/play-console-cli/main/install.sh | bash
# Standalone binary — Windows (PowerShell)
irm https://raw.githubusercontent.com/tamtom/play-console-cli/main/install.ps1 | iex
Update: gplay update verifies the release SHA-256 checksum before replacing a standalone binary. Homebrew and Go installations receive the appropriate update command. Successful interactive commands suggest newer stable releases on stderr, using a 24-hour cache; a failed check waits one hour before the next try. Help, version, completion, CI, piped commands, and development builds (git describe versions) skip automatic checks. Set GPLAY_NO_UPDATE to 1, true, or yes to disable suggestions or run gplay update --check explicitly. Source builds require Go 1.27.1 or newer.
After your first successful metadata push, edit commit, or release with gh installed, gplay
prints an optional star suggestion to stderr. It never waits for input or
stars automatically: agents must ask you first. Set GPLAY_NO_STAR_PROMPT=1
to suppress the suggestion. See configuration.
Authentication
gplay authenticates to Google Play with a service account.
One-command setup (recommended)
gplay setup --auto
That's it. This will:
- Install
gcloudif needed (via Homebrew on macOS, or curl on Linux) - Log you into Google Cloud
- Create a service account and download credentials
- Open Play Console for the one manual step (granting access)
- Configure everything automatically
Pass --project <id> if gcloud has no default project, --dry-run to preview the commands, or --no-browser for CI/agent runs. Then verify with gplay auth doctor.
Already have a service account key?
gplay auth login --service-account /path/to/service-account.json
Manual setup
Set up the service account by hand (full control)
Step 1: Create a Google Cloud Project
- Go to Google Cloud Console
- Create a new project or select an existing one
- Note your project ID
Step 2: Enable the API
- Go to APIs & Services > Library
- Search for "Google Play Android Developer API"
- Click Enable
Step 3: Create a Service Account
- Go to IAM & Admin > Service Accounts
- Click Create Service Account
- Give it a name (e.g., "gplay-cli")
- Click Create and Continue, then Done
- Click on the created service account
- Go to Keys > Add Key > Create new key > JSON
- Save the downloaded JSON file securely
Step 4: Grant Access in Play Console
- Go to Google Play Console
- Go to Users and permissions > Invite new users
- Enter the service account email (from the JSON file, looks like
name@project.iam.gserviceaccount.com) - Set permissions (Admin or specific app access)
- Click Invite user
Step 5: Login with gplay
gplay auth login --service-account /path/to/service-account.json
# Verify it works
gplay auth doctor
Profiles for multiple accounts and troubleshooting: docs/authentication.md
Once authenticated, you're ready to go:
# Ship a release in one command
gplay release --package com.example.app --track production --bundle app.aab --rollout 0.1
# Create a subscription with base plans and offers
gplay subscriptions create --package com.example.app --json @subscription.json
# Everything outputs minified JSON — built for agents and pipes
gplay reviews list --package com.example.app | jq '.reviews[0]'
Highlights
- Current official API coverage — the reviewed manifest tracks 218 methods across eight Play-specific discovery APIs, plus the two Cloud Storage methods needed for reports. All 145 current Android Publisher methods have a CLI path; specialized third-party-store and enterprise-KMS commands are explicitly scope-gated.
- Explicit safety boundary —
gplay capabilitiesdistinguishes official, manual, and unsupported workflows;gplay bootstrap planprepares initial app setup without logging in, contacting Google, or changing an account. - Agent-native discovery —
gplay searchranks commands, examples, flags, and canonical intents locally;gplay schemaembeds all 218 reviewed endpoints and 568 official request/response definitions with no credentials or network acc