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.2a1.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.2a1.tar.gz.

File metadata

File hashes

Hashes for hivemind_persona_agent_plugin-0.0.2a1.tar.gz
Algorithm Hash digest
SHA256 0f5b7a46c5c647b8a2723da7c42ce176205587425852de92f56502f754b977c2
MD5 c192ca981ecf04e83d69f349f9323d98
BLAKE2b-256 a05ecf97d83aa88a9a1b8ad6d5febf78d2513f739a3a36597c8bb6ffe73284c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for hivemind_persona_agent_plugin-0.0.2a1-py3-none-any.whl
Algorithm Hash digest
SHA256 db712eb5914ee15d8e1e6e9cf0221d72f46e6ea6af46e1295972f4733364544c
MD5 e4499f22f5922bf942be10ac76f15580
BLAKE2b-256 c5b85a378f3eef756784aa57db3ccf745a394929aeacb5c693d8526254de8c81

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