mcpField
A
asc-app-wall

asc-app-wall

github.com/tddworksMarketing & growth584 installsUpdated 5w ago
Repository

About asc-app-wall

A CLI feature for submitting an app listing to the asc-cli community app wall. It gathers apps by developer ID or supplied App Store URLs, then prepares a GitHub fork, commit, and pull request using a GitHub token.

Key features

  1. 01Submit apps by developer ID
  2. 02Submit selected App Store URLs
  3. 03Create a fork and pull request
  4. 04Detect duplicate developers
  5. 05Return JSON submission data

Use cases

  1. 01List all apps tied to a developer ID
  2. 02Submit selected apps to the showcase
  3. 03Open a community listing pull request

Install

Copy the command and run it in a terminal.

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

After installing, type/asc-app-wallin Claude Code to confirm it loaded.

Details

From the project README

asc app-wall — Submit Your App to the App Wall

Adds your app to the community showcase at asccli.app/#app-wall by forking tddworks/asc-cli, adding your entry to homepage/apps.json, and opening a pull request — all in one command.

No ASC authentication required. Only a GitHub token is needed.

Command

asc app-wall submit [options]
FlagRequiredDescription
--developer—Display handle on the card; when omitted, uses iTunes artist name
--developer-id✓*Apple developer/seller ID — auto-fetches all your App Store apps
--app-id✓*App Store Connect app ID (repeatable)
--github—GitHub username
--x—X/Twitter handle
--app✓*Specific App Store URL (repeat for multiple)
--github-token—GitHub token (or set GITHUB_TOKEN / gh auth login)

✓* At least one of --developer-id, --app-id, or --app is required — without it there are no apps to display on the wall.

Typical Workflow

# 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>"

Two Submission Modes

Mode A — all apps by developer ID (recommended):

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

Find your Apple developer ID at https://apps.apple.com/us/developer/name/id<NUMBER>.

Mode B — specific App Store URLs:

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"

Both modes can be combined in one command.

JSON Output

{
  "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"
    }
  ]
}

What Happens Under the Hood

  1. Authenticates with GitHub using your token
  2. Forks tddworks/asc-cli (idempotent — safe to run multiple times)
  3. Syncs the fork to upstream main
  4. Fetches current homepage/apps.json from your fork
  5. Checks for duplicate (developer field)
  6. Creates branch app-wall/<developer>
  7. Commits updated apps.json to that branch
  8. Opens a PR against tddworks/asc-cli:main

Error Cases

ErrorCauseFix
Provide --developer-id or at least one --app URLNeither flag suppliedAdd --developer-id or --app
GitHub token requiredNo token foundPass --github-token, set GITHUB_TOKEN, or run gh auth login
Developer X is already listedDuplicate developer in apps.jsonEntry already submitted; check existing PR
Timed out waiting for forkFork creation took > 24 secondsRetry after a moment
GitHub API error (422)Branch already existsSafe to ignore — command continues

apps.json Format

The entry added to homepage/apps.json:

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

Nil fields are omitted automatically. After the PR is merged, fetch-apps-data.js regenerates apps-data.json to pull in your apps from the iTunes API.

See Also

  • Full feature doc: docs/features/app-wall.md
  • App wall live: https://asccli.app/#app-wall
  • Upstream repo: https://github.com/tddworks/asc-cli

Comments

Markdown supported