getting started

A skill is a document an agent can load. A profile is the agent itself: identity, skills, scheduled jobs, and tool connections, pinned to a git ref.

Skill hubs such as ClawHub, skills.sh, and the Hermes Skills Hub list SKILL.md files. This directory lists whole Hermes bots. In Hermes, a bot is a profile. Come here to install someone, not a paragraph.

Pick CLI or Hermes Desktop. They share the same profiles on disk, so an install from either shows up in both.

BEFORE YOU INSTALL

Profiles are code. A profile can schedule jobs that run unattended, spawn local processes through MCP servers, and execute shell hooks on every turn. Nothing listed here is vetted, scanned for behaviour, or sandboxed. Every listing links to its source at the exact ref it describes. Read it.

CLI

01 INSTALL HERMES

You need the Hermes CLI. Confirm you have it and check which version, since profiles can declare a minimum.

hermes --version

02 INSTALL A PROFILE

Resolve a listing by slug. The CLI prints the privileged summary, asks you to confirm, then runs the pinned install.

npx profiles-for-bots install task-manager

That command runs the underlying Hermes install at an exact git ref. Pinning means what you install today is byte-for-byte what the listing described, even if the author changes the repository tomorrow.

hermes profile install github.com/owner/repo#v0.1.0

Hermes prints the manifest and asks you to confirm before writing anything. Read that preview. It is your last checkpoint before someone else's code runs on your machine.

03 SUPPLY ITS ENVIRONMENT

Most profiles need credentials. Every listing shows exactly which variables under env in its trust panel. Put them in the profile's own .env, which is yours and never travels with the distribution. The installer also writes .env.EXAMPLE you can copy.

echo 'OPENAI_API_KEY=sk-...' >> ~/.hermes/profiles/<name>/.env

04 RUN IT

hermes profile use <name>
hermes chat

Inspect what you installed at any time with hermes profile info <name>, which prints the distribution manifest, its version, and where it came from.

05 CRON AND UPDATES

Cron jobs are copied but not turned on. Enable them with hermes -p <name> cron list. Updating re-pulls the distribution and replaces only the files it owns. Your config.yaml edits are preserved unless you pass --force-config.

hermes profile update <name>

HERMES DESKTOP

01 OPEN THE APP

Desktop is the same agent as the CLI, with a window. If Hermes is already installed:

hermes desktop

First time? Follow the Hermes Desktop guide. Profiles you install land in ~/.hermes/profiles/ and appear in both surfaces.

02 INSTALL A LISTING

These listings are git distributions, not export files. Do not use Import profile in the command palette. That path is for a .tar.gz someone emailed you.

Two ways that do work:

Copy the agent prompt from a listing on this site and paste it into a new desktop chat. Hermes will resolve the slug and run the install. Confirm the privileged summary before it writes.

Or press Cmd+K (Ctrl+K on Windows and Linux), open a terminal, and run the same command as the CLI:

npx profiles-for-bots install task-manager

03 SWITCH TO IT

The new profile shows up on the left rail. Click it, or press Cmd+1 through Cmd+9 (Ctrl+1 through Ctrl+9 on Windows and Linux). Open a new chat on that profile.

04 SUPPLY ITS ENVIRONMENT

Set that profile's default model under Settings → Model. Other keys from the listing's env panel go in the profile's own .env, same as the CLI. Copy .env.EXAMPLE if the installer wrote one.

05 CRON AND UPDATES

Scheduled jobs are still off until you enable them. From a terminal: hermes -p <name> cron list. Updates are the same command as the CLI, then restart or switch away and back so the rail reloads.

hermes profile update <name>

WHAT IS NEVER TOUCHED

Your data stays yours across install and update. Hermes never overwrites .env, auth.json, memories/, sessions/, logs/, state.db, workspace/, or anything under local/.

publish your own profile →