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

gpc-troubleshootinggpc 故障排除

Agent Skill

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

总安装

238

周安装

10

GitHub Stars

公开资料未说明

下载量

83
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

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

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合围绕仓库状态、代码变更或协作事项进行整理。
  • 支持在 Codex、Claude、Cursor、Gemini CLI 中使用。
  • 通过 npx skills add 命令从 GitHub 仓库安装。
  • 安装前需确认权限范围和是否触发命令执行。

SKILL.md

gpc-troubleshooting

Unified debugging guide for all GPC errors, exit codes, and common issues.

When to use

  • GPC command fails with an error code
  • gpc doctor reports issues
  • CI pipeline fails with a GPC step
  • Unexpected behavior or output
  • Need to interpret exit codes
  • Need to enable verbose/debug output

Inputs required

  • Error message or exit code — what GPC reported
  • Command that failed — the full command that was run
  • Environment — local vs CI, OS, Node.js version

Procedure

0. Quick diagnosis

# Check GPC health
gpc doctor

# Get version info
gpc --version

# Run failing command with verbose output
GPC_DEBUG=1 gpc <failing-command>

# Get error as JSON for parsing
gpc <failing-command> --json

Read: references/exit-codes.md for the complete exit code reference.

1. Exit codes

CodeCategoryMeaning
0SuccessCommand completed successfully
1ConfigConfiguration error (missing.gpcrc.json, invalid fields)
2UsageInvalid arguments or flags
3AuthAuthentication failure (expired token, invalid key, no credentials)
4APIGoogle Play API error (403, 404, 408, 409, rate limit)
5NetworkConnection failure, DNS error, timeout
6ThresholdVitals threshold breached (used in CI gating)
10PluginPlugin permission validation error

2. Authentication errors (exit code 3)

Read: references/error-catalog.md for the full error catalog.

ErrorCauseFix
AUTH_FAILEDInvalid or corrupted credentialsRe-run gpc auth login --service-account <key.json>
AUTH_EXPIREDToken expired and refresh failedRe-authenticate; check network/proxy
AUTH_NO_CREDENTIALSNo auth configuredRun gpc auth login or set GPC_SERVICE_ACCOUNT
AUTH_INVALID_KEYMalformed service account JSONRe-download key from Google Cloud Console
AUTH_KEYCHAIN_ERROROS keychain access deniedGrant keychain access or use env var auth
# Check current auth status
gpc auth status

# Re-authenticate
gpc auth login --service-account ~/path/to/key.json

# Bypass keychain with env var
export GPC_SERVICE_ACCOUNT=$(cat ~/path/to/key.json)

3. API errors (exit code 4)

ErrorHTTPCauseFix
API_FORBIDDEN403Insufficient permissionsGrant required roles in Play Console
API_NOT_FOUND404App, track, or resource doesn't existVerify package name, track name, or resource ID
API_CONFLICT409Edit already in progressWait and retry; another edit may be open
API_RATE_LIMITED429Too many requestsGPC auto-retries; increase GPC_BASE_DELAY
API_REQUEST_TIMEOUT408Request timed outGPC auto-retries with exponential backoff
API_SERVER_ERROR5xxGoogle server issueRetry later; check Google status dashboard
EDIT_CONFLICT409Concurrent edit from another tool/userOnly one edit at a time; check if Fastlane or Play Console has an open edit
API_DUPLICATE_VERSION_CODE409Version code already uploadedIncrement versionCode in build.gradle and rebuild
API_VERSION_CODE_TOO_LOW400Version code lower than currentVersion code must increase per track
API_PACKAGE_NAME_MISMATCH400applicationId doesn't match target appVerify applicationId matches target app
API_APP_NOT_FOUND404App not in developer accountVerify package name and developer account
API_INSUFFICIENT_PERMISSIONS403Service account missing permissionsGrant required roles in Play Console → Settings → API access
API_CHANGES_NOT_SENT_FOR_REVIEW400/403App has rejected update, requires review flagv0.9.69+: gpc releases commit auto-rescues this 403 by retrying with changesNotSentForReview=true. For other commands, add --changes-not-sent-for-review flag
API_CHANGES_ALREADY_IN_REVIEW400Changes already in review, new commit would silently cancelUse --error-if-in-review to prevent silent cancellation
# Check if an edit is stuck
gpc apps list --json

# API errors include suggestion field
gpc releases upload app.aab --track beta --json 2>&1 | jq '.error'

4. Network errors (exit code 5)

ErrorCauseFix
NETWORK_ERRORConnection failedCheck internet; check proxy settings
NETWORK_TIMEOUTRequest timed outIncrease GPC_TIMEOUT (default 30000ms)
NETWORK_DNSDNS resolution failedCheck DNS settings; try Google DNS (8.8.8.8)
NETWORK_SSLSSL/TLS handshake failedSet GPC_CA_CERT for custom CA; check proxy
# Increase timeout for large uploads
export GPC_TIMEOUT=120000

# Configure retry behavior
export GPC_MAX_RETRIES=5
export GPC_BASE_DELAY=2000
export GPC_MAX_DELAY=30000

# Corporate proxy
export HTTPS_PROXY=http://proxy.corp:8080

# Custom CA certificate
export GPC_CA_CERT=/path/to/ca-cert.pem

5. Configuration errors (exit code 1)

ErrorCauseFix
CONFIG_MISSINGNo.gpcrc.json or env varsRun gpc config init
CONFIG_INVALIDMalformed.gpcrc.jsonValidate JSON syntax
CONFIG_APP_MISSINGNo app specifiedSet with gpc config set app or --app flag
# Initialize config
gpc config init

# Set required values
gpc config set app com.example.app

# Check current config
gpc config list

6. Upload and release errors

ErrorCauseFix
INVALID_BUNDLEAAB is corrupted or wrong formatRebuild the AAB; run gpc validate first
VERSION_CODE_CONFLICTVersion code already usedIncrement versionCode in build.gradle
RELEASE_NOT_FOUNDNo release on the specified trackCheck track name; use gpc releases list --track <track>
ROLLOUT_INVALIDInvalid rollout percentageUse 0-100 (not 0.0-1.0); use --rollout 10 not --rollout 0.1
PROMOTE_NO_SOURCESource track has no release to promoteUpload to source track first
UPLOAD_CHUNK_FAILEDChunk could not be sent after retriesCheck network; increase GPC_MAX_RETRIES or GPC_UPLOAD_TIMEOUT
UPLOAD_NO_COMPLETIONAll bytes sent but no completion responseRetry upload; check GPC_UPLOAD_TIMEOUT
UPLOAD_INITIATE_FAILEDSession initiation failedCheck auth and permissions; retry
UPLOAD_NO_SESSION_URINo Location header in initiation responseAPI error; retry or check service account permissions
UPLOAD_SESSION_NOT_FOUNDSession expired (404)Start a new upload session
UPLOAD_SESSION_EXPIREDSession gone (410)Start a new upload session
UPLOAD_INVALID_CHUNK_SIZEChunk size not multiple of 256 KBSet GPC_UPLOAD_CHUNK_SIZE to a multiple of 262144 (256 KB)
# Validate before uploading
gpc validate app.aab

# Check existing releases
gpc releases list --track internal
gpc releases list --track beta

# Preview upload
gpc releases upload app.aab --track beta --dry-run

7. Vitals threshold breach (exit code 6)

Exit code 6 is not an error — it's an intentional signal that a vitals metric exceeded the threshold. Used for CI gating.

# This exits 6 if crash rate > 2.0%
gpc vitals crashes --threshold 2.0

# Check the actual value
gpc vitals crashes --json | jq '.crashRate'

# In CI, use exit code to gate promotion
gpc vitals crashes --threshold 1.5 && gpc releases promote --from beta --to production

8. Plugin errors (exit code 10)

ErrorCauseFix
PLUGIN_INVALID_PERMISSIONThird-party plugin declares unknown permissionCheck valid permissions in plugin-sdk docs
Plugin not loadingNot in config or not approvedAdd to plugins and approvedPlugins in.gpcrc.json
Plugin error in hookBug in plugin handlerCheck plugin logs; onError/API hooks swallow errors

Changelog generation errors (v0.9.61+)

CodeMeaningFix
CHANGELOG_NO_TAGNo v* git tag found, --from not passedCreate a tag (git tag v0.0.1) or pass --from <ref>
CHANGELOG_BAD_REF--from or --to ref doesn't existRun git rev-parse --verify <ref> to check
CHANGELOG_LOCALES_REQUIRED--target play-store passed without --locales (v0.9.62+)Pass --locales en-US,fr-FR or --locales auto
CHANGELOG_LOCALES_INVALIDOne or more --locales are not valid BCP 47 (v0.9.62+)Use Play Store-supported codes like en-US, fr-FR, de-DE
CHANGELOG_LOCALES_AUTO_NO_APP--locales auto without an authenticated client + app (v0.9.62+)Pass --app <package> or set config.app, check credentials
CHANGELOG_LOCALES_EMPTY--locales auto returned zero locales (v0.9.62+)Create at least one Play Store listing, or pass explicit --locales
RELEASE_NO_DRAFT--apply found no draft release on the target track (v0.9.64+)Create a draft release first (gpc releases upload --status draft)
BUNDLE_PROCESSING_TIMEOUTAAB upload completed but bundle not processed within ~31s (v0.9.64+)Retry the upload; if persistent, check bundle size and Google's server status

9. Debug mode

Enable verbose output for any command:

# Debug environment variable
GPC_DEBUG=1 gpc releases upload app.aab --track beta

# JSON output for machine parsing
gpc releases upload app.aab --track beta --json

# Combine for maximum detail
GPC_DEBUG=1 gpc releases upload app.aab --track beta --json 2>debug.log

10. Retryable HTTP status codes

GPC automatically retries the following HTTP status codes with exponential backoff:

  • 408 — Request Timeout
  • 429 — Too Many Requests (rate limited)
  • 5xx — Server errors (500, 502, 503, etc.)

Configure retry behavior:

export GPC_MAX_RETRIES=5        # Default: 5
export GPC_BASE_DELAY=1000      # Initial delay in ms
export GPC_MAX_DELAY=15000      # Max delay in ms
export GPC_UPLOAD_TIMEOUT=300000  # Upload timeout in ms (5 min)

Verification

  • gpc doctor passes all checks
  • Failing command now succeeds or shows a clear, actionable error
  • Exit code matches the expected category
  • --json output includes error.code, error.message, and error.suggestion

Failure modes / debugging

SymptomLikely CauseFix
gpc doctor fails on authCredentials not configuredRun gpc auth login
gpc doctor fails on APIService account lacks API accessEnable Google Play Developer API in GCP
All commands timeoutNetwork/proxy issueCheck HTTPS_PROXY, GPC_CA_CERT, GPC_TIMEOUT
Commands work locally, fail in CIMissing env vars in CISet GPC_SERVICE_ACCOUNT and GPC_APP in CI secrets
JSON output has no suggestionUnexpected error typeFile a bug — all errors should have suggestions

Related skills

  • gpc-setup — initial auth and config setup
  • gpc-ci-integration — CI-specific troubleshooting
  • gpc-vitals-monitoring — understanding threshold breaches
  • gpc-plugin-development — debugging plugin issues

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

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

平台分布

Claude

33.33%
按下载量换算28

Codex

32.72%
按下载量换算27

Cursor

21.17%
按下载量换算18

Gemini CLI

9.04%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

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

安装前确认

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

来源信息

继续浏览同类 Skills