Wiki · Start here
Skills — extending the agent
Write a procedure once and the agent applies it every time — no programming, and it costs nothing until needed.
What a skill is (and is not)
| Thing | What it is | Example |
|---|---|---|
| Skill | A written procedure for the agent: when to use it, which steps to take, what to avoid, how to verify the result | "How we back up the database" |
| Tool | A capability the agent already has — reading files, running commands, searching the web | Running a terminal command |
| Plugin | A code extension of the agent itself (a new feature). Written in Python | Wiring in a payment gateway |
For most people skills are all they need. A plugin is something a programmer builds and maintains — a skill is just a proven procedure in plain text.
Why it pays off
| Benefit | What it means in practice |
|---|---|
| The procedure is followed every time | The agent does not reinvent it — it reads your procedure. Fewer mistakes, less explaining |
| It costs nothing until needed | The agent only knows the names and descriptions. The full text is loaded when relevant — so you can keep dozens of skills |
| Your know-how stays with you | Skills are plain files on your server in ~/.hermes/skills/. You can back them up or move them |
| The agent improves on its own | When something difficult works out, the agent can write a skill from it and repeat it next time |
Ready-made skills — where to get them
The agent ships with 58 bundled skills and 153 optional ones you install yourself. To browse and pick:
Installing one is a single command:
| Category | What you will find (examples of bundled skills) |
|---|---|
| Documents | Word, Excel, PDF, presentations — creating and reading |
| Working with code | GitHub, reviewing changes, hunting bugs, running tests |
| Research and web | Verifiable citations, RSS collection, watching pages, domain checks |
| Communication | Triaging an inbox and drafting replies |
| Server operations | Docker, backups, monitoring, security |
| Creative | Charts, diagrams, images, simple animations |
An installed skill applies to new conversations. To use it right away mid-task, run
/reset (a fresh chat), or ask for immediate loading with --now — that costs a little more because
the conversation memory is reloaded.
Teach the agent your own procedure — without writing code
You do not have to write the file yourself. The /learn command tells the agent to write it for you —
from documentation, a web page, or from what you just did together:
The agent gathers the material, writes the skill and uses it from then on. No programming required.
What your own skill looks like
A skill is a single text file SKILL.md in its own folder. It starts with a short label the agent uses to
recognise when to apply it, followed by the procedure:
The first sentence decides. The agent mainly looks at description — it must be short and say
at what moment the skill applies ("Use when…").
Tips from experience
| Tip | Why |
|---|---|
| Write a concrete procedure, not general advice | "Run this command and check this output" is usable; "be careful" is not |
| One skill, one thing | A small precise skill gets applied correctly; a huge one gets confused with others |
| Record what went wrong | Writing down the mistakes you hit saves hours next time |
| Add how to verify the result | The agent then checks its own work (and so can you) |
| No passwords or keys inside a skill | A skill is a procedure, not a vault. Secrets belong in the agent's settings |
| When reality changes, rewrite the skill | An outdated skill is worse than none — the agent learns the wrong procedure |
| Read a third-party skill before installing | A skill tells the agent what to do. Only install sources you trust, and read the text first |
When it does not work
| Symptom | Cause and what to do |
|---|---|
| The agent does not use the skill | The description (first sentence) does not match the task — rewrite it to start with "Use when…" and to contain the words you actually use |
| A freshly installed skill does nothing | In a chat, skills load at the start of the session. Run /reset or request immediate loading |
| Two similar skills clash | Two skills share a name or an area. Rename or merge one of them |
| I do not know what the agent has | hermes skills list (or /skills search) shows what is available; hermes skills audit checks the catalog state |
| A skill does something harmful | A third-party skill can contain a dangerous procedure. Delete it from ~/.hermes/skills/ and only take skills from trusted sources |
