Overview

shft is a native macOS application that migrates user data from one Mac to another over a direct connection. It is built for enterprise environments where IT teams need control over what data moves during device refreshes, onboarding, and hardware upgrades.

What problem shft solves

Mac device refreshes are common in enterprise — new hardware arrives, old hardware leaves, and the user's working environment needs to move with them. Apple's Migration Assistant handles this for consumers, but it operates as an all-or-nothing tool with no admin controls. IT teams cannot:

  • Restrict which data categories migrate
  • Enforce transfer windows or size limits
  • Log what was transferred and when
  • Apply organisational branding
  • Push configuration via MDM

shft fills this gap. It gives IT admins a configuration profile that controls exactly what users can migrate, while giving end users a guided, approachable experience that doesn't require technical knowledge.

Two-audience model

shft serves two audiences simultaneously:

IT admins

Admins never touch the app directly during a migration. Instead, they define policy through a configuration profile pushed via MDM. This profile controls:

  • Which data categories are available to users
  • Whether users can add custom folders
  • Transfer size limits
  • Allowed connection types
  • Migration time windows
  • Where migration logs are sent
  • Organisational branding

See Configuration profile reference for the full key list.

End users

Users interact with a step-by-step wizard:

  1. Welcome — branded with the organisation name and logo if a profile is present
  2. Role selection — "I am the source Mac" or "I am the destination Mac"
  3. Discovery — the app finds the other Mac over the network or Thunderbolt
  4. Pairing — a 6-digit code displayed on both Macs must match before proceeding
  5. What to move — users see the admin-allowed categories with size estimates and toggle them on or off
  6. Transfer — live progress with speed, ETA, and per-category status
  7. Complete — summary of what moved, any errors, and an option to view the log

Users cannot bypass admin restrictions. If the admin profile disables a category, the user never sees it. If allowUserOverride is off, users cannot add custom folders.

Where shft fits in a device workflow

A typical device refresh with shft:

  1. IT provisions a new Mac and enrols it in MDM
  2. MDM pushes the shft app and configuration profile to both old and new Macs
  3. User opens shft on both Macs
  4. User selects "Source" on the old Mac and "Destination" on the new Mac
  5. Macs discover each other and display a pairing code
  6. User confirms the code on both devices
  7. User reviews what will migrate and starts the transfer
  8. Transfer completes; migration log is POSTed to the admin's log endpoint
  9. IT wipes the old Mac

shft does not require internet access, an agent, or any server infrastructure beyond the optional log endpoint.

Relationship to other Machinery Software products

shft is part of Machinery Software's Mac management toolkit:

  • shft — Mac-to-Mac data migration with admin controls
  • frklft — Mac fleet management and remote actions. frklft can trigger shft migrations remotely and monitor their status through the logging endpoint.
  • Patchable — Automated macOS patch management. When Patchable manages app deployment, shft deployment policies can be automatically created and scoped.

Each product works independently. shft does not require frklft or Patchable, but they integrate cleanly when used together. See each product's documentation for integration details.