被 Agent 卡住时直接 ping 你:这位程序员给 iPhone 写了个 SSH 终端,然后承认「0 人花钱」
最近 Hacker News 上有个 Show HN 挺提气,作者 lukeed 做了一款叫 Pocketty 的 iPhone/iPad SSH 终端,核心卖点一句话就能说清楚:你的电脑上跑着 Agent 工作区,哪个卡住了需要你,它直接给你手机推一条通知,你不用再钉在工位盯进度。
这人做它的动机很实在。按他自己的说法,产假后半段他实在受不了了——「nap trap」(宝宝睡着人形困住的那种幸福牢笼)是挺美好,但一整天刷手机看剧也有极限。他干脆写了这个工具,过去两个月一直用着,现在「不再非得坐回桌子前才算干活」。通知这一套他信得很彻底,原话是「我完全不用 babysit 我的 Agent,专心带娃就行」。
它的活法
Pocketty 的架构值得拆一下,因为这决定了你信不信任它。App 通过普通 SSH 直连你的电脑,跨网络最省事的路径是 Tailscale,但只要能连上的 SSH 主机都行。通知链路才是比较有嚼头的部分:主机上跑一个小的 Rust 守护进程盯着 herdr(一个保持 Agent 工作区常驻并记录状态——working / needs you / done 的工具)。当某个 pane 需要你时,守护进程用一个密封算法(HPKE,X25519 + ChaCha20-Poly1305)把告警内容加密后用你手机的密钥封起来,然后一个无状态中转(跑在 Cloudflare Workers 上)把这点密封字节转给 APNs,苹果推送服务,再由手机上的通知扩展解开显示。
这个中转最关键的是「盲」的:它既读不了内容,也不存任何东西。私钥本身放在 iPhone 的 Secure Enclave 里,无法导出。这套设计就是冲着「隐私可信」去的,对开发者这种疑心重的人群算是踩在点子上。
终端部分用的是 libghostty-vt 做状态、wgpu 画在 Metal 上,所以全屏 TUI 在手机上看和在你显示器上差不多,只是窄一些。每个 Agent 回合的 diff、文件浏览器、还有 Agent 起的 localhost 开发服务器预览,全部走同一条 SSH 连接,不用额外配端口转发。herdr 和那个守护进程是可选的,不装它们,Pocketty 就是个普通 SSH 客户端。没有账号,没有分析、没有追踪,14 天全功能免费试用,之后一次买断:前两周是 99 美元上线促销价,之后 129 美元。
评论区很热闹,也很有料
这帖子 31 分、约 19 条评论,量不大,但评论区信息密度不低。好几个人都在做类似的事,路线还不太一样——有人推荐了 Heeler,一个免费开源的 Herdr+iOS 客户端,说已经取代了它手机上的 Blink Shell;还有人提到 herdr-web-ui,完全免费自托管、做成 PWA 加 webpush 支持。有个评论总结得挺准:现在一帮人在做的事,是把「Agent 聊天推送」变成「订阅流拉取」——让 Agent 反过来找你,而不是你去找它。
也有个带着脾气的提问:有人连上工作站后报「herdr 未安装」,但明明装了,而且 herdr 会话里没法滚动,直接问「那我到底该为什么付 99 刀?」作者回应说如果是 fish shell 那是个已修复、正在等 App Store 审核的 bug,同时承认这「是我自己的铁打配置,对别人未必通用」。这个回答挺实在,没端着。
有意思的是有人直接问:到现在为止,有多少试用的人真的为 99 美元掏钱了?作者答得干脆:「据我所知是零」。他还补了一句判断:开发者是个又犟又有意思的目标群体,「我猜自己动手造轮子改装的版本会比掏钱的还多。」
这句我很信。这帖子本身就是证据——评论区里 Heeler、herdr-web-ui,加作者自己,至少三套「让 Agent 主动找你」的方案在撞车。技术圈就是这样:需求是真的,痛点是真的,但「愿意付钱」这件事,永远是另一回事。
一个没解决的疑问
帖子下面有人问了个挺基础的问题:如果我在桌面端处理掉了那个「需要你」的告警,手机上的通知会消失吗?作者那条线程下的答复我没有看到明确答案,这个细节恰恰是「信任这套推送管道」能不能成立的点——如果通知消失与否靠 Agent 状态同步,那你的手机和桌面就得一直说同一个版本的故事。
这不影响 Pocketty 作为产品好不好用,但它提醒了一个问题:这类「推送式 Agent 巡检」工具真正卡人的地方是状态判断够不够准——加密链路再精巧,也顶不住把「卡住」的通知给推错。好在还有 14 天免费试用兜底,与其看人吹,不如自己连一台主机试两天再说。