✓ Verified 💻 Development ✓ Enhanced Data

Apple Developer Toolkit

All-in-one Apple developer skill with three integrated tools shipped as a single unified binary. (1)

Rating
3.9 (396 reviews)
Downloads
1,530 downloads
Version
1.0.0

Overview

All-in-one Apple developer skill with three integrated tools shipped as a single unified binary. (1) Documentation.

Complete Documentation

View Source →

Apple Developer Toolkit

Three tools in one binary. Each part works independently with different credential requirements.

Architecture

Ships as a single unified binary appledev with multi-call support:

text
appledev build ...    # iOS app builder (SwiftShip)
appledev store ...    # App Store Connect CLI
appledev b ...        # Short alias
appledev s ...        # Short alias

One binary, three tools, zero duplication.

Credential Requirements by Feature

FeatureCredentials NeededWorks Without Setup
Documentation Search (Part 1)NoneYes
App Store Connect (Part 2)App Store Connect API key (.p8)No
iOS App Builder (Part 3)LLM API key + XcodeNo

Setup

Part 1: Documentation Search (no setup needed)

Works immediately with Node.js:

bash
node cli.js search "NavigationStack"

Part 2: App Store Connect CLI

Install via Homebrew:

bash
brew install Abdullah4AI/tap/appledev

Authenticate with your App Store Connect API key:

bash
appledev store auth login --name "MyApp" --key-id "KEY_ID" --issuer-id "ISSUER_ID" --private-key /path/to/AuthKey.p8

Or set environment variables:

bash
export APPSTORE_KEY_ID="your-key-id"
export APPSTORE_ISSUER_ID="your-issuer-id"
export APPSTORE_PRIVATE_KEY_PATH="/path/to/AuthKey.p8"

API keys are created at https://appstoreconnect.apple.com/access/integrations/api

Part 3: iOS App Builder

Prerequisites: Xcode (with iOS Simulator), XcodeGen, and an LLM API key for code generation.

bash
appledev build setup    # Checks and installs prerequisites

Build from source

bash
bash scripts/setup.sh

Part 1: Documentation Search

bash
node cli.js search "NavigationStack"
node cli.js symbols "UIView"
node cli.js doc "/documentation/swiftui/navigationstack"
node cli.js overview "SwiftUI"
node cli.js samples "SwiftUI"
node cli.js wwdc-search "concurrency"
node cli.js wwdc-year 2025
node cli.js wwdc-topic "swiftui-ui-frameworks"

Part 2: App Store Connect

Full reference: references/app-store-connect.md

TaskCommand
List appsappledev store apps
Upload buildappledev store builds upload --app "APP_ID" --ipa "app.ipa" --wait
Find build by numberappledev store builds find --app "APP_ID" --build-number "42"
Wait for build processingappledev store builds wait --build "BUILD_ID"
Publish TestFlightappledev store publish testflight --app "APP_ID" --ipa "app.ipa" --group "Beta" --wait
Submit App Storeappledev store publish appstore --app "APP_ID" --ipa "app.ipa" --submit --confirm --wait
Pre-submission validationappledev store validate --app "APP_ID" --version-id "VERSION_ID"
List certificatesappledev store certificates list
Reviewsappledev store reviews --app "APP_ID" --output table
Update localizationsappledev store localizations update --app "APP_ID" --locale "en-US" --name "My App"
Sales reportappledev store analytics sales --vendor "VENDOR" --type SALES --subtype SUMMARY --frequency DAILY --date "2024-01-20"
Xcode Cloudappledev store xcode-cloud run --app "APP_ID" --workflow "CI" --branch "main" --wait
Notarizeappledev store notarization submit --file ./MyApp.zip --wait
Status dashboardappledev store status --app "APP_ID" --output table
Weekly insightsappledev store insights weekly --app "APP_ID" --source analytics
Metadata pullappledev store metadata pull --app "APP_ID" --version "1.2.3" --dir ./metadata
Release notesappledev store release-notes generate --since-tag "v1.2.2"
Diff localizationsappledev store diff localizations --app "APP_ID" --path ./metadata
Nominationsappledev store nominations create --app "APP_ID" --name "Launch"
Price point filterappledev store pricing price-points --app "APP_ID" --price 0.99
IAP (family sharable)appledev store iap create --app "APP_ID" --family-sharable
Subscription (family sharable)appledev store subscriptions create --app "APP_ID" --family-sharable

Environment Variables

All environment variables are optional. They override flags when set.

VariableDescription
APPSTORE_KEY_IDAPI Key ID
APPSTORE_ISSUER_IDAPI Issuer ID
APPSTORE_PRIVATE_KEY_PATHPath to .p8 key file
APPSTORE_PRIVATE_KEYRaw private key string
APPSTORE_PRIVATE_KEY_B64Base64-encoded private key
APPSTORE_APP_IDDefault app ID
APPSTORE_PROFILEDefault auth profile
APPSTORE_DEBUGEnable debug output
APPSTORE_TIMEOUTRequest timeout
APPSTORE_BYPASS_KEYCHAINSkip system keychain

Part 3: Multi-Platform App Builder

Supports iOS, watchOS, tvOS, and iPad. Generates complete Swift/SwiftUI apps from natural language with AI-powered code generation.

bash
appledev build                     # Interactive mode
appledev build setup               # Install prerequisites (Xcode, XcodeGen, AI backend)
appledev build fix                 # Auto-fix build errors
appledev build run                 # Build and launch in simulator
appledev build open                # Open project in Xcode
appledev build chat                # Interactive chat mode (edit/ask questions)
appledev build info                # Show project status
appledev build usage               # Token usage and cost

Supported Platforms

PlatformStatus
iOSFull support
iPadFull support
macOSSupported
watchOSSupported
tvOSSupported
visionOSSupported

How it works

text
describe > analyze > plan > build > fix > run
  • Analyze - Extracts app name, features, core flow, target platform from description
  • Plan - Produces file-level build plan: data models, navigation, design
  • Build - Generates Swift source files, project.yml, asset catalog
  • Fix - Compiles and auto-repairs until build succeeds
  • Run - Boots Simulator and launches the app

Interactive commands

CommandDescription
/runBuild and launch in simulator
/fixAuto-fix compilation errors
/openOpen project in Xcode
/ask [question]Ask a question about the project
/model [name]Switch model (sonnet, opus, haiku)
/infoShow project info
/usageToken usage and cost

Hooks

The toolkit supports lifecycle hooks for automation. Hooks fire at key points during build and store operations, running scripts or sending notifications.

Quick Start

bash
# Initialize hook system with indie dev template
bash scripts/hook-init.sh --template indie

# Test a hook
bash scripts/hook-runner.sh build.done STATUS=success APP_NAME=MyApp DURATION_SEC=42

# Dry run (preview without executing)
bash scripts/hook-runner.sh --dry-run build.done STATUS=success APP_NAME=MyApp

# Per-project hooks
bash scripts/hook-init.sh --template indie --project

Config Locations

  • Global: ~/.appledev/hooks.yaml (applies to all projects)
  • Project: .appledev/hooks.yaml (overrides/extends global)
  • Hook scripts: ~/.appledev/hooks/ (reusable shell scripts)
  • Logs: ~/.appledev/hook-logs/ (daily execution logs)

Templates

Three templates available via hook-init.sh --template:

TemplateFocus
indieSolo dev: Telegram notifications, auto TestFlight
teamTeam: Slack + Telegram, git tagging, changelog
ciCI/CD: Logging, test running, no interactive notifications

Built-in Hook Scripts

ScriptPurpose
notify-telegram.shSend Telegram notification
git-tag-release.shCreate and push git tag
run-swift-tests.shRun Swift tests (SPM or Xcode)
generate-changelog.shGenerate changelog from git history

Event Catalog

42 events across 4 categories: build (13), store (20), docs (4), pipeline (5). Full reference: references/hooks-reference.md

Agent Integration

When running appledev commands via the skill, fire appropriate hook events after completion:

bash
# After appledev build completes
bash scripts/hook-runner.sh build.done STATUS=success APP_NAME=AppName DURATION_SEC=30

# After store upload
bash scripts/hook-runner.sh store.upload.done STATUS=success APP_ID=123 BUILD_NUMBER=42

References

ReferenceContent
references/app-store-connect.mdComplete App Store Connect CLI commands
references/ios-rules/38 iOS development rules
references/swiftui-guides/12 SwiftUI best practice guides
references/ios-app-builder-prompts.mdSystem prompts for app building

iOS Rules (38 files)

accessibility, app_clips, app_review, apple_translation, biometrics, camera, charts, color_contrast, components, dark_mode, design-system, feedback_states, file-structure, forbidden-patterns, foundation_models, gestures, haptics, healthkit, live_activities, localization, maps, mvvm-architecture, navigation-patterns, notification_service, notifications, safari_extension, share_extension, siri_intents, spacing_layout, speech, storage-patterns, swift-conventions, timers, typography, view-composition, view_complexity, website_links, widgets

SwiftUI Guides (12 files)

animations, forms-and-input, layout, liquid-glass, list-patterns, media, modern-apis, navigation, performance, scroll-patterns, state-management, text-formatting

Installation

Terminal bash

openclaw install apple-developer-toolkit
    
Copied!

💻Code Examples

appledev s ... # Short alias

appledev-s---short-alias.txt
One binary, three tools, zero duplication.

## Credential Requirements by Feature

| Feature | Credentials Needed | Works Without Setup |
|---------|-------------------|-------------------|
| Documentation Search (Part 1) | None | Yes |
| App Store Connect (Part 2) | App Store Connect API key (.p8) | No |
| iOS App Builder (Part 3) | LLM API key + Xcode | No |

## Setup

### Part 1: Documentation Search (no setup needed)

Works immediately with Node.js:

node cli.js search "NavigationStack"

node-clijs-search-navigationstack.txt
### Part 2: App Store Connect CLI

Install via Homebrew:

export APPSTORE_PRIVATE_KEY_PATH="/path/to/AuthKey.p8"

export-appstoreprivatekeypathpathtoauthkeyp8.txt
API keys are created at https://appstoreconnect.apple.com/access/integrations/api

### Part 3: iOS App Builder

Prerequisites: Xcode (with iOS Simulator), XcodeGen, and an LLM API key for code generation.

node cli.js wwdc-topic "swiftui-ui-frameworks"

node-clijs-wwdc-topic-swiftui-ui-frameworks.txt
## Part 2: App Store Connect

Full reference: [references/app-store-connect.md](references/app-store-connect.md)

| Task | Command |
|------|---------|
| List apps | `appledev store apps` |
| Upload build | `appledev store builds upload --app "APP_ID" --ipa "app.ipa" --wait` |
| Find build by number | `appledev store builds find --app "APP_ID" --build-number "42"` |
| Wait for build processing | `appledev store builds wait --build "BUILD_ID"` |
| Publish TestFlight | `appledev store publish testflight --app "APP_ID" --ipa "app.ipa" --group "Beta" --wait` |
| Submit App Store | `appledev store publish appstore --app "APP_ID" --ipa "app.ipa" --submit --confirm --wait` |
| Pre-submission validation | `appledev store validate --app "APP_ID" --version-id "VERSION_ID"` |
| List certificates | `appledev store certificates list` |
| Reviews | `appledev store reviews --app "APP_ID" --output table` |
| Update localizations | `appledev store localizations update --app "APP_ID" --locale "en-US" --name "My App"` |
| Sales report | `appledev store analytics sales --vendor "VENDOR" --type SALES --subtype SUMMARY --frequency DAILY --date "2024-01-20"` |
| Xcode Cloud | `appledev store xcode-cloud run --app "APP_ID" --workflow "CI" --branch "main" --wait` |
| Notarize | `appledev store notarization submit --file ./MyApp.zip --wait` |
| Status dashboard | `appledev store status --app "APP_ID" --output table` |
| Weekly insights | `appledev store insights weekly --app "APP_ID" --source analytics` |
| Metadata pull | `appledev store metadata pull --app "APP_ID" --version "1.2.3" --dir ./metadata` |
| Release notes | `appledev store release-notes generate --since-tag "v1.2.2"` |
| Diff localizations | `appledev store diff localizations --app "APP_ID" --path ./metadata` |
| Nominations | `appledev store nominations create --app "APP_ID" --name "Launch"` |
| Price point filter | `appledev store pricing price-points --app "APP_ID" --price 0.99` |
| IAP (family sharable) | `appledev store iap create --app "APP_ID" --family-sharable` |
| Subscription (family sharable) | `appledev store subscriptions create --app "APP_ID" --family-sharable` |

### Environment Variables

All environment variables are optional. They override flags when set.

| Variable | Description |
|----------|-------------|
| `APPSTORE_KEY_ID` | API Key ID |
| `APPSTORE_ISSUER_ID` | API Issuer ID |
| `APPSTORE_PRIVATE_KEY_PATH` | Path to .p8 key file |
| `APPSTORE_PRIVATE_KEY` | Raw private key string |
| `APPSTORE_PRIVATE_KEY_B64` | Base64-encoded private key |
| `APPSTORE_APP_ID` | Default app ID |
| `APPSTORE_PROFILE` | Default auth profile |
| `APPSTORE_DEBUG` | Enable debug output |
| `APPSTORE_TIMEOUT` | Request timeout |
| `APPSTORE_BYPASS_KEYCHAIN` | Skip system keychain |

## Part 3: Multi-Platform App Builder

Supports iOS, watchOS, tvOS, and iPad. Generates complete Swift/SwiftUI apps from natural language with AI-powered code generation.

appledev build usage # Token usage and cost

appledev-build-usage--token-usage-and-cost.txt
### Supported Platforms

| Platform | Status |
|----------|--------|
| iOS | Full support |
| iPad | Full support |
| macOS | Supported |
| watchOS | Supported |
| tvOS | Supported |
| visionOS | Supported |

### How it works

describe > analyze > plan > build > fix > run

describe--analyze--plan--build--fix--run.txt
1. **Analyze** - Extracts app name, features, core flow, target platform from description
2. **Plan** - Produces file-level build plan: data models, navigation, design
3. **Build** - Generates Swift source files, project.yml, asset catalog
4. **Fix** - Compiles and auto-repairs until build succeeds
5. **Run** - Boots Simulator and launches the app

### Interactive commands

| Command | Description |
|---------|-------------|
| `/run` | Build and launch in simulator |
| `/fix` | Auto-fix compilation errors |
| `/open` | Open project in Xcode |
| `/ask [question]` | Ask a question about the project |
| `/model [name]` | Switch model (sonnet, opus, haiku) |
| `/info` | Show project info |
| `/usage` | Token usage and cost |

## Hooks

The toolkit supports lifecycle hooks for automation. Hooks fire at key points during build and store operations, running scripts or sending notifications.

### Quick Start

bash scripts/hook-init.sh --template indie --project

bash-scriptshook-initsh---template-indie---project.txt
### Config Locations

- **Global:** `~/.appledev/hooks.yaml` (applies to all projects)
- **Project:** `.appledev/hooks.yaml` (overrides/extends global)
- **Hook scripts:** `~/.appledev/hooks/` (reusable shell scripts)
- **Logs:** `~/.appledev/hook-logs/` (daily execution logs)

### Templates

Three templates available via `hook-init.sh --template`:

| Template | Focus |
|----------|-------|
| `indie` | Solo dev: Telegram notifications, auto TestFlight |
| `team` | Team: Slack + Telegram, git tagging, changelog |
| `ci` | CI/CD: Logging, test running, no interactive notifications |

### Built-in Hook Scripts

| Script | Purpose |
|--------|---------|
| `notify-telegram.sh` | Send Telegram notification |
| `git-tag-release.sh` | Create and push git tag |
| `run-swift-tests.sh` | Run Swift tests (SPM or Xcode) |
| `generate-changelog.sh` | Generate changelog from git history |

### Event Catalog

42 events across 4 categories: build (13), store (20), docs (4), pipeline (5). Full reference: [references/hooks-reference.md](references/hooks-reference.md)

### Agent Integration

When running `appledev` commands via the skill, fire appropriate hook events after completion:
example.txt
appledev build ...    # iOS app builder (SwiftShip)
appledev store ...    # App Store Connect CLI
appledev b ...        # Short alias
appledev s ...        # Short alias
example.sh
export APPSTORE_KEY_ID="your-key-id"
export APPSTORE_ISSUER_ID="your-issuer-id"
export APPSTORE_PRIVATE_KEY_PATH="/path/to/AuthKey.p8"
example.sh
node cli.js search "NavigationStack"
node cli.js symbols "UIView"
node cli.js doc "/documentation/swiftui/navigationstack"
node cli.js overview "SwiftUI"
node cli.js samples "SwiftUI"
node cli.js wwdc-search "concurrency"
node cli.js wwdc-year 2025
node cli.js wwdc-topic "swiftui-ui-frameworks"

Tags

#web_and-frontend-development #tools

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author abdullah4ai
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install apple-developer-toolkit