ShiftStage

Get ShiftStage

Two pieces. The app on the phone, the agent on the Mac — and they come from different places, for a reason.

ShiftStage icon

The macOS agent

Signed with a Developer ID, notarised by Apple, and installed with one Homebrew command from our open tap — not through the Mac App Store. Sandboxing is mandatory there, and a sandboxed agent cannot hand you a PTY, your file system, or your own CLI tools. The store would take the product apart to let it in.

The first release is not out yet. It ships when notarisation is done, and the install command appears on this page. Write to [email protected] and you will hear when it does.

What you check before installing

Homebrew checks the archive’s SHA-256 against the cask before unpacking anything, and Gatekeeper checks the signature and notarisation on first launch. The cask is a public file: its address and checksum can be read before you install. Without Homebrew, the same archive installs by hand — drag the app into Applications — and then two commands are worth ten seconds:

codesign --verify --deep --strict ShiftStage Agent.app
spctl --assess --type execute ShiftStage Agent.app

The first confirms the bundle is intact and signed; the second confirms Apple notarised it.

How it updates

The agent updates itself. It checks a signed manifest, verifies the signature of the new build before touching anything, keeps the previous bundle, and rolls back to it if the new one does not start. No separate updater, no background service of ours on your Mac.

The iOS app

Through the App Store, with the subscription and the fourteen-day trial handled there. It is not published yet either — the two ship together, because one without the other is half a product.

What you need

  • A Mac on macOS 15 or later for the agent.
  • An iPhone or iPad on iOS 18 or later; Apple Watch on watchOS 11.
  • Both machines awake for the first pairing — it happens on your own network, and you confirm it on the Mac.

Questions · Running your own node