📈 GH Trending Explorer 🎲 Surprise me

← all repos

ashwanthbalakrishnan5 / hermes-whatsapp-voice

git clone https://github.com/ashwanthbalakrishnan5/hermes-whatsapp-voice.git v0.1.12 · 3d ago

Live WhatsApp voice calls with Hermes: call your bot, or let Hermes call you. Hermes plugin + whatsapp-rust sidecar + Gemini Live.

—
stars, 24h
+81
stars, 7 days · #639
+81
stars, 30 days · #2,804
81
★ total · +81% this week
6
forks · 15 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageRust
LicenseMIT
Created2026-10-16 (4d ago)
Last push3d ago
Watchers0
OwnerUser

GitHub topics

Links

README excerpt
# hermes-whatsapp-voice
Live voice calls with Hermes over WhatsApp.
- **Call your bot.** Call your Hermes bot's WhatsApp number and talk to it. The voice agent can hand
 real work to Hermes mid-call ("move my 3pm to tomorrow", "what did Sam say about the invoice?").
- **Let Hermes call you.** For things that matter, Hermes can ring you instead of sending a message:
 a top-priority reminder, an urgent alert, a cron job that needs a decision. If you don't pick up,
 the tool says so and Hermes falls back to another channel.
- **Summary afterwards.** When a call ends, Hermes digests the transcript and sends you a short
 summary in WhatsApp.
It works with the personal-number setup most Hermes users already have (WhatsApp linked as a
device). No WhatsApp Business / Cloud API account is needed.
## How it works
 [code] 
- **`hermes-wa-voice`** is a small sidecar built on
 whatsapp-rust. It links to the bot's WhatsApp number
 as one more linked device (WhatsApp allows four), answers calls from your number only, and places
 calls to your number only.
- Call audio is bridged to **Gemini Live** (`gemini-3.8-live` by default) for natural, interruptible
 speech-to-speech.
- The voice model gets two tools:
 - `ask_hermes`, which runs a Hermes turn through the API server and speaks the result when it
 arrives;
 - `end_call`, which hangs up after a goodbye.
- The **Hermes plugin** adds two agent tools: `whatsapp_call_owner(reason, details?)` and
 `whatsapp_call_status(call_id?)`. It also adds a `hermes whatsapp-voice` command for setup.
## Requirements
- Hermes `>= 0.21.5` on Linux or macOS.
- A separate WhatsApp number for the bot: Hermes's WhatsApp `bot` mode, or any spare number. In
 `self-chat` mode the bot is your own number, and you can't call yourself.
- Gemini set up in Hermes with an API key. The plugin reuses the key of Hermes's Gemini provider
 (`GOOGLE_API_KEY`, else `GEMINI_API_KEY`), so there is nothing extra to enter. Without one,
 `hermes model` (choose Gemini) adds it. Google login (Cloud Code OAuth) does not work for the
 Live API. The live models have a free tier, but Google may use free-tier data. Paid use is
 roughly $0.005/min of audio in and $0.018/min out.
- Optional, but needed for the voice agent to reach Hermes: the Hermes
 API server enabled.
 It must have an `API_SERVER_KEY`.
## Install
**Let your agent do it.** Tell Hermes (or any coding agent on that machine) to follow
skills/setup/SKILL.md. It's a step-by-step runbook written for agents,
and it stops to ask you only for your number and to scan a QR code. After installing, Hermes can
also load it as `hermes-whatsapp-voice:setup`.
**Or by hand:**
 [code] 
### 1. Set your number
This is the only number that will ever be called, and the only caller that will be answered.
 [code] 
### 2. Link the sidecar to the bot's WhatsApp number (once)
Easiest: open the Hermes dashboard, go to the **WhatsApp Voice** tab, click **Pair with
WhatsApp**, and scan the QR from the **bot's** phone (WhatsAp