Capslockb

hermes-live-discord-agent-plugin

Full-duplex Discord voice ↔ Google Gemini Multimodal Live API with function calling, vision, and proactive notifications.

9 stars12 open issuesPythonv0.4.0

Repository last updated Jul 26, 2026

Overview

Hermes Live Discord Agent Plugin bridges Discord voice channels with Google Gemini Multimodal Live API for real-time, full-duplex audio conversations. It supports vision via screen sharing, function calling across 30+ tools, multi-CLI delegation, and proactive notifications. The plugin runs as a self-hosted Hermes Agent plugin, connecting directly to Discord and Gemini using your credentials.

Key capabilities include sub-second latency voice I/O, automated JSONL transcripts, idle hangup with two-phase timeout, and a bundled sound effects library. A sidecar HTTP API on 127.0.0.1:18943 provides health checks, frame injection, and text injection endpoints.

This plugin is ideal for developers who want to deploy a conversational AI agent in their Discord server that can use tools, remember context via Honcho memory, and delegate tasks to CLI tools like Codex or OpenCode. It is designed for self-hosted environments with full inspectability.

Highlights

  • Full-duplex audio with sub-second latency
  • Vision support via screen sharing (frame delivery blocked by Issue #9)
  • 30+ voice tools and multi-CLI delegation with fallback
  • Proactive notifications via voice, DM, webhook, or email
  • JSONL transcripts with word-level detail
  • Idle hangup with two-phase timeout

Features

Full-duplex Voice

Sub-second latency voice I/O using Discord UDP → Opus → 16 kHz mono → Gemini WSS.

Function Calling

Over 30 voice tools for calendar, mail, Home Assistant, GitHub, Spotify, files, and search.

Multi-CLI Delegation

Delegate tasks to opencode, codex, numasec, gemini, or hermes-api with health registry and automatic fallback.

Proactive Notifications

Send notifications via voice, DM, channel, webhook, or auto on long-task completion, AFK pings, or scheduled alerts.

Email Brief

Scheduled Gmail digest with 3-bucket importance scoring and AFK delivery.

Idle Hangup

Two-phase timeout: prompt after N seconds of silence, then auto-leave.

Installation

Commands are reproduced exactly as published by the project maintainers. Always check the upstream repository for the current instructions.

# 1. Install this checkout
git clone https://github.com/Capslockb/hermes-live-discord-agent-plugin.git
cd hermes-live-discord-agent-plugin
./install.sh --from-local    # link this checkout into Hermes and prompt for env

# 2. Restart the gateway
systemctl --user restart hermes-gateway

# 3. From Discord, run:
/voice-live          # join your current voice channel
/voice-live-leave    # leave

Requirements

  • Python 3.10+
  • Hermes Agent installed and running
  • Discord bot token with voice permissions
  • Google Gemini API key
  • discord-ext-voice-recv library

How it's built

The plugin is written in Python and runs in-process inside the Hermes gateway's asyncio loop. It uses discord-ext-voice-recv for audio reception and the Gemini Multimodal Live API over WebSocket for streaming. The audio path is: Discord Voice → Opus Decode → 48 kHz PCM → 16 kHz Mono → Gemini WSS → Model, then back via 24 kHz PCM → 48 kHz Stereo → Discord AudioSource.

Repository layout includes bridge.py for core audio bridging, delegation_agent.py for CLI delegation, notification.py for proactive notifications, email_brief.py for email digest, sfx.py for sound effects, and sora_bridge_elements.py for additional bridge components. Documentation is available in docs/ as markdown and docs-site/ as a static HTML site.

Environment variables are required for DISCORD_BOT_TOKEN, GEMINI_API_KEY, and DISCORD_VOICE_LIVE_USER_ID. The plugin integrates with Honcho for per-user memory and supports webhooks for 9 event classes.

Source

This summary was written for Neura Market from the project's own repository. Install commands, identifiers and licence details are reproduced unchanged. The Capslockb/hermes-live-discord-agent-plugin repository is the authoritative source and the place to file issues or contribute.

Category: Messaging & Social

Related Hermes plugins