Creating a Hive
Minds
When creating a Hive the first step is to add a Mind to it, this is "the brain" of the hive and is expected to handle natural language queries
- hivemind-core -> connects to an existing ovos-core setup
- hivemind-persona -> launch a OVOS persona behind a hivemind server, this can for example be ChatGPT
- MultiMind -> launch a dedicated ovos-core per access key
- LocalHive -> a mind that loads OVOS skills fully isolated, usable on localhost only
- DuckDuckGo -> proof of concept of how to turn anything into a Mind
Once you have at least 1 Mind in your hive you can start connecting things to it!
Managing Clients
hivemind-core
provides a command line interface to manage client permissions
$ hivemind-core add-client --help
Usage: hivemind-core add-client [OPTIONS] [NAME] [ACCESS_KEY] [PASSWORD]
[CRYPTO_KEY]
add credentials for a client
Options:
--help Show this message and exit.
$ hivemind-core delete-client --help
Usage: hivemind-core delete-client [OPTIONS] NODE_ID
remove credentials for a client
Options:
--help Show this message and exit.
$ hivemind-core list-clients --help
Usage: hivemind-core list-clients [OPTIONS]
list clients and credentials
Options:
--help Show this message and exit.
$ hivemind-core allow-msg --help
Usage: hivemind-core allow-msg [OPTIONS] MSG_TYPE [NODE_ID]
allow message types sent from a client
Options:
--help Show this message and exit.
Terminals / Satellites
A terminal is something that allows you to interact with your hive, it connects to a Mind setup in the previous step
- Voice Satellite - processes audio on satellite and sends natural language queries to a mind
- Webchat -> webchat to connect from browser directly to a mind
- Flask Chatroom - reference implementation for a web application that connects to a mind backend side
- Remote Cli - a command line application to chat with a Mind
See the pairing documentation for further details
Bridges
A bridge connects some existing service to a Mind, it is like a terminal but depends on some intermediate service