Skip to content
Reference

CLI Command Reference

Every shipit command, what it does, and where to learn more.

The shipit CLI ships with 27 commands covering the full release pipeline — from generating your first config to uploading to the stores. Run shipit <command> --help for the complete flag reference of any command, and pass --shipfile ./path/to/config.yml anywhere your config isn't the default Shipfile.yml.

Project setup & configuration

CommandWhat it does
shipit generateGenerate Shipfile.yml from project inspection and guided prompts — the recommended starting point
shipit suggest-configGenerate a suggested Shipfile for a release goal
shipit inspectInspect the current project (Xcode containers, schemes, release-related files) for AI-assisted config generation
shipit schemaPrint the Shipfile and workflow action schema
shipit envPrint resolved config, environment variables, and processed files (secrets are redacted)
shipit doctorDiagnose common setup issues for the selected Shipfile
shipit validateValidate Shipfile structure, App Store metadata, archive readiness, and Android bundles
shipit precheckValidate metadata against App Store guidelines (alias for validate metadata)

See the Configuration Reference for every Shipfile key.

Build, test & quality

CommandWhat it does
shipit buildCompile the app (iOS: xcodebuild build, Android: gradlew assemble)
shipit testRun unit and UI tests using xcodebuild test
shipit lintRun static analysis and lint checks (iOS: xcodebuild analyze, Android: gradlew lint)
shipit coverageRead and summarize native coverage artifacts (iOS: xcresult/xccov, Android: JaCoCo XML)
shipit test-resultsRead and normalize test-result artifacts (iOS: xcresult, Android: JUnit XML)
shipit versionBump CFBundleVersion and/or CFBundleShortVersionString

Archive & export

CommandWhat it does
shipit archiveArchive the app using xcodebuild archive
shipit exportExport an IPA from an xcarchive

Signing & provisioning

CommandWhat it does
shipit signCode-signing subcommands: init, sync, import, cleanup — backed by the encrypted certificate vault
shipit provisionManage App IDs, devices, and provisioning profiles

See Security & Credentials for how the encrypted vault works and where credentials live.

Distribution

CommandWhat it does
shipit uploadUpload an IPA and metadata to App Store Connect
shipit testflightUpload to TestFlight and manage beta testers
shipit metadataPull/push App Store metadata from/to App Store Connect
shipit play-storeUpload an Android release artifact to Google Play and assign it to a distribution track

Screenshots

CommandWhat it does
shipit snapshotCapture localized screenshots on simulators
shipit frameOverlay device frames on screenshots

Workflows & automation

CommandWhat it does
shipit runExecute a named workflow from Shipfile.yml — supports --dry-run and --ci
shipit notifySend build notifications to Slack, Teams, or webhooks
shipit ai-sessionStructured AI-agent session bootstrap — emits a stable JSON contract for coding agents

shipit run <workflow> --dry-run previews exactly which actions would execute, in what order, with what options. --ci disables TTY prompts and enables structured logging — see CI Setup.

For agent-driven workflows with ai-session, see the Agent Fast Start guide.