Skip to content

Does Hermes AI Overwrite Your Manual Skill Edits? The Truth About Self-Learning Agents

AI Neural Networks

Problem

When I spent hours customizing my Hermes Agent skills for my smart home workflow, I found that the agent’s self-learning feature overwrote my edits overnight.

My carefully tuned skill file at ~/.hermes/skills/smart-home/SKILL.md was gone. The agent had “self-improved” it back to a generic template.

Environment

  • Hermes Agent (experimental release)
  • macOS 14
  • Custom skills for smart home automation

What happened?

I had manually edited my smart home skill:

My custom SKILL.md
# Smart Home Control
When controlling lights:
1. Always check occupancy sensors first
2. Use gradual dimming (5-second ramp)
3. Log all changes to /var/log/home-auto.log

This skill worked perfectly for weeks. But after a session where Hermes handled some unrelated tasks, I checked the file again:

Agent 'improved' version
# Smart Home Control
Control smart home devices based on user requests.

My hours of tuning were gone. The agent had decided my custom logic was “unnecessary” and reverted it to a simpler version.

The Reddit community confirmed this behavior:

  • “It’s self improving. It will overwrite your edits. No thank you.” (OP)
  • “The overwriting your manual edits part is a total dealbreaker… if I spent time tuning a specific skill for my smart home or a workflow, having an agent ‘self-improve’ it back into a jumbled mess sounds like a nightmare” (Score 19)

How to solve it?

I tried several approaches to protect my skills.

Solution A: File Permission Lock

The simplest fix is to make the file read-only:

Lock skill file
# Lock the skill file
chmod 444 ~/.hermes/skills/smart-home/SKILL.md
# Verify protection
ls -la ~/.hermes/skills/smart-home/SKILL.md
# Output: -r--r--r-- 1 user staff 1234 Apr 7 10:00 SKILL.md

When I need to edit later:

Temporarily unlock
# Temporarily unlock
chmod 644 ~/.hermes/skills/smart-home/SKILL.md
# Edit the file
# Then lock again
chmod 444 ~/.hermes/skills/smart-home/SKILL.md

This works, but Hermes may throw errors when it tries to write. I ignore those errors since I want the protection.

Solution B: Use OpenClaw Instead

OpenClaw doesn have autonomous skill modification. I switched for my production workflows:

OpenClaw configuration
{
"skills": {
"entries": {
"smart-home": {
"enabled": true,
"config": {
"occupancyCheck": true,
"dimRamp": 5000,
"logPath": "/var/log/home-auto.log"
}
}
}
}
}

OpenClaw’s behavior is deterministic. My skills stay exactly as I configured them.

Solution C: Version Control

For Hermes users who want to keep using it, I recommend git:

Version control for skills
cd ~/.hermes/skills
git init
git add .
git commit -m "Initial skill state"

When Hermes overwrites something important:

Restore overwritten changes
git checkout SKILL.md

Solution D: Check Configuration (Uncertain)

One Reddit comment claimed: “You can always set certain things to never change or get overwritten” (Score 3). But I couldn find this documented anywhere. The official docs state: “The agent has the ability to modify or delete any skill.”

The reason

Hermes is designed as a “self-improving autonomous agent.” The learning loop is core to its architecture:

Task → Evaluate → Create/Update Skill → Reuse → Improve

The agent uses skill_manage tool with these actions:

  • create: New skills from successful workflows
  • patch: Targeted fixes to existing skills
  • edit: Major structural rewrites
  • delete: Remove skills it deems unnecessary

The documentation explicitly says the agent can modify skills in ~/.hermes/skills/. The plugin-install protection (if dest.exists(): return # don't overwrite user edits) only applies during initial registration, not during runtime learning.

The fundamental issue is that Hermes evaluates its own results. As one Reddit user noted: “It always thinks it did a good job. ALWAYS.” So when it “improves” a skill, it has no objective measure of whether the change is actually good.

Production Considerations

Based on real-world feedback, there are three critical design principles when using self-learning agents like Hermes:

1. Separate Configuration from Learning Output

User-defined logic (CFG) should never live in the same file or lifecycle as agent-generated skills.

2. Make Skills Reproducible

Treat skills as portable assets. Keep a clean, restorable version outside the agent runtime.

3. Add Redundancy

Do not rely on the agent’s self-evaluation loop. Always have:

  • version control
  • backup
  • alternative execution path

Hermes is powerful, but unsafe by default for production unless you isolate, version, and externalize your skills.

Summary

In this post, I showed how Hermes Agent’s self-learning can overwrite your manual skill edits. The key point is that this behavior is intentional by design, not a bug. I protect my skills with file permission locks or use OpenClaw for deterministic behavior in production workflows.

Final Words + More Resources

My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me

Here are also the most important links from this article along with some further resources that will help you in this scope:

Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!

Comments