· Updated

Extending Hermes Agent with Custom Skills: A Practical Guide

Hermes Agent ships with a set of built-in capabilities, but its real power comes from skills — reusable packages that encapsulate specialized workflows. A skill turns a procedure you would otherwise describe in every prompt into something the agent loads on its own when the task matches.

What a Skill Contains

Every skill lives in its own directory with a standard structure:

skills/
  security-audit/
    SKILL.md          # Instructions the agent follows
    scripts/
      audit.sh        # Executable automation scripts
    templates/
      report.md       # Output templates
    references/
      patterns.md     # Reference material

The SKILL.md is the heart of the system. It tells the agent when to use the skill, what steps to follow, and what pitfalls to avoid:

---
name: security-audit
description: "Audit a codebase for security vulnerabilities"
---

# Security Audit Skill
1. Scan for hardcoded secrets using scripts/audit.sh
2. Check dependency tree for known CVEs
3. Review auth middleware for common bypass patterns
4. Generate report using templates/report.md

The name and description frontmatter fields do the routing: only the description stays in the agent’s active context, and the full skill body loads when a task matches. That keeps expertise available on demand without paying for it on every turn.

Finding Skills

Hermes pulls skills from skills.sh, well-known agent skill endpoints, GitHub, ClawHub, and other registries. Browse what’s out there before writing your own:

hermes skills search code-review
hermes skills browse

Both commands return skills with their descriptions, so you can judge relevance before touching anything.

Installing Skills

Install by registry identifier or by a direct URL to a SKILL.md:

# from a registry identifier
hermes skills install openai/skills/skill-creator

# from a direct URL to a SKILL.md file
hermes skills install https://example.com/skills/deploy/SKILL.md --name deploy

# install without the confirmation prompt (needed in TUI mode)
hermes skills install code-review --yes

# override which category folder the skill lands in
hermes skills install deploy --category release

The installer scans what it downloads before committing; --force installs despite a blocked scan verdict — only use it when you trust the source. The --name override helps when you install from a URL whose SKILL.md has no name: frontmatter.

Managing Installed Skills

The day-to-day commands:

hermes skills list          # show installed skills
hermes skills inspect        # preview a skill without installing it
hermes skills check          # check installed skills for updates
hermes skills update         # update installed skills
hermes skills audit          # re-scan installed skills against registries
hermes skills uninstall x    # remove an installed skill

That check/update cycle matters. Skills aren’t static — the good ones get fixed and extended upstream. A weekly hermes skills check keeps your whole toolkit current instead of running stale instructions.

Bundled Skill Management

Some skills ship with Hermes itself. Editing one is allowed — Hermes tracks that you modified it and keeps your changes across updates:

hermes skills list-modified    # which bundled skills have you edited
hermes skills diff             # how your copy differs from the stock version
hermes skills reset <skill>    # clear 'user-modified' so updates apply again

reset is the escape hatch: if your edits go stale against a newer stock version, reset clears the modified flag and hermes skills update takes over again. You can also opt out entirely of bundled-skill seeding with hermes skills opt-out (opt back in with opt-in), or backfill missing official optional skills with repair-official.

Configuring Skills

hermes skills config opens an interactive view to enable or disable individual skills. If a skill keeps matching tasks you don’t want it in, disable it there — that’s the designed control surface, cleaner than deleting it.

Snapshots: Move Skills Between Machines

If you manage more than one profile or machine, snapshots export the whole installed set to a file:

hermes skills snapshot export   # export installed skills to a file
hermes skills snapshot import   # import and install skills from a file

That’s the reproducible path: export once, import on the next machine, done. It beats re-installing every skill by hand.

Syncing Skills Across a Team

For teams, the dedicated command is hermes sync — Skill Sync, which syncs your skills across devices and with teammates. The snapshot flow is fine for one-off migrations; hermes sync is the ongoing channel for a shared skill set, so a runbook or style skill can be maintained once and picked up everywhere.

Publishing Your Own Skill

When a skill proves itself, you can publish it to a registry with hermes skills publish. Publishing a skill means writing good frontmatter quality so other agents beyond Hermes can adopt it — the same SKILL.md convention is becoming a cross-tool standard, so one well-written skill can serve multiple agents.

Writing Your First Skill

  1. Create skills/my-skill/SKILL.md with frontmatter (name, description — the description is what routing matches against, so be specific)
  2. Add scripts/, templates/, and references/ as needed
  3. Test it locally until the flow is repeatable
  4. Install it: hermes skills install ./skills/my-skill --name my-skill
  5. For the team: hermes skills snapshot export or hermes sync

Skills bridge the gap between a general-purpose assistant and a specialized tool that knows your exact workflows — and because they live in plain Markdown, they’re version-controllable, reviewable in pull requests, and shareable across your team.


Related: the Hermes console dashboard guide covers the monitoring side of running agents, and the 2026 coding agent security checklist has the hardening steps to pair with any skill install.

FREE RESOURCE

Get the AI Agent Cheat Sheet

All 19 coding agents in one comparison table — pricing, features, benchmarks. Updated weekly. Delivered to your inbox.

k
kira_bug_hunter
Security & Bug Hunter
Former pen tester. Finds the bugs nobody wants to exist. Skeptical of everything, especially status indicators.