Hermes Agent¶
Hermes Agent is Nous Research's
open-source, model-agnostic agent. It reads the same SKILL.md format the
Chronicle skills are already written in, so every Chronicle and research skill
runs in Hermes unmodified — nothing is forked or rewritten for it.
There are two ways to get them, and one choice between them:
- Install from methodiclabs.ai — one command per skill, no clone. The usual choice.
- Point Hermes at a checkout — register a
local clone so edits are live and
git pullis the update path.
Both need the same API key as everything else here — see Authentication below.
Install from methodiclabs.ai¶
methodiclabs.ai publishes a
well-known skills index,
which Hermes' hub reads directly. Browse what's there, then install by name:
hermes skills search https://methodiclabs.ai
hermes skills install https://methodiclabs.ai/.well-known/skills/chronicle-status
hermes skills install https://methodiclabs.ai/.well-known/skills/chronicle-propose-experiment
hermes skills install https://methodiclabs.ai/.well-known/skills/synthesis
Installed skills land in ~/.hermes/skills/ and are available immediately as
slash commands (/chronicle-status) and by intent. Update them later with:
Note
The site hosts no skill content. It redirects each path to the raw file in
methodic-research/skills,
so what you install is exactly what's on main — there is no separate copy
to fall behind.
Prefer this over hermes skills tap
A tap is one repository plus one base path, and tap add refuses a second
entry for the same repo. The skills live under two roots, so a tap reaches
the chronicle-* skills and can never reach the four research skills
(synthesis, evaluate-results, literature-review, paper-authoring).
The well-known index has no such limit.
Point Hermes at a checkout¶
Better when you're editing skills, or want to track main without
reinstalling. This registers the checkout with Hermes rather than copying
anything into ~/.hermes/skills/:
That writes two things into $HERMES_HOME/config.yaml (default ~/.hermes):
both skill directories under skills.external_dirs, and the bundled Chronicle
MCP server under mcp_servers. Every skill then loads from the checkout, and
git pull is the whole update path.
The installer is idempotent, backs the config up before writing, and preserves
your comments when ruamel.yaml is importable:
| Flag | Effect |
|---|---|
--print |
Print the YAML and exit — change nothing |
--no-mcp |
Register the skills only, leave mcp_servers alone |
Which route¶
| Install from the site | Point at a checkout | |
|---|---|---|
| Setup | One command per skill | Clone + one command, once |
| Updates | hermes skills update |
git pull |
| Editing skills locally | No — installs a copy | Yes, edits are live |
| Needs a checkout | No | Yes |
Both give you the same skills, and they can coexist — Hermes scans
~/.hermes/skills/ and every configured external directory.
Configuration reference¶
To wire it by hand instead of running the installer:
skills:
external_dirs:
- /path/to/skills/skills
- /path/to/skills/research-plugin/skills
mcp_servers:
chronicle:
command: sh
args: ["/path/to/skills/mcp/launch.sh"]
Relative external_dirs entries resolve against $HERMES_HOME (not the working
directory), and ~ plus ${VAR} are expanded. Restart Hermes afterwards, then
confirm with hermes skills list.
The Chronicle MCP tools¶
The mcp_servers.chronicle entry above starts the same zero-dependency MCP
server the Claude Code plugin runs, exposing the chronicle.* tools — internal
search, experiment create/read/commit, lifecycle, report write-ups, dataset and
image upload, ACL management, run-log search.
It reads the same ~/.methodic/credentials.yaml as the CLI and SDK, so there is
no key to paste into a Hermes config file. The launcher probes for node ≥ 18,
then bun, then python3 ≥ 3.8, so a Python-only machine needs nothing extra.
If you installed skills from the site rather than a checkout, add the
mcp_servers block by hand (the launcher ships with the repo) — or point Hermes
at the remote HTTP server instead.
Authentication¶
Identical to every other surface: create an API key in the Methodic UI and run
the one-line setup it shows, which writes ~/.methodic/credentials.yaml. See
Authentication for the full resolution order and every
environment variable.
Caveats¶
- Long descriptions are truncated. Hermes caps a skill
descriptionat 1024 characters and truncates rather than rejecting. A few Chronicle skills exceed that, so the tail of their trigger text is clipped in Hermes' index. They load and work normally. - The MCP launcher needs a POSIX
sh. On bare Windows, use WSL, or point Hermes at the remote HTTP MCP server. - Skill names are the install identifiers. They keep their
chronicle-/methodic-prefixes so they don't collide with other publishers' skills in Hermes' shared hub.
The full skill list lives in the skills repo README.