Skip to main content

Yet Another Openclaw vs Hermes experience sharing

·5 mins
Kristof Kovacs
Author
Kristof Kovacs
Software Architect & DevOps Consultant

Hello, I’m Kristof, a human being like you, and an easy to work with, friendly guy.

I've been a programmer, a consultant, CIO in startups, head of software development in government, and built two software companies.

Some days I’m coding Golang in the guts of a system and other days I'm wearing a suit to help clients with their DevOps practices.

(Originally posted to Reddit)

I've switched from OpenClaw three days ago, having been tired of the constant flow of updates that kept making everything worse and worse.

I've switched to Hermes, and spent the past few days on it, so I thought I would share my thoughts. Somewhat incoherent, but all from real experience. (3 days, man, that's like 3 years of experience in pre-AI times! 🤣)

Main subjective observation: OpenClaw is your personal assistant, almost a person. Hermes is somewhere between OpenClaw and OpenCode - half AI assistant, half coding harness. Definitely not a person.

This ultimately comes down to the much tighter memory about you, the USER. OpenClaw likes to add new and new information about YOU, learning about YOU, it's all about YOU. Hermes says, "I want to know max ~3000 characters about this guy. Whenever that's full, I'll forget something". Which is actually very efficient. Just not very personal. :)

Also, hermes helpfully injects "This is a cron run: ..." headers footers into cron, which is actually helpful, just... it looks like a harness, not a person. :)

Hermes trips you up at several points. OpenClaw is relaxed about you (and him) doing anything. Which is actually how I like it, I do run it in a separated environment, inside it, it has free reign. (I know other peope do it differently.) So Hermes has this "security theatre", which trips you up at various points. One example is how cronjobs run in a different environment than your main agent, you needing to additionally specify any PATH, skills, manually sourcing .env, etc. I know this comes from Unix cron, but it's wrong there too -- does not add security, just makes sure that nothing works at first try. (Everything works at about third try, when you ironed out the random traps laid for you.)

Asking for permission whenever a script reads from a URL into stdin. Yes, I know this COULD be dangerous if that input gets eval-ed, but why would it. But scripts reading from stdin is bread and butter in Unix, we do this all the time. No, we don't eval random things. (Skillhubs are ruining the experience for all of us.)

Another one like this is cronjob scripts that HAVE to live in ~/.hermes/scripts, and HAVE to be in python. This prevents scripts being co-located with the SKILLs, and keeps tripping up the agent. I understand that this gives some security if you download "skills hub" skills, which I will plan to NEVER do, thank you. :) You end up writing wrappers, which only add complexity.

There is no HEARTBEAT. In theory you could simulate it from cronjobs, but cron's bone-headed restrictedness makes this much harder than it should be. The cronjobs can't see the "main" conversation, and have no way to inject into the "main" conversation (you see the output, the LLM does not).

Hermes is nearly impossible to configure from Telegram/Dicord/etc (without CLI). Some slash commands are inconsistent between environments. Many slash commands only work from the TUI/CLI, not from Telegram/Discord/etc. For example, "/history" or "/cron". And you can't run commands (! ls) or internal commands directly, just can ask the LLM to run them for you. This makes me wary about Hermes when I'm on a business trip for example, without my usual comfortable SSH access.

Hermes cron's "skipping the agent: wakeAgent" is brilliant. Basically you can have a script that can decide to wake the LLM or not. This is amazing for mechanical, scriptable things, like checking on emails and not costing you LLM costs if there are none. (Security theatre trips this up a little too of course (see above), but it works the third time.)

The memory thing in Hermes. Hermes is managing its own skills, memory, etc - this is one of the main selling points of course. I'll be honest, it's too early after 3 days to give an opinion about this. It did some good. I love how it summarizes things. But when it goes sideways, doing horrible solutions like all AI does ("I'll make a cron and I'll make another cron to watch the output of the other cron!"), and it etches those bad decisions in stone, and you try to scrape out the bad decisions from all the places... that kinda reminds me of old times when you were trying to scrape traces of a virus infection out of your PC manually.

Would I go back? Hard to say. Probably not to OpenClaw as it is now, I have the feeling that OpenClaw has probably became a vibe-coded mess and only time will tell if it's redeemable (I hope yes). Hermes is an immune reaction to some of OpenClaw's flaws, sometimes in the wrong way. But the philosophy is "better" in OpenClaw (closer to actual personal assistant). The execution is better and more deterministic in Hermes. (I could see business solutions built on Hermes like people build business solutions on Wordpress). I would be happy to switch to a smaller, cleaner "micro" agent that keeps more things in plain files. (Why cron can't be more human-friendly yaml files instead on JSON in either?) I know there are several, right now neither have the momentum so far...


Questions? Comments? Insults?
Feel free to drop me a line below, I love getting messages!