Metadata-Version: 2.4
Name: hivemind-persona-agent-plugin
Version: 0.0.1
Summary: ovos-persona (LLM/solver) agent protocol plugin for HiveMind-core
Author-email: jarbasAi <jarbasai@mailfence.com>
License: Apache-2.0
Project-URL: Homepage, https://github.com/JarbasHiveMind/hivemind-persona-agent-plugin
Project-URL: Issues, https://github.com/JarbasHiveMind/hivemind-persona-agent-plugin/issues
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: ovos-bus-client<2.0.0,>=1.3.1
Requires-Dist: ovos-config<3.0.0,>=0.0.12
Requires-Dist: ovos-utils<1.0.0,>=0.8.2
Requires-Dist: hivemind-bus-client<1.0.0,>=0.7.0a2
Requires-Dist: hivemind-plugin-manager<1.0.0,>=0.5.0
Requires-Dist: pyee<13.0.0,>=8.1.0
Requires-Dist: ovos-persona<2.0.0,>=0.1.0
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"

# hivemind-persona-agent-plugin

An [ovos-persona](https://github.com/OpenVoiceOS/ovos-persona) agent protocol for
[HiveMind-core](https://github.com/JarbasHiveMind/HiveMind-core): the hub answers
natural-language queries from an LLM/solver persona instead of a full OVOS skills
stack.

It is the clean implementation of `AgentProtocol.natural_language_query` — the
persona *is* a question-answerer, so the seam maps directly onto
`Persona.stream`, yielding the answer sentence by sentence (and a final `None`
end-of-query sentinel) so a satellite can start speaking before generation
finishes.

## Configure

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

`persona` may be a path to a persona JSON file or an inline persona config dict.
