Command-line access to the App Store Connect API for iOS, macOS, tvOS, and visionOS release work
<p className="text-lg sm:text-xl text-gray-300 mb-8 max-w-2xl">
Run App Store Connect tasks from your terminal, IDE, or CI/CD pipeline. Manage TestFlight, builds, submissions, signing, analytics, and more.
</p>
<div className="flex flex-wrap gap-4">
<a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors bg-[#8c8c8d] text-white hover:bg-[#7a7a7b]">
Get Started
</a>
<a href="/commands/overview" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors border border-white/30 bg-white/10 text-white hover:bg-white/20">
Command Reference
</a>
</div>
</div>
<div className="lg:col-span-5 hidden lg:block">
<div className="dark:bg-[#1a1d27] bg-white rounded-2xl border dark:border-[#27272a] border-gray-200 p-6 shadow-2xl">
<div className="font-mono text-sm">
<div className="text-gray-400 dark:text-gray-500 mb-2">\$ asc apps list</div>
<div className="text-green-400 mb-4">OK Authenticated as MyApp</div>
<div className="space-y-2 text-gray-300 dark:text-gray-400">
<div>iOS My iOS App (123456789)</div>
<div>macOS My macOS App (987654321)</div>
<div>tvOS My tvOS App (456789123)</div>
</div>
<div className="mt-4 text-gray-400 dark:text-gray-500">\$ asc builds upload --app 123456789</div>
<div className="text-green-400 mt-2">OK Build uploaded successfully</div>
</div>
</div>
</div>
</div>
</div>
<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
Get up and running with the App Store Connect CLI in minutes
</p>
<Steps>
<Step title="Install the CLI">
Install via Homebrew (recommended) or use the install script:
```bash Homebrew theme={null}
brew install asc
```
```bash Install Script theme={null}
curl -fsSL https://asccli.sh/install | bash
```
</Step>
<Step title="Install the agent skills globally">
Make the asc workflow skills available across your projects:
```bash theme={null}
asc install-skills
```
This checks out reviewed commit `e30039abddbe388179324d0f9cdccb66c3843115` and installs its 23 skills directly. The command verifies the complete pack and every installed file, preserves unrelated skills and lock entries, and pins the 23 ASC lock entries to that commit so external checks cannot update them from a mutable branch. It rolls back on a partial failure. It requires `git` but does not execute Node.js, `npx`, npm packages, or repository scripts.
```bash theme={null}
git --version
asc install-skills
```
</Step>
<Step title="Authenticate with your API key">
Generate an API key from [App Store Connect](https://appstoreconnect.apple.com/access/integrations/api) and authenticate:
```bash theme={null}
asc auth login \
--name "MyApp" \
--key-id "ABC123" \
--issuer-id "DEF456" \
--private-key /path/to/AuthKey.p8
```
<Note>
Your credentials are securely stored in the system keychain with config/env fallback.
</Note>
</Step>
<Step title="Run your first command">
List your apps to verify authentication:
```bash theme={null}
asc apps list --output table
```
<Accordion title="Example output">
```
ID NAME BUNDLE ID
123456789 My iOS App com.example.myapp
987654321 My macOS App com.example.macapp
```
</Accordion>
</Step>
</Steps>
<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
Guides for the main parts of shipping and maintaining your apps
</p>
<CardGroup cols={2}>
<Card title="TestFlight distribution" icon="plane" href="/guides/testflight">
Manage builds, beta testers, feedback, and crash reports
</Card>
<Card title="App Store submission" icon="rocket" href="/guides/app-store-submission">
Validate, submit, and automate your App Store release process
</Card>
<Card title="Code signing" icon="key" href="/guides/code-signing">
Manage certificates, provisioning profiles, and bundle IDs
</Card>
<Card title="Metadata management" icon="pen-to-square" href="/guides/metadata-management">
Update app info, localizations, screenshots, and preview videos
</Card>
<Card title="Analytics & reports" icon="chart-line" href="/guides/analytics-reports">
Download analytics, financial reports, and performance metrics
</Card>
<Card title="CI/CD integration" icon="code-branch" href="/cicd/overview">
Integrate with GitHub Actions, GitLab CI, Bitrise, and CircleCI
</Card>
</CardGroup>
<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
Browse all available commands organized by category
</p>
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
<a href="/commands/apps" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
<div className="flex items-start gap-4">
<div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Apps</div>
<div>
<h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">App Management</h3>
<p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Manage apps, versions, localizations, pricing, and categories</p>
<div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
View commands
<svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</div>
</div>
</div>
</a>
<a href="/commands/testflight" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
<div className="flex items-start gap-4">
<div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Test</div>
<div>
<h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">TestFlight & Builds</h3>
<p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Upload builds, manage testers, view feedback and crashes</p>
<div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
View commands
<svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</div>
</div>
</div>
</a>
<a href="/commands/signing" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
<div className="flex items-start gap-4">
<div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Sign</div>
<div>
<h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">Code Signing</h3>
<p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Manage certificates, provisioning profiles, and bundle IDs</p>
<div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
View commands
<svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</div>
</div>
</div>
</a>
<a href="/commands/workflow" className="group block rounded-2xl border dark:border-[#27272a] border-gray-200 dark:bg-[#1a1d27] bg-white p-6 transition-colors hover:dark:border-[#8c8c8d] hover:border-[#8c8c8d] no-underline">
<div className="flex items-start gap-4">
<div className="inline-flex min-w-14 justify-center rounded-full border border-[#8c8c8d]/40 px-3 py-1 text-xs font-semibold uppercase tracking-[0.2em] text-[#8c8c8d]">Auto</div>
<div>
<h3 className="text-base font-semibold dark:text-white text-gray-900 mb-2">Automation</h3>
<p className="text-sm dark:text-gray-400 text-gray-600 mb-3">Run workflows, webhooks, Xcode Cloud, and notifications</p>
<div className="flex items-center text-sm font-medium group-hover:text-[#8c8c8d] dark:text-gray-300 text-gray-700">
View commands
<svg className="ml-1 w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</div>
</div>
</div>
</a>
</div>
<p className="text-base dark:text-gray-400 text-gray-600 mb-8">
Reference pages, troubleshooting notes, and project docs
</p>
<CardGroup cols={3}>
<Card title="Troubleshooting" icon="wrench" href="/resources/troubleshooting">
Common issues and solutions
</Card>
<Card title="FAQ" icon="circle-question" href="/resources/faq">
Frequently asked questions
</Card>
<Card title="Contributing" icon="code-pull-request" href="/resources/contributing">
Contribute to the project
</Card>
</CardGroup>
<p className="text-base dark:text-gray-400 text-gray-600 mb-8 max-w-2xl mx-auto">
Set up the CLI and run your first App Store Connect command.
</p>
<a href="/quickstart" className="inline-flex items-center px-6 py-3 rounded-lg font-semibold transition-colors bg-[#8c8c8d] text-white hover:bg-[#7a7a7b]">
Get Started
</a>
</div>