Hermes Agent
Run a personal AI agent — persistent, private, and connected to Telegram.
Hermes Agent
Run a personal AI agent — persistent, private, and connected to Telegram.
Featherless Managed Hermes Agent is a fully managed agent environment with sandboxed compute and inference bundled into a single monthly subscription. You get a secure, always-on Hermes Agent instance with Featherless already wired as the model backend. No infrastructure to manage. No separate token bill.
Hermes Agent handles the agent layer: persistent memory, skills, channels, and the gateway that connects everything.
Featherless handles the model layer: 30,000+ open-source models, no prompt logging, flat-rate pricing.
Deploy
Go to featherless.ai/account/agents and click Browse Marketplace. Find Hermes Agent and click Launch. You'll land on a Launch Hermes Agent screen with two fields:
Name (optional): a friendly label for this agent, e.g. "My Agent"
Model: a searchable dropdown
The default model is MiniMaxAI/MiniMax-M2.5. Not sure what to pick?Here are the available models Claw Standard
Model | Good for |
|---|---|
| General-purpose default, strong instruction following |
| Agentic tasks, self-reflection loops |
| Fast everyday assistant, balanced quality |
| Lightweight, fast responses |
| Reasoning and thinking tasks |
| Specialised task agent |
| Ultra-lightweight, low latency |
| Compact, fast general use |
| Featherlabs curated general assistant |
| High quality, large instruction model |
| Code tasks, lightweight |
The following models require a plan claw pro:
Model | Good for |
|---|---|
| Reasoning-heavy tasks, long context |
| Demanding tasks, massive MoE |
| Complex tasks, large MoE model |
| Fast everyday assistant, strong multilingual |
| Efficient mid-size assistant |
Hit Launch Agent. Your sandbox spins up in seconds and your gateway dashboard opens automatically at:
https://[port]-sbx-[your-id].sandbox.featherless.ai
Hit Launch Agent. Your sandbox spins up in seconds and your gateway dashboard opens automatically at:
https://[port]-sbx-[your-id].sandbox.featherless.ai
Dashboard
Your gateway dashboard is the control centre for everything. The status indicator in the top-left shows Health: OK when the gateway is running. If it shows anything else, refresh and wait 30 seconds.
Chat — talk directly to your agent in the browser. Backed by the same model and memory as any connected channel. The fastest way to test changes before rolling them out.
Sessions — browse all past and live conversations. Each session shows the platform it came from, the model used, message count, and tool call count.
Config — your live config.yaml. Edit settings directly, including model, memory, and channel configuration. Changes take effect on the next session or gateway restart.
API Keys — manage all your provider keys and bot tokens in one place. Keys are grouped by category: LLM providers, tool API keys, and messaging platforms.
Channels — status snapshots for each connected platform. Shows whether a channel is configured, running, and connected.
Cron Jobs — lists all scheduled tasks. Toggle individual jobs on or off from here.
Logs — live and historical gateway logs with filtering by level and component. First place to check if a channel isn't responding or a config change didn't behave as expected.
Config vs dashboard UI for channels: Use the Config tab to edit config.yaml directly for channel configuration. It's the most reliable way to make changes — edit, save, and restart the gateway to apply.
First conversation
In the dashboard, click Chat in the sidebar. Send a message to introduce yourself:
"Hey, I'm [your name]. I work in [field]. I prefer concise answers and my timezone is CET."
Your agent replies within a few seconds and takes notes in MEMORY.md automatically.
Try these while you're here:
Web search
"What are the most downloaded open-source LLMs on HuggingFace this week?"
The agent has web_search available by default. It pulls live results, not training data.
URL summary
"Can you summarise this for me? [paste any URL]"
Connect Telegram
Telegram is the cleanest channel to start with. One token, one config block, done. Once set up, your agent is reachable from your phone without opening the dashboard.
Hermes Agent also supports Discord, Slack, WhatsApp, and Signal from the same gateway — see the Messaging Platforms docs to add more channels.
1. Create a bot in BotFather
Open Telegram and search for @BotFather. Start a chat and send:
/newbot
Give your bot a display name (e.g. "My Agent") and a username ending in bot (e.g. myagent_bot). BotFather returns a token that looks like 7234891234:AABB.... Copy it.
2. Find your numeric Telegram user ID
Send any message to @userinfobot on Telegram. It replies instantly with your numeric ID — a plain number, not your username.
3. Configure Telegram
telegram:
enabled: true
bot_token: "YOUR_BOTFATHER_TOKEN"
unauthorized_dm_behavior: allowlist
allowlist:
- YOUR_NUMERIC_TELEGRAM_USER_ID
Save the file and restart the gateway to apply.
4. Test
Open Telegram and send your bot a message:
"Hey, it's me — same conversation, new channel."
You should get a response within a few seconds. If nothing comes back, check the Logs section in the dashboard.
DM policy options:
Policy | Behaviour |
|---|---|
| Unknown senders receive a pairing code before messages are processed |
| Only senders in the allowlist can message the bot. Recommended for personal use. |
| Bot silently drops all unauthorized DMs |
Personalise your agent
SOUL.md
SOUL.md is your agent's primary identity. It loads into every session in full, on every channel. Use it to define who the agent is, what it does, and how it responds.
# Who you are You're a personal assistant running on an open-source model via Featherless. You're direct, concise, and useful. You don't pad responses with filler. # What you do - Answer questions using web search when needed - Remember what I tell you across sessions - Summarise links I send you - Remind me of things I ask you to track # How you respond Keep answers short unless I ask for depth. If you're uncertain, say so. Use plain language, not markdown formatting, when responding in Telegram.Keep SOUL.md under 2,000 words. Longer reference content belongs in MEMORY.md.
MEMORY.md
MEMORY.md is your agent's persistent notepad. After conversations, the agent writes notes here automatically: your name, preferences, things you've mentioned. Every new private session loads this file at the start.
Your memory files are located at ~/.hermes/memories/. Edit them directly from the dashboard under Config → Files.
MEMORY.md is loaded in private (DM) sessions only, not group chats. Rules that need to apply everywhere belong in SOUL.md.
To test it: start a fresh conversation in Telegram without giving any context and ask:
"What do you know about me?"
Recurring reminders
Tell your agent directly in chat:
"Every morning at 8am, message me in Telegram with a motivational thought."
This creates a cron job. The agent messages you unprompted at that time each day. Manage it under Cron Jobs in the dashboard sidebar.
Config reference
Directory structure
~/.hermes/
├── config.yaml # Settings (model, channels, memory, tools, etc.)
├── .env # API keys and secrets
├── SOUL.md # Agent identity (loaded every session)
├── memories/ # Persistent memory files
├── skills/ # Agent-created skill files
├── cron/ # Scheduled jobs
├── sessions/ # Gateway session history
└── logs/ # Gateway and error logs
Full working config
terminal:
backend: local
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
telegram:
enabled: true
bot_token: "__HERMES_REDACTED__"
unauthorized_dm_behavior: allowlist
allowlist:
- YOUR_NUMERIC_TELEGRAM_USER_ID
compression:
enabled: true
threshold: 0.50
display:
tool_progress: all
streaming: false
security:
redact_secrets: true
tirith_enabled: true
approvals:
mode: manualKey fields
memory
Controls persistent memory across sessions. memory_enabled turns on automatic note-taking after conversations. memory_char_limit caps how much is loaded per session to avoid flooding the context window.
telegram
Field | Type | Notes |
|---|---|---|
| boolean | Must be |
| string | Token from BotFather |
| string |
|
| array | Numeric Telegram user IDs allowed to message the bot |
compression
Hermes automatically compresses long conversations to stay within the model's context window. threshold: 0.50 means compression fires at 50% of the context limit.
approvals
Controls how potentially dangerous terminal commands are handled. manual prompts you before execution. smart uses an auxiliary model to assess risk. off disables all checks.
Troubleshooting
Bot doesn't respond in Telegram. Confirm your numeric user ID is in the allowlist — not your @username. Send a message to @userinfobot to verify. Restart the gateway after saving config changes.
Config changes not taking effect. Hermes Agent requires a gateway restart after editing config.yaml. Use hermes gateway to restart from the CLI or use the restart option in the dashboard.
Health shows something other than OK. Refresh the dashboard. If it persists, wait 30 seconds — the sandbox may be restarting.
Agent not using tools, just describing what it would do. Set agent.tool_use_enforcement: true in config.yaml to force the model to make actual tool calls instead of narrating intentions.
Channel configured but not responding. Check Logs for errors. Confirm enabled: true is set in the channel block and that the gateway has been restarted since the last config change.
Resources
Hermes Agent Docs: hermes-agent.nousresearch.com/docs
Hermes Agent GitHub: github.com/NousResearch/hermes-agent
Featherless Discord: discord.gg/featherlessai