How Hermes Agent Works β The Engine Behind Jeri
What is Hermes Agent?
Hermes is an open-source AI agent framework by Nous Research. Itβs the engine that runs Jeri β think of it like an operating system for AI agents.
The Stack
βββββββββββββββββββββββββββββββββββββββ
β Jeri (Personality, Rules, Memory) β β Skills + Memory + SOUL.md
βββββββββββββββββββββββββββββββββββββββ€
β Hermes Agent (The Framework) β β Tool calling, sessions, gateway
βββββββββββββββββββββββββββββββββββββββ€
β LLM Model (The Brain) β β DeepSeek / Claude / Gemini / etc
βββββββββββββββββββββββββββββββββββββββ€
β VPS / Local Machine (Hardware) β
βββββββββββββββββββββββββββββββββββββββ
What Hermes Provides
| Feature | Description |
|---|---|
| Tools | Terminal, file editing, browser, web search, code execution, and 20+ more |
| Sessions | Persistent conversation history (SQLite + FTS5 search) |
| Cron | Scheduled tasks β reminders, daily briefings, recurring messages |
| Gateway | Multi-platform messaging β WhatsApp, Telegram, Discord, Slack, etc. |
| Skills | Reusable procedures that load into sessions (like conversation-style) |
| Memory | Persistent USER.md and MEMORY.md β remembers you across sessions |
| Delegation | Spawn subagents for parallel or heavy work |
| 20+ LLM Providers | Swappable anytime β DeepSeek, Anthropic, OpenAI, Google, xAI, local models |
Hermes is the Chassis, The Model is the Engine
- Hermes = toolbox with wrenches, screwdrivers, power tools
- The Model (LLM) = the mechanic using those tools
- Jeri = the mechanicβs work orders and rules (βwear safety glasses, use Bahasa when Christian doesβ)
Swap the mechanic and you get the same tools and rules, but the quality of work changes.
How Different Models Affect Performance
DeepSeek Flash (Christianβs Default)
- Fast β replies in seconds, low latency
- Cheap β lower cost per token
- Good for: casual chat, simple Q&A, quick file edits, daily tasks
- Weakness: can go in circles on complex multi-step problems
DeepSeek Pro (Configured as Delegation Model)
- Slower but smarter β better reasoning, fewer wrong turns
- Good for: debugging, architecture planning, complex code generation
- More expensive β uses more tokens per task
- Best used via:
delegate_taskfor heavy subtasks
Other Models Worth Knowing
| Model | Vibe | Best For |
|---|---|---|
| Claude Sonnet 4 | Super smart, very careful | Complex coding, security review |
| Gemini 2.5 Pro | Great reasoning, 1M context | Large codebases, long docs |
| GPT-4o | Well-rounded, creative | Design, content, general |
| Grok | Uncensored, fast | Quick research, casual |
How Routing Works in Practice
Christianβs current setup:
Chat with Jeri β DeepSeek Flash (fast, cheap)
βββ Complex task β delegate_task β DeepSeek Pro (heavy, smart)
Switching Models
/proβ switch to DeepSeek Pro (takes effect next turn)/flashβ switch back to DeepSeek Flash (default)- Override persists until
/flashor/new
Smart Routing Heuristics
The agent (Jeri) decides at runtime:
- 1-2 tool calls, factual retrieval β handle with Flash directly
- 3+ tool calls, debugging, code generation, planning β delegate to Pro
- Architecture decisions, security reviews, design docs β delegate to Pro
- Casual chat, summarization, Q&A β Flash
Available Commands
Commands you can type in chat to trigger specific actions:
| Command | What it does | Since |
|---|---|---|
/gpt <message> | Routes that message through GPT-4o Mini instead of DeepSeek Flash | v1 |
/pro | Switch to DeepSeek Pro model | v2 |
/flash <message> | Switch back to DeepSeek Flash (default) | v1 |
/balance | Check current DeepSeek API balance | v2 |
/status | Quick VPS status β uptime, memory, disk, garden health | v2 |
/guests <add|remove|list> | Manage WhatsApp guest access | v2 |
/garden <add|edit|delete> | Manage digital garden notes β add, edit, delete | v2 |
Terminal Aliases (SSH)
| Command | What it does |
|---|---|
balance | Same as /balance β DeepSeek balance check |
status | Same as /status β VPS health report |
manage-guest.sh <add|remove|list> | Same as /guests β manage guest access |
π‘ Pro tip:
/balance,/status,/guests, and/gardenare powered by custom Hermes plugins that intercept the command and rewrite it for the agent.
Key Files & Paths
| File | Purpose |
|---|---|
~/.hermes/config.yaml | Main configuration |
~/.hermes/.env | API keys and secrets |
~/.hermes/memories/USER.md | User profile & behavior rules |
~/.hermes/memories/MEMORY.md | Project facts & procedures |
~/.hermes/skills/ | Installed skills directory |
~/.hermes/sessions/state.db | Session history (SQLite) |
Security & Privacy
- Command authority: Only Christian can command Jeri. Others are read-only
- Secret redaction: API keys/tokens are auto-redacted from tool output before entering context
- Allowlist: WhatsApp bridge only forwards messages from approved numbers
- Tirith scanner: Threat patterns are scanned before reaching the model