| name | asc-app-wall |
| description | Submit an app to the asc app wall at asccli.app by opening a GitHub pull request.
Use this skill when:
(1) User wants to add their app to the app wall: "submit my app", "add to app wall", "list my app on asc"
(2) User asks how to get their apps shown at asccli.app
(3) User asks what apps.json is for or how the app wall community registry works
(4) Explaining the GitHub PR flow for submitting to homepage/apps.json
|
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]
| Flag | Required | Description |
|---|
--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
gh auth login
asc app-wall submit \
--developer "yourhandle" \
--developer-id "1234567890" \
--github "yourgithub" \
--x "yourx" \
--pretty
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
- Authenticates with GitHub using your token
- Forks
tddworks/asc-cli (idempotent — safe to run multiple times)
- Syncs the fork to upstream
main
- Fetches current
homepage/apps.json from your fork
- Checks for duplicate (
developer field)
- Creates branch
app-wall/<developer>
- Commits updated
apps.json to that branch
- Opens a PR against
tddworks/asc-cli:main
Error Cases
| Error | Cause | Fix |
|---|
Provide --developer-id or at least one --app URL | Neither flag supplied | Add --developer-id or --app |
GitHub token required | No token found | Pass --github-token, set GITHUB_TOKEN, or run gh auth login |
Developer X is already listed | Duplicate developer in apps.json | Entry already submitted; check existing PR |
Timed out waiting for fork | Fork creation took > 24 seconds | Retry after a moment |
GitHub API error (422) | Branch already exists | Safe 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