sign command signs iOS applications using either Apple ID credentials, PEM certificates, or ad-hoc signing. It can also register devices and install signed apps automatically.
Usage
Required arguments
Path to the app bundle or package to sign. Can be either:
.appdirectory (signed in-place).ipafile (requires--outputunless using--apple-id)
Signing method
Choose one signing method:Use Apple ID credentials for signing. Requires prior login via
plumesign account login.This method automatically:- Retrieves signing certificates from your Apple Developer account
- Registers the app bundle identifier
- Generates provisioning profiles
PEM files containing certificate and private key for signing. Can specify multiple files.
If neither
--apple-id nor --pem is specified, the app will be signed ad-hoc (without a certificate).Provisioning profile
Provisioning profile file (.mobileprovision) to embed in the signed app.
Bundle customization
Override the bundle identifier in Info.plist.
Override the bundle display name.
Override the bundle version.
Tweaks
Paths to tweak files to inject into the app during signing. Can specify multiple tweaks.
Device registration and installation
Register the device with your Apple Developer account and install the signed app.Only works with
--apple-id. Will prompt for device selection if --udid is not provided.Specific device UDID to register and install to. Used with
--register-and-install.Install to connected Mac instead of iOS device (arm64 Macs only).Conflicts with
--udid. Only available on Apple Silicon Macs.Output
Output path for the signed .ipa file.Required when:
- Signing an .ipa file without
--apple-id(ad-hoc or PEM signing)
- Signing an .app directory (always signed in-place)