Hermes Atlas
Plugins & extensions

hermes-persona

kenyonxu/hermes-persona

Hermes Agent plugin that injects configurable persona context before every LLM call

In short

hermes-persona is a Hermes Agent plugin that injects persona context into the system prompt before each LLM call, driven entirely by a persona-config.json file. Changing characters needs no code changes.

What hermes-persona does

hermes-persona is a Hermes Agent plugin that injects persona context before every LLM call through the pre_llm_call hook. Time awareness, behavior rules, scenario triggers, expression variation, memory recall and kanban state are woven into the system prompt, all driven by a persona-config.json file, so switching characters needs no code changes.

Each module can be switched on or off independently, and configuration reloads on save without restarting the Gateway. Rules can be static or chosen dynamically by time slot, by how many turns the day has had, or by keyword patterns in the user's message. A weather module reads Open-Meteo for a named city with file caching, and a translate mode turns the rules into natural-language persona text. Missing or malformed config, or unreachable external services, degrade silently instead of breaking the agent. The README offers Simplified Chinese and English versions.

Key features

  • pre_llm_call hook that injects persona context every turn
  • Time awareness and optional weather context from Open-Meteo
  • Static rules plus dynamic rules by time slot, turn stage and keyword
  • Random expression variation and an expression vector
  • Optional external memory recall and first-turn kanban state
  • Hot reload of persona-config.json without a Gateway restart

When to use it

  • Give a Hermes agent a consistent character whose tone shifts by time of day
  • Trigger special behavior when certain keywords appear in a user message
  • Swap personas by editing JSON instead of code

Who it is for: Hermes Agent users who build character-driven or companion-style agents and want persona behavior defined in configuration.

How it fits with Hermes Agent

Built as a Hermes Agent plugin that uses the pre_llm_call hook, installed with hermes plugins install.

How to install hermes-persona

These commands are copied from the project's README. Check the repository for the latest steps before you run them.

hermes plugins install kenyonxu/hermes-persona --enable
hermes plugins list | grep persona

Requirements: Hermes Agent; the optional external memory module needs httpx and the weather module needs a configured location

FAQ

What is hermes-persona?

hermes-persona is a Hermes Agent plugin that injects dynamic persona context into the system prompt before each LLM call. Its behavior is defined in a persona-config.json file rather than in code.

How do I install hermes-persona?

Run hermes plugins install kenyonxu/hermes-persona --enable, then check it with hermes plugins list. A minimal persona-config.json containing an empty hermes-persona object turns on time awareness.

Does hermes-persona work with Hermes Agent?

Yes, it is built for Hermes Agent as a plugin. It skips configured sources such as cron, api_server and webhook through its sources blacklist.

Similar plugins for Hermes Agent

All plugins

Related guides: How to install Hermes Agent · How to run Hermes Agent securely