mcpField
A
asc-app-wall

asc-app-wall

github.com/tddworksマーケティング・グロース584 回インストール5 週間前に更新
リポジトリ

asc-app-wall について

asc-cliのコミュニティ向けアプリ紹介ページに登録するCLI機能です。開発者IDまたは指定したApp Store URLからアプリを取得し、GitHubトークンを使ってフォーク、コミット、プルリクエストを作成します。

主な機能

  1. 01開発者IDでアプリを登録
  2. 02指定したApp Store URLで登録
  3. 03フォークとプルリクエストの作成
  4. 04開発者の重複確認
  5. 05JSON形式の登録データを返却

活用シーン

  1. 01開発者IDに紐づく全アプリの掲載
  2. 02指定アプリのショーケースへの登録
  3. 03コミュニティ掲載用プルリクエストの作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/tddworks/asc-cli-skills --skill asc-app-wall

インストール後、Claude Code で/asc-app-wallを入力して読み込まれたか確認します。

詳細

asc app-wall — アプリウォールにアプリを申請する

tddworks/asc-cli をフォークし、homepage/apps.json にエントリーを追加してプルリクエストを作成することで、asccli.app/#app-wall のコミュニティショーケースにアプリを追加します。すべてを 1 つのコマンドで実行できます。

ASC 認証は不要です。GitHub トークンのみ必要です。

コマンド

asc app-wall submit [options]
フラグ必須説明
--developer—カードに表示するハンドル名です。省略すると、iTunes のアーティスト名が使用されます
--developer-id✓*Apple のデベロッパー/販売者 ID です。App Store のアプリをすべて自動取得します
--app-id✓*App Store Connect のアプリ ID です(複数指定可能)
--github—GitHub のユーザー名です
--x—X/Twitter のハンドル名です
--app✓*特定の App Store URL です(複数指定可能)
--github-token—GitHub トークンです(または GITHUB_TOKEN を設定するか、gh auth login を実行します)

✓* --developer-id、--app-id、--app のいずれか 1 つ以上が必要です。指定しない場合、ウォールに表示するアプリがありません。

一般的なワークフロー

# 1. Authenticate with GitHub (once)
gh auth login
# or: export GITHUB_TOKEN="ghp_..."

# 2. Submit — the CLI handles fork + commit + PR automatically
asc app-wall submit \
  --developer "yourhandle" \
  --developer-id "1234567890" \
  --github "yourgithub" \
  --x "yourx" \
  --pretty

# 3. Open the PR in your browser (URL is in the output)
open "https://github.com/tddworks/asc-cli/pull/<number>"

2 つの申請方法

方法 A — デベロッパー ID でアプリをすべて申請する(推奨):

asc app-wall submit \
  --developer "itshan" \
  --developer-id "1725133580" \
  --github "hanrw"

Apple デベロッパー ID は https://apps.apple.com/us/developer/name/id<NUMBER> で確認できます。

方法 B — 特定の App Store URL を指定する:

asc app-wall submit \
  --developer "itshan" \
  --app "https://apps.apple.com/us/app/my-app/id123456789" \
  --app "https://apps.apple.com/us/app/other-app/id987654321"

どちらの方法も、1 つのコマンドで組み合わせて使用できます。

JSON 出力

{
  "data": [
    {
      "affordances": {
        "openPR": "open https://github.com/tddworks/asc-cli/pull/42"
      },
      "developer": "itshan",
      "id": "42",
      "prNumber": 42,
      "prUrl": "https://github.com/tddworks/asc-cli/pull/42",
      "title": "feat(app-wall): add itshan"
    }
  ]
}

内部で行われる処理

  1. トークンを使って GitHub に認証します
  2. tddworks/asc-cli をフォークします(冪等なため、複数回実行しても安全です)
  3. フォークを upstream の main に同期します
  4. フォークから現在の homepage/apps.json を取得します
  5. 重複(developer フィールド)を確認します
  6. app-wall/<developer> ブランチを作成します
  7. 更新した apps.json をそのブランチにコミットします
  8. tddworks/asc-cli:main を対象にプルリクエストを作成します

エラーケース

エラー原因対処方法
Provide --developer-id or at least one --app URLどちらのフラグも指定されていません--developer-id または --app を追加してください
GitHub token requiredトークンが見つかりません--github-token を渡すか、GITHUB_TOKEN を設定するか、gh auth login を実行してください
Developer X is already listedapps.json に同じ developer が存在しますエントリーはすでに申請されています。既存のプルリクエストを確認してください
Timed out waiting for forkフォークの作成に 24 秒以上かかりました少し待ってから再試行してください
GitHub API error (422)ブランチがすでに存在します無視して問題ありません。コマンドは続行されます

apps.json の形式

homepage/apps.json に追加されるエントリー:

{
  "developer": "yourhandle",
  "developerId": "1234567890",
  "github": "yourgithub",
  "x": "yourx"
}

値が nil のフィールドは自動的に省略されます。プルリクエストがマージされると、fetch-apps-data.js が apps-data.json を再生成し、iTunes API からアプリの情報を取得します。

関連項目

  • 機能の詳細:docs/features/app-wall.md
  • アプリウォール:https://asccli.app/#app-wall
  • upstream リポジトリ:https://github.com/tddworks/asc-cli

コメント