Installation
GPC supports four installation methods. Choose based on your environment:
| Method | Best For | Plugin Support | Auto-Update |
|---|---|---|---|
| Homebrew | macOS / Linux desktops | No | brew upgrade |
| npm | Node.js projects, CI/CD | Yes | npm update -g |
| Standalone binary | CI/CD, no Node.js required | No | Re-download |
| From source | Contributors, development | Yes | git pull |
Homebrew
Recommended for macOS and Linux desktop users.
brew install yasserstudio/tap/gpcVerify the installation:
gpc --versionUpdate to the latest version:
brew upgrade gpcUninstall:
brew uninstall gpcnpm
Recommended for Node.js projects and CI/CD pipelines. This is the only method that supports plugins.
npm install -g @gpc-cli/cliOr with other package managers:
pnpm add -g @gpc-cli/cliyarn global add @gpc-cli/cliVerify the installation:
gpc --versionUpdate to the latest version:
npm update -g @gpc-cli/cliUninstall:
npm uninstall -g @gpc-cli/cliAgent Skills
If you use Claude Code or another AI coding assistant, install the GPC agent skills to get guided help with Google Play workflows:
gpc install-skillsThe interactive wizard lets you select from 13 skills covering setup, releases, metadata, vitals, CI/CD, monetization, and more. See the Agent Skills page for the full list.
Standalone Binary
Pre-compiled binaries with no runtime dependencies. Ideal for CI/CD environments without Node.js.
Automatic install (recommended)
curl -fsSL https://raw.githubusercontent.com/yasserstudio/gpc/main/scripts/install.sh | shThis script detects your platform, downloads the correct binary, and places it in /usr/local/bin.
Manual download
Download the binary for your platform from the GitHub releases page.
Platform support
| Platform | Architecture | Binary |
|---|---|---|
| macOS | arm64 (Apple Silicon) | gpc-darwin-arm64 |
| macOS | x64 (Intel) | gpc-darwin-x64 |
| Linux | x64 | gpc-linux-x64 |
| Linux | arm64 | gpc-linux-arm64 |
| Windows | x64 | gpc-windows-x64.exe |
Manual install steps (Linux/macOS)
# Download the binary (replace PLATFORM with darwin-arm64, darwin-x64, or linux-x64)
curl -fsSL -o gpc "https://github.com/yasserstudio/gpc/releases/latest/download/gpc-PLATFORM"
# Make it executable
chmod +x gpc
# Move to a directory in your PATH
sudo mv gpc /usr/local/bin/gpc
# Verify
gpc --versionManual install steps (Windows)
# Download the binary
Invoke-WebRequest -Uri "https://github.com/yasserstudio/gpc/releases/latest/download/gpc-windows-x64.exe" -OutFile "gpc.exe"
# Move to a directory in your PATH (e.g., C:\Windows\System32 or a custom directory)
Move-Item gpc.exe C:\Windows\System32\gpc.exe
# Verify
gpc --versionUninstall:
sudo rm /usr/local/bin/gpcFrom Source
For contributors or if you need the latest unreleased changes.
Prerequisites
- Node.js 20 or later
- pnpm 9.15 or later
Steps
git clone https://github.com/yasserstudio/gpc.git
cd gpc
pnpm install
pnpm buildLink the CLI globally:
cd packages/cli
pnpm link --globalVerify the installation:
gpc --versionRun tests:
pnpm testUpdate to the latest version:
git pull origin main
pnpm install
pnpm buildUninstall:
pnpm unlink --global gpcCI/CD Installation
GitHub Actions
- name: Install GPC
run: npm install -g @gpc-cli/cli
- name: Authenticate
run: gpc auth login --service-account "${{ secrets.GPC_SERVICE_ACCOUNT_JSON }}"Or with the standalone binary (no Node.js required):
- name: Install GPC
run: curl -fsSL https://raw.githubusercontent.com/yasserstudio/gpc/main/scripts/install.sh | shGitLab CI
before_script:
- npm install -g @gpc-cli/cli
- gpc auth login --service-account "$GPC_SERVICE_ACCOUNT_JSON"Docker
FROM node:20-slim
RUN npm install -g @gpc-cli/cliOr with the standalone binary:
FROM alpine:latest
RUN curl -fsSL https://raw.githubusercontent.com/yasserstudio/gpc/main/scripts/install.sh | shVerify Installation
After installing with any method, run the doctor command to verify your setup:
gpc doctorThis checks:
- GPC binary is accessible and reports its version
- Node.js version is 20 or later (npm installs only)
- Network connectivity to
googleapis.com - Authentication credentials are configured and valid
- Config file is found and valid (if present)
Shell Completions
Generate shell completions for tab-completion support:
# Bash — add to ~/.bashrc
eval "$(gpc completion bash)"
# Zsh — add to ~/.zshrc
eval "$(gpc completion zsh)"
# Fish — add to ~/.config/fish/config.fish
gpc completion fish | sourceOr save to a file:
gpc completion bash > /usr/local/etc/bash_completion.d/gpc
gpc completion zsh > "${fpath[1]}/_gpc"
gpc completion fish > ~/.config/fish/completions/gpc.fishNext Steps
- Quick Start -- Authenticate and run your first commands
- Authentication -- Set up service accounts, OAuth, or ADC
- Configuration -- Config files, environment variables, and profiles