Show HN:Call Me,让你的 AI Agent 给你打电话,无需额外运营商费用
英文标题:🔶 Show HN: Call Me, your AI agents ring you with no extra carrier costs
Call Me 是一款 iOS 应用及配套 Agent 集成工具,可让 AI Agent 拨打用户真实的 iPhone、通过语音提问,并将用户的口头回答转写为文本返回;也支持直接发送短信式推送通知。项目提供 Claude Code 插件以及面向 Codex、脚本和 cron 任务等场景的独立 `bash+curl` CLI。每个 Agent 会话可注册独立号码和对话线程,便于用户在手机上区分不同任务。该方案让开发者可在无需额外运营商费用的情况下,为 Agent 增加实时电话和消息触达能力。
97.2 KB
中文
Call Me — Agent 集成
你的 AI Agent 可以拨打你真实的 iPhone,通过语音提出问题,并将你的口头回答以文本形式返回——也可以直接给你发消息。该仓库提供 Call Me iOS 应用(原名 AI Phone)面向 Agent 的集成方案。
App Store 上的 Call Me —— 免费。打开应用,点击 Agree & Continue,即可看到你的个人 Call Me 号码:一个 10 位数字,也是 Agent 联系你所需的全部信息。
如果你已经在终端中使用 CLI,callme qr 会输出指向该链接的可扫描二维码,callme setup 则会为你输出以下步骤。
2. 连接 Claude Code(推荐)
请将以下内容作为两条独立消息发送(斜杠命令每条消息只能运行一个):
/plugin marketplace add radres/call-me
/plugin install call-me@call-me
然后只需告诉 Claude:“set up Call Me”。它会询问应用中的号码、记住该号码,并向你发送一条确认短信。此后,Claude 就可以向你发消息和拨打电话,而你在应用中的回复会直接回流至当前实时会话。
当系统提示时,你也可以将号码粘贴到插件的配置字段中——效果相同。无论哪种方式,号码都会保存到 ~/.aiphone/config.json,因此这台机器上的每一个 Claude 会话都可以联系你的手机;重新配对至新手机会立即生效,无需重启任何内容。
3. 任何其他 Agent(Codex、脚本、cron 任务等)
使用 skill/ 中的独立技能。它是一个单文件的 bash+curl CLI:
git clone https://github.com/radres/call-me
cp call-me/skill/callme ~/bin/ # or anywhere on PATH
callme pair 5551234567 # once — the number from the app
callme call "Deploy staging or prod first?" # blocks until you answer by voice
callme text "Build green, PR merged." # push notification
支持 skills 的 Agent 可以直接指向 skill/SKILL.md——该文件说明完整流程(设置、配对、呼叫、发消息、监听、标题)。
将以下内容加入你的 CLAUDE.md / Agent 指令:
I'm reachable on my phone through Call Me.
Claude Code: install the call-me plugin from github.com/radres/call-me,
then run its setup tool if we aren't paired yet.
Other agents: use the callme CLI (skill/ dir) — `callme setup` explains
pairing, then `callme call "question"` rings me and returns what I say.
请注意,其中没有号码:该号码是一项凭据,因此它被保存在 ~/.aiphone/config.json(权限模式为 0600)中,而不是写入你的笔记。callme number 可读取该号码,callme pair <number> 可修改它。
callme call会将你的问题 POST 至 Call Me 服务;你的 iPhone 会像接到真实电话一样通过 CallKit 响铃,TTS 朗读问题,你的口头回复会被转写并返回给 Agent。该调用会一直阻塞至你接听——这正是其设计目的。callme text会发送一条推送通知消息;手机端的回复会被传回支持频道的 Agent 会话(Claude Code 插件),或者可通过callme listen/callme events获取。- 每个 Agent 会话都会注册各自的号码和线程,因此你的手机会按任务显示独立且带标题的对话。
English / 原文
Call Me — agent integrations
Your AI agents can ring your actual iPhone, speak a question, and get your spoken answer back as text — or just text you. This repo has the agent-side integrations for the Call Me iOS app (formerly AI Phone).
Call Me on the App Store — free. Open it, tap Agree & Continue, and it shows your personal Call Me number : 10 digits, and all an agent needs to reach you.
Already in a terminal with the CLI? callme qr prints a scannable QR code for that link, and callme setup prints these steps for you.
2. Connect Claude Code (recommended)
Send these as two separate messages (slash commands only run one per message):
/plugin marketplace add radres/call-me
/plugin install call-me@call-me
Then just tell Claude: "set up Call Me". It asks for the number from the app, remembers it, and sends you a confirmation text. From then on Claude can text you and ring your phone, and your replies from the app flow straight back into the live session.
You can also paste the number into the plugin's config field when prompted — same result. Either way it lands in ~/.aiphone/config.json, so every Claude session on the machine reaches your phone, and re-pairing to a new phone takes effect immediately without restarting anything.
3. Any other agent (Codex, scripts, cron jobs, …)
Use the standalone skill in skill/. It's a single bash+curl CLI:
git clone https://github.com/radres/call-me
cp call-me/skill/callme ~/bin/ # or anywhere on PATH
callme pair 5551234567 # once — the number from the app
callme call "Deploy staging or prod first?" # blocks until you answer by voice
callme text "Build green, PR merged." # push notification
Agents that support skills can point at skill/SKILL.md directly — it teaches the full flow (setup, pair, call, text, listen, title).
Drop this in your CLAUDE.md / agent instructions:
I'm reachable on my phone through Call Me.
Claude Code: install the call-me plugin from github.com/radres/call-me,
then run its setup tool if we aren't paired yet.
Other agents: use the callme CLI (skill/ dir) — `callme setup` explains
pairing, then `callme call "question"` rings me and returns what I say.
Notice there's no number in there: the number is a credential, so it lives in ~/.aiphone/config.json (mode 0600) instead of your notes. callme number reads it back, callme pair <number> changes it.
callme callPOSTs your question to the Call Me service; your iPhone rings through CallKit like a real call, TTS speaks the question, your spoken reply is transcribed and returned to the agent. The call blocks until you answer — that's the point.callme textsends a push-notification message; replies from the phone are delivered back into channel-enabled agent sessions (Claude Code plugin) or fetched withcallme listen/callme events.- Each agent session registers its own number and thread, so your phone shows separate, titled conversations per task.