Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
World desk11 min

What Are Hermes Agent Skills? A Practical Guide to Using and Writing SKILL.md Files

Hermes Agent skills are on-demand procedural playbooks. Learn how to find, install, configure, bundle, author, test, and troubleshoot them safely.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Hermes Agent skills are on-demand procedural knowledge documents. Each one teaches Hermes how to complete a particular class of task by supplying an ordered method, relevant tool calls, expected results, pitfalls, and a way to verify the work. You can discover skills, invoke them as slash commands, install optional ones, or create your own SKILL.md workflow.

This guide explains the skill lifecycle from discovery through testing, including where files live, how Hermes decides which copy wins, why a skill may not load, and how to keep a custom skill maintainable.

As an Amazon Associate I earn from qualifying purchases.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What a Hermes Agent skill is

A skill is a reusable playbook for doing something. It is not a general-purpose fact sheet and it is not a transcript of previous conversations. Hermes separates procedural knowledge (“how to do things”) from memory (“what things are”). A skill therefore focuses on a repeatable operation such as preparing a pull request, researching a topic, deploying an application, or generating a particular kind of output.

Skills can contain:

  • Conditions that indicate when the workflow applies.
  • Ordered actions and tool calls.
  • Required inputs, configuration values, and prerequisites.
  • Expected output formats and success criteria.
  • Known failure modes and recovery steps.
  • Verification checks that confirm the task was completed correctly.

Hermes documentation describes skills as “on-demand knowledge documents.” They are deliberately loaded when relevant instead of being placed in every conversation. That keeps the agent’s working context focused while still making detailed procedures available when needed.

Skills, memory, and bundles are different

Component Purpose Typical contents How it is used
Skill Teach a repeatable procedure Steps, tool usage, pitfalls, verification Loaded for a matching task or invoked with a slash command
Memory Keep compact factual knowledge Preferences, facts, stable project details Consulted as factual context rather than as a procedure
Bundle Group several skills behind one command A YAML list of skill names and an optional instruction Loads every resolvable skill in the group; it does not install missing skills

If a document tries to cover everything an engineering team might do, it will be difficult to trigger and maintain. A focused workflow is more useful: “deploy this Python service to a named platform” is a workable scope, while “handle all of DevOps” is not.

How Hermes discovers and loads skills

Hermes uses progressive disclosure rather than loading every file at once. The agent first sees a compact skill index. When a skill is selected, Hermes reads the complete SKILL.md. Supporting references are loaded only when the task requires them. This three-stage approach preserves context for the actual work while allowing a skill to carry detailed documentation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Three ways a skill can be activated

  • List and slash command: Run /skills to inspect available skills, then invoke one with its slash command, such as /plan or /github-pr-workflow.
  • Search: Use /skills search <keyword> in chat or hermes skills search <keyword> in the CLI to find a relevant name or description.
  • Natural language: Ask Hermes to perform a task that matches a skill. The agent can use skill_view to select relevant procedural knowledge without you typing the slash command.

Every installed skill becomes a slash command. The command name is derived from the skill identity, so a clear, unique name makes a skill easier to discover and less likely to collide with another procedure.

Which copy wins when names collide

Hermes searches skill locations in a documented order:

  1. Project skills in the current repository.
  2. Local skills in ~/.hermes/skills/.
  3. Skills in the configured skills.create_dir location.
  4. Skills in configured external directories.

A project copy can override a same-named local, bundled, or external copy. This lets a repository tailor a generic workflow, but it also means that changing directories can change which instructions Hermes uses.

Trust and security checks for project skills

Project skills are not automatically accepted from arbitrary repositories. Hermes asks you to trust the project before loading its skills, then scans them for dangerous prompt-injection patterns, credential-exfiltration instructions, and hidden-text techniques. A skill that fails trust or security checks will not be indexed for normal use. Treat a project skill as executable guidance: read it before granting trust, especially when it can call tools or handle secrets.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Find and invoke an installed skill

Use this sequence when you want to use a skill that is already available.

  1. In Hermes chat, enter /skills. In the CLI, run hermes skills list. Review the names and descriptions rather than guessing a command.
  2. Search if the list is long. For example, use /skills search docker in chat or hermes skills search kubernetes in the CLI.
  3. Invoke the matching command and include the task details. For example: /github-pr-workflow Create a PR for the auth refactor.
  4. Supply any values the skill requests, such as a repository, environment, or output format. Keep those values in the conversation unless the skill’s configuration declares them as reusable settings.
  5. Check the skill’s verification result. A procedure that finishes without its stated verification step is not necessarily complete.

You can also describe the task naturally instead of naming the command. If Hermes identifies a matching skill, it will load the procedural document before proceeding. Explicit invocation is preferable when several skills could apply or when you need a particular workflow.

Install an optional Hermes skill

Optional skills are installed from a source identifier. You can install from the CLI or from chat:

  • CLI: hermes skills install <source>
  • Chat: /skills install <source>

For example, an official research skill can be installed with hermes skills install official/research/arxiv. Replace the source with the identifier documented for the skill you intend to use; do not assume that a similarly named source exists.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What installation changes

Installation copies the skill into ~/.hermes/skills/. Hermes then adds it to the skill index and exposes it as a slash command. A running session may have an older index, so start a new session after installation or use the --now option when the command supports it:

hermes skills install <source> --now

If the command does not recognize --now, open a new Hermes session and run hermes skills list again. The skill should appear before you try to invoke it.

Configure a skill after installation

A skill can declare required configuration in its YAML frontmatter. Hermes prompts for missing values and stores them under skills.config.*. You can inspect or change those values with:

hermes skills config <name>

The general configuration store is also available through:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
hermes config get skills.config

Configuration is useful for stable values such as a project identifier or preferred output mode. Do not put credentials into a skill file or commit them to a repository; use the configuration and secret-handling facilities appropriate to your Hermes setup.

Write a custom Hermes skill

A custom skill is a directory whose entry point is SKILL.md. Start with a narrow workflow and write for an agent that must perform the task, not for a reader who merely wants background information.

Recommended directory layout

my-skill/
├── SKILL.md
├── references/
│   ├── api.md
│   └── examples.md
├── templates/
│   └── output-template.md
├── scripts/
│   └── validate.sh
└── assets/
    └── diagram.svg

Only SKILL.md is required. Add supporting directories when they make the procedure clearer or less repetitive:

  • references/ for detailed API notes, policies, or long examples.
  • templates/ for reusable output structures.
  • scripts/ for deterministic helper commands that the skill is allowed to run.
  • assets/ for diagrams or other files needed by the workflow.

Because Hermes loads references on demand, moving long material out of the main file can reduce context usage without hiding information permanently.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Frontmatter fields

Begin SKILL.md with YAML frontmatter. The required identity fields are name and description. You may add a version and Hermes-specific metadata, including configuration declarations supported by your installation.

---
name: release-checklist
description: Prepare and verify a software release from a clean Git working tree.
version: 1.2.0
---

# Release checklist

## When to use
Use this skill when a release needs repeatable checks before tagging.

## Procedure
1. Confirm the repository and target version.
2. Check the working tree and required tests.
3. Generate release notes from merged changes.
4. Create the tag only after verification passes.

## Pitfalls
- Stop if uncommitted changes are present.
- Do not publish a tag when required tests fail.

## Verification
Report the commit, tag, test result, and release-note file path.

The example keeps the trigger, procedure, failure rules, and verification in one readable file. Use the actual frontmatter keys recognized by your Hermes version; an unrecognized key will not automatically create behavior.

Sections that make a skill dependable

When to Use

State the task pattern and the boundary of the workflow. Include exclusions when a similar request should be handled another way.

Procedure

Write ordered steps. Name the tool, command, file, or setting involved in each step and describe what successful output looks like. Avoid instructions such as “do the usual setup”; the agent cannot infer your team’s private routine.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Pitfalls

Document conditions that should stop execution, destructive actions that require confirmation, and common causes of bad output. This section is especially important when commands can alter production systems or overwrite files.

Verification

Define observable checks: a command result, a file that must exist, a test suite that must pass, or a report containing required fields. Verification turns a sequence of actions into an auditable workflow.

Keep the scope narrow

One skill should have one coherent outcome. Split unrelated operations into separate skills and, if they are commonly used together, combine them with a bundle. Narrow scope improves natural-language matching, keeps the file maintainable, and makes failures easier to diagnose.

Use configuration without hard-coding project values

Some procedures need values that vary by user or repository. Declare those values in the skill’s supported frontmatter configuration and let Hermes prompt for them. The resulting settings are stored under skills.config.*, where they can be reviewed or changed independently of the procedure.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configuration should describe stable choices, not conceal essential steps. A reader inspecting the skill must still be able to understand what the value controls, what format it accepts, and what happens when it is missing. After changing a setting, run the skill’s verification path again; a configuration change can alter the command or output even when the skill file itself is unchanged.

Combine skills with a bundle

Bundles are YAML files stored in ~/.hermes/skill-bundles/. A bundle names several skills and may add an instruction that applies when the bundle is invoked. Hermes loads every skill in the list that it can resolve together under one slash command.

A bundle is an organizer, not an installer. If one of its names is missing, Hermes skips that skill rather than downloading it. Install the underlying skills first, confirm that each appears in hermes skills list, and then use the bundle.

Keep bundle instructions short and coordinating. Put detailed task logic in the individual skills so each skill remains independently discoverable and testable.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshoot a skill that will not load

The skill does not appear in /skills or hermes skills list

  • Confirm the directory contains a file named exactly SKILL.md.
  • Check that the file begins with valid YAML frontmatter and includes name and description.
  • Verify that the directory is in the project, ~/.hermes/skills/, the configured create directory, or an external directory known to Hermes.
  • If it is a project skill, complete the project trust step and resolve any security-scan finding.
  • Start a new session so Hermes rebuilds its index.

The slash command is missing after installation

Run hermes skills list to distinguish an installation problem from a session-cache problem. If the skill is listed, open a new session or reinstall with --now when supported. If it is not listed, check the source identifier, destination directory, and frontmatter before trying the install again.

Natural-language requests do not trigger the skill

Improve the description so it names the concrete task, inputs, and outcome. A description such as “helps with engineering” is too broad; “prepare a release from a clean Git tree and verify the tag” gives Hermes a recognizable trigger. Test explicit slash invocation first, then test a natural-language request that uses the same vocabulary as the description.

The skill loads but the agent ignores important instructions

Move critical rules into the main SKILL.md instead of leaving them only in an optional reference. Put the required sequence under “Procedure,” mark stop conditions under “Pitfalls,” and make the final checks explicit under “Verification.” Progressive disclosure means a reference file may not be loaded until the skill asks for it.

A project skill behaves differently from the installed copy

Inspect the current repository for a same-named project skill. Project precedence is intentional, so the repository version overrides the local copy. Rename the project skill, update it, or remove it if the local procedure is the one you need.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A bundle runs only part of its workflow

List each underlying skill individually. Missing names are skipped, and a bundle does not install them. Install the missing skills, rebuild the index in a new session, and invoke the bundle again.

Configuration prompts keep returning

Inspect the stored values with hermes config get skills.config, then open the skill’s configuration command with hermes skills config <name>. Re-enter values in the format declared by the skill. A misspelled skill name or an unsupported frontmatter key can prevent Hermes from associating the setting with the procedure.

Test and maintain a custom skill

Test in a clean session rather than relying on the session in which you edited the file. A practical command-line check is:

hermes chat -q "/my-skill help me with the thing"

Use a representative request, then verify all of the following:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Hermes selects the intended skill and no conflicting project copy.
  • Required configuration is requested once and stored correctly.
  • Each procedure step produces the expected intermediate result.
  • Stop conditions prevent unsafe or invalid actions.
  • Supporting references are loaded when needed.
  • The final verification section reports concrete evidence of success.

When a recurring workflow improves, Hermes can save or modify a skill through skill_manage. Review the resulting change, especially when approval controls are enabled. Check that the description still matches the trigger, the commands still work, and any external API or platform instructions have not become stale.

A practical design checklist

  • Give the skill a unique, descriptive name.
  • Write a trigger-focused description that says what the skill does and when it applies.
  • Put required actions in an ordered procedure with exact commands or UI paths.
  • Separate long references, templates, scripts, and assets from the main file.
  • Document prerequisites, permissions, destructive operations, and recovery paths.
  • Define an observable verification result.
  • Keep configuration values out of source files when they differ by user or environment.
  • Test explicit slash invocation and a natural-language request.
  • Check project precedence and trust before diagnosing the skill logic itself.
  • Review the skill whenever the workflow, tool, API, or platform changes.

Used this way, Hermes skills become small, testable units of procedural knowledge. Discovery and progressive loading keep routine conversations compact; explicit trust, precedence rules, and verification make the resulting automation easier to control.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.