Agent 跑长任务时经常停下来等人:要权限、要澄清、跑完了。
人不在电脑前,任务就一直卡着。
AgentCallMe 把这些时刻推到手机上,一键放行或拒绝。
Agent 要跑 git push、rm -rf 时,通知直接带操作按钮,不用打开 App。
Agent 卡在「要新建分支吗?」时,在手机上回一句就能让它继续。
长任务跑完立刻知道,不用一遍遍回去看终端。
acm-xxxxxxxx ·
取消勾选「使用默认服务器」后填 https://ntfy.example.com ·
打开「需要身份验证」填入 access token在项目目录下运行,生成一个配置文件。凭证已内联,不装任何工具、不设环境变量。
cd /path/to/your-project mkdir -p .claude curl -s "https://relay.example.com/v1/config?host=office-1&token=$HOST_TOKEN" \ > .claude/settings.json
host | 这台机器的名字,随便起但要能认出来,比如 mac、office-1。手机通知上会显示它。 |
token | 这台机器专属的凭证,向管理员索取(每台机器一个,可单独吊销)。 |
管理员批量签发 —— 机器名要自己列出来,用逗号分隔:
curl -s "https://relay.example.com/v1/hosts?names=mac,office-1,ci-runner&token=$ADMIN_TOKEN"
返回每台机器的接入命令,直接复制到对应机器上执行。 服务端不保存机器列表(凭证由机器名派生而来),所以得你告诉它要签哪几台。
claude # 什么都不用改
Claude 需要你时,手机会响。直接在通知上点「允许一次 / 拒绝」,不用打开 App。 回到电脑前,终端里一切照旧。
rm -rf ./build。手机应当在几秒内收到通知。
收不到就检查:通知权限是否开启、topic 名是否写错、机器能否访问 relay
(curl https://relay.example.com/health 应返回 {"ok":true})。
公司内网的服务器、本地 Mac、云上开发机 —— 通知都汇到同一部手机, 一眼看清是哪台机器的哪个项目在等你。
内网服务器 ─┐ 本地 Mac ─┼─ 仅需出站 443 ──> relay ──> 手机 云开发机 ─┘
hook 是机器主动出站请求,服务端无需反连。不用公网 IP,不用开防火墙入站,不用装隧道。
一台机器的凭证泄露不波及其他,也推不出主凭证。可单独吊销。
机器身份由凭证决定而非自报,任何机器都无法冒充其他机器提交请求。
| 机制 | 说明 |
|---|---|
| 超时拒绝 | 等不到回复时拒绝而非放行(fail-closed),绝不会因为你没看手机就放过一条危险命令。 |
| 高危识别 | rm -rf、git push、drop table 等自动标红并提升通知优先级。 |
| 凭据隔离 | 只接收 hook 载荷,绝不读取你的密钥文件。 |
| 私有部署 | 推送服务可完全自托管,消息不经过任何第三方。 |
| 最小授权 | 账号仅能读写自己的 topic 前缀。 |
| 凭证隔离 | 每台机器独立凭证,可单独吊销;身份由凭证决定,无法伪造。 |
核心是一套统一事件协议,Claude Code 只是第一个适配器。 接入新的 Agent 只需新增一个适配器,服务端与手机端不用改动。
通过 HTTP hook 接入,零安装。已支持
通过官方 canUseTool 回调深度集成。规划中
实现 MCP elicitation 标准即可复用整套审批界面。规划中