Skip to main content

ovos-persona (LLM/solver) agent protocol plugin for HiveMind-core

Project description

hivemind-persona-agent-plugin

An ovos-persona agent protocol for HiveMind-core: the hub answers natural-language queries from an LLM/solver persona instead of a full OVOS skills stack.

Unlike the default hivemind-ovos-agent-plugin, this agent needs no OVOS bus and no running skills — it answers queries directly from the configured persona, streaming the model output sentence by sentence so that a satellite can start speaking before generation finishes.

Install

pip install hivemind-persona-agent-plugin

Or from source:

git clone https://github.com/JarbasHiveMind/hivemind-persona-agent-plugin
cd hivemind-persona-agent-plugin
pip install -e .

Quickstart

1. Create a persona file

ovos-persona personas are JSON files. A minimal LLM-backed persona:

{
  "name": "MyAssistant",
  "solvers": [
    {
      "module": "ovos-solver-openai-plugin",
      "ovos-solver-openai-plugin": {
        "api_url": "http://localhost:8000/v1",
        "model": "local-model"
      }
    }
  ]
}

Save it to ~/.config/ovos_persona/persona.json (or any path — you will reference it in the config below).

2. Configure hivemind-core

Edit ~/.config/hivemind-core/server.json:

{
  "agent_protocol": {
    "module": "hivemind-persona-agent-plugin",
    "hivemind-persona-agent-plugin": {
      "persona": "~/.config/ovos_persona/persona.json"
    }
  }
}

The persona value can be either:

  • a path to a persona JSON file (string, ~ is expanded), or
  • an inline persona config dict.

3. Start hivemind-core

hivemind-core listen

Satellites connecting to this hub receive answers streamed from the persona.

Configuration

All keys live under "hivemind-persona-agent-plugin" in server.json.

Key Type Required Description
persona string or dict yes Path to a persona JSON file, or an inline persona config.

How queries are answered

hivemind-core's QUERY handler calls natural_language_query(utterance, lang) on the active agent. This plugin implements that method by calling Persona.stream(messages, lang=lang), yielding each output chunk as it is produced. The final None sentinel signals end-of-query to hivemind-core, which sends a hive.query.complete control message back to the satellite.

See docs/query_flow.md for a detailed trace.

Documentation

License

Apache 2.0.

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

hivemind_persona_agent_plugin-0.0.2a2.tar.gz (4.2 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file hivemind_persona_agent_plugin-0.0.2a2.tar.gz.

File metadata

File hashes

Hashes for hivemind_persona_agent_plugin-0.0.2a2.tar.gz
Algorithm Hash digest
SHA256 9596fb19f743859a359b6417f30a0c67f182e5cf17dc20ce29bcffcf223bd1f6
MD5 cec82fb5abb06851e23cb8c3c679e93b
BLAKE2b-256 674622b352c0ebf1597b7a95d730edc1ca55e011343076fea893305ee48c2ead

See more details on using hashes here.

File details

Details for the file hivemind_persona_agent_plugin-0.0.2a2-py3-none-any.whl.

File metadata

File hashes

Hashes for hivemind_persona_agent_plugin-0.0.2a2-py3-none-any.whl
Algorithm Hash digest
SHA256 e5b1b62a576eec177dc99fce8114bd239c39ebe0cb8be19f029f4d482d241746
MD5 97dd89ac4edbea1628baeb749d2b8541
BLAKE2b-256 636d356cc9ef39e7325f1e18644925f27094b91d68830acd28e174ab8495ff8a

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