From Markdown to five hosted URLs
Try a 90-second walkthrough after setup: publish two local files to a disposable app, add a demo FAQ and update, then retrieve your page links. Free accounts can use the CLI.
npx storepal@0.1.0 auth login
npx storepal@0.1.0 privacy set --slug your-demo-slug --file privacy.md
npx storepal@0.1.0 urls --slug your-demo-slugCreate your disposable app in the dashboard first. These commands publish immediately; use the clearly marked demo files only for a demo app.
Prefer a browser? Preview the launch kit without an account.StorePal CLI
Manage your App Store pages from the terminal. Pairs with the ASC CLI for AI-powered App Store submissions.
Quick Start
1. Sign in
$ npx storepal auth login
Opening browser to authorize...
Waiting for authorization...
✓ Logged in successfully
2 apps foundOpens your browser. Sign in or create an account, click Authorize, done. Token is saved to ~/.storepal/credentials.json.
2. List your apps
$ npx storepal apps
My Weather App (/weather-app)
A simple weather forecast app
FitTrack (/fittrack)
Fitness tracking for runners3. Get your URLs
$ npx storepal urls --slug weather-app
{
"support": "https://storepal.app/weather-app/support",
"privacy": "https://storepal.app/weather-app/privacy",
"terms": "https://storepal.app/weather-app/terms",
"faq": "https://storepal.app/weather-app/faq",
"releases": "https://storepal.app/weather-app/releases"
}If you only have one app, --slug is optional.
Commands
| Command | Description |
|---|---|
| storepal auth login | Sign in via browser. Saves token locally. |
| storepal auth logout | Clear saved credentials. |
| storepal auth status | Show current session and list apps. |
| storepal apps | List all your apps with names and slugs. |
| storepal urls [--slug x] | Get all 5 public URLs as JSON. |
| storepal privacy get [--slug x] | Print privacy policy markdown to stdout. |
| storepal privacy set [--slug x] --file path | Update privacy policy from a markdown file. |
| storepal terms get [--slug x] | Print terms of service markdown to stdout. |
| storepal terms set [--slug x] --file path | Update terms of service from a markdown file. |
--slug is required when you have multiple apps. Auto-detected with one app.
Managing Pages
Write your pages in Markdown, then push from your terminal.
$ npx storepal privacy set --slug weather-app --file privacy.md
Privacy policy updated (2026-03-22T10:30:00.000Z)$ npx storepal terms set --slug weather-app --file terms.md
Terms of service updated (2026-03-22T10:30:00.000Z)$ npx storepal privacy get --slug weather-app > current-privacy.mdPages you can manage
App Store Connect Integration
Use StorePal with the ASC CLI to push your page URLs directly into App Store Connect.
$ asc apps info edit --app "$APP_ID" --locale "en-US" \
--privacy-policy-url "https://storepal.app/weather-app/privacy"$ asc apps info edit --app "$APP_ID" --locale "en-US" \
--support-url "https://storepal.app/weather-app/support"URL → App Store Connect field mapping
| storepal.app/{slug}/privacy | privacyPolicyUrl (app info) |
| storepal.app/{slug}/support | supportUrl (version) |
| storepal.app/{slug}/support | marketingUrl (version, optional) |
Agent Skill
The StorePal Agent Skill teaches AI coding assistants (Claude Code, Cursor, Windsurf) how to use the CLI and integrate with the ASC CLI. Install both skills, and your AI can set up all your App Store pages in one prompt.
$ npx skills add xiao99xiao/storepal-skillsWorks with Claude Code, Cursor, Windsurf, and any tool that supports Agent Skills.
"Set up a privacy policy and terms of service for my weather app,
then push the URLs to App Store Connect."The AI assistant will:
- Run
npx storepal auth loginif not authenticated - Write a privacy policy based on your app's data practices
- Upload it with
npx storepal privacy set --file privacy.md - Write and upload terms of service
- Get the URLs with
npx storepal urls - Push them to App Store Connect with
asc apps info edit
Compatible AI tools
REST API
All CLI commands use the REST API under the hood. You can call these endpoints directly with a sp_user_ (CLI) or sp_live_ (app-scoped, Pro) token.
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/v1/apps | List all apps with URLs |
| POST | /api/v1/apps | Create a new app |
| GET | /api/v1/app?slug=x | App info and all URLs |
| GET | /api/v1/privacy?slug=x | Get privacy policy |
| PUT | /api/v1/privacy?slug=x | Update privacy policy |
| GET | /api/v1/terms?slug=x | Get terms of service |
| PUT | /api/v1/terms?slug=x | Update terms of service |
| GET | /api/v1/faq?slug=x | List FAQ items |
| POST | /api/v1/faq?slug=x | Create FAQ item |
| GET | /api/v1/releases?slug=x | List release notes |
| POST | /api/v1/releases?slug=x | Create release note |
| POST | /api/v1/feedback?slug=x | Submit feedback |
Base URL: https://storepal.app. Auth: Authorization: Bearer sp_user_xxx