Открытый исходный код · Лицензия MIT

App Store Connect
из вашего терминала.

Swift CLI для управления iOS и macOS приложениями в App Store Connect. Отправляйте версии, управляйте скриншотами, отслеживайте сборки — с полной поддержкой ИИ-агентов через CAEOAS.

$ brew install tddworks/tap/asccli
130+
Команд
CAEOAS
Поддержка ИИ
MIT
Открытый код
100+
API эндпоинтов
zsh — 80×24

Возможности

Всё необходимое, ничего лишнего

Построен на официальном App Store Connect API с чистой трёхуровневой архитектурой и полным выводом affordances для рабочих процессов ИИ-агентов.

Поддержка ИИ-агентов (CAEOAS)

Каждый ответ содержит готовые к выполнению команды в поле affordances. Агентам не нужно знать всё дерево команд — они просто следуют ссылкам.

App
├─ AppStoreVersion
│  └─ Localization
│     └─ ScreenshotSet
├─ AppInfo
│  └─ AppInfoLocalization
├─ Build
└─ TestFlight

Полная иерархия ресурсов

Управляйте всем деревом ресурсов App Store Connect: Приложения → Версии → Локализации → Наборы скриншотов → Скриншоты. Плюс сборки и TestFlight.

$ asc versions submit \
  --version-id a9657737
// 4 API calls, 1 command:
1. GET /appStoreVersions/{id}
2. POST /reviewSubmissions
3. POST /reviewSubmissionItems
4. PATCH /reviewSubmissions/{id}
state: WAITING_FOR_REVIEW

Отправка одной командой

Отправьте любую версию iOS или macOS на проверку одной командой. CLI автоматически выполняет весь многоэтапный процесс отправки на проверку.

Предварительная проверка

Запустите все проверки перед отправкой одной командой. Обнаруживает отсутствующие сборки, ненастроенные цены и неполные локализации — с приоритетами MUST FIX и SHOULD FIX. Действие отправки появляется только когда всё в порядке.

$ asc iris status
source: browser · cookies: 5
$ asc iris apps create \
  --name "My App" \
  --bundle-id com.example.app \
  --sku MYSKU
id: 1234567890

Iris (приватный API)

Доступ к приватному API, на котором работает веб-интерфейс App Store Connect. Создание новых приложений, список всех приложений — возможности, недоступные через публичный REST API. Аутентификация через cookies браузера, никакой дополнительной настройки.

# сохранить ключ один раз
$ asc app-shots config \
  --gemini-api-key KEY
# поместить PNG в .asc/app-shots/ → запустить
$ asc app-shots generate
# локализация одной командой
$ asc app-shots translate \
  --to zh --to ja
screen-0.png · 1320×2868
zh/ ja/ ← localized

AI-генератор скриншотов

Создавайте скриншоты App Store 1320×2868 с Gemini AI. Локализуйте одной командой — asc app-shots translate --to zh --to ja. Правильные размеры гарантированы.

$ asc version-localizations list \
  --version-id v1
$ asc version-localizations update \
  --localization-id id \
  --whats-new "Bug fixes"
en-US · zh-Hans · ja · ko

Локализации версии

Обновляйте текст «Что нового», описание, ключевые слова и промо-URL для каждого языка любой версии приложения. Полный CRUD — список, создание и обновление для всех поддерживаемых языков.

$ asc screenshot-sets create \
  --localization-id id \
  --display-type APP_IPHONE_67
$ asc screenshots upload \
  --set-id id --file screen.png
3-step ASC upload flow

Скриншоты

Создавайте наборы скриншотов для любого размера экрана и загружайте PNG-изображения через 3-шаговый процесс ASC. Поддерживает все типы экранов iPhone, iPad, Mac и Apple TV.

$ asc app-preview-sets create \
  --localization-id id \
  --preview-type IPHONE_67
$ asc app-previews upload \
  --set-id id --file preview.mp4 \
  --preview-frame-time-code 00:00:05

Превью приложения

Загружайте видеопревью (.mp4, .mov, .m4v) с необязательным таймкодом миниатюры. CLI автоматически обрабатывает полный 3-шаговый процесс: резервирование, загрузка по частям и подтверждение MD5.

$ asc app-info-localizations list \
  --app-info-id id
$ asc app-info-localizations update \
  --localization-id id \
  --name "My App" \
  --subtitle "Do things faster"

Локализации информации о приложении

Читайте и пишите метаданные приложения для каждого языка: название, подзаголовок и URL политики конфиденциальности. Метаданные на уровне приложения, применяемые ко всем версиям.

# однократная настройка
$ asc auth login \
  --key-id KEY \
  --private-key-path ~/.asc/Key.p8
сохранено в ~/.asc/credentials.json
# переменные окружения больше не нужны
$ asc apps list

Постоянная аутентификация

Войдите один раз с помощью asc auth login. Учётные данные сохраняются в ~/.asc/credentials.json и автоматически используются всеми командами. Переменные окружения не нужны.

$ asc builds upload \
  --app-id id --file MyApp.ipa \
  --version 1.2.0 --build-number 55
// 5-step flow:
1. Reserve slot
2. Upload chunks
3. Confirm MD5
state: processing

Загрузка сборок

Загружайте IPA/PKG через 5-шаговый процесс ASC: резервирование слота, загрузка по частям, подтверждение MD5 и ожидание обработки. Включает список, получение и удаление записей загрузки.

$ asc testflight groups list \
  --app-id id
$ asc testflight testers add \
  --beta-group-id id \
  --email [email protected]
$ asc testflight testers import \
  --beta-group-id id --file testers.csv

TestFlight

Управляйте бета-группами и тестировщиками: добавляйте или удаляйте по email, массово импортируйте/экспортируйте через CSV, распределяйте сборки по группам и обновляйте заметки по языкам.

Несколько форматов вывода

Разработан для людей и машин. Вывод в JSON (по умолчанию), таблице или markdown. Легко передаётся в jq, скрипты или ИИ-агенты.

$ asc iap create --app-id id \
  --type consumable \
  --reference-name "Coins 100"
$ asc iap prices set \
  --iap-id id --base-territory USA \
  --price-point-id id
$ asc iap submit --iap-id id

Встроенные покупки

Создавайте расходуемые, нерасходуемые IAP и подписки без автопродления. Устанавливайте цены по территориям из ценовых точек App Store, управляйте названиями и описаниями по языкам.

$ asc subscription-groups create \
  --app-id id --reference-name "Pro"
$ asc subscriptions create \
  --group-id id --period ONE_MONTH
$ asc subscription-offers create \
  --subscription-id id \
  --mode FREE_TRIAL --periods 7

Автоматически возобновляемые подписки

Создавайте группы подписок и уровни (еженедельно–ежегодно). Управляйте вводными предложениями (пробный период, оплата по факту, предоплата), метаданными по языкам и отправляйте на проверку.

$ asc bundle-ids create \
  --name "My App" \
  --identifier com.example.app \
  --platform ios
$ asc profiles create \
  --type IOS_APP_STORE \
  --bundle-id-id id --certificate-ids id

Подписание кода

Управляйте полной цепочкой подписи: регистрируйте Bundle ID, создавайте сертификаты из CSR, регистрируйте устройства по UDID и создавайте или удаляйте профили провиженинга — всё из терминала.

$ asc tui
┌─ Apps ─────────────────────────┐
▶ AppNexus
│  My Other App
└────────────────────────────────┘
↑↓ navigate · Enter · Esc back

Интерактивный TUI-режим

Запустите asc tui для полноценного TUI-браузера в терминале. Перемещайтесь между приложениями, версиями, сборками и TestFlight с помощью стрелок — без запоминания команд.

Быстрый старт

Готов к работе за несколько минут

1
$ brew install tddworks/tap/asccli
🍺 Pouring asc...
asc installed
$ asc --version
asc 1.0.0

Установить через Homebrew

Одна команда устанавливает последнюю версию. Xcode и Swift toolchain не нужны.

2
$ asc auth login \
  --key-id YOUR_KEY_ID \
  --issuer-id YOUR_ISSUER \
  --private-key-path ~/.asc/Key.p8
$ asc auth check
source: "file" · key: YOUR_KEY_ID
# сохранено в ~/.asc/credentials.json

Войдите один раз — используйте всегда

Сохраните ваш API-ключ с помощью asc auth login. Учётные данные хранятся в ~/.asc/credentials.json — переменные окружения для каждой сессии не нужны.

3
$ asc apps list
$ asc versions list --app-id <id>
$ asc screenshots upload \
  --set-id <id> --file shot.png
$ asc versions submit \
  --version-id <id>
Submitted for review

Начните управлять своими приложениями

Список приложений, проверка версий, загрузка скриншотов, отправка на проверку — всё из вашего терминала или через ИИ-агента.

Навыки агента

Усильте своего ИИ-агента

Установите 26+ готовых навыков, которые научат вашего ИИ-агента для программирования использовать каждую команду asc — от загрузки до отправки.

$ asc skills install --all

asc-builds-upload

Загружайте сборки IPA/PKG и управляйте распространением через TestFlight

asc-app-shots

Генерируйте и переводите скриншоты App Store с помощью ИИ

asc-check-readiness

Предварительные проверки перед отправкой на проверку

asc-auth

Настройте и управляйте учётными данными API App Store Connect

asc-testflight

Управляйте бета-группами и тестировщиками TestFlight

asc-release-workflow

Полный цикл релиза: версия, архивация, загрузка, отправка

Более 26 навыков — совместимо с Claude Code, Cursor, Windsurf и другими

Готовы попробовать asc?

Автоматизируйте рабочий процесс App Store Connect

$ brew install tddworks/tap/asccli

Сообщество

App Wall

Реальные приложения в App Store, опубликованные разработчиками с помощью asc CLI.

$ asc app-wall submit --app-id <your-app-id>

Одна команда для отправки приложения и открытия pull request →

Built for real apps

Sponsors