Find the cause, then fix it

Break Cloud Mac issues into actionable troubleshooting steps

First determine whether the issue involves connection, builds, permissions, storage, billing, or service status. Then collect node details and error output in order. For existing orders, sign in to the console to submit a ticket.

Troubleshooting paths
6 issue types
Service target
99.9% uptime
Human support
Console tickets and support email
Issue log Record symptoms before changing the environment
Action checklist
CONNECT
Can't connect for the first time Check the node address, remote access method, credential status, and client compatibility
Path 01
BUILD
Xcode or automation task failed Keep the full command, exit code, toolchain version, and signing-stage output
Path 02
BILLING
Charges or renewal details are unclear Compare the billing cycle, add-on quantity, payment status, and USD amount due
Path 03
Choose a path

Choose the first troubleshooting path by symptom

Do not change the network, toolchain, and permissions at the same time. Change one condition at a time and record the before-and-after results to identify the real cause.

First connection

You received the delivery details but cannot reach the desktop

Check the node address, remote access method, initial credentials, and client version first. Confirm the keyboard layout and resolution before transferring code, certificates, or media assets.

View connection steps
Connection interrupted

The session lags, shows a black screen, or behaves abnormally after reconnecting

Record the client name, network type, time of occurrence, and whether command-line access works. Rule out local network instability first, then adjust display settings or establish a new session.

View connection troubleshooting
Xcode build

Compilation, archiving, or signing failed

Keep the command and complete exit code, then check disk capacity, certificate validity, Keychain permissions, dependency caches, and the Xcode version in order.

View build troubleshooting
Automation task

Runner, script, or packaging pipeline failed

Check the execution user, working directory, environment variables, secret access scope, and cleanup scripts. Compare the actual environments used by the interactive shell and automation process.

View command examples
Storage expansion

Insufficient capacity or an add-on storage item is unconfirmed

Use system commands to confirm volume capacity and free space, then check the +1TB SSD or +2TB SSD add-on in the order. Do not estimate remaining capacity from the project directory alone.

View add-on pricing
Billing issue

Payment status, renewal cycle, or amount due does not match

Prepare the order number, rental period, model, node, add-on quantity, and payment method. The amount due and available payment gateways are determined by the console in real time.

View billing help
First step after delivery

Complete five checks before moving your work

Delivery details confirm the node and access method, but stable builds also depend on a consistent toolchain, permissions, and dependencies.

  1. 01

    Verify node details

    Confirm that the order number, node region, host address, and delivered remote access method all refer to the same Cloud Mac.

  2. 02

    Confirm account permissions

    Check that the current user can access the project and build directories and the required system settings. Avoid expanding permissions unnecessarily.

  3. 03

    Verify the remote session

    Check keyboard mapping, display scaling, clipboard requirements, and session reconnection behavior. Confirm a safe exit before starting long-running tasks.

  4. 04

    Record system and tool versions

    Save the macOS, Xcode, command-line tool, and package manager versions. Use this baseline to reproduce the environment during later troubleshooting.

  5. 05

    Validate dependencies with a small batch

    Start with the smallest project or a test branch to verify dependency installation and the build directory before moving certificates, caches, or large assets.

Command output example

Keep the command, stage, and exit result

“Build failed” is not enough to locate the issue in a ticket. Copy the key output before and after the failed command, and state whether the same command can be reproduced in an interactive session.

setmini-support-session zsh · arm64
$ ssh build-user@node-address
Last login: current session
$ sw_vers
ProductName:            macOS
ProductVersion:         [current system version]
$ xcodebuild -version
Xcode [currently installed version]
Build version [current build number]

$ xcodebuild -workspace Project.xcworkspace \
  -scheme Project \
  -configuration Release \
  -destination "generic/platform=iOS" \
  archive

note: Resolving package dependencies
note: Compiling target Project
error: Build input file cannot be found
** ARCHIVE FAILED **
exit status: 65

$ bundle exec fastlane ios build
[fastlane] Loading configuration
[fastlane] Running build lane
[fastlane] Step failed: archive
[fastlane] Preserve the complete log and exit code
SSH verification Confirm that the node is reachable and record the current execution user.
Xcode output Keep the scheme, configuration, destination, and exit code.
Fastlane output Specify the failed lane, exact step, and location of the complete log from the same run.
Build issue

Check underlying conditions in dependency order

Insufficient disk space can cause cache, dependency extraction, and archive failures; an inconsistent toolchain can compound signing issues. Follow the sequence below strictly.

  1. 01

    Disk capacity

    Run df -h Check the actual free space on the system and working volumes, then inspect DerivedData, archives, package manager caches, and old build artifacts.

    Result: the build directory has sufficient free space
  2. 02

    Signing certificates

    Confirm that the project’s signing identity, provisioning profile, Bundle Identifier, and build configuration match. Do not only check whether the certificate file exists.

    Result: the target configuration finds the matching signing identity
  3. 03

    Keychain permissions

    Compare the execution users of the interactive session and automation process. Confirm that the task can read the required signing materials and record the stage at which the permission failure occurs.

    Result: the automation user can read the required items
  4. 04

    Dependency caches

    Keep the lock file and failure logs first, then clear the relevant cache with the project’s tool. Do not delete all caches at once, or you will not be able to identify the source of corruption.

    Result: dependency resolution is reproducible and versions are consistent
  5. 05

    Xcode version

    Record xcodebuild -version and xcode-select -p, then confirm that the version used by command-line tasks matches the project requirements.

    Result: the graphical interface and command line use the same toolchain
Copy the error before cleaning

Cleaning DerivedData, dependency caches, or archive directories changes the evidence. When submitting a ticket, include the error before cleaning, the cleanup action, and the result afterward.

Remote access

Distinguish the local network, client, and node session

An abnormal remote display does not necessarily mean the node is offline. First check whether command-line access works, then inspect client compatibility and display settings, and finally handle session reconnection.

Remote access symptoms and troubleshooting actions
Observed symptom Check first Validation result
The client cannot establish a session Check the node address, client version, network egress restrictions, and the delivered remote access method The same node connects through a supported method
Intermittent lag or input delay Record the local network type, time of the jitter, whether a proxy is used, and the transfer task running at the time After reducing concurrent transfers, you can determine whether the issue is on the local link
Abnormal resolution or scaling Check the client scaling policy, target resolution, and display settings within the session Text and interactive areas display fully without being clipped
Keyboard shortcuts do not behave as expected Confirm the local keyboard layout, modifier-key mapping, and client shortcut interception settings Common key combinations produce consistent output in a test editor
The old screen remains after reconnecting Check whether the old session is still running, record command-line reachability, and establish a new client session The new session shows the current system state and responds to input
The session remains open after work is complete Save your work, stop sensitive processes, lock the screen, and exit safely from the client The session closes, and subsequent access requires verification again

What to include in a ticket

Client name and version, local network type, node, time of occurrence, display symptoms, command-line reachability, and the reconnection steps already attempted.

What not to include in a ticket

Do not submit passwords, private key contents, access tokens, or unsanitized signing materials. When describing a credential issue, state only the error type and the stage where it occurred.

Service status and SLA

Understand uptime through targets, record ranges, and claim requirements

SetMini targets 99.9% uptime. Nodes operate continuously 365 days a year; actual incident records and node status are based on the console response.

Service uptime target 99.9%

Determine eligibility using the service terms, including the measurement scope, excluded events, and claim requirements. Do not count issues with the user’s own network, credentials, or actions as node downtime.

30 days Recent record window

Check node events against the ticket time.

60 days Mid-range record window

Use it to identify recurring incidents of the same type.

90 days Full review window

The console record determines the status conclusion.

Once eligible

Submit a service credit claim under the service terms

The claim should include the order number, node, incident start and end times, scope of impact, and related ticket records. Review and processing follow the service terms.

Billing help

Compare the rental period, add-ons, and payment status first

All orders are billed in USD. The available payment gateways and order status are determined in real time by the console. Include the order number when submitting a billing ticket.

Rental period

Confirm renewal by day, week, month, or quarter

The renewal amount depends on the selected model, rental period, node, and add-ons. Do not simply multiply the daily rate for another period; each of the four periods has its own listed price.

View full pricing
Supported payment methods

Two channels, all billed in USD

  • USDT-TRC20Complete payment using the information returned on the order page
  • Bank cardVisa / Mastercard / Amex, processed by Stripe

Payment status, available gateways, and the amount due are determined in real time by the console.

Storage and Thunderbolt 5 add-on pricing
Add-on Daily Weekly Monthly Quarterly
+1TB SSD $2.4 $6.4 $11.8 $32.1
+2TB SSD $4.8 $12.8 $23.6 $64.2
Thunderbolt 5 daisy chain, per Mac $1.5 $4.1 $7.6 $20.7
Escalate to human support

Provide enough information once to reduce back-and-forth

For existing orders, submit through a console ticket first; the system will link your account and order context. If you cannot sign in to the console, email support@setmini.com.

01 Order number

Used to confirm the model, rental period, and add-ons.

02 Node

Enter the region code and host identifier.

03 Time of occurrence

Include the time zone and the start and end range.

04 Error output

Attach the complete command, exit code, and key logs.

05 Steps taken

Describe each change and its result in order.

Next step

No order yet? Choose a configuration that fits your workflow

SetMini offers two tiers of dedicated Apple Silicon physical nodes, available for daily, weekly, monthly, or quarterly rental. Before ordering, compare the specifications, pricing, nodes, and add-ons.