Skip to content
Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time

Codemagic CLI Tools

Command line utilities for managing mobile app builds, code signing, and deployment. These power mobile app builds at


Install and update using pip:

pip3 install codemagic-cli-tools

CLI Usage

Package installs the following executables to your path:

Online documentation for all installed executables can be found under docs.

Alternatively, you could see the documentation by using --help option from command line:

<command> --help

to see general description and subcommands for the tool, or

<command> <subcommand> --help

to get detailed information of the subcommand.

For example:

$ keychain create --help
usage: keychain create [-h] [-s] [-v] [--no-color] [--log-stream {stderr,stdout}] [-pw PASSWORD] [-p PATH]

Create a macOS keychain, add it to the search list.

optional arguments:
  -h, --help            show this help message and exit

  -s, --silent          Disable log output for commands
  -v, --verbose         Enable verbose logging for commands
  --no-color            Do not use ANSI colors to format terminal output
  --log-stream {stderr,stdout}
                        Log output stream. [Default: stderr]

Optional arguments for command create:
  -pw PASSWORD, --password PASSWORD
                        Keychain password. Alternatively to entering PASSWORD in plaintext, it may also be specified using a "@env:" prefix followed by a environment variable name, or "@file:" prefix followed by a path to the file containing the value.
                        Example: "@env:<variable>" uses the value in the environment variable named "<variable>", and "@file:<file_path>" uses the value from file at "<file_path>". [Default: '']

Optional arguments for keychain:
  -p PATH, --path PATH  Keychain path. If not provided, the system default keychain will be used instead

Python API

In addition to the command line interface, the package provides a mirroring Python API too:

>>> from pathlib import Path
>>> from import AppStoreConnect
>>> from import GitChangelog
>>> from import Keychain
>>> from import UniversalApkGenerator
>>> from import XcodeProject
>>> Keychain().get_default()
>>> keychain = Keychain(Path('/tmp/new.keychain')) 
>>> keychain.create()
>>> keychain.make_default()
>>> Keychain().get_default()