I've been using Hermes Agents for 3 months now, and I see a lot of great advice floating around. But after real production use, here's my honest take — what I agree with, and what I respectfully push back on.
What I Fully Agree With
- Context is still king. Period. Prompt engineering → context engineering → graph engineering — the buzzwords change, but the core remains the same. Your soul.md, user.md, agent.md matter, but so do your company structure, codebase, and knowledge directories. Without rich context, you're just chatting with a parrot.
*2. Optimize your .md files relentlessly. They bloat over months. Keep them simple and executable. Otherwise, you're literally burning tokens on noise. Less is more.
Optimize your Skills frequently. Hermes auto-generates skills faster than you can blink. They're "progressive disclosure" in theory, but in practice they become wordy novels. Simplify. Make them executable. Your token bill will thank you.
CRON + hooks is NOT enough for multi-agent collaboration. Research agent → product agent → engineering agent → that's a workflow, not a trigger chain. I had to build custom action queues to handle state and dependencies properly. This is where the real engineering begins.
Observability and auditability are foundational. When your research agent hits arXiv or does web searches, require it to save intermediate artifacts (PDFs, HTML, markdown) AND metadata. Without this, you're flying blind. Debugging becomes impossible.
Eval is the ceiling of your agent application. Write eval standards first — quantitative metrics (script-based, fast, stable) and qualitative metrics (LLM-based). Don't let LLMs judge your quantitative metrics. Scripts are quicker and more reliable.
What I Partially Agree With
- JSON and Markdown can get messy. Yes, using SQLite for structured data and Markdown for unstructured data makes sense. JSON as intermediate artifacts for observability? Great. But saying "Markdown/JSON instructions don't work" misses the point — the issue is usually prompt design, not the format itself. Don't blame the format for bad prompting.
What I Respectfully Disagree With
Don't use Hermes memory.md or other memory providers. Hard disagree. Memory is what makes LLM applications intelligent over time, not just clever in the moment. The problem isn't memory — it's how you use it. If your agent isn't proactively calling memory, fix the trigger strategy, don't abandon memory entirely. Without memory, your agent has amnesia. That's not a feature.
Don't use Hermes profile for multi-agent applications. Also disagree. Yes, profiles aren't hierarchical. Yes, sharing common values across roles is tricky. But "there's no better way" doesn't mean we abandon the best available tool. Use base templates + override patterns. Maintain them well. Profile management is a discipline, not a design flaw.
My Bottom Line
After 3 months of real-world Hermes usage, here's what I've learned:
Memory and profiles aren't the problem — lazy engineering is.Context, eval, observability, and workflow orchestration are where you should spend your energy.And for heaven's sake, optimize your tokens. Your wallet will notice.
What's been YOUR experience with Hermes Agents?
Are you using memory providers successfully?
How are you handling multi-agent workflows?
What's your eval strategy?
Drop your thoughts below — I'd love to learn from your journey too.
HermesAgents #AI #LLM #AgentEngineering #MultiAgent #AIDevelopment #PromptEngineering #TechLessons
Like this? Share it with your network and let's start a conversation about what actually works in production agent systems.
Top comments (1)
Memory and profiles aren't the problem ! I'd love to learn from your journey too.