agentring: your agent calls your phone

agentring

An agent messages your phone or calls it over VoIP, a voice AI discusses the decision and the transcript returns to the agent

  • 283 ★ on the repository
  • Last commit
  • Apache-2.0
Skill

Broad access

Why this level

  • The voice AI acts on what it hears and can invoke your agents with their commands
  • You maintain a server with open ports and voice provider keys yourself
All reasons and checks

mutonby/agentring

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add skills/agentring

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The voice AI acts on what it hears and can invoke your agents with their commands
  • You maintain a server with open ports and voice provider keys yourself

This is third-party code. Review the repository files before installing.

What it does

agentring is a self-hosted system through which an agent reaches you by phone. When a task needs a decision, a build fails or a long job finishes, the phone rings like an ordinary call, even locked and in Doze. A voice AI explains why the agent is calling, you talk the question through, and the agent gets the transcript and carries on. You can also call your own agents from the app. The agent talks to the system through the MCP server `agentring mcp` with the tools `send_message`, `get_replies`, `call` and `status`. The skill in the skills/agentring folder teaches the agent to pick the lightest channel: a message for anything that can wait, a wait for a reply instead of polling in a loop, and a call only when it is urgent or needs a conversation. It also tells the agent to write a short reason for the call and a detailed context without ids or links, which would be read aloud. The system consists of a TypeScript relay, a LiveKit server for audio, a Python daemon with a CLI and an Android app. Calls go over VoIP from your own server to your phone, with no phone numbers, Twilio or per-minute fees.

Who it is for. Developers with an Android phone who run long tasks in Claude Code or Codex and want the agent to reach them when their decision is needed.

Good fit when

  • A migration failed overnight and the agent should call instead of stopping silently
  • Your approval is needed before a production deploy while you are away from the laptop
  • You want to ask the agent by voice what CI reported while you drive
  • A daily call with the assistant about your inbox and tasks should happen by voice

Not a fit when

  • You use an iPhone: the app is Android-only for now
  • Call audio must not go to cloud speech providers, but the voice AI uses Gemini, OpenAI, Grok or Phonic
  • You need a shared service for a team: the system serves one user per relay
  • Routine notifications come often, for which the skill recommends a plain message rather than a call

Example request

Run the database migration, and if it fails call me, tell me at which step and ask whether to roll back.

Limitations

The project is pre-release: it has been tested on one Pixel 6 with Android 16.

You need a server with Docker, a Firebase project for pushes, a voice provider key (Gemini by default) and an Android phone. Pushes are signed but not encrypted, and Google can read their text.

The voice AI acts on what it hears, so give it only tools and agents you would trust with someone holding your phone. The command `npx skills add mutonby/agentring` installs the skill from the repository; the folder you need is skills/agentring.

How to disable. Remove the server with claude mcp remove agentring and delete the agentring skill folder. Stop the system with docker compose down on the relay server.

FAQ

How do I connect agentring to Claude Code?

First run agentring init and agentring pair, then claude mcp add agentring -- agentring mcp. The relay and daemon are set up following docs/setup.md, and the app comes from the repository releases.

Which agents does it work with?

Through MCP it reaches you from Claude Code, Codex, opencode, OpenClaw and Hermes. Scripts, n8n and any HTTP agent use the REST API and CLI.

Which voice AI should I use?

Gemini Live on its free tier by default. OpenAI Realtime, Grok Voice or Phonic are selectable with the --provider flag or the AGENTRING_VOICE_PROVIDER variable.

Is a call paid?

There are no per-minute fees or phone numbers: the call goes over VoIP from your server. You pay for the chosen voice provider's key at its rates.

What if I miss the call?

A missed call turns into a message you can answer from the notification. The skill advises sending send_message after no answer rather than calling again.

Discussion

No questions or reviews yet.

Skills

Cross-platform agent skills: read-only PostgreSQL, MySQL and MSSQL queries, Google Workspace, Jira, Telegram, text-to-speech and research

SkillBroad access450Repository stars

Hark sends iPhone notifications from agents and scripts, asks you to approve risky commands and shows task progress

CLIBroad access210Repository stars
Official

A self-hosted control plane for running several agents: task dispatch, run review, spend tracking, connected via MCP, CLI or REST

MCP serverBroad access6.5KRepository stars

Open Agent Email — a self-hosted mail server for AI agents: inboxes, in-thread replies, human approval, webhooks and an MCP endpoint with 96 tools

MCP serverBroad access2.1KRepository stars

A skill set that teaches an agent to work with Gmail, Slack, HubSpot, Salesforce and other apps through the Membrane CLI

SkillBroad access271Repository stars

WeChat Automation API

wechat-automation-api

A skill for agents on Windows that sends text, images and files through an already running desktop WeChat, with an HTTP API and a queue as well

SkillBroad access193Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
agentring: your agent calls your phone (this card)no283
CallMeno2,673a plugin for phone calls through Twilio rather than VoIP from your own server
WhoBot phone call skillyes12a skill for outbound calls to third parties rather than a channel from the agent to its owner
VoiceModeyesnot required1,439voice conversation with the agent at the computer, without ringing a locked phone

README in short

The README shows how an agent reaches you and compares harnesses: which of them reach the phone over MCP and which command you use to consult each during a call. It then gives an architecture diagram, a table of voice providers, a three-step quickstart, a privacy section and a list of limitations.

README badge

Original SKILL.md

---
name: agentring
description: Reach the user on their phone through agentring — send a message, wait for their reply, or call them (a voice AI talks to them for you and returns the transcript). Use when you need the user's decision or attention and they may be away from the screen, when a long task finishes or fails, or when the user asks you to message or call them.
---

# agentring

agentring rings and messages the user's own phone. The tools come from the
`agentring` MCP server (`agentring mcp`; setup for each harness in docs/agents.md).

## Pick the lightest channel

- **`send_message`** for anything that can wait: a task finished, a summary, a
  question with an obvious default. Keep it short; it is read on a lock screen.
- **`get_replies(wait_s=…)`** after asking something: wait a few minutes
  (`wait_s` 300–900) instead of polling in a loop. Each reply is returned once.
- **`call`** only when it is urgent or needs a conversation: production is down,
  a decision blocks you and a message got no answer, or the user asked for a call.
  Set `urgent: true` only for real emergencies (it rings through Do Not Disturb).

## Calling well

The voice AI on the call knows only what you pass:

- `reason`: one sentence, shown on the ringing screen ("The nightly deploy failed").
- `context`: what happened, the options, your recommendation, and exactly what you
  need from the user. Write it for someone who has not seen your work; no ids,
  paths or links (they get read aloud).

`call` returns when the call ends. Read the `transcript` (and `end_reason`:
`no_answer`, `hung_up`, `end_call`, …) and act on what the user said. If nobody
answered, fall back to `send_message`, don't call again right away.

## Don't

- Don't call for routine updates or several times in a row.
- Don't put secrets or tokens in messages or call context.
- Don't treat silence as consent: if there's no reply, keep the safe default.

Report a problem

Foxx AIagentring: your agent calls your phone
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.