Tech Wiki

TOPICSSERIES

[Hermes Agent Series 05] Teach Hermes Workflows with Memory and Skills

Memory and Skills solve different persistence problems. Memory keeps facts that should follow the user across sessions. A Skill stores a procedure that Hermes can load when a matching task appears. Mixing the two turns personal context into an instruction dump and makes procedures hard to review.

  • Put stable facts and preferences in Memory.
  • Put repeatable steps, checks, and safety boundaries in a Skill.
  • Review a Skill before installation because it can influence tool use.
  • Keep credentials out of both artifacts.

1. Draw the boundary

A useful test is to finish the sentence “remember that…”. If the answer is a durable fact such as a preferred language or repository convention, Memory fits. If the answer starts with actions such as search, compare, run, or verify, write a Skill.

Hermes always has built-in USER.md and MEMORY.md memory. External memory providers are optional; hermes memory status reports the configured provider without replacing the built-in files.

hermes memory status
hermes skills list

2. Make the procedure reviewable

A Skill is a directory whose entry point is SKILL.md. Its description should say when it applies. The body should state the sequence, acceptance checks, and approval boundaries in terms another session can follow.

The chapter fixture contains a small research procedure. Its safety section requires approval before an external write. That rule belongs beside the procedure because it controls how the workflow runs.

3. Validate before installation

Run the fixture from the repository root:

python3 examples/chapter-05-memory-skills/validate_workflow.py
python3 -m unittest discover -s examples/chapter-05-memory-skills/tests -v

The first command validates the Memory schema and Skill contract. The tests mutate both artifacts: they insert an instruction into Memory, remove the approval sentence, and add an unknown field. Each mutation must fail.

PASS: memory facts and research skill have separate, safe responsibilities

4. Install into the active profile

Hermes profiles have separate homes. Resolve the active profile before copying a reviewed Skill, especially when HERMES_HOME is set. Place the entire Skill directory under $HERMES_HOME/skills/, not only the Markdown file.

Use hermes skills inspect for registry material and hermes skills audit for installed Skills. Repo-local Skills need explicit project trust, which keeps an arbitrary checkout from silently adding instructions.

5. Know what the fixture proves

The example proves a narrow contract: stable facts stay declarative, the Skill has an activation description and approval rule, and malformed mutations fail. It does not prove that a research result is correct, install the Skill, or change live Memory.

Keep Memory concise. Keep Skills executable in meaning, easy to audit, and explicit about side effects. When a workflow changes, update the Skill and rerun its tests instead of adding another paragraph to Memory.

Sources


Leave a Reply

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

Tech Wiki

Built with WordPress · Learn in public.