Hermes Agent Skills
A Hermes skill is a folder with a SKILL.md file — a name, a short description, and a step-by-step procedure for one kind of task. Hermes sees only the short descriptions until a task needs a skill, then loads the full text. Every installed skill also becomes a slash command, such as /github-pr-workflow.
Skills are how Hermes “learns”: when it works out a non-trivial workflow, hits a dead end and finds the fix, or you correct its approach, it can save that procedure as a new skill with its skill_manage tool. Skills follow the open agentskills.io format and live in ~/.hermes/skills/.
Checked against official Nous Research sources on September 26, 2026 (Hermes Agent v0.21.5).
Skills vs. memory vs. plugins vs. MCP
These four are easy to mix up, and putting something in the wrong layer is a common reason Hermes “forgets how” to do it.
| Layer | Holds | Loaded | Where |
|---|---|---|---|
| Skill | Procedures: how to do a task | On demand (descriptions always visible) | ~/.hermes/skills/<name>/SKILL.md |
| Memory | Small durable facts about you and your environment | Every session, as a frozen snapshot | ~/.hermes/memories/ |
| MCP server | External tools the agent can call | Tools registered at startup | mcp_servers in config.yaml |
| Plugin | Code that extends Hermes: tools, providers, Desktop UI | Installed from the plugin catalog | Plugins page in Desktop / dashboard |
The official memory docs put it simply: memory stores small facts that should always be in context; skills store longer procedures that should load only when relevant.
Using skills
$/github-pr-workflow create a PR for the auth refactor # run a skill with a request$/excalidraw # load it and let Hermes ask what you need$hermes chat -s github-pr-workflow -q "open a draft PR" # preload a skill from the shell
- You rarely need the slash command: when a request matches a skill's description, Hermes picks it up on its own.
- Hermes ships with a catalog of bundled skills already copied into
~/.hermes/skills/, plus an official optional catalog you can install. - Blank Slate setup starts with no skills at all; seed them later with
hermes skills opt-in --sync. - Since v0.21.4,
skills.auto_loadcan pin chosen skills into every new session's prompt instead of loading them on demand.
Installing skills from the hub
$hermes skills browse # official skills first$hermes skills search kubernetes # search every source$hermes skills inspect openai/skills/k8s # preview before installing$hermes skills install openai/skills/k8s # installs after a security scan$hermes skills check # upstream updates for hub skills$hermes skills uninstall k8s
Sources include official optional skills, skills.sh, ClawHub, LobeHub, well-known skill endpoints, direct GitHub paths, and direct URLs. In Hermes Desktop, the same catalog is under Capabilities → Skills → Browse, and the public Skills Hub's Install in Hermes button opens Desktop directly. The web dashboard has a Skills page for toggling and installing too.
hermes skills inspect output for anything from a third-party source before installing it.Creating skills
- Let Hermes write them. After a workflow succeeds, ask it to save the procedure as a skill, or let it do so on its own.
/learnturns a doc page, a local SDK folder, pasted notes, or the workflow you just walked through into a skill; large sources become knowledge-base skills.- Write
SKILL.mdby hand with frontmatter (name, description) and sections such as When to Use, Procedure, Pitfalls, and Verification. - Project-local skills in
<repo>/.hermes/skills/or<repo>/.agents/skills/load only for sessions started inside that repository, after you trust the project. - Skill bundles group several skills you always use together.
Controlling what the agent writes
Hermes can create, edit, and delete its own skills — in the foreground, during a background review after a session, or when the curator consolidates. To review changes first, turn on write approval:
# ~/.hermes/config.yamlskills:write_approval: true # default false# then, in a chat:/skills approve <id> # or 'all'
Skill looks broken after you edited a bundled one? hermes skills reset <name> clears the “user-modified” flag; add --restore to bring back the bundled version and discard your edits.
Each Bot Mode bot is its own profile with its own skills, so a skill one bot learned is not automatically available to another.
Primary sources
- Skills System — official docs
- Bundled Skills Catalog — official docs
- Working with skills — official guide
- Persistent Memory (skills vs memory) — official docs
- Hermes Agent v0.21.4 release notes (skills.auto_load)
HermesAgentAI.org is an independent educational documentation resource and community guide. It is not affiliated with, sponsored by, or endorsed by Nous Research or FlyHermes. Hermes Agent is released under the MIT License by Nous Research.