asc-game-center について
asc-game-centerは、App Store Connect APIを通じてGame Centerの設定、実績、リーダーボードを管理するスキルです。開発者向けに、JSONレスポンス内の実行可能なコマンドをたどるCLIワークフローを提供します。
主な機能
- 01アプリのGame Center詳細取得
- 02実績の一覧表示・作成・削除
- 03リーダーボードの一覧表示・作成・削除
- 04生成されたコマンド候補による操作
- 05JSONまたはテーブル形式での出力
活用シーン
- 01アプリのGame Center設定
- 02既存の実績とリーダーボードの確認
- 03実績やリーダーボードの追加・削除
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ tddworks/ asc-cli-skills --skill asc-game-centerインストール後、Claude Code で/asc-game-centerを入力して読み込まれたか確認します。
詳細
asc を使用した Game Center
App Store Connect API を通じて、Game Center の詳細、実績、リーダーボードを管理します。
認証
asc auth login --key-id <id> --issuer-id <id> --private-key-path ~/.asc/AuthKey.p8
操作方法(CAEOAS アフォーダンス)
すべての JSON レスポンスには、実行可能なコマンドを含む "affordances" フィールドがあります。ID はあらかじめ入力されています。Game Center の詳細から始め、実績とリーダーボードへ進みます。
{
"id": "gc-abc123",
"appId": "6443417124",
"isArcadeEnabled": false,
"affordances": {
"getDetail": "asc game-center detail get --app-id 6443417124",
"listAchievements": "asc game-center achievements list --detail-id gc-abc123",
"listLeaderboards": "asc game-center leaderboards list --detail-id gc-abc123"
}
}
一般的なワークフロー
アプリの Game Center を設定する
# 1. Get the Game Center detail (find the detail ID)
asc game-center detail get --app-id 6443417124 --pretty
# 2. List existing achievements
asc game-center achievements list --detail-id gc-abc123 --pretty
# 3. Create a new achievement
asc game-center achievements create \
--detail-id gc-abc123 \
--reference-name "First Steps" \
--vendor-identifier first_steps \
--points 10 \
--pretty
# 4. Create a leaderboard
asc game-center leaderboards create \
--detail-id gc-abc123 \
--reference-name "All Time High" \
--vendor-identifier all_time_high \
--score-sort-type DESC \
--submission-type BEST_SCORE \
--pretty
Game Center のコンテンツを一目で確認する
DETAIL_ID=$(asc game-center detail get --app-id APP_ID | jq -r '.data[0].id')
asc game-center achievements list --detail-id "$DETAIL_ID" --output table
asc game-center leaderboards list --detail-id "$DETAIL_ID" --output table
クリーンアップ — 実績を削除する
# Copy the delete affordance from the achievement and run it
asc game-center achievements delete --achievement-id ach-abc123
コマンド
asc game-center detail get
アプリの Game Center 設定を取得します。
| フラグ | 必須 | 説明 |
|---|---|---|
--app-id | はい | App Store Connect のアプリ ID |
--output table|json | いいえ | 出力形式(デフォルト:json) |
--pretty | いいえ | JSON を整形して出力します |
asc game-center detail get --app-id 6443417124 --pretty
asc game-center detail get --app-id 6443417124 --output table
asc game-center achievements list
Game Center の詳細に属するすべての実績を一覧表示します。
| フラグ | 必須 | 説明 |
|---|---|---|
--detail-id | はい | Game Center の詳細 ID |
--output table|json | いいえ | 出力形式 |
--pretty | いいえ | JSON を整形して出力します |
asc game-center achievements list --detail-id gc-abc123 --pretty
asc game-center achievements list --detail-id gc-abc123 --output table
asc game-center achievements create
新しい実績を作成します。
| フラグ | 必須 | 説明 |
|---|---|---|
--detail-id | はい | Game Center の詳細 ID |
--reference-name | はい | 内部参照名 |
--vendor-identifier | はい | 一意の識別子(例:first_steps) |
--points | はい | 実績のポイント値 |
--show-before-earned | いいえ | 獲得前に実績を表示します(フラグ) |
--repeatable | いいえ | 実績を複数回獲得できるようにします(フラグ) |
--pretty | いいえ | JSON を整形して出力します |
asc game-center achievements create \
--detail-id gc-abc123 \
--reference-name "Speed Runner" \
--vendor-identifier speed_runner \
--points 50 \
--repeatable
asc game-center achievements delete
実績を削除します。
| フラグ | 必須 | 説明 |
|---|---|---|
--achievement-id | はい | 削除する実績 ID |
asc game-center achievements delete --achievement-id ach-abc123
asc game-center leaderboards list
Game Center の詳細に属するすべてのリーダーボードを一覧表示します。
| フラグ | 必須 | 説明 |
|---|---|---|
--detail-id | はい | Game Center の詳細 ID |
--output table|json | いいえ | 出力形式 |
--pretty | いいえ | JSON を整形して出力します |
asc game-center leaderboards list --detail-id gc-abc123 --output table
asc game-center leaderboards create
新しいリーダーボードを作成します。
| フラグ | 必須 | 説明 |
|---|---|---|
--detail-id | はい | Game Center の詳細 ID |
--reference-name | はい | 内部参照名 |
--vendor-identifier | はい | 一意の識別子(例:all_time_high) |
--score-sort-type | はい | ASC または DESC |
--submission-type | はい | BEST_SCORE または MOST_RECENT_SCORE |
--pretty | いいえ | JSON を整形して出力します |
asc game-center leaderboards create \
--detail-id gc-abc123 \
--reference-name "Speed Run" \
--vendor-identifier speed_run \
--score-sort-type ASC \
--submission-type MOST_RECENT_SCORE
asc game-center leaderboards delete
リーダーボードを削除します。
| フラグ | 必須 | 説明 |
|---|---|---|
--leaderboard-id | はい | 削除するリーダーボード ID |
asc game-center leaderboards delete --leaderboard-id lb-abc123
ドメインモデル
GameCenterDetail — アプリの Game Center 設定
id— Game Center 詳細 IDappId— 親 App ID(リクエストから挿入され、API からは返されません)isArcadeEnabled— Apple Arcade が有効かどうか- 利用可能な操作:
getDetail、listAchievements、listLeaderboards
GameCenterAchievement — Game Center の単一のアチーブメント
id— アチーブメント IDgameCenterDetailId— 親の詳細 ID(挿入されます)referenceName— 内部名vendorIdentifier— バンドル形式の一意な識別子points— ポイント値isShowBeforeEarned— 獲得前に表示するかどうかisRepeatable— 複数回獲得できるかどうかisArchived— アーカイブ済みかどうか- 利用可能な操作:
listAchievements、delete
GameCenterLeaderboard — Game Center の単一のリーダーボード
id— リーダーボード IDgameCenterDetailId— 親の詳細 ID(挿入されます)referenceName— 内部名vendorIdentifier— 一意な識別子scoreSortType—ASCまたはDESCsubmissionType—BEST_SCOREまたはMOST_RECENT_SCOREisArchived— アーカイブ済みかどうか- 利用可能な操作:
listLeaderboards、delete
コマンドの完全なリファレンス
すべてのフラグと使用例については、commands.md を参照してください。
コメント
Markdown 対応