Skip to main content

AIVG — AI Voice Gateway: agent-platform-agnostic voice-satellite management plane + CLI

Project description

AIVG — AI Voice Gateway

AIVG is a platform-neutral voice satellite system: a thin, realtime voice transport (WebRTC / Opus) bridged into whichever agent platform plugin is configured (v1 canonical: Hermes; planned: OpenClaw). Satellites capture audio and play it back; STT, the agent loop, TTS, and end-of-utterance detection live in the upstream agent platform.

Install (PyPI)

pip install aivg

Supported: Python 3.11+ on Linux x86_64/aarch64, macOS arm64/x86_64.

⚠ Install into your existing Hermes virtualenv, not a fresh venv. The aivg-satellite entry point is only discoverable by Hermes's plugin loader if AIVG lives in the same venv Hermes runs from:

uv pip install --python ~/.hermes/hermes-agent/venv/bin/python aivg

Then add aivg-satellite under plugins.enabled: in ~/.hermes/config.yaml and restart the gateway. Full setup flow: see docs/ or run aivg setup --help.

Repo: https://github.com/cloudomate/aivg · Changelog: CHANGELOG.md · License: MIT.

Status

Layer State
Voice plane (WebRTC, Opus, server-side endpointing) Implemented (features 001/005/006/008/010)
Management plane (registry, adoption, control WS, SSE logs) Implemented (feature 011 Phases 1–4)
aivg CLI + Hermes agent skill Implemented (feature 011 Phase 3+4)

Quickstart

pip install -e .          # picks up the renamed entry point
aivg --version            # JSON envelope, contract_version 1.0.0
aivg list                 # see the fleet
aivg device get kitchen   # full state of one device
aivg logs kitchen --follow
aivg onboard --ssid "MyWiFi" --password "..." --name "bedroom"

Repo layout

src/aivg_core/           # platform-neutral management plane
  platforms/hermes/        # v1 Hermes plugin (Hermes-platform agent skill, bridge)
  platforms/openclaw/      # planned plugin (stub)
  webrtc/                  # voice plane
  management/              # App. A REST + SSE + control WS
src/aivg_cli/            # `aivg` Typer CLI
skills/hermes-agent/     # Hermes-platform agent skill (invokes `aivg` CLI)
specs/                   # Spec Kit features 001–012
docs/                    # design notes, data-dir reference, rebrand allow-list

Hermes vs AIVG

Use this When you mean
AIVG the product, the repo, the system as a whole
Hermes the v1 agent-platform plugin (one of several AIVG supports)
aivg the CLI binary
aivg_core the platform-neutral Python package
~/.aivg/ AIVG's operator data (state, firmware manifests)
~/.hermes/ the Hermes plugin's data (provider config, secrets)

Development

# Editable install with all dev deps (pytest, ruff, black, etc.)
pip install -e ".[dev]"
# or with uv:
uv pip install -e ".[dev]"

# Run the suite
pytest -q                 # 300+ tests

Runtime + dev deps are declared in pyproject.toml under [project] and [project.optional-dependencies] respectively. (The legacy requirements-dev.txt was removed in feature 018 — single source of truth is the pyproject.toml extras now.)

See specs/ for the design history and the active feature (currently 018-aivg-pypi-distribution).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aivg-0.2.2.tar.gz (130.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aivg-0.2.2-py3-none-any.whl (156.4 kB view details)

Uploaded Python 3

File details

Details for the file aivg-0.2.2.tar.gz.

File metadata

  • Download URL: aivg-0.2.2.tar.gz
  • Upload date:
  • Size: 130.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aivg-0.2.2.tar.gz
Algorithm Hash digest
SHA256 64328b8f6abe1b704443a009dff3d2cbf7112a5f0d8c55fd293e5638e1aa6647
MD5 d4ba387f5a762dc2d9d583767858d12d
BLAKE2b-256 dead7aac45c7d3e66aedc5ce3fd294ae505a9717a25e4e4362a7674db0b6a842

See more details on using hashes here.

File details

Details for the file aivg-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: aivg-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 156.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for aivg-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 343322807f44a3e11d6c6b5479536af0ad722d695b8504ef2437ce85fb76e69d
MD5 7b127f281bb4eba8c9b44b252581395b
BLAKE2b-256 a86d4741e10ce3d6eeeb0946bfdcd14c3521aa9dd13c5475e9965bb796afe484

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page