Connect your AI agent to a Genio avatar — face, voice, and real-time video.
Project description
genio-sdk
Connect your AI agent to a Genio avatar. Your agent handles the conversation logic; Genio handles the face, voice, and real-time video.
Install
pip install genio-sdk
Quick Start (CLI)
export GENIO_API_KEY="gk_..."
export GENIO_AVATAR_ID="your_avatar_id"
# Test connectivity (placeholder agent)
genio-bridge --backend stub
# Hermes (requires run_agent on PYTHONPATH)
genio-bridge --backend hermes --model "provider/model"
# Custom agent module
export GENIO_AGENT_MODULE="my_agent.bridge:stream_reply"
genio-bridge --backend custom
Create a .env file in your working directory — the CLI loads it automatically via python-dotenv.
You should see SSE connected in the logs; the Genio dashboard shows Agent Connected within a few seconds.
One-click install (macOS / Linux)
curl -sL https://genio.works/bridge.sh | bash -s -- \
--api-key "gk_..." \
--avatar-id "your_avatar_id" \
--backend stub
Library usage
from genio import GenioBridge
bridge = GenioBridge(api_key="gk_xxx", avatar_id="your_avatar_id")
@bridge.on_user_speech
async def handle(text, turn_id, reply):
async for token in my_agent.stream(text):
await reply.send_token(token)
await reply.done()
bridge.run() # blocks, auto-reconnects
API
GenioBridge(api_key, avatar_id, base_url?)
| Param | Type | Required | Description |
|---|---|---|---|
api_key |
str |
Yes | Your BYOA API key (starts with gk_) |
avatar_id |
str |
Yes | The avatar document ID |
base_url |
str |
No | Genio API base URL (default: https://genio.works) |
@bridge.on_user_speech
Decorator to register the handler. The handler receives:
text— transcribed user speechturn_id— unique ID for this conversation turnreply— object with:send_token(token)to stream final answer tokenssend_status(content)to report progress while your agent is still workingdone()to end the turn
StatusConfig / run_with_status_updates
For long-running agents, use run_with_status_updates to send periodic status heartbeats while your worker streams tokens (see genio.backends.hermes).
bridge.run() / await bridge.disconnect()
run() blocks and auto-reconnects. disconnect() stops the bridge.
CLI reference
| Flag / env | Description |
|---|---|
--api-key / GENIO_API_KEY |
BYOA key |
--avatar-id / GENIO_AVATAR_ID |
Avatar ID |
--base-url / GENIO_BASE_URL |
API base (default https://genio.works) |
--backend / GENIO_BRIDGE_BACKEND |
stub, hermes, or custom |
--model / HERMES_GENIO_MODEL |
Hermes model |
--agent-module / GENIO_AGENT_MODULE |
package.module:callable for custom backend |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file genio_sdk-0.2.2.tar.gz.
File metadata
- Download URL: genio_sdk-0.2.2.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
36d4a389685d4490e71723759b1d1a256e26b0fb4dab09bc78b0a48e109212a2
|
|
| MD5 |
77c4d0c48344bd1baedfad92a7406205
|
|
| BLAKE2b-256 |
a7afbbd0d45008b3c2b162ee20e24bdb0303b8989622a0326b1165d842e70e3d
|
File details
Details for the file genio_sdk-0.2.2-py3-none-any.whl.
File metadata
- Download URL: genio_sdk-0.2.2-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21e35a83ece6b2a8a4faf9f403f99b1e5c9616e15ad6f5a05ddcb6bb9efb8d3f
|
|
| MD5 |
d7ffffdbd45d924c7badc0cb8487cf6f
|
|
| BLAKE2b-256 |
9bd5645623b2c71b6113cf14b4142873a9e842adfdab5a798313fc1f5666394b
|