Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计提醒

gpc-release-flowgpc 释放流程

Agent Skill

gpc-release-flow 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

256

周安装

11

GitHub Stars

公开资料未说明

下载量

90
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:gpc-release-flow(gpc 释放流程)
来源仓库:https://github.com/yasserstudio/gpc-skills
仓库路径:skills/gpc-release-flow
安装命令:
npx skills add https://github.com/yasserstudio/gpc-skills --skill gpc-release-flow
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/yasserstudio/gpc-skills --skill gpc-release-flow

简介

gpc-release-flow 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。

  • 适用于代码协作与仓库管理相关的任务,可结合来源仓库和原始 README 核验具体用法。
  • 通过 npx skills add 命令从 GitHub 仓库安装,支持主流宿主环境集成。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写操作。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

GPC Release Flow

When to use

Use this skill when the task involves:

  • Uploading AAB/APK files to Google Play
  • Creating releases on any track (internal, alpha, beta, production)
  • Promoting releases between tracks
  • Managing staged rollouts (increase, halt, resume, complete)
  • Setting release notes
  • Using gpc publish for end-to-end release workflow
  • Pre-submission validation with gpc validate
  • Checking release status across tracks
  • Updating a private app (created via gpc enterprise publish in v0.9.56+) — after the initial custom-app creation, all subsequent operations use the standard commands in this skill against the assigned packageName

Not this skill:

  • Creating a new *private* app for Managed Google Play — use gpc-enterprise (v0.9.56+). After creation, come back here for version uploads and track management.

Inputs required

  • Path to AAB/APK file
  • Target track (internal, alpha, beta, production, or custom)
  • Rollout percentage (for staged rollouts)
  • Release notes (inline or from file)
  • Whether --dry-run is desired (preview without executing)

Procedure

0) Pre-flight validation

Before uploading, run the preflight compliance scanner and validate the bundle:

# Policy compliance scan (offline -- checks manifest, permissions, 64-bit, secrets)
gpc preflight app-release.aab --fail-on error
gpc preflight app-release.apk --fail-on error  # APK also supported

# File format and track validation
gpc validate app-release.aab
gpc validate app-release.aab --track beta  # Validate for specific track

gpc preflight checks the AAB/APK against Google Play policies (target SDK, permissions, native libs, etc.). gpc validate checks file format, version code conflicts, and track compatibility.

1) Upload and release

A) Quick release (one command)

The publish command handles the full flow — upload, track assignment, release notes, and commit:

gpc publish app-release.aab --track internal
gpc publish app-release.aab --track beta --notes "Bug fixes and improvements"
gpc publish app-release.aab --track production --rollout 10

Multi-language release notes from directory:

gpc publish app-release.aab --track beta --notes-dir ./release-notes/

B) Step-by-step release

For more control, use individual commands:

# Upload AAB (creates edit, uploads, assigns to track)
gpc releases upload app-release.aab --track internal

# Upload APK (auto-detected, uses correct endpoint)
gpc releases upload app-release.apk --track internal

# Upload with staged rollout
gpc releases upload app-release.aab --track production --rollout 10

# Upload as draft (not visible to users until explicitly released)
gpc releases upload app-release.aab --track production --status draft

# Set release notes
gpc releases notes set --track beta --lang en-US --notes "Bug fixes"
gpc releases notes set --track beta --file release-notes/  # From directory
New in v0.9.47: APK files are auto-detected and uploaded via the correct edits.apks.upload endpoint. Use --status draft to create draft releases for manual review in the Play Console before going live.

Additional upload flags (v0.9.51+)

# Upload native debug symbols (ProGuard mapping or native code symbols)
gpc releases upload app.aab --track internal --mapping-type proguard  # default
gpc releases upload app.aab --track internal --mapping-type nativeCode

# Target a specific device tier configuration
gpc releases upload app.aab --track production --device-tier-config 12345
gpc releases upload app.aab --track production --device-tier-config LATEST

# Skip sending changes for review (required for rejected apps)
gpc releases upload app.aab --track production --changes-not-sent-for-review

# Fail safely if there are changes already in review
gpc releases upload app.aab --track production --error-if-in-review
FlagValuesDescription
--mapping-typeproguard (default), nativeCodeSpecifies the type of debug symbols to upload alongside the bundle. Use nativeCode when shipping native (C/C++) libraries
--device-tier-confignumeric ID or LATESTApplies a device tier targeting configuration so different APKs are served to different device classes
--changes-not-sent-for-reviewboolean flagCommits the edit without sending changes for review. Required when a previous submission was rejected and you are not yet ready for re-review
--error-if-in-reviewboolean flagCauses the command to exit with a non-zero code if there are already changes in review, instead of silently overwriting them

Rejected Apps

When Google Play rejects a submission, your app enters a "changes in review" state. Subsequent uploads or promotions will fail unless you handle this explicitly:

  1. If you want to push changes without triggering a new review (e.g., updating metadata while fixing the rejection reason), use --changes-not-sent-for-review. This commits your edit but leaves the review state untouched.
  2. If you want to guard against accidentally overwriting in-review changes (e.g., a CI pipeline that should not clobber a pending review), use --error-if-in-review. The command will exit with code 4 (API error) if changes are currently in review.
  3. If you are ready to re-submit for review, omit both flags and upload normally. Google Play will replace the pending submission with your new one.

These flags apply to gpc releases upload, gpc publish, gpc releases promote, gpc releases rollout, gpc listings push/update/delete, gpc listings images upload/delete, gpc testers add/remove/import, gpc tracks create/update, and gpc apps update.

Note (v0.9.52+): When --changes-not-sent-for-review is set, GPC skips server-side edit validation (edits.validate) and goes straight to edits.commit. This is required because Google's validate endpoint does not accept the changesNotSentForReview parameter and rejects edits for apps with rejected updates. Your changes are still validated by the commit call itself. Read:
  • references/upload-lifecycle.md

2) Check release status

# Full picture — releases, vitals, and reviews in one command
gpc status

# Releases only, all tracks
gpc releases status

# Specific track detail
gpc releases status --track production

# JSON for scripting
gpc status --output json | jq '.releases[] | select(.track == "production")'

3) Promote between tracks

# Promote from internal to beta
gpc releases promote --from internal --to beta

# Promote from beta to production with staged rollout
gpc releases promote --from beta --to production --rollout 5

# Copy release notes from another track when promoting
gpc releases promote --from internal --to production --copy-notes-from internal

# Promote as draft (review in Play Console before going live)
gpc releases promote --from internal --to beta --status draft
Note: Since v0.9.39, gpc releases promote auto-retries once on 409 EDIT_CONFLICT (another edit is open).

Promote also supports the review-control flags (v0.9.51+):

# Promote without sending for review (rejected app workflow)
gpc releases promote --from internal --to beta --changes-not-sent-for-review

# Fail if changes are already in review
gpc releases promote --from beta --to production --rollout 5 --error-if-in-review

3b) Preview before publishing

# Read-only preview of release state across all tracks
gpc diff

# Compare two specific tracks
gpc diff --from internal --to production

# Compare local metadata vs remote
gpc diff --metadata fastlane/metadata

3c) Release lifecycle visibility

# List releases on a track with lifecycle states (DRAFT, IN_REVIEW, PUBLISHED, etc.)
gpc releases list --track production
gpc releases list --track beta --json
New in v0.9.46: The releases.list endpoint provides release lifecycle states without opening an edit session. Use it to check whether a release is still in review, has been published, or is in draft -- useful for CI pipelines that need to gate on review completion.

3d) Release stats and history

# Release count per track with status breakdown
gpc releases count

# Show release history from GitHub
gpc changelog
gpc changelog --tag v0.9.47

# Generate GitHub Release notes from local commits (v0.9.61+)
gpc changelog generate                              # markdown for the next release
gpc changelog generate --format prompt | pbcopy     # paste into Claude/ChatGPT
gpc changelog generate | gh release create vX -F -  # one-command release
gpc changelog generate --strict                     # fail CI on linter warnings (jargon, scope leaks)

::: tip Two different release notes flows

  • Play Store recentChanges[] (per-locale, 500-char): gpc changelog generate --target play-store --locales auto --ai --apply (v0.9.64+, end-to-end) or gpc publish --notes-from-git --since vX
  • GitHub Release notes (canonical markdown template, smart clustering, LLM-prompt mode): gpc changelog generate (v0.9.61+):::

Multilingual Play Store release notes (v0.9.62+)

For per-locale Play Store "What's new" text, pass --target play-store with --locales:

# Translate via your own LLM key (BYO, v0.9.63+)
gpc changelog generate --target play-store --locales auto --ai

# Explicit locales, no AI — placeholder text for non-source locales
gpc changelog generate --target play-store --locales en-US,fr-FR,de-DE

# Auto-detect from your live Play listing (one API round-trip)
gpc changelog generate --target play-store --locales auto --app com.example.app

# Preview the prompt without spending tokens
gpc --dry-run changelog generate --target play-store --locales auto --ai

Key behaviors:

  • en-US source is the same bullet list as the github target, truncated to 500 Unicode code points if over
  • With --ai (v0.9.63+): non-source locales are translated via the user's own LLM key. Auto-detects priority env order: AI_GATEWAY_API_KEYANTHROPIC_API_KEYOPENAI_API_KEYGOOGLE_GENERATIVE_AI_API_KEY. Non-reasoning model defaults (claude-sonnet-4-6, gpt-4o-mini, gemini-2.5-flash). Override with --provider / --model.
  • Without --ai: non-source locales get a [needs translation] placeholder. Use --format prompt to emit a translation-ready LLM prompt for the offline / no-key workflow.
  • --strict exits 1 if any locale overflows 500 chars OR (with --ai) any locale fails to translate
  • Lazy-loaded: running without --ai imports none of the AI SDK deps. Cold-start budget preserved.

Writing translated notes into a draft release (v0.9.64+)

Once your release notes are generated (with or without --ai), write them directly into the latest draft on a Play Store track:

# Full pipeline: generate + translate + apply
gpc changelog generate --target play-store --locales auto --ai --apply

# Apply to a specific track (default: production)
gpc changelog generate --target play-store --locales auto --ai --apply --track beta

# Preview what would be written (no API call)
gpc changelog generate --target play-store --locales auto --ai --apply --dry-run

Key behaviors:

  • --apply requires --target play-store (not compatible with --format prompt)
  • Writes into the latest draft release on the track. If no draft exists, exits with RELEASE_NO_DRAFT (exit code 1) and suggests creating one first
  • Uses withRetryOnConflict for 409 edit conflicts
  • --dry-run shows the notes that would be written without touching the API
Bundle upload race fix (v0.9.64+): After uploading a large AAB (65MB+), GPC now polls bundles.list with Fibonacci backoff (2s, 3s, 5s, 8s, 13s) before calling edits.validate. This fixes intermittent INVALID_ARGUMENT: Some of the Android App Bundle uploads are not completed yet errors that affected all AAB upload paths.

See apps/docs/guide/multilingual-release-notes.md for the full walkthrough, including the Vercel AI Gateway path (cost-per-run in USD reported back).

4) Manage staged rollouts

# Increase rollout percentage
gpc releases rollout increase --track production --to 50

# Halt rollout (stops further distribution)
gpc releases rollout halt --track production

# Resume halted rollout
gpc releases rollout resume --track production

# Complete rollout (100%)
gpc releases rollout complete --track production

Rollout commands also support review-control flags (v0.9.51+):

# Increase rollout without triggering review (rejected app workflow)
gpc releases rollout increase --track production --to 50 --changes-not-sent-for-review

# Complete rollout, but fail if there are changes in review
gpc releases rollout complete --track production --error-if-in-review

Read:

  • references/rollout-strategies.md

5) Track management

gpc tracks list                    # List all tracks
gpc tracks get production          # Show track details + current releases

6) Preview with dry-run

All write operations support --dry-run:

gpc releases upload app.aab --track beta --dry-run
gpc releases promote --from beta --to production --rollout 10 --dry-run
gpc releases rollout increase --track production --to 50 --dry-run

7) Interactive mode

When flags are omitted, GPC prompts interactively (if TTY detected):

gpc releases upload app.aab
# Prompts for: track, rollout percentage, release notes

Disable with --no-interactive or GPC_NO_INTERACTIVE=1.

Verification

  • gpc status shows the release on the expected track with correct status and rollout
  • gpc releases status confirms version code matches the uploaded AAB
  • Rollout percentage is correct
  • Release notes are set for the expected languages
  • gpc vitals crashes --version <code> shows no spikes post-release (or use gpc status to check vitals across all metrics)

Failure modes / debugging

SymptomLikely CauseFix
Version code already usedSame version code exists on this trackIncrement versionCode in build
APK_NOT_SIGNEDMissing or invalid signingUse Play App Signing or check keystore
EDIT_CONFLICTAnother edit is in progressWait and retry, or use Console UI to discard pending edit
Rollout stuckRollout was haltedgpc releases rollout resume --track <track>
Wrong trackPromoted to wrong trackCreate new release on correct track

Read:

  • references/troubleshooting.md
  • references/pre-release-pipeline.md — end-to-end: validate → upload → vitals gate → promote → staged rollout

8) Real-Time Developer Notifications (RTDN)

Monitor subscription and purchase events in real time:

gpc rtdn status              # Check Pub/Sub topic configuration
gpc rtdn decode <payload>    # Decode base64 notification payload
gpc rtdn test                # Guidance for testing RTDN setup

Related skills

  • gpc-setup: Authentication and configuration
  • gpc-metadata-sync: Store listings and screenshots
  • gpc-vitals-monitoring: Post-release crash monitoring
  • gpc-ci-integration: Automated releases in CI/CD
  • gpc-monetization: Subscriptions, IAP, RTDN notifications
  • gpc-enterprise: Private app publishing to Managed Google Play via the Play Custom App Publishing API (v0.9.56+)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.45%
按下载量换算30

Claude

29.2%
按下载量换算26

Cursor

20.11%
按下载量换算18

Gemini CLI

10.49%
按下载量换算9

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills