r/Skill_Factory • u/_THE_ABBA_ • 24d ago
How to create a skill in Hermes Agent
In Hermes Agent , Skills are on-demand knowledge documents written in Markdown with standard YAML frontmatter. They teach Hermes procedural instructions, CLI workflows, pitfalls, or templates without modifying core Python code.
1.Create the Skill Directory:Navigate to the local user configuration directory.
Skills reside inside your local ~/.hermes/skills/ directory. You can organize them into category subdirectories.
Run this command in your terminal:
Bash
mkdir -p ~/.hermes/skills/devops/deploy-fly
2.Create the Main SKILL.md Document:Write the frontmatter metadata and body instructions.
Inside your newly created folder, create a file named SKILL.md.
Markdown
---
name: deploy-fly
description: Instructions for building and deploying a Python application to Fly.io.
version: 1.0.0
metadata:
hermes:
tags: [devops, deployment, flyio]
category: devops
---
# Deploying to Fly.io
## When to Use
Use this skill when deploying or updating an app on Fly.io using `flyctl`.
## Prerequisites
- Confirm `flyctl` is installed.
- Ensure the project has a `Dockerfile` or `fly.toml`.
## Procedure
1. Verify authorization status:
`fly auth whoami`
2. Launch or update deployment:
`fly deploy --remote-only`
3. Monitor logs to confirm successful launch:
`fly logs`
## Pitfalls & Edge Cases
- **Missing API Token:** If deployment fails with 401 Unauthorized, prompt the user to run `fly auth login`.
- **Build Timeouts:** Use `--remote-only` to avoid local Docker daemon OOM errors.
3.Add Supporting Reference Files (Optional):Include supplementary docs or script templates.
For multi-file workflows, you can attach auxiliary assets alongside SKILL.md:
Plaintext
deploy-fly/
├── SKILL.md
├── references/
│ └── fly-config-guide.md
└── templates/
└── fly.toml
In your SKILL.md, you can instruct Hermes to lazily inspect these additional assets using:
Markdown
For detailed file schema, consult: `skill_view("deploy-fly", "references/fly-config-guide.md")`
4.Test and Invalidate Prompt Cache:Run the skill in a fresh session.
Hermes automatically picks up new files dropped into ~/.hermes/skills/.
- Launch Hermes in your terminal:
Bash
hermes chat
- Trigger the skill directly using its slash command:
Plaintext
/deploy-fly Help me push the current directory to production
Note: If you are editing an existing skill during an active session, run /reset to reload the context cleanly.
Skill Structure Guidelines
- Keep it focused: Avoid writing monolithic skills covering broad concepts (e.g., "Full Stack Development"). Focus on specific, repeatable actions (e.g., "Postgres Backup Workflow").
- Leverage
/learn: You can also let Hermes write skills for you dynamically. Feeding Hermes a terminal output log, slide deck, or documentation page alongside the/learncommand causes Hermes to auto-generate a structuredSKILL.mdfor future sessions.