OVOS agent protocol plugin for HiveMind-core
Project description
HiveMind OVOS Agent Plugin
OVOS agent protocol plugin for HiveMind-core.
Bridges HiveMind client messages to an OpenVoiceOS message bus.
HiveMind clients connect to a hivemind-core listener, and this plugin forwards their
Mycroft Message payloads to a local OVOS bus (and routes OVOS responses back to the
originating client).
Installation
pip install hivemind-ovos-agent-plugin
Or from source:
git clone https://github.com/JarbasHiveMind/hivemind-ovos-agent-plugin
cd hivemind-ovos-agent-plugin
pip install -e .
Usage
The plugin registers itself as a HiveMind agent protocol via the
hivemind.agent.protocol entry point group, with name hivemind-ovos-agent-plugin.
In your hivemind-core configuration:
{
"agent_protocol": {
"hivemind-ovos-agent-plugin": {
"host": "127.0.0.1",
"port": 8181
}
}
}
hivemind-core will discover the plugin via its entry point and instantiate the
OVOSAgentProtocol class with the supplied config. The plugin connects to the OVOS
message bus at the given host/port (defaulting to 127.0.0.1:8181).
Direct programmatic use
from hivemind_ovos_agent_plugin import OVOSAgentProtocol
agent = OVOSAgentProtocol(config={"host": "127.0.0.1", "port": 8181})
# pass `agent` to your HiveMindListenerProtocol
How it works
The plugin owns two callbacks on the OVOS bus:
hive.send.downstream— emitted by OVOS components that want to push aHiveMessageto a connected HiveMind client. The plugin wraps the payload in aHiveMessageand dispatches it to the right peer, or fans it out forPROPAGATE/BROADCASTtypes.message(catch-all) — every internal OVOS bus message is inspected. If itscontext["destination"]lists a connected HiveMind peer, the plugin forwards it back to that peer wrapped as aHiveMessageType.BUSmessage. This is where client isolation is enforced: a client never sees responses meant for another client.
Upstream traffic (client → OVOS bus) is handled by hivemind-core itself; this plugin
only handles the downstream half.
Documentation
Full developer documentation lives in docs/:
docs/architecture.md— how the plugin fits between HiveMind and OVOS.docs/configuration.md— every config knob.docs/message_flow.md— end-to-end message lifecycle.docs/development.md— running tests, releasing.
License
Apache 2.0. See LICENSE.md.
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 hivemind_ovos_agent_plugin-0.1.0.tar.gz.
File metadata
- Download URL: hivemind_ovos_agent_plugin-0.1.0.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
377fc1cf8010a1608deb1a1067cdcf74efbe265db5ce43857489c55ad10889d9
|
|
| MD5 |
4d25e3c2a585e9dad4b891e4f3a47c34
|
|
| BLAKE2b-256 |
6776d474ebc9ae1ae80da28e932821e2ee76c2f4e16fd5bf2da4b91033e2f039
|
File details
Details for the file hivemind_ovos_agent_plugin-0.1.0-py3-none-any.whl.
File metadata
- Download URL: hivemind_ovos_agent_plugin-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c563a35a206e4d5232ca37ab4e32065fe9513715d2bac39f2c327ac83b32354d
|
|
| MD5 |
2d5879feb8c3adf2e23140fc6266437d
|
|
| BLAKE2b-256 |
495e1fe06cb6cbef5065b1776f45a68098dc51357e2533c426e316124a75c7c5
|