/v1/daemonGETghosthand tunnel url --new-token. The unix socket needs no tokenPOST /v1/daemon/restart.executable.executable is rebuilt. Compare it with the CLI to find a stale daemon.not-started: allowed, but no USB iPhone uses Bluetooth mode yet; starts on the first
Bluetooth command or when list or setup sees one. starting: waiting for
Bluetooth or HID publication. on: the HID service is published. Permission states
are checked before hardware state. Missing or denied permission tells the agent to
run setup and poll setup status until ready. Only the setup app's buttons request permissions
or open privacy settings. powered-off: turn Bluetooth on.
unsupported: authorized, but Classic is unavailable. error: service failure.studio. MCP leases on it look like studio:42.https://ghosthand.dev/macs/studio. Absent until connected.title and detail are for people.curl -X GET "https://ghosthand.dev/macs/studio/v1/daemon" \ -H "Authorization: Bearer <token>"
{ "version": "0.9.0", "pid": 51234, "executable": "/usr/local/bin/ghosthand", "buildId": "3f9a1c2e", "startedAt": "2026-10-07T08:55:00.000Z", "bluetooth": { "state": "on" }, "listen": { "unix": "/Users/tommy/.ghosthand/daemon.sock" } }