> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobster.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# mobster signing

> Put the helper app on an iPhone without Xcode, for a paid team.

Put the helper app on an iPhone without Xcode, for a paid Apple Developer team. With your own App Store Connect key, `card` reads your team and prints the three requests Mobster would send to Apple (register your iPhone, create a development certificate, create a development profile), and `apply` sends them after you approve their digest, signs the helper on this Mac and installs it with pymobiledevice3. Off unless MOBSTER\_EXPERIMENTAL\_NO\_XCODE=1.

## Usage

```text theme={"theme":"css-variables"}
mobster signing <command>
```

```text theme={"theme":"css-variables"}
examples:
  mobster signing card
  mobster signing apply --approve <digest>
  mobster signing export helper.tgz
  mobster signing import helper.tgz --team ABCDE12345
```

## Commands

| Command | What it does |
| - | - |
| [`mobster signing status`](#mobster-signing-status) | say whether signing without Xcode is on, what it has and what it waits for |
| [`mobster signing card`](#mobster-signing-card) | read your team and print the requests Mobster would send to Apple, with a digest |
| [`mobster signing apply`](#mobster-signing-apply) | send the card you approved, sign the helper on this Mac and install it |
| [`mobster signing resolve`](#mobster-signing-resolve) | say whether a change whose answer Mobster never saw was made |
| [`mobster signing export`](#mobster-signing-export) | write the signed helper and its profile to a file other Macs can install |
| [`mobster signing import`](#mobster-signing-import) | install a helper that another Mac signed |

## `mobster signing status`

Say whether signing without Xcode is on, what it has and what it waits for.

### Options

| Name | Default | Description |
| - | - | - |
| `--json` | off | print JSON |

## `mobster signing card`

Reads App Store Connect with your key and prints each request Mobster would send: register your iPhone, create a development certificate from a request made on this Mac, create a development profile. Sends nothing. Approve it with `mobster signing apply --approve DIGEST`.

### Options

| Name | Default | Description |
| - | - | - |
| `--phone-udid UDID` | the iPhone chosen in Setup | the iPhone to register and sign for |
| `--phone-name NAME` | none | with `--phone-udid`: its name on your team |
| `--bundle-id ID` | none | sign for this bundle id instead of the helper's (a test) |
| `--team ID` | read from App Store Connect | your team's 10-character id |
| `--json` | off | print JSON |

## `mobster signing apply`

Reads your team again and sends the card only if its digest is the one you approved. Each request is recorded before it is sent. A request whose answer never arrives is not sent again.

### Options

| Name | Default | Description |
| - | - | - |
| `--approve DIGEST` | required | the digest `mobster signing card` printed |
| `--writes-only` | off | make the changes at Apple and stop: sign and install nothing (a test with no iPhone) |
| `--phone-udid UDID` | the iPhone chosen in Setup | the iPhone to register and sign for |
| `--phone-name NAME` | none | with `--phone-udid`: its name on your team |
| `--bundle-id ID` | none | sign for this bundle id instead of the helper's (a test) |
| `--team ID` | read from App Store Connect | your team's 10-character id |
| `--json` | off | print JSON |

## `mobster signing resolve`

Say whether a change whose answer Mobster never saw was made.

### Arguments and options

| Name | Default | Description |
| - | - | - |
| `DIGEST` | required | the change, from `mobster signing status` |
| `--made` | off | you found it at developer.apple.com |
| `--not-made` | off | it isn't there; Mobster may send it once more |

`--made` and `--not-made` can't be used together; one is required.

## `mobster signing export`

Write the signed helper and its profile to a file other Macs can install.

### Arguments and options

| Name | Default | Description |
| - | - | - |
| `FILE` | required | where to write it (a .tgz) |
| `--phone-udid UDID` | the one chosen | the iPhone it was signed for |

## `mobster signing import`

Opens the file only if it is from the team you name, still has a day of profile left, lists this iPhone and is intact. The team is your check: any team's signature verifies.

### Arguments and options

| Name | Default | Description |
| - | - | - |
| `FILE` | required | the .tgz `mobster signing export` wrote |
| `--team ID` | required | the team id you expect the file to be from |
| `--phone-udid UDID` | the one chosen | the iPhone to install on |
| `--phone-name NAME` | none | with `--phone-udid`: its name |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.