Gateway Internals
The messaging gateway is the long running process that connects Hermes to 20+ external messaging platforms through a unified architecture. Key Files File Purpos
The messaging gateway is the long-running process that connects Hermes to 20+ external messaging platforms through a unified architecture. When a message arrives from any platform: 1. Platform adapter receives raw event, normalizes it into a 2. Base adapter checks active session guard: 3. GatewayRunner.handlemessage() receives the event: 4. …
What this page covers
- Key Files
- Architecture Overview
- Message Flow
- Session Key Format
- Two-Level Message Guard
- Authorization
- DM Pairing Flow
- Slash Command Dispatch
- Running-Agent Guard
- Config Sources
- Platform Adapters
- Token Locks
- Delivery Path
- Hooks
- Gateway Hook Events
- Memory Provider Integration
- Memory Flush Lifecycle
- Background Maintenance
- Process Management
- Related Docs
Section outline mirrored from the official Hermes Agent documentation. Follow any heading to read the complete text on the source site.
More in Developer Guide
Contributing
Thank you for contributing to Hermes Agent! This guide covers setting up your dev environment, understanding the codebase, and getting your PR merged. Contribut
Architecture
This page is the top level map of Hermes Agent internals. Use it to orient yourself in the codebase, then dive into subsystem specific docs for implementation d
Agent Loop Internals
The core orchestration engine is 's class — a large file that handles everything from prompt assembly to tool dispatch to provider failover. Core Responsibiliti
Prompt Assembly
Hermes deliberately separates: cached system prompt state ephemeral API call time additions This is one of the most important design choices in the project beca
Context Compression and Caching
Context Compression and Caching Hermes Agent uses a dual compression system and Anthropic prompt caching to manage context window usage efficiently across long
Session Storage
Session Storage Hermes Agent uses a SQLite database ( ) to persist session metadata, full message history, and model configuration across CLI and gateway sessio