Skip to main content
Welcome to the App Store Connect CLI (asc) - an unofficial, community-driven command-line tool for automating iOS, macOS, tvOS, and visionOS release workflows.

What is asc?

asc is a Go-based CLI that provides direct access to the App Store Connect API from your terminal, IDE, or CI/CD pipeline. It’s designed to be:
  • Fast: Built in Go with minimal dependencies
  • Lightweight: Single binary with no runtime requirements
  • Scriptable: JSON output, exit codes, and TTY-aware defaults
  • Agent-friendly: Built by AI agents, for AI agents
This project is an independent, unofficial tool and is not affiliated with, endorsed by, or sponsored by Apple Inc.

Key features

TestFlight automation

Upload builds, manage beta testers, collect feedback, and analyze crashes

App Store releases

Submit versions, manage metadata, handle screenshots, and track reviews

Signing & certificates

Manage certificates, provisioning profiles, and bundle IDs

CI/CD integration

GitHub Actions, GitLab CI, Bitrise, CircleCI support with structured output

Why use asc?

For developers

  • Skip the App Store Connect web interface for repetitive tasks
  • Automate build distribution to TestFlight
  • Script metadata updates across multiple localizations
  • Monitor crash reports and feedback from the command line

For teams

  • Integrate App Store Connect into your existing CI/CD workflows
  • Version-control your release processes
  • Standardize deployment procedures across projects
  • Audit and track all API operations

For AI agents

  • Self-documenting commands via --help
  • Structured JSON output for parsing
  • Deterministic behavior with explicit flags
  • No interactive prompts (use --confirm flags)

Common workflows

Here are some everyday tasks you can automate with asc:
asc builds upload --app "123456789" --file "/path/to/MyApp.ipa"
asc testflight builds list --app "123456789" --output table
asc feedback --app "123456789" --paginate
asc crashes --app "123456789" --sort -createdDate --limit 10
asc validate --app "123456789" --version "1.2.3"
asc submit --app "123456789" --version "1.2.3"
asc certificates list
asc profiles list
asc bundle-ids list

TTY-aware output

asc automatically chooses sensible defaults based on where stdout is connected:
  • Interactive terminal (TTY): table format for human readability
  • Pipes, files, CI: json format for machine parsing
You can override this behavior:
# Set a global preference
export ASC_DEFAULT_OUTPUT=markdown

# Or use explicit flags (always wins)
asc apps list --output json
asc builds list --output table

Wall of Apps

60+ apps ship with asc, including:
  • Developer tools and utilities
  • Productivity apps
  • Entertainment and games
  • Health and fitness trackers
View the complete Wall of Apps → Want to add your app? See our contributing guide.

Next steps

Installation

Install asc via Homebrew or install script

Authentication

Set up your App Store Connect API credentials

Quickstart

Run your first commands and explore workflows

Commands

Browse the complete command reference