hermes-persona
kenyonxu/hermes-persona
Hermes Agent plugin that injects configurable persona context before every LLM call
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 personaRequirements: 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 pluginsCodex-inspired chat layout, theme and task Inbox for Hermes Desktop, installed as a desktop plugin
rednicv Hermes Improvements PackageEnhancement suite for Hermes Agent adding vector memory, adaptive persona rules and task classification
Infinite-Labs-AI Hermes Health ApolloLocal-first Hermes health-data plugin that links Oura, Google Calendar and Gmail metadata
Agent-Analytics Agent Analytics Hermes PluginHermes dashboard plugin for read-only Agent Analytics data: project summary, pages, events and insights
0xharryriddle hermes-pmxtRead-only prediction market research for Hermes Agent, powered by PMXT
m4tinbeigi-official Hermes Agent FarsiPersian localization for Hermes Agent: translated dashboard, right-to-left layout and Vazirmatn font
Related guides: How to install Hermes Agent · How to run Hermes Agent securely