axiom-app-store-connect-ref by charleswiltgen/axiom
npx skills add https://github.com/charleswiltgen/axiom --skill axiom-app-store-connect-refApp Store Connect (ASC) 为您的应用提供崩溃报告、TestFlight 反馈和性能指标。本参考指南涵盖如何导航 ASC 以查找和导出崩溃数据进行分析。
| 任务 | 最佳工具 |
|---|---|
| 开发期间的快速崩溃分类 | Xcode Organizer |
| 团队范围内的崩溃可见性 | App Store Connect |
| 带截图的 TestFlight 反馈 | App Store Connect |
| 历史指标和趋势 | App Store Connect |
| 下载崩溃日志进行分析 | 两者皆可(ASC 导出功能更佳) |
| 符号化 | Xcode Organizer |
App Store Connect
└── My Apps
└── [Your App]
└── Analytics
└── Crashes
直接 URL 模式: https://appstoreconnect.apple.com/analytics/app/[APP_ID]/crashes
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 指标 | 含义 |
|---|---|
| 无崩溃用户 | 未经历崩溃的日活跃用户百分比 |
| 崩溃次数 | 收到的崩溃报告总数 |
| 崩溃率 | 每 1,000 次会话的崩溃次数 |
| 受影响的设备 | 发生崩溃的唯一设备数量 |
| 崩溃签名 | 具有相同堆栈跟踪的分组崩溃 |
| 筛选条件 | 使用场景 |
|---|---|
| 平台 | iOS、iPadOS、macOS、watchOS、tvOS |
| 版本 | 深入查看特定应用版本 |
| 日期范围 | 最近 7/30/90 天或自定义范围 |
| 比较 | 比较版本间的崩溃率 |
| 设备 | 按 iPhone 型号、iPad 等筛选 |
| 操作系统版本 | 查找特定于操作系统的崩溃 |
每个崩溃签名显示:
crash-analyzer 代理进行解析:/axiom:analyze-crashApp Store Connect
└── My Apps
└── [Your App]
└── TestFlight
└── Feedback
每个反馈提交包括:
| 字段 | 描述 |
|---|---|
| 截图 | 测试人员看到的内容(通常最有价值) |
| 评论 | 测试人员对问题的描述 |
| 应用版本 | 确切的 TestFlight 构建号 |
| 设备型号 | iPhone 15 Pro Max、iPad Air 等 |
| 操作系统版本 | iOS 17.2.1 等 |
| 电池电量 | 低电量可能影响行为 |
| 可用磁盘空间 | 低磁盘空间可能导致写入失败 |
| 网络类型 | WiFi 与蜂窝网络 |
| 区域设置 | 语言和地区设置 |
| 时间戳 | 提交时间 |
| 筛选条件 | 使用场景 |
|---|---|
| 构建版本 | 专注于特定的 TestFlight 构建版本 |
| 日期 | 优先查看最近的反馈 |
| 有截图 | 快速查找视觉问题 |
TestFlight 反馈是 单向的。您无法通过 ASC 回复测试人员。如需跟进:
App Store Connect
└── My Apps
└── [Your App]
└── Analytics
└── Metrics
| 类别 | 显示内容 |
|---|---|
| 崩溃 | 无崩溃用户、崩溃次数、顶部签名 |
| 卡顿率 | 主线程卡顿 > 250 毫秒 |
| 磁盘写入 | 过多的磁盘 I/O 模式 |
| 启动时间 | 应用启动性能 |
| 内存 | 峰值内存使用量、终止 |
| 电池 | 前台/后台期间的能耗 |
| 滚动 | 滚动卡顿率 |
指标仪表板显示不产生崩溃报告的终止:
| 终止类型 | 原因 |
|---|---|
| 内存限制 | Jetsam 因内存压力终止应用 |
| CPU 限制(后台) | 超出后台 CPU 配额 |
| 启动超时 | 应用启动时间过长 |
| 后台任务超时 | 后台任务超出时间限制 |
使用 比较 筛选器查看:
对于自动导出,使用 App Store Connect API:
# 获取崩溃诊断洞察
GET /v1/apps/{id}/perfPowerMetrics
# 身份验证需要来自 ASC 的 API 密钥
# Users and Access → Keys → App Store Connect API
API 功能:
| 端点 | 数据 |
|---|---|
perfPowerMetrics | 性能和功耗指标 |
diagnosticSignatures | 崩溃签名聚合 |
diagnosticLogs | 单个崩溃日志 |
betaTesters | TestFlight 测试人员信息 |
betaFeedback | TestFlight 反馈条目 |
如果配置了 asc-mcp,您可以从 Claude Code 以编程方式访问 ASC 数据:
| 手动 ASC 操作 | asc-mcp 工具 |
|---|---|
| 查看崩溃指标 | metrics_app_perf, metrics_build_diagnostics |
| 下载崩溃日志 | metrics_get_diagnostic_logs |
| 列出 TestFlight 测试人员 | builds_get_beta_testers |
| 查看应用评价 | reviews_list, reviews_stats |
| 回复评价 | reviews_create_response |
| 检查构建状态 | builds_get_processing_state |
| 导出销售数据 | analytics_sales_report (需要 vendor_number) |
设置和工作流 : /skill axiom-asc-mcp
如果使用 Xcode Cloud,崩溃数据会与 CI/CD 集成:
| 优先级 | 标准 |
|---|---|
| P0 - 严重 | >1% 的用户受影响,存在数据丢失风险 |
| P1 - 高 | >0.5% 受影响,对用户有影响 |
| P2 - 中 | <0.5% 受影响,存在变通方案 |
| P3 - 低 | 罕见、边缘情况、无影响 |
每次发布后:
| 原因 | 解决方法 |
|---|---|
| 时间太近 | 等待 24 小时进行处理 |
| 尚无用户 | 需要活跃安装来报告 |
| 用户选择退出 | 需要设备分析共享 |
| 构建版本未分发 | 必须是 TestFlight 或 App Store |
如果在分发期间上传了 dSYM 文件,ASC 崩溃应自动符号化。dSYM 文件 包含将内存地址映射回函数名和行号的调试符号。
验证 dSYM 文件是否已上传:
.xcarchive → "Show Package Contents"dSYMs/ 文件夹是否包含 .dSYM 包手动符号化工作流:
# 1. 从 ASC 下载 .ips 文件 (Crashes → 签名 → Download Logs)
# 2. 从崩溃报告中查找二进制 UUID
grep --after-context=2 "Binary Images" crash.ips
# 查找:0x100000000 - 0x100ffffff MyApp arm64 <UUID>
# 3. 在您的机器上定位匹配的 dSYM
mdfind "com_apple_xcode_dsym_uuids == <UUID>"
# 4. 符号化一个地址
atos -arch arm64 -o MyApp.app.dSYM/Contents/Resources/DWARF/MyApp \
-l 0x100000000 0x100045abc
# 输出:-[UserManager currentUser] (UserManager.m:42)
常见的符号化失败:
| 症状 | 原因 | 解决方法 |
|---|---|---|
| 所有地址都未符号化 | dSYM 文件未上传 | 从 Xcode Organizer 重新上传 |
| 仅您的代码未符号化 | dSYM UUID 不匹配 | 从同一提交重新构建 |
| 系统框架未符号化 | 设备特定的正常情况 | 使用带有设备支持文件的 atos |
| Bitcode 构建未符号化 | Apple 重新编译了二进制文件 | 从 ASC 下载 dSYM 文件:Xcode → Organizer → Download Debug Symbols |
有关自动解析,请参阅 crash-analyzer 代理:/axiom:analyze-crash
两者显示相同的数据,但:
对于设备级别的崩溃诊断、卡顿调用堆栈以及超出 ASC 聚合仪表板的自定义遥测,请参阅 axiom-metrickit-ref。
关键区别:ASC 显示团队可见性的聚合趋势。MetricKit 提供可与您自己的遥测数据关联的每设备诊断。
技能 : axiom-testflight-triage (Xcode Organizer 工作流), axiom-asc-mcp (通过 MCP 以编程方式访问 ASC)
代理 : crash-analyzer (自动崩溃日志解析)
命令 : /axiom:analyze-crash
WWDC: 2020-10076, 2020-10078, 2021-10203, 2021-10258
文档: /app-store-connect/api, /xcode/diagnosing-issues-using-crash-reports-and-device-logs
每周安装量
92
仓库
GitHub 星标数
601
首次出现
Jan 21, 2026
安全审计
安装于
opencode78
claude-code73
codex72
gemini-cli70
cursor70
github-copilot67
App Store Connect (ASC) provides crash reports, TestFlight feedback, and performance metrics for your apps. This reference covers how to navigate ASC to find and export crash data for analysis.
| Task | Best Tool |
|---|---|
| Quick crash triage during development | Xcode Organizer |
| Team-wide crash visibility | App Store Connect |
| TestFlight feedback with screenshots | App Store Connect |
| Historical metrics and trends | App Store Connect |
| Downloading crash logs for analysis | Either (ASC has better export) |
| Symbolication | Xcode Organizer |
App Store Connect
└── My Apps
└── [Your App]
└── Analytics
└── Crashes
Direct URL pattern: https://appstoreconnect.apple.com/analytics/app/[APP_ID]/crashes
| Metric | What It Means |
|---|---|
| Crash-Free Users | Percentage of daily active users who didn't experience a crash |
| Crash Count | Total number of crash reports received |
| Crash Rate | Crashes per 1,000 sessions |
| Affected Devices | Number of unique devices that crashed |
| Crash Signature | Grouped crashes with same stack trace |
| Filter | Use Case |
|---|---|
| Platform | iOS, iPadOS, macOS, watchOS, tvOS |
| Version | Drill into specific app versions |
| Date Range | Last 7/30/90 days or custom range |
| Compare | Compare crash rates between versions |
| Device | Filter by iPhone model, iPad, etc. |
| OS Version | Find OS-specific crashes |
Each crash signature shows:
crash-analyzer agent to parse: /axiom:analyze-crashApp Store Connect
└── My Apps
└── [Your App]
└── TestFlight
└── Feedback
Each feedback submission includes:
| Field | Description |
|---|---|
| Screenshot | What the tester saw (often most valuable) |
| Comment | Tester's description of the issue |
| App Version | Exact TestFlight build number |
| Device Model | iPhone 15 Pro Max, iPad Air, etc. |
| OS Version | iOS 17.2.1, etc. |
| Battery Level | Low battery can affect behavior |
| Available Disk | Low disk can cause write failures |
| Network Type | WiFi vs Cellular |
| Locale | Language and region settings |
| Timestamp | When submitted |
| Filter | Use Case |
|---|---|
| Build | Focus on specific TestFlight builds |
| Date | Recent feedback first |
| Has Screenshot | Find visual issues quickly |
TestFlight feedback is one-way. You cannot respond to testers through ASC. For follow-up:
App Store Connect
└── My Apps
└── [Your App]
└── Analytics
└── Metrics
| Category | What It Shows |
|---|---|
| Crashes | Crash-free users, crash count, top signatures |
| Hang Rate | Main thread hangs > 250ms |
| Disk Writes | Excessive disk I/O patterns |
| Launch Time | App startup performance |
| Memory | Peak memory usage, terminations |
| Battery | Energy usage during foreground/background |
| Scrolling | Scroll hitch rate |
The Metrics dashboard shows terminations that don't produce crash reports:
| Termination Type | Cause |
|---|---|
| Memory Limit | Jetsam killed app for memory pressure |
| CPU Limit (Background) | Exceeded background CPU quota |
| Launch Timeout | App took too long to launch |
| Background Task Timeout | Background task exceeded time limit |
Use the Compare filter to see:
For automated export, use the App Store Connect API:
# Get crash diagnostic insights
GET /v1/apps/{id}/perfPowerMetrics
# Authentication requires API key from ASC
# Users and Access → Keys → App Store Connect API
API capabilities:
| Endpoint | Data |
|---|---|
perfPowerMetrics | Performance and power metrics |
diagnosticSignatures | Crash signature aggregates |
diagnosticLogs | Individual crash logs |
betaTesters | TestFlight tester info |
betaFeedback | TestFlight feedback entries |
If asc-mcp is configured, you can access ASC data programmatically from Claude Code:
| Manual ASC Action | asc-mcp Tool |
|---|---|
| View crash metrics | metrics_app_perf, metrics_build_diagnostics |
| Download crash logs | metrics_get_diagnostic_logs |
| List TestFlight testers | builds_get_beta_testers |
| View app reviews | reviews_list, reviews_stats |
| Respond to reviews | reviews_create_response |
Setup and workflows : /skill axiom-asc-mcp
If using Xcode Cloud, crash data integrates with CI/CD:
| Priority | Criteria |
|---|---|
| P0 - Critical | >1% of users affected, data loss risk |
| P1 - High | >0.5% affected, user-facing impact |
| P2 - Medium | <0.5% affected, workaround exists |
| P3 - Low | Rare, edge case, no impact |
After each release:
| Cause | Fix |
|---|---|
| Too recent | Wait 24 hours for processing |
| No users yet | Need active installs to report |
| User opted out | Requires device analytics sharing |
| Build not distributed | Must be TestFlight or App Store |
ASC crashes should auto-symbolicate if you uploaded dSYMs during distribution. dSYM files contain the debug symbols that map memory addresses back to function names and line numbers.
Verify dSYMs were uploaded:
.xcarchive → "Show Package Contents"dSYMs/ folder contains .dSYM bundlesManual symbolication workflow:
# 1. Download .ips file from ASC (Crashes → signature → Download Logs)
# 2. Find the binary UUID from the crash report
grep --after-context=2 "Binary Images" crash.ips
# Look for: 0x100000000 - 0x100ffffff MyApp arm64 <UUID>
# 3. Locate matching dSYM on your machine
mdfind "com_apple_xcode_dsym_uuids == <UUID>"
# 4. Symbolicate an address
atos -arch arm64 -o MyApp.app.dSYM/Contents/Resources/DWARF/MyApp \
-l 0x100000000 0x100045abc
# Output: -[UserManager currentUser] (UserManager.m:42)
Common symbolication failures:
| Symptom | Cause | Fix |
|---|---|---|
| All addresses unsymbolicated | dSYMs not uploaded | Re-upload from Xcode Organizer |
| Only your code unsymbolicated | dSYM UUID mismatch | Rebuild from same commit |
| System frameworks unsymbolicated | Normal for device-specific | Use atos with device support files |
| Bitcode builds unsymbolicated | Apple recompiled binary | Download dSYMs from ASC: Xcode → Organizer → Download Debug Symbols |
See crash-analyzer agent for automated parsing: /axiom:analyze-crash
Both show the same data, but:
For device-level crash diagnostics, hang call stacks, and custom telemetry beyond ASC's aggregated dashboards, see axiom-metrickit-ref.
Key difference : ASC shows aggregated trends for team visibility. MetricKit provides per-device diagnostics you can correlate with your own telemetry.
Skills : axiom-testflight-triage (Xcode Organizer workflows), axiom-asc-mcp (programmatic ASC access via MCP)
Agents : crash-analyzer (automated crash log parsing)
Commands : /axiom:analyze-crash
WWDC: 2020-10076, 2020-10078, 2021-10203, 2021-10258
Docs: /app-store-connect/api, /xcode/diagnosing-issues-using-crash-reports-and-device-logs
Weekly Installs
92
Repository
GitHub Stars
601
First Seen
Jan 21, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
opencode78
claude-code73
codex72
gemini-cli70
cursor70
github-copilot67
Electron应用自动化指南:使用agent-browser通过CDP实现桌面应用自动化
13,500 周安装
| Check build status | builds_get_processing_state |
| Export sales data | analytics_sales_report (requires vendor_number) |