Slash Commands
Slash Commands are used to invoke skills with a single line. If Reusable Procedures and Community Catalog were about having skills, then Slash Commands is about calling a skill fast. Every skill once installed — whether self-written, installed from the hub, or self-created by the agent — automatically becomes a slash command. This is the unified interface layer that means you never need to remember “what to say for the agent to use a given skill”.
Basic usage
/github-pr-workflow open a PR for the auth refactor
/axolotl help me fine-tune Llama 3 on this dataset
Type the skill name plus your request — the agent loads exactly that skill and works through what follows the command. If you type only the skill name without a request, the agent simply asks what you need:
/excalidraw
→ "What diagram do you want to draw? Flowchart, sequence diagram, or mindmap?"
Stacking several skills in one command
This is the battle-tested part that gets overlooked: you don’t have to call skills one by one in sequence. You can chain up to 5 skills right at the start of the command:
/ocr-and-documents /translate-vi-en extract the data tables from this scanned file, then translate them into English
Hermes stops recognizing skills as soon as it hits the first token that is not a valid slash command — so if your request contains a file path starting with / (e.g. /tmp/scan.pdf), it is not mistaken for another skill and is correctly understood as a parameter:
/ocr-and-documents /tmp/scan.pdf extract the data tables
→ loads only 1 skill (ocr-and-documents); the rest is instruction
When you use the same skill combination far too often
Chaining 3–4 skills every time you type is still clunky. The solution is a bundle — packing several skills under a single dedicated slash command:
/release-prep # actually runs: changelog-writer + version-bump + github-pr-workflow
One thing to note: if you name a bundle the same as an existing skill, the bundle always wins when that slash command is invoked — because naming it the same is your deliberate choice to use the bundle; this is intended behavior, not a bug.
Uniform behavior across every platform
The same /skill-name syntax behaves exactly the same whether you are typing in the CLI, TUI, dashboard, or messaging via Telegram/Discord/Slack/WhatsApp/Signal. There is no “lite” version for messaging — the skill-invocation experience is absolutely consistent, because command dispatch lives in one central layer shared by every interface.
Notes
- If you catch yourself typing the same 2–3 slash commands every day, that is a clear signal to move them into a bundle — don’t wait until it becomes annoying.
- When passing a parameter that starts with
/(file paths, URLs…), place it after the spoken request, or double-check that the agent understood your intent — because the parser stops at the first invalid/token, so putting a path right at the start can sometimes confuse the reading order. - Name bundles carefully if your team already has a skill with the same name — bundle priority is the default behavior, and there is no warning halfway through.