Agents
H

Hermes

Agent Agents @dip497 10 installs

Nous Research's Hermes agent CLI.

hive agents install hermes

Run it in a terminal, or find it in Hivemind under Settings ▸ Plugins.

Hermes

Runs hermes, the Hermes command-line agent, in a Hivemind terminal tile.

Before you add it

Hivemind installs no code for it: it runs the hermes command you install yourself. Get it from its install page, or run curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash.

What it can do in Hivemind

  • Says when a turn ends, so another agent can hand it work and read its reply (hive ctl read, workflows).
  • Starts a new session after a restart.
  • Its permission prompts stay with you, even when another agent started it.

What it asks for

Hivemind shows this before it adds the agent.

  • Links your {home}/.hermes into a private copy it points hermes at
  • Reports its status and approval prompts to Hivemind through its own hooks, which can also read and type into your other tiles

Launch options

Set them on its page in Settings ▸ Plugins, or with hive plugins set agent:hermes <option> <value>.

Option How it is passed
Model --model <value>
Approval yolo: --yolo

Listed from agent.yaml in this folder; fix it by pull request.

On the canvas

  • Resumes a session: no
  • Reports when a turn ends: yes
  • Can be supervised by another agent: no

This adds Hermes to Hivemind. Install hermes itself too, if you don't have it.

Files

From dip497/hivemind-plugins at 22c0984. Hivemind checks each file's checksum as it downloads, and stops if one changed.

  • agent.yaml9bfea43376b9
  • hive-turn.cjs137b786c009f
  • README.md567805494c22
agent.yaml
# Hermes — built-in provider manifest.
# Authoring format for the def half. See packages/hive-agents/src/manifest.ts.
manifestVersion: 2
# Written for the agent host that shipped in this release.
minAppVersion: '2026.9.6'
id: hermes
label: Hermes
bin: hermes
aliases:
  - hermes-agent
enabled: true
caps:
  promptDelivery: typed
  turnSignal: true
  resume: none
  supervise: human
  blockedDetection: true
options:
  - id: model
    label: Model
    flag: --model
  - id: mode
    label: Approval
    values:
      yolo:
        - --yolo
    unattended: yolo
# A resumed id Hermes no longer has starts a fresh session, so nothing is checked first.
session:
  resume:
    args: [--resume, '{id}']
    from:
      tracked: true
# Hermes reads hooks only from config.yaml in HERMES_HOME, so it runs in a private home: the
# user's own files linked in, config.yaml their own with our hooks added. Hermes asks once per
# hook before running it.
home:
  root: hermes-home
  dir: .
  mirror: '{home}/.hermes'
  env: HERMES_HOME
  own:
  - name: config.yaml
    merge: true
hooks:
  file: config.yaml
  stable: true
  template: '{"hooks":{events}}'
  group: false
  entry:
    command: '{command}'
    timeout: '{timeout}'
    matcher: '{matcher}'
  events:
    pre_llm_call:
      emit: turn.started
      timeout: 10
    post_llm_call:
      hook: turn
      timeout: 10
    on_session_end:
      hook: turn
      timeout: 10
    pre_approval_request:
      emit: input.requested
      kind: permission
      timeout: 10
    post_approval_response:
      emit: input.resolved
      timeout: 10
    pre_tool_call:
      emit: input.requested
      kind: question
      matcher: clarify
      timeout: 10
    post_tool_call:
      emit: input.resolved
      matcher: clarify
      timeout: 10
assets:
- name: hive-turn.cjs
  file: hive-turn.cjs
  hook: turn
  produces: [turn.ended]
launch:
  hcp: true
install:
  url: https://hermes-agent.nousresearch.com/docs/getting-started/installation
  command: "curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash"
detect:
  rules:
    - when:
        all:
          - any:
              - contains: dangerous command
              - all:
                  - contains: allow once
                  - contains: allow for this session
                  - contains: deny
          - any:
              - contains: enter to confirm
              - contains: ↑/↓ to select
              - contains: show full command
      then: blocked
    - when:
        any:
          - contains: msg=interrupt
          - contains: ctrl+c cancel
      then: working
  default: idle

Hivemind shows you this list and asks before it installs.

  • links your {home}/.hermes into a private copy it points hermes at
  • reports its status and approval prompts to Hivemind through its own hooks, which can also read and type into your other tiles
VersionCommitListed
1.0.0 22c0984 October 17, 2026

Needs Hivemind 2026.9.6 or newer.

HiveHub keeps the version listed last. The ones before it are in the repository's history.

Something wrong with it? Report it.