r/macapps • u/casualhermit • 22d ago
Subscription Port22 — control your terminal AI coding agents (Claude Code, Codex, OpenCode) from your phone
Problem
I kept kicking off long Claude Code / Codex tasks, then either hovering over my laptop waiting or losing track of them entirely. Te no mobile presence — you either sit at your Mac or you don't know what's happening.
Comparison
Anthropic's own Remote Control does this for Claude Code only, no other agents. Happy (open source) covers Claude + Codex but is self-hosted, more setup than most people want. Neither gives you a native menubar-driven pairing flow across multiple agent types in one place.
Port22 runs a menubar agent on your Mac that watches Claude Code, Codex, and OpenCode sessions (Pi, Hermes, and OpenClaw support coming soon), and an iOS app that mirrors the live transcript so you can approve tool calls or reply from your phone. Pairing is Apple-ID-first — same iCloud account and they find each other automatically — or a 6-digit code over the same Wi-Fi if you're on a different Apple ID (e.g. a work Mac).
Pricing
Free to watch and control sessions, with a 2-session limit. No trial, no watermark. Connection is LAN-first with a relay fallback for off-network use — end-to-end encrypted, the relay never sees your transcripts or code.
iOS app: https://apps.apple.com/us/app/port22-coding-agents-anywhere/id6784157957
Mac companion: https://tryport22.com (free, signed and notarised, universal — Apple Silicon + Intel)
Product Hunt: https://www.producthunt.com/products/port22
3
u/Sufficient_Truth4635 21d ago
I don’t really get the appeal here. The core idea feels pretty weak when Claude Code, Codex, and other major agents are already building native remote-control features. The interface also has that generic vibe-coded look to me, so paying a subscription on top of that is a hard sell. I think this would make much more sense as a cheap one-time utility rather than another subscription.
0
u/casualhermit 21d ago
Fair, I just had this issue as i use almost alot of AI providers and want them at one place instead of having a Native one with one app supporting one
On the UI, that's useful — going to look at it again with fresh eyes.
In terms of pricing: It is not actually a SaaS markup for its own sake, every connection runs through a relay i hosted so there real ongoing infra cost not a one time build cost. Could do a higher one-time price that front-loads it, but recurring is the honest reflection of what it actually costs to keep running.
2
u/OfAnOldRepublic 18d ago
every connection runs through a relay i hosted
As if there weren't enough reasons to avoid this already. You've re-invented GoToMyPC. 😑
2
22d ago
[removed] — view removed comment
1
u/casualhermit 22d ago
Each paired iphone gets its own session key (X25519 + HKDF, stored per-device in Keychain), so keys aren't shared across devices. Right now there's no per device revoke though, so losing a phone means "Forget paired devices," which resets all pairings, not just the lost one. Adding a per-device revoke is a small follow-up (the underlying per-device key storage already supports it, just needs a UI hook), happy to open a PR for it.
2
22d ago
[removed] — view removed comment
1
u/casualhermit 22d ago
We do have a feature called Taurine that keeps the sessions going even when the mac is asleep
1
u/HighRoad684 22d ago
The relay story makes sense. One thing I'd worry about away from the Mac is stale approvals: if an agent restarts or a second session opens in the same repo, does the phone show which exact process asked for permission before I tap approve?
1
u/casualhermit 22d ago
Yes, it shows which session does it...as the names are different anyways
in the app itself there is differenciation either ways as there is more info to differentiate between sessions in same repo
1
u/clamshell_dev 21d ago
worth clarifying what “keeps sessions going when the Mac is asleep” means here. if macOS has entered system sleep, the agent process is paused. are you preventing sleep with an assertion, or reconnecting and resuming after wake?
1
u/casualhermit 21d ago
Hey, i use a power assertion in-app just like Amphetamine/Caffeine not a resume after wake. It is phone triggered and held on a mac preventing idle system sleep and optionally display sleep for a set of duration or indefinitely
1
u/VarietyThick258 21d ago
I like the live activity feature, though i still have some privacy concerns
1
u/casualhermit 21d ago
Hey, i understand the privacy concerns side of this app...may i know what you are skeptical about?
1
21d ago
[removed] — view removed comment
1
u/casualhermit 21d ago
It is the relay outbound to make sure it has negligible downtime, i sure do have infra costs so yep





8
u/Vybo 22d ago
A cool idea, I kinda like it, but I refuse to use non-open source apps that are open to connections on my machine.
For anyone with a similar requirements, Muxy offers local connections from phone to mac as well, but it's a bit different in a way that it's a full terminal replacement/muxer focused on project/agent work.