开源 · MIT 许可证

在终端管理
App Store Connect。

用于管理 iOS 和 macOS 应用的 Swift 命令行工具。提交版本、管理截图、追踪构建——同时内置完整的 CAEOAS 可供 AI 智能体调用。

$ brew install tddworks/tap/asccli
130+
命令
CAEOAS
AI 智能体就绪
MIT
开源许可
100+
API 端点
zsh — 80×24

功能特性

所需功能,一应俱全

基于官方 App Store Connect API,采用清晰的三层架构,并提供完整的 Affordance 输出,专为 AI 智能体工作流设计。

AI 智能体就绪(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 自动处理完整的多步骤审核提交流程。

提交前检查

一条命令在提交前运行所有检查。可检测缺失的构建版本、未配置定价以及不完整的本地化——按「必须修复」与「建议修复」严重程度分类。只有当所有检查通过时,提交操作才会出现。

$ 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)

访问驱动 App Store Connect 网页端的私有 API。创建新应用、列出所有应用 — 这些功能公开 REST API 无法实现。基于浏览器 Cookie 认证,无需额外设置。

# 一次性保存密钥
$ 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 截图生成器

使用 Gemini AI 生成 1320×2868(iPhone 6.9")App Store 截图。一条命令完成本地化 — 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

截图管理

为任意尺寸创建截图集并通过三步 ASC 上传流程上传 PNG 图片。支持所有 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

App 预览视频

上传视频预览(.mp4、.mov、.m4v),可选择缩略图时间码。CLI 自动处理完整的三步上传流程:预留、分块上传和 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 一次性保存 API 密钥,凭证存储于 ~/.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

构建包上传

通过五步 ASC 上传流程上传 IPA/PKG:预留位置、分块上传、确认 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

管理 Beta 测试组和测试人员:按邮件添加或移除,通过 CSV 批量导入/导出,向测试组分发构建,并按语言更新「新功能」说明。

多种输出格式

专为人类和机器设计。支持 JSON(默认)、表格或 Markdown 格式输出,轻松接入 jq、脚本或 AI 智能体。

$ 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 打开完整的终端 UI 浏览器,用方向键浏览应用、版本、构建和 TestFlight——无需记忆命令,非常适合探索和发现。

快速开始

数分钟内快速上手

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

通过 Homebrew 安装

一条命令即可安装最新版本,无需 Xcode 或 Swift 工具链。

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

一次登录,永久使用

使用 asc auth login 保存 API 密钥,凭证存储于 ~/.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

开始管理您的应用

列出应用、查看版本、上传截图、提交审核——一切尽在终端,也可由 AI 智能体自动完成。

智能体技能

为你的 AI 智能体加速

安装 26+ 个预构建技能,教你的 AI 编程智能体如何使用每一个 asc 命令——从上传到提交。

$ asc skills install --all

asc-builds-upload

上传 IPA/PKG 构建包并管理 TestFlight 分发

asc-app-shots

使用 AI 生成和翻译 App Store 截图

asc-check-readiness

提交审核前的预检查

asc-auth

设置和管理 App Store Connect API 凭证

asc-testflight

管理 TestFlight 的测试组和测试人员

asc-release-workflow

端到端发布流程:版本号、归档、上传、提交

26+ 个技能可用——兼容 Claude Code、Cursor、Windsurf 等

准备好试用 asc 了吗?

自动化您的 App Store Connect 工作流

$ brew install tddworks/tap/asccli

社区

应用展示

开发者使用 asc CLI 发布到 App Store 的真实应用。

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

一条命令提交应用并打开 Pull Request →

Built for real apps

Sponsors